本次介紹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 server清單 |
opencode mcp add |
交互式新增MCP server |
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 | 結束程式 |
很多人會在一個 Session 裡聊好幾個完全不相關的主題,導致 AI 混淆,而且也增加了Tokens用量,平白浪費了費用。建議一個 Session 只處理一個主題,切換主題就用 /new。
Session 依工作區切分,不同工作區有不同的Session清單
2.2.2 模型切換(Models)
| 命令 | 功能 | 使用場景 |
|---|---|---|
/connect |
更換模型供應商 | 切換到不同的供應商,例如從 OpenAI 換到 Claude |
/models |
開啟模型列表 | 切換不同 LLM,例如從 GPT-5 換到 Opus-4.7 |
輸入 /models 後,選擇標示 Free 的模型(如 Nemotran 3 Super Free、MiniMax M2.5 Free),就能免費使用。適合測試和輕度使用。
2.2.3 編輯與復原
| 命令 | 功能 | 使用場景 |
|---|---|---|
/undo |
還原上一步修改 | AI 改壞程式碼時緊急還原 |
/redo |
重做 | 後悔還原時用 |
/copy |
複製內容到剪貼簿 | 快速複製 AI 產生的程式碼或回覆 |
/undo 還原的是檔案修改,不是對話內容。如果 AI 幫你改了三個檔案,輸入 /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)
你可以建立自己的斜線命令,把常用提示詞(prompt)封裝成一鍵呼叫。有兩種定義方式:
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 教學影片
##