コンテンツにスキップ

セキュリティ

vibeには設定ファイルへの不正な変更を防ぐためのセキュリティ機能が含まれています。

vibeはSHA-256ハッシュを使用して.vibe.toml.vibe.local.tomlファイルの整合性を自動的に検証します。

  1. vibe trustを実行すると、vibeはSHA-256ハッシュを計算して保存
  2. vibe startを実行すると、vibeはファイルが変更されていないか検証
  3. ハッシュが一致しない場合、vibeはエラーで終了
初回使用:
vibe trust → ハッシュを保存 → 使用準備完了
以降の使用:
vibe start → ハッシュを検証 → ✓ 一致 → フックを実行
→ ✗ 不一致 → エラー(再信頼が必要)

信頼情報は~/.config/vibe/settings.jsonに保存されます:

{
"version": 3,
"permissions": {
"allow": [
{
"repoId": {
"remoteUrl": "github.com/user/repo",
"repoRoot": "/path/to/repo"
},
"relativePath": ".vibe.toml",
"hashes": ["abc123..."]
}
],
"deny": []
}
}

バージョン3ではリポジトリベースのトラスト識別を使用:

  • 信頼は同じリポジトリのすべてのWorktree間で共有
  • 設定は初回ロード時にv2からv3へ自動移行

すべてのリポジトリで検証を無効化:

{
"version": 3,
"skipHashCheck": true,
"permissions": { "allow": [], "deny": [] }
}

特定のファイルのみ検証を無効化:

{
"version": 3,
"permissions": {
"allow": [
{
"repoId": {
"remoteUrl": "github.com/user/repo",
"repoRoot": "/path/to/repo"
},
"relativePath": ".vibe.toml",
"hashes": ["abc123..."],
"skipHashCheck": true
}
],
"deny": []
}
}

vibeはファイルごとに複数のハッシュ(最大100個)を保存するため、再信頼なしでブランチを切り替えられます:

  • 信頼された各バージョンのハッシュが保存される
  • ブランチを切り替えると、vibeは保存されたすべてのハッシュに対してチェック
  • 現在のハッシュが保存されたいずれかのハッシュと一致すれば、検証はパス
  1. 変更を常にレビュー - vibe trustを実行する前に
  2. 本番環境ではハッシュチェックをスキップしない
  3. .vibe.local.tomlはローカルに保持 - 自動的にgitignoreされます
  4. チームの変更をレビュー - コードレビュー時に.vibe.tomlを確認
  • trust - 信頼管理コマンド
  • 設定 - 設定ファイルの形式