CLI
OpenCode CLI のオプションとコマンド。
OpenCode CLI は、引数なしで実行されると、デフォルトで TUI を起動します。
opencodeしかし、このページで説明されているコマンドも受け付けます。これにより、OpenCode をプログラム的に操作できます。
opencode run "Explain how closures work in JavaScript"tui
OpenCode のターミナルユーザーインターフェースを起動します。
opencode [project]Flags
| Flag | Short | Description |
|---|---|---|
--continue | -c | 最後のセッションを続行します |
--session | -s | 続行するセッション ID |
--fork | 続行時にセッションをフォークします(--continue または --session とともに使用) | |
--prompt | 使用するプロンプト | |
--model | -m | provider/model の形式で使用するモデル |
--agent | 使用するエージェント | |
--port | 待ち受けるポート | |
--hostname | 待ち受けるホスト名 | |
--mdns | mDNS 検出を有効にします | |
--mdns-domain | カスタムの mDNS ドメイン名 | |
--cors | CORS を許可する追加のブラウザオリジン |
Commands
OpenCode CLI には、次のコマンドもあります。
agent
OpenCode のエージェントを管理します。
opencode agent [command]create
カスタム設定で新しいエージェントを作成します。
opencode agent createこのコマンドは、カスタムのシステムプロンプトと権限設定を持つ新しいエージェントの作成を案内します。許可しなかったものは、生成されたエージェントの frontmatter で拒否されます。
Flags
| Flag | Short | Description |
|---|---|---|
--path | エージェントファイルを書き込むディレクトリ(プロンプトに基づいてグローバルまたは .opencode/agent がデフォルト) | |
--description | エージェントが何をすべきか | |
--mode | エージェントモード: all、primary、subagent | |
--permissions | 許可する権限のカンマ区切りリスト(デフォルト: all)。利用可能: bash、read、edit、glob、grep、webfetch、task、todowrite、websearch、lsp、skill。省略されたものは拒否されます。エイリアス: --tools | |
--model | -m | provider/model 形式で使用するモデル |
--path、--description、--mode、--permissions のすべてを渡すと、コマンドは非対話的に実行されます。
list
利用可能なすべてのエージェントを一覧表示します。
opencode agent listattach
serve または web コマンドで起動された、既に実行中の OpenCode バックエンドサーバーにターミナルをアタッチします。
opencode attach [url]これにより、リモートの OpenCode バックエンドで TUI を使用できます。例えば:
# Start the backend server for web/mobile access
opencode web --port 4096 --hostname 0.0.0.0
# In another terminal, attach the TUI to the running backend
opencode attach http://10.20.30.40:4096Flags
| Flag | Short | Description |
|---|---|---|
--dir | TUI を起動する作業ディレクトリ | |
--continue | -c | 最後のセッションを続行します |
--session | -s | 続行するセッション ID |
--fork | 続行時にセッションをフォークします(--continue または --session とともに使用) | |
--password | -p | Basic 認証のパスワード(デフォルトは OPENCODE_SERVER_PASSWORD) |
--username | -u | Basic 認証のユーザー名(デフォルトは OPENCODE_SERVER_USERNAME または opencode) |
auth
プロバイダーの認証情報とログインを管理するコマンド。
opencode auth [command]login
OpenCode は Models.dev (opens in a new tab) のプロバイダーリストを利用しているため、opencode auth login を使って、使いたい任意のプロバイダーの API キーを設定できます。これは ~/.local/share/opencode/auth.json に保存されます。
opencode auth loginOpenCode は起動時に、認証情報ファイルからプロバイダーを読み込みます。また、環境やプロジェクトの .env ファイルに定義されたキーがあれば、それも読み込みます。
Flags
| Flag | Short | Description |
|---|---|---|
--provider | -p | ログインするプロバイダーの ID または名前 |
--method | -m | 使用するログイン方法のラベル。方法の選択をスキップします |
list
認証情報ファイルに保存されている、認証済みのすべてのプロバイダーを一覧表示します。
opencode auth listまたは短縮版。
opencode auth lslogout
認証情報ファイルからプロバイダーを消去して、ログアウトします。
opencode auth logoutgithub
リポジトリの自動化のための GitHub エージェントを管理します。
opencode github [command]install
リポジトリに GitHub エージェントをインストールします。
opencode github installこれは、必要な GitHub Actions ワークフローをセットアップし、設定プロセスを案内します。詳しくはこちら。
run
GitHub エージェントを実行します。これは通常 GitHub Actions で使用されます。
opencode github runFlags
| Flag | Description |
|---|---|
--event | エージェントを実行する GitHub のモックイベント |
--token | GitHub の個人アクセストークン |
mcp
Model Context Protocol サーバーを管理します。
opencode mcp [command]add
設定に MCP サーバーを追加します。
opencode mcp addこのコマンドは、ローカルまたはリモートの MCP サーバーの追加を案内します。
list
設定されたすべての MCP サーバーとその接続状態を一覧表示します。
opencode mcp listまたは短縮版を使用します。
opencode mcp lsauth
OAuth 対応の MCP サーバーで認証します。
opencode mcp auth [name]サーバー名を指定しない場合、利用可能な OAuth 対応サーバーから選択するよう促されます。
OAuth 対応サーバーとその認証ステータスを一覧表示することもできます。
opencode mcp auth listまたは短縮版を使用します。
opencode mcp auth lslogout
MCP サーバーの OAuth 認証情報を削除します。
opencode mcp logout [name]debug
MCP サーバーの OAuth 接続の問題をデバッグします。
opencode mcp debug <name>models
設定されたプロバイダーから利用可能なすべてのモデルを一覧表示します。
opencode models [provider]このコマンドは、設定されたプロバイダー全体で利用可能なすべてのモデルを provider/model の形式で表示します。
これは、設定で使用する正確なモデル名を把握するのに便利です。
任意でプロバイダー ID を渡して、そのプロバイダーでモデルをフィルタリングできます。
opencode models anthropicFlags
| Flag | Description |
|---|---|
--refresh | models.dev からモデルキャッシュを更新します |
--verbose | より詳細なモデル出力を使用します(コストなどのメタデータを含みます) |
--refresh フラグを使って、キャッシュされたモデルリストを更新します。これは、プロバイダーに新しいモデルが追加され、それを OpenCode で確認したい場合に便利です。
opencode models --refreshrun
プロンプトを直接渡して、opencode を非対話モードで実行します。
opencode run [message..]これは、スクリプト作成、自動化、または完全な TUI を起動せずに素早く答えを得たい場合に便利です。例えば。
opencode run Explain the use of context in Go実行のたびに MCP サーバーのコールドブート時間を避けるため、実行中の opencode serve インスタンスにアタッチすることもできます:
# Start a headless server in one terminal
opencode serve
# In another terminal, run commands that attach to it
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"Flags
| Flag | Short | Description |
|---|---|---|
--command | 実行するコマンド。引数には message を使用します | |
--continue | -c | 最後のセッションを続行します |
--session | -s | 続行するセッション ID |
--fork | 続行時にセッションをフォークします(--continue または --session とともに使用) | |
--share | セッションを共有します | |
--model | -m | provider/model の形式で使用するモデル |
--agent | 使用するエージェント | |
--file | -f | メッセージに添付するファイル |
--format | 形式: default(整形済み)または json(生の JSON イベント) | |
--title | セッションのタイトル(値が指定されない場合は切り詰められたプロンプトを使用) | |
--attach | 実行中の opencode サーバーにアタッチします(例: http://localhost:4096 (opens in a new tab)) | |
--password | -p | Basic 認証のパスワード(デフォルトは OPENCODE_SERVER_PASSWORD) |
--username | -u | Basic 認証のユーザー名(デフォルトは OPENCODE_SERVER_USERNAME または opencode) |
--dir | 実行するディレクトリ、またはアタッチ時のリモートサーバー上のパス | |
--port | ローカルサーバーのポート(デフォルトはランダムなポート) | |
--variant | モデルバリアント(プロバイダー固有の推論努力) | |
--thinking | 思考ブロックを表示します | |
--dangerously-skip-permissions | 明示的に拒否されていない権限を自動承認します(危険!) |
serve
API アクセス用のヘッドレス OpenCode サーバーを起動します。完全な HTTP インターフェースについてはサーバーのドキュメントをご覧ください。
opencode serveこれは、TUI インターフェースなしで opencode の機能への API アクセスを提供する HTTP サーバーを起動します。HTTP basic 認証を有効にするには OPENCODE_SERVER_PASSWORD を設定します(ユーザー名のデフォルトは opencode)。
Flags
| Flag | Description |
|---|---|
--port | 待ち受けるポート |
--hostname | 待ち受けるホスト名 |
--mdns | mDNS 検出を有効にします |
--mdns-domain | カスタムの mDNS ドメイン名 |
--cors | CORS を許可する追加のブラウザオリジン |
session
OpenCode のセッションを管理します。
opencode session [command]list
すべての OpenCode セッションを一覧表示します。
opencode session listFlags
| Flag | Short | Description |
|---|---|---|
--max-count | -n | 最新の N 件のセッションに制限します |
--format | 出力形式: table または json(table) |
delete
OpenCode のセッションを削除します。
opencode session delete <sessionID>stats
OpenCode セッションのトークン使用量とコストの統計を表示します。
opencode statsFlags
| Flag | Description |
|---|---|
--days | 直近 N 日間の統計を表示します(全期間) |
--tools | 表示するツールの数(all) |
--models | モデル使用状況の内訳を表示します(デフォルトでは非表示)。上位 N 件を表示するには数値を渡します |
--project | プロジェクトでフィルタリングします(全プロジェクト、空文字列: 現在のプロジェクト) |
export
セッションデータを JSON としてエクスポートします。
opencode export [sessionID]セッション ID を指定しない場合、利用可能なセッションから選択するよう促されます。
Flags
| Flag | Description |
|---|---|
--sanitize | 機密性の高いトランスクリプト/ファイルデータを編集(マスク)します |
import
JSON ファイルまたは OpenCode の共有 URL からセッションデータをインポートします。
opencode import <file>ローカルファイルまたは OpenCode の共有 URL からインポートできます。
opencode import session.json
opencode import https://opncd.ai/s/abc123web
Web インターフェースを備えたヘッドレス OpenCode サーバーを起動します。
opencode webこれは HTTP サーバーを起動し、Web インターフェースを通じて OpenCode にアクセスするために Web ブラウザを開きます。HTTP basic 認証を有効にするには OPENCODE_SERVER_PASSWORD を設定します(ユーザー名のデフォルトは opencode)。
Flags
| Flag | Description |
|---|---|
--port | 待ち受けるポート |
--hostname | 待ち受けるホスト名 |
--mdns | mDNS 検出を有効にします |
--mdns-domain | カスタムの mDNS ドメイン名 |
--cors | CORS を許可する追加のブラウザオリジン |
acp
ACP(Agent Client Protocol)サーバーを起動します。
opencode acpこのコマンドは、nd-JSON を使って stdin/stdout 経由で通信する ACP サーバーを起動します。
Flags
| Flag | Description |
|---|---|
--cwd | 作業ディレクトリ |
--port | 待ち受けるポート |
--hostname | 待ち受けるホスト名 |
--mdns | mDNS 検出を有効にします |
--mdns-domain | カスタムの mDNS ドメイン名 |
--cors | CORS を許可する追加のブラウザオリジン |
plugin
プラグインをインストールして設定を更新します。
opencode plugin <module>またはエイリアスを使用します。
opencode plug <module>Flags
| Flag | Short | Description |
|---|---|---|
--global | -g | グローバル設定にインストールします |
--force | -f | 既存のプラグインバージョンを置き換えます |
pr
GitHub PR ブランチをフェッチしてチェックアウトし、OpenCode を実行します。
opencode pr <number>db
データベースツール。
opencode db [query]Flags
| Flag | Description |
|---|---|
--format | 出力形式: json または tsv |
path
データベースのパスを出力します。
opencode db pathdebug
デバッグとトラブルシューティングのツール。
opencode debug [command]uninstall
OpenCode をアンインストールし、関連するすべてのファイルを削除します。
opencode uninstallFlags
| Flag | Short | Description |
|---|---|---|
--keep-config | -c | 設定ファイルを残します |
--keep-data | -d | セッションデータとスナップショットを残します |
--dry-run | 削除せずに削除されるものを表示します | |
--force | -f | 確認のプロンプトをスキップします |
upgrade
opencode を最新バージョンまたは特定のバージョンに更新します。
opencode upgrade [target]最新バージョンにアップグレードするには。
opencode upgrade特定のバージョンにアップグレードするには。
opencode upgrade v0.1.48Flags
| Flag | Short | Description |
|---|---|---|
--method | -m | 使用したインストール方法: curl、npm、pnpm、bun、brew |
Global Flags
opencode CLI は、次のグローバルフラグを受け付けます。
| Flag | Short | Description |
|---|---|---|
--help | -h | ヘルプを表示します |
--version | -v | バージョン番号を出力します |
--print-logs | ログを stderr に出力します | |
--log-level | ログレベル(DEBUG、INFO、WARN、ERROR) | |
--pure | 外部プラグインなしで実行します |
Environment variables
OpenCode は環境変数を使って設定できます。
| Variable | Type | Description |
|---|---|---|
OPENCODE_AUTO_SHARE | boolean | セッションを自動的に共有します |
OPENCODE_GIT_BASH_PATH | string | Windows 上の Git Bash 実行ファイルへのパス |
OPENCODE_CONFIG | string | 設定ファイルへのパス |
OPENCODE_TUI_CONFIG | string | TUI 設定ファイルへのパス |
OPENCODE_CONFIG_DIR | string | 設定ディレクトリへのパス |
OPENCODE_CONFIG_CONTENT | string | インラインの json 設定内容 |
OPENCODE_DISABLE_AUTOUPDATE | boolean | 自動更新チェックを無効にします |
OPENCODE_DISABLE_PRUNE | boolean | 古いデータの削除を無効にします |
OPENCODE_DISABLE_TERMINAL_TITLE | boolean | ターミナルタイトルの自動更新を無効にします |
OPENCODE_PERMISSION | string | インライン化された json 権限設定 |
OPENCODE_DISABLE_DEFAULT_PLUGINS | boolean | デフォルトのプラグインを無効にします |
OPENCODE_DISABLE_LSP_DOWNLOAD | boolean | LSP サーバーの自動ダウンロードを無効にします |
OPENCODE_ENABLE_EXPERIMENTAL_MODELS | boolean | 実験的なモデルを有効にします |
OPENCODE_DISABLE_AUTOCOMPACT | boolean | コンテキストの自動圧縮を無効にします |
OPENCODE_DISABLE_CLAUDE_CODE | boolean | .claude からの読み取りを無効にします(プロンプト + スキル) |
OPENCODE_DISABLE_CLAUDE_CODE_PROMPT | boolean | ~/.claude/CLAUDE.md の読み取りを無効にします |
OPENCODE_DISABLE_CLAUDE_CODE_SKILLS | boolean | .claude/skills の読み込みを無効にします |
OPENCODE_DISABLE_MODELS_FETCH | boolean | リモートソースからのモデルのフェッチを無効にします |
OPENCODE_DISABLE_MOUSE | boolean | TUI でのマウスキャプチャを無効にします |
OPENCODE_FAKE_VCS | string | テスト目的の偽の VCS プロバイダー |
OPENCODE_CLIENT | string | クライアント識別子(デフォルトは cli) |
OPENCODE_ENABLE_EXA | boolean | Exa web 検索ツールを有効にします |
OPENCODE_SERVER_PASSWORD | string | serve/web の basic 認証を有効にします |
OPENCODE_SERVER_USERNAME | string | basic 認証のユーザー名を上書きします(デフォルト opencode) |
OPENCODE_MODELS_URL | string | モデル設定をフェッチするためのカスタム URL |
Experimental
これらの環境変数は、変更されたり削除されたりする可能性のある実験的な機能を有効にします。
| Variable | Type | Description |
|---|---|---|
OPENCODE_EXPERIMENTAL | boolean | すべての実験的な機能を有効にします |
OPENCODE_EXPERIMENTAL_ICON_DISCOVERY | boolean | アイコン検出を有効にします |
OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT | boolean | TUI での選択時コピーを無効にします |
OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS | number | bash コマンドのデフォルトタイムアウト(ミリ秒) |
OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX | number | LLM レスポンスの最大出力トークン |
OPENCODE_EXPERIMENTAL_FILEWATCHER | boolean | ディレクトリ全体のファイルウォッチャーを有効にします |
OPENCODE_EXPERIMENTAL_OXFMT | boolean | oxfmt フォーマッターを有効にします |
OPENCODE_EXPERIMENTAL_LSP_TOOL | boolean | 実験的な LSP ツールを有効にします |
OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER | boolean | ファイルウォッチャーを無効にします |
OPENCODE_EXPERIMENTAL_EXA | boolean | 実験的な Exa 機能を有効にします |
OPENCODE_EXPERIMENTAL_LSP_TY | boolean | python ファイル向けの TY LSP を有効にします |
OPENCODE_EXPERIMENTAL_PLAN_MODE | boolean | plan モードを有効にします |