OpenCode 権限
OpenCode 権限設定ガイド:確認を省く前の7つの安全判断
OpenCode 権限、ask/allow/deny、--auto、外部ディレクトリ、agent 上書きを整理し、危険な実行を隠さず設定します。
- 要点
- OpenCode 権限
- 2026年7月30日更新
- 約16分で読めます
要点
OpenCode 権限: what to know first

OpenCode 権限の安全な出発点は、最初は ask にし、繰り返し可能で戻せる狭い作業だけ allow、修復コストが高いコマンドやパスは deny にすることです。公式ドキュメントは allow、ask、deny を説明し、--auto は明示的に deny されていない要求を承認するとしています。つまり --auto は便利機能であり、安全ポリシーそのものではありません。
検索意図は、確認プロンプトを減らしたい、常に許可したい、危険なスキップが安全か知りたいという実務的なものです。
このガイドではローカルリポジトリ、VS Code、Ollama、agents、MCP、CI に近い作業を分け、秘密情報、外部ディレクトリ、デプロイ、生成物の変更を見える状態に保ちます。
1. スキップより先に権限モデルを理解する
OpenCode permissions は許可、確認、ブロックを決める実行ポリシーです。理由を説明できない作業は ask、十分に狭くテスト済みの作業だけ allow、削除、デプロイ、秘密情報、外部パスは deny にします。確認は単なるノイズではなく、境界が変わった合図であることがあります。
2. リスク表で判断する
ファイルの読み取りや一覧は低リスクです。小さな編集は ask から始めます。依存関係の追加、削除、公開、移行、本番設定の変更は ask または deny に残します。ツール名だけでなく、リポジトリでの意味を見ます。
| 操作 | 基本姿勢 | 理由 |
|---|---|---|
| ファイル読み取り | allow または初回 ask | 文脈把握に必要です。 |
| 小さな編集 | ask から狭い allow | 最初の差分を確認します。 |
| テストと整形 | ask または固定コマンド | 既知のコマンドなら低リスクです。 |
| 削除やデプロイ | deny または明示 ask | 影響が大きい操作です。 |

3. --auto は deny ルールがある時だけ使う
`opencode --auto` は deny されていない要求を承認します。使う前に破壊的な shell、環境ファイル、鍵、デプロイ、プロジェクト外ディレクトリをブロックします。グローバルなバイパスより、狭いポリシーの方が長持ちします。
4. レビューできる場所にルールを置く
リポジトリのルールはプロジェクト内に置きます。個人設定はグローバルでも構いません。agent の例外は agent 定義の近くに置きます。`opencode.json` に token や鍵を書いてはいけません。
5. agents、MCP、ローカルツールを分ける
レビュー用 agent は読むだけで十分かもしれません。移行用 agent は狭いフォルダだけ編集し、デプロイはしないべきです。MCP tool は外部データを変える場合があります。要求の出所を確認します。
6. 使い捨てリポジトリで先に試す
小さなコード、生成フォルダ、`.env.example`、無害なコマンドを用意し、allow、ask、deny の各ケースを試します。広すぎる allow や分かりにくい deny は、日常利用の前に狭めます。

7. 繰り返す確認は一層ずつ切り分ける
tool、command、path、agent を記録し、作業ディレクトリ、外部パス、MCP、hook、wrapper、config を順に確認します。1つの確認のために bash 全体を許可しないでください。
OpenCode 権限 FAQ
OpenCode 権限とは何ですか?
会話中の操作を許可、確認、ブロックのどれにするか決める設定です。
opencode --auto は何をしますか?
明示的に deny されていない要求を承認します。
権限スキップは安全ですか?
全体設定としては危険です。狭くテストしたポリシーを優先します。
bash を許可してよいですか?
固定された低リスクコマンドだけにし、削除、デプロイ、秘密情報は ask または deny にします。
参照元
OpenCode 公式ドキュメントは 2026年7月30日に確認しました。本番リポジトリを変更する前に最新の構文を確認してください。