本次介紹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

+ 不同工作區有不同Sessions

Session 依工作區切分,不同工作區有不同的Session清單

2.2.2 模型切換(Models)

命令 功能 使用場景
/connect 更換模型供應商 切換到不同的供應商,例如從 OpenAI 換到 Claude
/models 開啟模型列表 切換不同 LLM,例如從 GPT-5 換到 Opus-4.7
省錢小技巧: OpenCode Zen適用

輸入 /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 + EnterCtrl + 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. 最佳實踐遵循情況
frontmatter 可選欄位
  • description:命令說明(在 TUI 中顯示)
  • agent:指定由哪個 Agent 執行(如 buildplan
  • 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\" }"
```
  • $1config.json
  • $2src
  • $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 元件。
檢查效能問題並提出改進建議。

檔案內容會自動被包含在提示詞中。

自訂命令 vs 內建命令

如果你定義了和內建命令同名的自訂命令(例如自訂的 /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 教學影片

https://youtu.be/fkLr0diCMrk

##