.vibe.local.toml
.vibe.local.tomlファイルを使用すると、共有の.vibe.toml設定を個人用設定で上書きまたは拡張できます。このファイルは自動的にgitignoreされます。
ユースケース
Section titled “ユースケース”- 開発者固有の環境ファイル
- ローカルパスや認証情報
- 個人的なワークフローのカスタマイズ
- マシン固有の設定
# 共有フックをローカルコマンドで上書き・拡張[hooks]post_start_prepend = ["echo 'ローカルセットアップ開始'"]post_start_append = ["npm run dev"]
# コピーするファイルを上書き[copy]files = [".env.local", ".secrets"]設定のマージ
Section titled “設定のマージ”配列フィールドはまず各ファイル内で解決され、その結果がファイル間でマージされます。.vibe.tomlと.vibe.local.tomlの両方が存在する場合、以下のルールに従って.vibe.local.tomlが共有ファイルに対してマージされます:
| 方法 | 構文 | 説明 |
|---|---|---|
| 完全上書き | フィールド名 = [...] |
共有値を完全に置き換え(同じファイル内の_prepend / _appendは引き続き前後に追加) |
| 先頭に追加 | フィールド名_prepend = [...] |
共有値の前にアイテムを追加 |
| 末尾に追加 | フィールド名_append = [...] |
共有値の後にアイテムを追加 |
# .vibe.toml(共有)[hooks]post_start = ["npm install", "npm run build"]
# .vibe.local.toml(ローカル)[hooks]post_start_prepend = ["echo 'ローカルセットアップ'"]post_start_append = ["npm run dev"]
# 結果: ["echo 'ローカルセットアップ'", "npm install", "npm run build", "npm run dev"]共有設定を完全に置き換えるには:
[hooks]post_start = ["my-custom-script.sh"]
# 結果: ["my-custom-script.sh"]# (共有のpost_startは完全に置き換えられる)単一ファイル内でのマージ
Section titled “単一ファイル内でのマージ”_prepend / _append は.vibe.local.toml専用ではありません。単一ファイル内でも適用されるため、.vibe.tomlだけがあり.vibe.local.tomlが存在しないリポジトリでも利用できます。1つのファイル内での実効値はprepend + フィールド + appendです:
# .vibe.toml のみ — .vibe.local.toml なし[copy]files = [".env"]files_append = [".env.local"]
# 結果: [".env", ".env.local"]各ファイルはまずこの方法で解決され、その後で.vibe.local.tomlが共有ファイルの実効配列に対してマージされます(ローカルのフィールドは置き換え、ローカルのフィールド_prepend / フィールド_appendは前後に追加)。
アップグレード時の再信頼登録
Section titled “アップグレード時の再信頼登録”以前のバージョンは上記の位置にある拡張フィールドを解析はするものの無視していました。そのため、当時に信頼登録された設定ファイルには、一度も実行されなかった_prepend / _appendの記述が残っている可能性があります。信頼登録のハッシュはファイルのバイト列を対象としており、vibeがそれをどう解釈するかまでは含みません。
これらを黙って有効化しないよう、vibeは該当するファイルの読み込みを拒否し、内容を確認したうえでvibe trustを再実行するよう促します:
.vibe.toml was trusted under older configuration semantics.These fields were accepted but ignored back then and now take effect: hooks.post_start_appendReview the file, then re-approve it with: vibe trust対象となるのは、新たに有効化された位置を実際に使っているファイルだけです。それ以外の設定はこれまでどおり動作し、操作は不要です。
vibe verifyは、実際にエラーに遭遇する前に同じ内容を報告します。ファイルの信頼が変更前に付与されている場合、そのステータスブロックに信頼時のリビジョンが表示され、対象ファイルであれば該当フィールド名とともに警告が出ます:
Config Semantics: trusted at revision 0 (current: 1)Status: ⚠️ STALE CONFIG SEMANTICSThese fields were accepted but ignored when this file was trusted and now take effect: hooks.post_start_appendAction: Review the file, then re-approve it with 'vibe trust' (other commands will refuse it until then)Worktreeパスの上書き
Section titled “Worktreeパスの上書き”.vibe.local.tomlでWorktreeパススクリプトを上書きできます:
[worktree]path_script = "./my-local-path-script.sh"これは.vibe.tomlのpath_scriptよりも優先されます。
.vibe.tomlと同様に、ローカル設定ファイルも信頼登録が必要です:
vibe trustこのコマンドは.vibe.tomlと.vibe.local.tomlの両方を信頼登録します(存在する場合)。
[copy]# ローカル専用のコピーファイルを追加files = [".env.local", ".secrets", "local-config.json"]
[hooks]# 共有のpre_startフックの前に実行pre_start_prepend = ["echo 'ローカルセットアップ開始'"]
# 共有のpost_startフックの後に実行post_start_append = [ "npm run dev", "open http://localhost:3000"]
# pre_cleanを完全に上書きpre_clean = ["echo 'カスタムクリーンアップ'"]