CLI 与命令系统

无参数行为

opencode 不带参数默认启动 TUI。

主要子命令

子命令用途
opencode [project]启动 TUI(-c 续上次会话,-s 指定 session,--model/-m,--agent,--auto 自动批准非明确拒绝的权限)
opencode run [message..]非交互模式,脚本化/自动化跑一次任务;支持 --attach 附着到 opencode serve 避免 MCP 冷启动
opencode serve启动无 UI 的 headless HTTP server,供 API 访问
opencode web启动 headless server + 打开浏览器 Web 界面
opencode attach [url]将 TUI attach 到已运行的远程 backend
opencode agent [create|list]管理 Agent,create 可交互式生成新 Agent
opencode auth [login|list|logout]管理各 Provider 的登录凭证(存于 ~/.local/share/opencode/auth.json),模型来源为 Models.dev
opencode mcp [add|list|auth|logout|debug]管理 MCP Server 连接
opencode models [provider]列出可用模型,--refresh 刷新缓存
opencode session [list|delete]管理会话
opencode stats查看 token 用量与费用统计
opencode export [sessionID] / import <file>会话导出导入 JSON(import 支持本地文件或 OpenCode share URL)
opencode github [install|run]GitHub Action 集成安装与运行
opencode acp启动 ACP(Agent Client Protocol)server,stdin/stdout nd-JSON
opencode plugin <module>(别名 plug)安装插件并更新配置
opencode pr <number>拉取并 checkout 某 GitHub PR 分支后直接跑 opencode
opencode db [query] / opencode db path数据库查询工具/打印数据库路径
opencode debug [command]调试排障工具
opencode uninstall卸载(--keep-config/--keep-data/--dry-run)
opencode upgrade [target]升级到最新或指定版本,详见 升级机制

全局 Flags

-h/--help、-v/--version、--print-logs、--log-level(DEBUG/INFO/WARN/ERROR)、--pure(禁用外部插件运行)。

环境变量(节选,完整见官方文档)

变量说明
OPENCODE_CONFIG / OPENCODE_CONFIG_DIR / OPENCODE_CONFIG_CONTENT自定义配置文件/目录/内联内容
OPENCODE_DISABLE_AUTOUPDATE禁用自动更新
OPENCODE_DISABLE_CLAUDE_CODE / _PROMPT / _SKILLS关闭对 .claude 目录(prompt/skills)的读取
OPENCODE_SERVER_PASSWORD / OPENCODE_SERVER_USERNAMEserve/web 的 Basic Auth
大量 OPENCODE_EXPERIMENTAL_*实验特性开关(并行网络搜索、事件系统、workspace 支持等),随时可能变更或移除

TUI 内置命令

/init、/undo、/redo、/share、/help 等,另有 connect/compact/details/editor/exit/export/models/new/sessions/themes/thinking/unshare 等(详见 界面与客户端)。

自定义命令(Custom Commands)

用途:把重复性 prompt 固化为 /命令名。

两种定义方式(与 Agent系统 一致的模式):

  • JSON:opencode.json 的 command 字段
  • Markdown:~/.config/opencode/commands/ 或 .opencode/commands/ 下的 .md 文件,文件名即命令名

Prompt 模板支持的特殊语法:

语法作用
$ARGUMENTS整体参数替换
$1/$2/$3…位置参数
!`command`注入 bash 命令输出到 prompt(在项目根目录执行)
@filename引用文件内容并自动注入

配置项:template(必填,prompt 内容)、description(必填)、agent(指定执行的 Agent;若为 subagent 默认触发子任务调用,可用 subtask: false 关闭)、subtask(强制以 subagent 方式执行,避免污染主上下文)、model(覆盖模型)。

自定义命令可覆盖同名内置命令。

关联

来源

https://opencode.ai/docs/cli、https://opencode.ai/docs/commands(dev 分支)。整理:赵卫国 2026-07-07。