本回では、OpenCode の CLI(コマンドラインインターフェース)オプションと、TUI(テキストユーザーインターフェース)のスラッシュコマンドを紹介します。どちらも OpenCode のさまざまなシステム機能を提供します。
1 コマンドラインオプション
OpenCode のコマンドラインを何も指定せずに実行すると TUI モードが起動しますが、引数としてオプションを指定すると別の機能が動作します。以下に、よく使うコマンドオプションを紹介します。
| 機能 | コマンド | 説明 |
|---|---|---|
| オプション説明 | opencode help |
使用可能なコマンドラインオプションを表示する |
| バージョンアップ | opencode upgrade |
新しいバージョンがあるか確認し、あればアップグレードする |
| デバッグ | opencode debug |
すべてのデバッグオプションを表示する |
opencode debug config |
設定ファイルを確認する | |
opencode debug paths |
設定パスを表示する <br>home data bin log cache config state tmp | |
opencode debug skill |
すべてのスキルを表示する | |
| ベンダー | opencode providers list |
認可済みのベンダーを表示する |
| モデル | opencode models |
認可済みベンダーの大規模言語モデルを表示する |
opencode models nvidia |
特定のベンダーの大規模モデルを表示する | |
| MCP 管理 | opencode mcp list |
MCP サーバー一覧を表示する |
opencode mcp add |
対話形式で MCP サーバーを追加する |
2 スラッシュコマンド
2.1 スラッシュコマンド(Slash Commands)とは?
OpenCode の入力欄で / を入力すると、コマンドパネルが表示されます。スラッシュで始まるこれらのコマンドを使えば、複雑なショートカットを覚えなくても、さまざまな操作をすばやく実行できます。AI エージェントの呼び出しや自動化機能への「入り口」として機能します。
スラッシュコマンドは「クイックメニュー」のようなものだと考えてください。Discord や Notion で / を入力すると機能メニューが出てくるのと同じように、OpenCode でも一式のコマンドシステムが用意されています。
2.2 基本コマンド:まず覚えるべきもの
これらのコマンドは、OpenCode を開くたびに使う可能性が高いものです。最優先で覚えましょう。
2.2.1 会話管理(Session)
| コマンド | 機能 | 使用シーン |
|---|---|---|
/sessions |
すべての Session を一覧表示する | 複数のプロジェクト間を切り替えるとき |
/new |
新しい Session を作成する | まったく新しい会話テーマを始めたいとき |
/clear |
現在の Session をクリアする | /new と同様に、やり直したいとき |
/timeline |
Session のタイムラインを表示する | 以前の会話の流れを振り返るとき |
/export |
Session をエクスポートする | 重要な会話内容を保存したいとき |
/compact |
会話コンテキストを圧縮する | Token 使用量が多すぎるときに、過去の会話を自動要約する |
/exit / /quit / :q / /q |
OpenCode を終了する | プログラムを終えるとき |
多くの人は、1 つの Session でまったく関係のない話題をいくつも扱ってしまい、AI が混乱したり、Token 使用量が増えて無駄に費用がかかったりします。1 つの Session では 1 つのテーマだけを扱うのがおすすめです。話題を変えるときは /new を使いましょう。
Session はワークスペース単位で分かれており、異なるワークスペースごとに別の Session 一覧があります
2.2.2 モデル切り替え(Models)
| コマンド | 機能 | 使用シーン |
|---|---|---|
/connect |
モデルベンダーを変更する | たとえば OpenAI から Claude に切り替える |
/models |
モデル一覧を開く | GPT-5 から Opus-4.7 に切り替えるなど、LLM を変更する |
/models を入力したあと、Free と表示されているモデル(例: Nemotran 3 Super Free、MiniMax M2.5 Free)を選ぶと、無料で利用できます。テストや軽い用途に適しています。
2.2.3 編集と復元
| コマンド | 機能 | 使用シーン |
|---|---|---|
/undo |
1 つ前の変更を元に戻す | AI がコードを壊してしまったときの緊急復元 |
/redo |
やり直す | 元に戻したあとに再実行したいとき |
/copy |
内容をクリップボードにコピーする | AI が生成したコードや回答をすばやくコピーする |
/undo が元に戻すのはファイルの変更であり、会話内容ではありません。AI が 3 つのファイルを修正した場合、/undo を入力するとそれらの変更を段階的に巻き戻せます。
2.3 高度なコマンド:効率をさらに上げる
基本を押さえたら、これらのコマンドで作業フローをよりスムーズにできます。
2.3.1 インターフェース制御
| コマンド | 機能 | 対応ショートカット |
|---|---|---|
/editor |
エディタを開く | <leader> + e |
/themes |
テーマを切り替える | <leader> + t |
/status |
ステータスを表示する | <leader> + s |
/agents |
Agent 一覧を表示する | <leader> + a |
2.3.2 Skills(スキルシステム)
Skills は OpenCode の「プラグインスクリプト」のようなもので、AI に特定分野の能力を持たせます。
| コマンド | 機能 | 例 |
|---|---|---|
/skills |
利用可能な Skills を一覧表示する | インストール済みのスキルを確認する |
/<skill-name> |
特定の Skill を呼び出す | /obsidian-cli で Obsidian CLI スキルを有効にする |
おすすめのよく使う Skills:
| Skill 名 | 用途 |
|---|---|
obsidian-markdown |
Obsidian 専用の Markdown 構文を処理する |
obsidian-bases |
データベースビュー(.base ファイル)を作成する |
json-canvas |
ビジュアルキャンバス(.canvas ファイル)を作成する |
ui-ux-pro-max |
フロントエンドの UI/UX 設計を支援する |
2.4 実用テクニック:スラッシュコマンドをもっと便利に使う
2.4.1 @ でファイルを参照する
入力欄で @ を入力すると、作業ディレクトリ内のファイル一覧が表示され、ファイル名の一部を入力すればすばやく絞り込めます。
@index.jsp の SQL インジェクション脆弱性を確認してください
2.4.2 複数行入力で誤送信しない
- 改行:
Shift + EnterまたはCtrl + J(最も安定) - 送信:
Enter - クリア:
Ctrl + C
複数行の prompt を入力している途中で誤って Enter を押し、メッセージを早く送信してしまうことがあります。改行は Shift + Enter を使う習慣をつけましょう。
2.4.3 コマンドパネル
Ctrl + P を押すとコマンドパネルが開き、方向キーで選択できます。コマンド名を丸暗記する必要はありません。
2.4.4 カスタムコマンド(Custom Commands)
よく使うプロンプトを 1 回の呼び出しにまとめる形で、自分専用のスラッシュコマンドを作成できます。定義方法は 2 つあります。
2.4.4.1 Markdown ファイル(推奨)
以下のディレクトリに .md ファイルを作成します。ファイル名がコマンド名になります。
| ディレクトリ | 適用範囲 |
|---|---|
.opencode/commands/ |
プロジェクト単位(そのプロジェクトでのみ有効) |
~/.config/opencode/commands/ |
グローバル(すべてのプロジェクトで有効) |
---
description: コードレビュー
agent: plan
model: anthropic/claude-sonnet-4-20250514
---
現在のファイルをコードレビューしてください。以下の点に注目してください:
1. 潜在的なパフォーマンス問題
2. セキュリティ脆弱性
3. コードの可読性
4. ベストプラクティスへの準拠状況
description:コマンドの説明(TUI 上に表示される)agent:どの Agent で実行するかを指定する(build、planなど)model:既定モデルを上書きするsubtask:trueにすると、サブエージェントとして強制的に実行する(メインコンテキストを汚さない)
必須なのは template(プロンプト本文) のみで、その他はすべて任意です。
2.4.4.2 JSON 設定
opencode.json で JSON として定義することもできます。
{
"command": {
"review": {
"template": "現在のファイルをコードレビューしてください。以下の点に注目してください:\n1. 潜在的なパフォーマンス問題\n2. セキュリティ脆弱性\n3. コードの可読性\n4. ベストプラクティスへの準拠状況",
"description": "コードレビュー",
"agent": "plan",
"model": "anthropic/claude-sonnet-4-20250514"
}
}
}
2.4.5 引数の受け渡し
$ARGUMENTS を使うと、コマンドの後ろに続く文字列をプロンプトに渡せます。
---
description: 新しいコンポーネントを作成
---
TypeScript を使って、$ARGUMENTS という名前の React コンポーネントを作成し、適切な型定義と基本構造を含めてください。
/component Button を実行すると、$ARGUMENTS は Button に置き換えられます。
位置引数で個別の値を取得することもできます($1、$2、$3…)。
---
description: ファイルを作成
---
$2 ディレクトリに、$1 という名前のファイルを作成し、内容を次のようにしてください:$3
```
```bash
/create-file config.json src "{ \"key\": \"value\" }"
```
$1→config.json$2→src$3→{ "key": "value" }
2.4.6 Shell コマンドの埋め込み
!\command`` 構文を使って、Bash コマンドの出力をプロンプトに埋め込めます。
---
description: テストカバレッジを分析
---
現在のテスト結果は以下のとおりです:
!\`npm test\`
以上の結果をもとに、テストカバレッジを向上させる方法を提案してください。
---
description: 最近の変更をレビュー
---
最近の Git コミット履歴:
!\`git log --oneline -10\`
これらの変更をレビューし、改善案を提示してください。
コマンドはプロジェクトのルートディレクトリで実行され、その出力はそのままプロンプトの一部になります。
2.4.7 ファイル参照
コマンド内で @ を使ってファイルを参照できます。
---
description: コンポーネントをレビュー
---
@src/components/Button.tsx コンポーネントをレビューしてください。
パフォーマンス問題を確認し、改善案を提案してください。
ファイルの内容は自動的にプロンプトへ含まれます。
既定コマンドと同じ名前のカスタムコマンド(たとえば自作の /undo)を定義すると、カスタムコマンドが既定コマンドを上書きします。名前を付ける前に、重要な機能を誤って上書きしないよう必ず確認してください。
2.5 早見表:よく使うスラッシュコマンド一覧
| カテゴリ | コマンド | 機能 |
|---|---|---|
| 会話 | /new, /clear |
新しい会話 |
/sessions |
会話一覧 | |
/timeline |
タイムライン | |
/export |
エクスポート | |
/compact |
コンテキスト圧縮 | |
/share |
Session を共有 | |
/exit, /quit, :q |
終了 | |
| モデル | /models |
モデル一覧 |
/context |
Token 使用量 | |
| 編集 | /undo |
元に戻す |
/redo |
やり直す | |
/copy |
コピー | |
| インターフェース | /editor |
エディタ |
/themes |
テーマ | |
/status |
ステータス | |
/agents |
Agent 一覧 | |
| 高度な機能 | /skills |
スキル一覧 |
/<skill> |
スキルを呼び出す | |
/help |
ヘルプを表示する | |
/init |
AGENTS.md を初期化する | |
/start-work |
計画の実行を開始する | |
/ulw |
Ultrawork モード | |
/refactor |
インテリジェントリファクタリング | |
/handoff |
引き継ぎ資料を作成する |
3 関連リンク
✅ 解説記事(繁体字中国語)
✅ Explanation article(English)
✅ 解説記事(日本語)
4 教学動画
##