Skip to content

OpenCode CLI 使用

OpenCode 提供了强大的命令行接口(CLI),不仅可以启动交互式 TUI,还可以通过命令实现自动化、脚本化操作。

默认情况下,OpenCode CLI 会启动 TUI,但它的真正能力在于可编程调用。

OpenCode CLI 不只是一个命令工具,而是一个可编程的 AI 开发接口。

OpenCode CLI 可以抽象为三层:

  • 交互层tui / web / attach
  • 执行层run / agent / mcp / github
  • 服务层serve / acp

👉 本质是一个AI Agent + 本地开发环境 + 可编程 CLI + Server API的统一入口。

下面是 OpenCode CLI 命令完整表:

基础行为

命令/用法作用说明备注
opencode默认启动 TUI无参数时
opencode run "msg"非交互执行任务自动化/脚本

tui 启动参数

标志简写作用说明
--continue-c继续上一次会话
--session-s指定会话 ID
--fork分叉会话
--prompt初始提示词
--model-m指定模型
--agent指定代理
--port监听端口
--hostname主机地址

核心 CLI 命令

命令作用说明关键子命令
agent管理代理create / list
auth管理认证login / list / logout
attach连接远程后端
githubGitHub 自动化install / run
mcpMCP 服务管理add / list / auth / debug
models查看模型列表
run非交互执行
serve启动 API 服务
webWeb UI 服务
session会话管理list
statsToken/费用统计
export导出会话
import导入会话
acp启动 ACP 协议服务
uninstall卸载
upgrade升级版本

run 命令参数

标志简写作用说明
--continue-c继续会话
--session-s指定会话
--fork分叉
--share分享会话
--model-m指定模型
--agent指定代理
--file-f附加文件
--format输出格式(json)
--title会话标题
--attach连接已有服务
--port本地端口

服务类命令参数

serve / web / acp

标志作用说明
--port监听端口
--hostname主机地址
--mdns局域网发现
--cors允许跨域

session / stats 参数

命令标志说明
session--max-count (-n)最近 N 条
session--formattable/json
stats--days最近 N 天
stats--tools工具统计
stats--models模型用量
stats--project项目筛选

全局标志

标志简写作用说明
--help-h帮助
--version-v版本
--print-logs输出日志
--log-level日志级别

环境变量

变量类型作用
OPENCODE_AUTO_SHAREboolean自动分享
OPENCODE_CONFIGstring配置路径
OPENCODE_TUI_CONFIGstringTUI 配置
OPENCODE_DISABLE_AUTOUPDATEboolean禁用更新
OPENCODE_SERVER_PASSWORDstringAPI 认证
OPENCODE_MODELS_URLstring模型源

实验性功能

变量类型作用
OPENCODE_EXPERIMENTALboolean启用全部实验功能
OPENCODE_EXPERIMENTAL_LSP_TOOLbooleanLSP 工具
OPENCODE_EXPERIMENTAL_PLAN_MODEboolean规划模式
OPENCODE_EXPERIMENTAL_FILEWATCHERboolean文件监听

一、基础用法

1、启动 TUI(默认行为)

bash
opencode

等同于进入交互式终端界面

8c39119d-fc3a-4074-8ba8-6212a1644b8e.png

2、指定项目目录

bash
opencode /path/to/project

在指定目录中启动 TUI,例如在 opencode-runoob-test 目录中启动 :

bash
opencode opencode-runoob-test

b3ed6348-4a1c-4422-aacc-3edb0145edca.png

3、非交互模式(脚本调用)

bash
opencode run 解释一下 JavaScript 中闭包的原理

直接返回结果,不进入界面。


二、CLI 核心能力

OpenCode CLI 的核心能力可以总结为三类:

  • **交互模式:**TUI(默认)
  • **命令执行:**run / serve
  • **系统管理:**agent / auth / session 等

三、常用参数(Flags)

参数简写说明
--continue-c继续上一个会话
--session-s指定会话 ID
--fork从当前会话分叉
--model-m指定模型(provider/model)
--agent指定代理
--port服务端口
--hostname监听地址

四、核心命令详解

1、run(最常用)

用于非交互执行:

bash
opencode run 分析这个 Go 项目的上下文使用方式

适用场景:

  • 脚本自动化
  • CI/CD
  • 快速问答

连接后台服务(避免冷启动)

bash
# 启动后台服务
opencode serve

# 使用 run 连接
opencode run --attach http://localhost:4096 解释 async/await

常用参数

参数说明
--model指定模型
--file附加文件
--format输出格式(json / 默认)
--share分享会话

五、auth(认证管理)

登录

bash
opencode auth login

配置 API Key(存储在本地)


查看已登录提供商

bash
opencode auth list

退出登录

bash
opencode auth logout

六、models(模型管理)

查看所有模型

bash
opencode models

按提供商筛选

bash
opencode models anthropic

刷新模型列表

bash
opencode models --refresh

七、agent(代理系统)

创建代理

bash
opencode agent create

可自定义提示词 + 工具

查看代理

bash
opencode agent list

八、session(会话管理)

查看会话

bash
opencode session list

限制数量

bash
opencode session list -n 10

九、serve(服务模式)

启动 API 服务:

bash
opencode serve

提供 HTTP 接口(无界面)

可选参数:

  • --port:端口
  • --hostname:监听地址

十、web(Web UI)

bash
opencode web

启动带网页界面的版本


十一、mcp(扩展能力)

添加 MCP 服务

bash
opencode mcp add

查看列表

bash
opencode mcp list

MCP 用于扩展 AI 能力(如工具调用)


十二、stats(使用统计)

bash
opencode stats

查看 Token 使用量与费用


十三、export / import

导出会话

bash
opencode export

导入会话

bash
opencode import session.json

十四、升级与卸载

升级

bash
opencode upgrade

卸载

bash
opencode uninstall

十五、全局参数

参数说明
--help查看帮助
--version查看版本
--log-level日志级别

十六、环境变量(高级配置)

OpenCode 支持通过环境变量控制行为,例如:

bash
OPENCODE_DISABLE_AUTOUPDATE=true
OPENCODE_SERVER_PASSWORD=123456

常见用途:

  • 关闭自动更新
  • 配置服务认证
  • 自定义配置路径

十七、使用建议(重点)

  • 日常开发使用 TUI
  • 自动化使用 run
  • 复杂任务结合 agent
  • 高频调用使用 serve + attach

AI 思考中...

OpenCode TUI(终端界面)

OpenCode Web 使用

基于 VitePress 构建,部署于 GitHub Pages