権限とセーフティネット
エージェントの操作(コマンドの実行、ファイルの編集、MCP ツールの呼び出し、ページの取得)は、すべてまずエージェントの権限ルールを通ります。OpenChamber の権限モードは、ルールが「ask」と言ったときに何が起きるかを決めます。
allow、ask、deny
権限ルールは OpenCode にあります。ルールは操作ごとに、次の 3 つのどれかを決めます。
- allow: エージェントはそのまま進む
- deny: 操作はブロックされる
- ask: エージェントは止まって返答を待つ
初期状態ではほとんどの操作が許可されています。OpenCode が確認するのは、エージェントがプロジェクト外のフォルダーに触れるときと、.env ファイルを読むときだけです。たとえばシェルコマンドの前に毎回確認させたいなら、独自のルールを追加します。ルールの書き方は OpenCode の権限ドキュメントにあります。OpenChamber では 設定 → エージェント でエージェントの権限を確認できます。
権限モードが変えるのは、「ask」に誰が答えるかだけです。「deny」を解除することはなく、「allow」はそもそも確認しません。
3 つのモード
| モード | 「ask」に答えるのは |
|---|---|
| 毎回確認 | あなたです。すべての要求があなたの返答を待ちます。 |
| セーフティネット | Jev が日常的な操作を通し、危険な操作はあなたに残します。 |
| すべて承認 | OpenChamber で、常に承認します。すべての要求がチェックなしですぐに許可されます。 |
すべて承認 には何も追加で必要ありません。このモードは、すべての「ask」を単純に許可として扱います。タスクを信頼していて、中断されたくないときに使ってください。
モードを切り替える
- 1 つのセッションだけ: 入力欄の盾のボタンを押します。押すたびに次のモードに切り替わります。
- 新しいセッション: 設定 → セッション → 権限 で既定のモードを選びます。既存のセッションはそのままです。
サブエージェントは、自分を起動したセッションのモードに従います。
セーフティネット
このモードでは、OpenChamber が要求ごとに Jev に尋ねます。これは日常的な操作か、それともあなたが判断すべきか。読み取り、ビルド、テストの実行、プロジェクトファイルの編集、普通のコミットは通ります。git 履歴の書き換え、データの削除、システムの変更、デプロイ、どこかへの投稿、外部へのファイル送信は、はっきりしないものと同じく、あなたの判断を待ちます。
保留された要求は、いつもの権限カードに 1 行追加されて表示されます。セーフティネットがこの操作を保留しました。判断してください と、操作の種類です。Jev が 4 秒以内に答えない場合も、操作はあなたを待ちます。確認が失敗したからといって、セーフティネットが何かを許可することはありません。
セーフティネットには分類プロバイダーが必要です。ない場合、盾のボタンはこのモードを飛ばし、設定でも無効になります。
離れていても動き続ける
モードは OpenChamber サーバーにあるので、タブを閉じたりスマートフォンをロックしたりしても要求に答え続け、再起動後も保たれます。
VS Code にはセーフティネットがありません。拡張機能では「毎回確認」と「すべて承認」だけが使え、要求に答えるのは OpenChamber のパネルが開いている間だけです。
関連
- OpenCode ドキュメントの権限:allow、ask、deny のルールを自分で書く
- 分類プロバイダー(Jev):セーフティネットを支えるモデルを設定する
- 通知:要求があなたを待っているときに知らせを受ける