モード
さまざまなユースケースに応じたさまざまなモード。
モードを使用すると、さまざまなユースケースに合わせて動作、ツール、プロンプトをカスタマイズできます。
Build と Plan という 2 つの組み込みモードが付属しています。カスタマイズできます これらを使用するか、OpenCode 設定を通じて独自の設定を行います。
セッション中にモードを切り替えることも、設定ファイルでモードを構成することもできます。
組み込み
OpenCode には 2 つの組み込みモードが付属しています。
Build
Build は、すべてのツールが有効になっている デフォルト モードです。これは、ファイル操作やシステムコマンドへのフルアクセスが必要な開発作業の標準モードです。
Plan
計画と分析のために設計された制限付きモード。Plan モードでは、次のツールはデフォルトで無効になっています。
write- 新しいファイルを作成できませんedit- 計画自体の詳細を示す.opencode/plans/*.mdにあるファイルを除き、既存のファイルを変更できませんpatch- パッチを適用できませんbash- シェルコマンドを実行できません
このモードは、コードベースに実際の変更を加えずに、AI にコードを分析させたり、変更を提案したり、計画を作成させたい場合に便利です。
切り替え
セッション中に Tab キーを使用してモードを切り替えることができます。または、設定された switch_mode キーバインド。
参照: コードのフォーマット設定については、Formatters。
設定
組み込みモードをカスタマイズしたり、構成を通じて独自のモードを作成したりできます。モードは次の 2 つの方法で設定できます。
JSON 設定
opencode.json 設定ファイルでモードを構成します。
{ "$schema": "https://opencode.ai/config.json", "mode": { "build": { "model": "anthropic/claude-sonnet-4-20250514", "prompt": "{file:./prompts/build.txt}", "tools": { "write": true, "edit": true, "bash": true } }, "plan": { "model": "anthropic/claude-haiku-4-20250514", "tools": { "write": false, "edit": false, "bash": false } } }}Markdown 設定
Markdown ファイルを使用してモードを定義することもできます。それらを次の場所に置きます。
- グローバル:
~/.config/opencode/modes/ - プロジェクト:
.opencode/modes/
---model: anthropic/claude-sonnet-4-20250514temperature: 0.1tools: write: false edit: false bash: false---
You are in code review mode. Focus on:
- Code quality and best practices- Potential bugs and edge cases- Performance implications- Security considerations
Provide constructive feedback without making direct changes.Markdown ファイル名はモード名になります (例: review.md は review モードを作成します)。
これらの設定オプションを詳しく見てみましょう。
モデル
model 設定を使用して、このモードのデフォルトモデルをオーバーライドします。さまざまなタスクに最適化されたさまざまなモデルを使用する場合に役立ちます。たとえば、計画にはより高速なモデルを、実装にはより有能なモデルを使用します。
{ "mode": { "plan": { "model": "anthropic/claude-haiku-4-20250514" } }}温度
temperature 設定を使用して、AI の応答のランダム性と創造性を制御します。値が低いほど、応答はより集中的かつ決定的になりますが、値が高いほど、創造性と変動性が高まります。
{ "mode": { "plan": { "temperature": 0.1 }, "creative": { "temperature": 0.8 } }}通常、温度値の範囲は 0.0 ~ 1.0 です。
- 0.0-0.2: 非常に焦点が絞られた決定的な応答。コード分析と計画に最適です。
- 0.3-0.5: 創造性を備えたバランスの取れた応答。一般的な開発タスクに適しています。
- 0.6-1.0: より創造的で多様な応答。ブレーンストーミングや探索に役立ちます。
{ "mode": { "analyze": { "temperature": 0.1, "prompt": "{file:./prompts/analysis.txt}" }, "build": { "temperature": 0.3 }, "brainstorm": { "temperature": 0.7, "prompt": "{file:./prompts/creative.txt}" } }}温度が指定されていない場合、OpenCode はモデル固有のデフォルトを使用します (通常、ほとんどのモデルでは 0、Qwen モデルでは 0.55)。
プロンプト
prompt 設定を使用して、このモードのカスタムシステムプロンプトファイルを指定します。プロンプトファイルには、モードの目的に固有の指示が含まれている必要があります。
{ "mode": { "review": { "prompt": "{file:./prompts/code-review.txt}" } }}このパスは、設定ファイルが配置されている場所に対する相対パスです。したがって、これはグローバルな OpenCode 設定とプロジェクト固有の設定の両方で機能します。
ツール
tools 設定を使用して、このモードでどのツールを使用できるかを制御します。特定のツールを true または false に設定することで、有効または無効にすることができます。
{ "mode": { "readonly": { "tools": { "write": false, "edit": false, "bash": false, "read": true, "grep": true, "glob": true } } }}ツールが指定されていない場合は、すべてのツールがデフォルトで有効になります。
利用可能なツール
ここでは、モード設定を通じて制御できるすべてのツールを示します。
| ツール | 説明 |
|---|---|
bash | シェルコマンドを実行する |
edit | 既存のファイルを変更する |
write | 新しいファイルを作成する |
read | ファイルの内容を読み取る |
grep | ファイルの内容を検索 |
glob | パターンでファイルを検索 |
list | ディレクトリの内容をリストする |
patch | ファイルにパッチを適用する |
todowrite | ToDo リストを管理する |
todoread | ToDo リストを読む |
webfetch | Web コンテンツを取得する |
カスタムモード
構成に追加することで、独自のカスタムモードを作成できます。両方のアプローチを使用した例を次に示します。
JSON 設定の使用
{ "$schema": "https://opencode.ai/config.json", "mode": { "docs": { "prompt": "{file:./prompts/documentation.txt}", "tools": { "write": true, "edit": true, "bash": false, "read": true, "grep": true, "glob": true } } }}Markdown ファイルの使用
モードファイルをプロジェクト固有モードの場合は .opencode/modes/ に、グローバルモードの場合は ~/.config/opencode/modes/ に作成します。
---temperature: 0.1tools: bash: true read: true grep: true write: false edit: false---
You are in debug mode. Your primary goal is to help investigate and diagnose issues.
Focus on:
- Understanding the problem through careful analysis- Using bash commands to inspect system state- Reading relevant files and logs- Searching for patterns and anomalies- Providing clear explanations of findings
Do not make any changes to files. Only investigate and report.---model: anthropic/claude-sonnet-4-20250514temperature: 0.2tools: edit: true read: true grep: true glob: true---
You are in refactoring mode. Focus on improving code quality without changing functionality.
Priorities:
- Improve code readability and maintainability- Apply consistent naming conventions- Reduce code duplication- Optimize performance where appropriate- Ensure all tests continue to passユースケース
さまざまなモードの一般的な使用例をいくつか示します。
- ビルドモード: すべてのツールを有効にした完全な開発作業
- 計画モード: 変更を加えずに分析および計画を立てる
- レビューモード: 読み取り専用アクセスとドキュメントツールによるコードレビュー
- デバッグモード: bash および読み取りツールを有効にして調査に重点を置きます
- ドキュメントモード: ファイル操作を使用してドキュメントを作成しますが、システムコマンドは使用しません
また、さまざまなユースケースにさまざまなモデルが適していることがわかるかもしれません。