
调研时间:2026-03-26 | 数据来源:各工具官方文档
一、工具概述与定位
| 维度 | OpenCode | Claude Code | Codex CLI (OpenAI) |
|---|
| 定位 | 开源、Provider-agnostic 的 AI 编程 CLI | Anthropic 官方 Claude AI 编程 CLI | OpenAI 官方编程 Agent CLI |
| 开源 | ✅ 开源(opencode.ai) | ❌ 闭源 | ❌ 闭源 |
| Provider | 多 Provider(通过 models.dev 连接 Anthropic、OpenAI、Ollama、本地模型等) | 仅 Anthropic Claude 系列模型 | 仅 OpenAI GPT 系列模型(默认 o4-mini) |
| 认证方式 | API Key(可连接任意 Provider) | Anthropic 账号 / API Key | ChatGPT OAuth / Device Auth / API Key |
| 安装命令 | npm i -g opencode 或 brew install opencode-ai/tap/opencode | npm i -g @anthropic-ai/claude-code | npm i -g @openai/codex |
| 会话持久化 | ✅ 基于 Git 的快照/Undo 系统 | ✅ 支持多会话持久化 | ✅ 支持 Session Fork |
| TUI 界面 | ✅ 内置 TUI(可远程 attach) | ✅ 内置 REPL 交互 | ✅ 内置 TUI |
| 多 Agent | ✅ 支持多 Agent 配置 + Subagent | ✅ Subagent(.claude/agents/) | ❌ |
| MCP 支持 | ✅ 完整 MCP 服务器管理 | ✅ 完整 MCP 支持 | 部分支持 |
| 配置文件格式 | JSON / JSONC(opencode.json) | JSON(settings.json) | TOML(~/.codex/config.toml) |
二、核心命令清单
2.1 启动命令
| 分类 | OpenCode | Claude Code | Codex CLI |
|---|
| 交互式 TUI/REPL | opencode [project] | claude | codex [PROMPT] |
| 带初始提示启动 | opencode run "prompt" | claude "prompt" | codex "prompt" |
| 静默/脚本模式 | opencode run --format json "prompt" | claude -p "prompt" | codex exec "prompt" |
| 管道输入 | — | cat file | claude -p "explain" | — |
| Web 服务(无 TUI) | opencode serve [--port N] | — | — |
| Web UI 服务 | opencode web [--port N] | — | — |
| Desktop App | — | — | codex app [workspace] |
| ACP 服务 | opencode acp | — | — |
| 远端 Attach | opencode attach http://host:port | — | — |
2.2 会话管理
| 分类 | OpenCode | Claude Code | Codex CLI |
|---|
| 继续上次会话 | --continue, -c | --continue, -c | codex fork <session> |
| 按 ID/名称恢复 | --session <id>, --continue | --resume <id/name>, -r | codex fork <session> |
| 会话列表 | opencode session list | claude agents (list subagents) | — |
| 导出会话 | opencode export [sessionID] | /export [filename] | — |
| 导入会话 | `opencode import <file | url>` | — |
| Fork 会话 | --fork | /branch | codex fork <session> |
| 重命名会话 | — | — | — |
| 会话统计 | opencode stats [--days N] | /cost | — |
2.3 认证与账户
| 分类 | OpenCode | Claude Code | Codex CLI |
|---|
| 登录 | opencode auth login | claude auth login [--console] | codex login [--device-auth|--with-api-key] |
| 登出 | opencode auth logout | claude auth logout | codex logout |
| 认证状态 | opencode auth list | claude auth status [--text] | codex login status |
| 添加 Provider | /connect (TUI 中) | — | — |
2.4 模型管理
| 分类 | OpenCode | Claude Code | Codex CLI |
|---|
| 列出可用模型 | opencode models [provider] | — | — |
| 指定模型 | --model <provider/model> | --model <model> | --model <model>, -m |
| 本地/OSS 模式 | — | — | --oss (需 Ollama) |
| 刷新模型缓存 | opencode models --refresh | — | — |
2.5 MCP(Model Context Protocol)
| 分类 | OpenCode | Claude Code | Codex CLI |
|---|
| 添加 MCP 服务器 | opencode mcp add | claude mcp add | — |
| 列出 MCP 服务器 | opencode mcp list | claude mcp | — |
| MCP 认证 | opencode mcp auth <name> | — | — |
| MCP 登出 | opencode mcp logout <name> | — | — |
| MCP 调试 | opencode mcp debug <name> | — | — |
| 加载 MCP 配置 | — | --mcp-config <file> | — |
2.6 GitHub 集成
| 分类 | OpenCode | Claude Code | Codex CLI |
|---|
| 安装 GitHub Agent | opencode github install | /install-github-app | — |
| 运行 GitHub Agent | opencode github run [--event] [--token] | — | — |
2.7 Agent / Subagent 管理
| 分类 | OpenCode | Claude Code | Codex CLI |
|---|
| 创建 Agent | opencode agent create | — | — |
| 列出 Agent | opencode agent list | claude agents | — |
| 指定 Agent | --agent <name> | --agent <name> | — |
| 动态定义 Subagent | — | --agents '{"name":{...}}' | — |
| 自定义指令 | .opencode/agents/*.md | .claude/commands/*.md | — |
2.8 系统与维护
| 分类 | OpenCode | Claude Code | Codex CLI |
|---|
| 检查更新 | — | claude update | — |
| 升级 | opencode upgrade [version] | claude update | — |
| 卸载 | opencode uninstall [--keep-config] | — | — |
| 诊断 | — | /doctor | — |
| Debug 模式 | --print-logs --log-level DEBUG | --debug ["category"] | — |
| 版本号 | --version, -v | — | — |
三、TUI 内置命令对照
OpenCode TUI Slash Commands(/命令)
| 命令 | 说明 | 快捷键 |
|---|
/connect | 添加 Provider | — |
/compact / /summarize | 压缩会话上下文 | Ctrl+X C |
/details | 切换工具执行详情 | Ctrl+X D |
/editor | 打开外部编辑器编写消息 | Ctrl+X E |
/exit / /quit / /q | 退出 | Ctrl+X Q |
/export | 导出会话为 Markdown | Ctrl+X X |
/help | 显示帮助 | Ctrl+X H |
/init | 创建/更新 AGENTS.md | Ctrl+X I |
/models | 列出可用模型 | Ctrl+X M |
/new / /clear | 新建会话 | Ctrl+X N |
/redo | 重做(需 Git) | Ctrl+X R |
/sessions / /resume / /continue | 切换会话 | Ctrl+X L |
/share | 分享当前会话 | Ctrl+X S |
/themes | 列出可用主题 | Ctrl+X T |
/thinking | 切换推理过程显示 | — |
/undo | 撤销上一条消息(需 Git) | Ctrl+X U |
/unshare | 取消分享 | — |
Claude Code TUI Slash Commands(/命令)
| 命令 | 说明 |
|---|
/add-dir <path> | 添加工作目录 |
/agents | 管理 Subagent 配置 |
/btw <question> | 快速侧问(不加入对话) |
/chrome | Chrome 浏览器集成配置 |
/clear / /reset / /new | 清除对话历史 |
/color [color] | 设置提示栏颜色 |
/compact [instructions] | 压缩上下文 |
/config / /settings | 打开设置界面 |
/context | 可视化当前上下文使用量 |
/copy [N] | 复制上一条响应(可指定序号) |
/cost | 显示 Token 消耗统计 |
/desktop / /app | 切换到桌面 App |
/diff | 交互式 Diff 查看器 |
/doctor | 诊断安装问题 |
/effort [level] | 设置模型努力级别 |
/export [filename] | 导出对话 |
/feedback / /bug | 提交反馈 |
/branch / /fork | 分叉当前会话 |
/help | 帮助 |
/hooks | 查看 Hook 配置 |
/ide | IDE 集成管理 |
/init | 初始化 CLAUDE.md |
/insights | 生成会话分析报告 |
/install-github-app | 安装 GitHub Actions App |
/install-slack-app | 安装 Slack App |
/keybindings | 打开键盘绑定配置 |
/login / /logout | 登录/登出 |
/mcp | 管理 MCP 服务器 |
/memory | 编辑记忆文件 |
/model [name] | 切换模型 |
/package | 包依赖分析 |
/pr [number] | GitHub PR 交互 |
/reject | 拒绝当前提议 |
/search [query] | 语义搜索代码库 |
/security [scan] | 安全扫描 |
/simplify | 简化代码 |
/test | 生成测试 |
/upgrade | 升级 Claude Code |
/web | Web 搜索 |
/羊毛 | — |
Codex CLI TUI 交互
| 操作 | 说明 |
|---|
| 在 composer 中输入 | 自然语言提示 |
Esc Esc(空 composer 时) | 编辑上一条消息 |
Esc Esc(重复) | Fork transcript 历史 |
/theme | 预览/保存颜色主题 |
| 接受/拒绝 Codex 计划 | 内联确认 |
四、快捷键对照
OpenCode Keybinds(Leader: Ctrl+X)
| 快捷键 | 功能 |
|---|
Ctrl+X N | 新建会话 |
Ctrl+X C | 压缩会话 |
Ctrl+X L | 会话列表/切换 |
Ctrl+X S | 分享会话 |
Ctrl+X X | 导出会话 |
Ctrl+X U | 撤销(基于 Git) |
Ctrl+X R | 重做 |
Ctrl+X E | 打开外部编辑器 |
Ctrl+X T | 主题切换 |
Ctrl+X M | 模型列表 |
Ctrl+X A | Agent 列表 |
Ctrl+X Q | 退出 |
Ctrl+X H | 显示/隐藏提示 |
Ctrl+X B | 侧边栏开关 |
Ctrl+X I | 初始化 AGENTS.md |
Ctrl+X D | 工具详情开关 |
F2 | 循环切换最近模型 |
Shift+F2 | 反向切换最近模型 |
Tab / Shift+Tab | 循环切换 Agent |
Ctrl+P | 命令面板 |
↑ / ↓ | 历史消息导航 |
Ctrl+G / Home | 跳转到首条消息 |
Ctrl+Alt+G / End | 跳转到末条消息 |
PageUp / PageDown | 上/下翻页 |
Ctrl+Alt+U/D | 半页上/下滚动 |
桌面 App 快捷键(Readline/Emacs 风格)
| 快捷键 | 功能 |
|---|
Ctrl+A | 跳到行首 |
Ctrl+E | 跳到行尾 |
Ctrl+B / Ctrl+F | 前/后移动一个字符 |
Alt+B / Alt+F | 前/后移动一个单词 |
Ctrl+D | 删除光标处字符 |
Ctrl+K | 删除到行尾 |
Ctrl+U | 删除到行首 |
Ctrl+W | 删除前一个单词 |
Alt+D | 删除后一个单词 |
Ctrl+G | 取消弹窗/中断响应 |
Claude Code 快捷键
Claude Code 官方文档未提供完整快捷键列表,主要通过 /keybindings 命令管理。部分功能通过环境变量(如 CLAUDE_CODE_SIMPLE)控制行为。
五、核心 Flag 对照
5.1 会话与上下文
| Flag | OpenCode | Claude Code | Codex CLI |
|---|
| 继续会话 | --continue, -c | --continue, -c | — |
| 恢复指定会话 | --session <id> | --resume <id/name>, -r | codex fork <session> |
| Fork 会话 | --fork | --fork-session | codex fork |
| 指定会话 ID | — | --session-id <uuid> | — |
| 压缩会话 | /compact | /compact | — |
| 清空会话 | /new | /clear | — |
5.2 模型与 Provider
| Flag | OpenCode | Claude Code | Codex CLI |
|---|
| 指定模型 | --model <provider/model> | --model <name> | --model, -m |
| 轻量模型 | --small-model(配置项) | — | — |
| 本地/OSS | — | — | --oss |
| Provider | 自动(多 Provider) | — | --provider, -p |
| 刷新模型列表 | --refresh | — | — |
5.3 输出与格式化
| Flag | OpenCode | Claude Code | Codex CLI |
|---|
| 输出格式 | --format json|default | --output-format text|json|stream-json | --json|--experimental-json |
| JSON Schema | — | --json-schema <schema> | --output-schema <path> |
| 静默模式 | — | --print, -p | --quiet, -q |
| 最大消耗 | — | --max-budget-usd <amount> | — |
| 最大轮次 | — | --max-turns <N> | — |
| 最终消息输出到文件 | — | — | --output-last-message, -o |
5.4 权限与沙箱
| Flag | OpenCode | Claude Code | Codex CLI |
|---|
| 允许的工具 | — | --allowedTools | — |
| 禁止的工具 | — | --disallowedTools | — |
| 权限绕过 | — | --dangerously-skip-permissions | --sandbox read-only|workspace-write|danger-full-access |
| 审批模式 | 配置项 permission.edit | --permission-mode plan|apply|bypass | --ask-for-approval, -a |
| 信任的工具 | tools 配置项 | --allowedTools | — |
5.5 目录与环境
| Flag | OpenCode | Claude Code | Codex CLI |
|---|
| 工作目录 | 直接指定路径 | — | --cd, -C |
| 添加工作目录 | — | --add-dir | --add-dir |
| 跳过 Git 检查 | — | — | --skip-git-repo-check |
| 配置文件 | OPENCODE_CONFIG | --settings <file> | --profile, -p |
5.6 调试与诊断
| Flag | OpenCode | Claude Code | Codex CLI |
|---|
| Debug 模式 | --print-logs --log-level DEBUG | --debug ["category"] | — |
| 打印日志 | --print-logs | — | — |
| 日志级别 | --log-level DEBUG|INFO|WARN|ERROR | — | — |
| 诊断 | — | /doctor | — |
5.7 其他重要 Flag
| Flag | OpenCode | Claude Code | Codex CLI |
|---|
| Bare 模式(快速启动) | — | --bare | — |
| Chrome 集成 | — | --chrome / --no-chrome | — |
| 禁用 Slash 命令 | — | --disable-slash-commands | — |
| 挂载系统提示 | — | --append-system-prompt | — |
| 替换系统提示 | — | --system-prompt | — |
| 挂载文件到消息 | --file <path> | @filename(TUI 内) | --image <path> |
| Web 搜索 | — | /search | --search |
| 自动升级 | autoupdate: true(配置) | claude update | — |
| 远端控制 | — | --remote-control | — |
| 会话命名 | — | --name, -n | — |
| 镜像附件 | — | — | --image, -i |
六、操作流程指南
6.1 快速上手对比
OpenCode
# 1. 安装
npm i -g opencode
# 2. 登录(连接 Provider)
opencode auth login
# 或直接在界面添加 Provider(支持 Anthropic、OpenAI、Ollama 等)
# 3. 启动 TUI
opencode # 当前目录
opencode /path/to/project # 指定目录
# 4. 非交互式运行
opencode run "解释这段代码"
# 5. 使用 MCP
opencode mcp add # 添加 MCP 服务器
opencode mcp list # 查看已配置的 MCP
# 6. 创建自定义 Agent
opencode agent create
opencode agent list
Claude Code
# 1. 安装
npm i -g @anthropic-ai/claude-code
# 2. 登录
claude auth login # ChatGPT 订阅或 API Key
claude auth login --console # API Key 计费
# 3. 启动 REPL
claude # 交互模式
claude "explain this project" # 带初始提示
# 4. 非交互式查询
claude -p "review this code" # 打印模式,查询后退出
# 5. 管道输入
cat logs.txt | claude -p "explain"
# 6. 继续上次会话
claude -c
# 7. 恢复指定会话
claude -r "session-name"
# 8. 初始化项目
claude /init # 创建 CLAUDE.md
# 9. MCP 管理
claude mcp # 子命令管理 MCP
Codex CLI
# 1. 安装
npm i -g @openai/codex
# 2. 登录
codex login # ChatGPT OAuth
codex login --device-auth # 设备码登录
codex login --with-api-key # API Key
# 3. 启动 TUI
codex # 交互 TUI
codex "写一个快排算法" # 带初始提示
# 4. 非交互式执行
codex exec "解释这段代码"
codex exec --output-last-message result.txt "解释这段代码"
# 5. 配置沙箱策略
codex --sandbox read-only "分析代码"
codex --sandbox workspace-write "修改代码"
# 6. Fork 会话
codex fork <session-id>
6.2 文件引用与 Shell 执行
| 功能 | OpenCode | Claude Code | Codex CLI |
|---|
| 引用文件 | @filename(TUI 内) | @filename(TUI 内) | 自然语言提示中指定 |
| 执行 Shell | !command(TUI 内) | !command(TUI 内) | 沙箱中执行 |
| 读取剪贴板 | — | — | — |
6.3 配置文件路径
| 工具 | 配置文件位置 |
|---|
| OpenCode | ~/.config/opencode/opencode.json(全局)、./opencode.json(项目)、~/.config/opencode/tui.json(TUI) |
| Claude Code | ~/.claude/settings.json(用户)、.claude/settings.json(项目) |
| Codex CLI | ~/.codex/config.toml |
6.4 自定义命令/技能创建
OpenCode
# .opencode/commands/test.md 或 ~/.config/opencode/commands/test.md
---
description: Run tests with coverage
agent: build
model: anthropic/claude-3-5-sonnet-20241022
---
Run the full test suite with coverage report.
使用:/test
Claude Code
# .claude/commands/test.md 或 ~/.claude/commands/test.md
---
name: test
description: Run tests with coverage
---
Run the full test suite with coverage report.
使用:/test
Codex CLI
通过 ~/.codex/rules/default.rules 管理自动审批规则。
七、各工具优劣对比
OpenCode
优势:
- ✅ 完全开源,透明可控
- ✅ 多 Provider 支持(Anthropic、OpenAI、Ollama、本地模型等),不受单一厂商绑定
- ✅ 内置 Git 版本管理的 Undo/Redo 功能
- ✅ 支持远程 Server + Attach,灵活部署
- ✅ 高度可定制(Agent、命令、Keybinds、Theme)
- ✅ 支持 ACP(Agent Client Protocol)
- ✅ Web UI 模式
- ✅ 配置优先级清晰(Remote → Global → Custom → Project)
劣势:
- ❌ 非官方工具,生态和文档相对较小
- ❌ 无官方内置代码库语义搜索命令
- ❌ 没有 Claude Code 那样的
/pr、/search 等开箱即用的垂直功能
Claude Code
优势:
- ✅ Anthropic 官方工具,质量有保证
- ✅ 丰富的内置 Slash 命令(
/pr、/search、/test、/package、/security 等)
- ✅ 完整的 Subagent 支持和自定义能力
- ✅ 强大的
/diff 交互式差异查看
- ✅ Chrome 浏览器集成
- ✅ 支持
/branch 分叉会话
- ✅ Remote Control 可从 claude.ai 控制本地会话
- ✅ 详细的
/insights 会话分析
- ✅ 活跃的插件生态(plugins)
- ✅ 支持
--json-schema 结构化输出
劣势:
- ❌ 只能使用 Anthropic Claude 系列模型
- ❌ 需要 Claude Pro/Max 订阅或 API Key
- ❌ 闭源
- ❌ Windows 支持相对较弱
Codex CLI (OpenAI)
优势:
- ✅ OpenAI 官方工具
- ✅ 默认使用 o4-mini 模型,性价比高
- ✅ 简洁的沙箱策略模型(
read-only、workspace-write、danger-full-access)
- ✅ 支持
--oss 模式连接 Ollama 本地模型
- ✅ 支持
--output-schema JSON Schema 验证
- ✅ 支持
--image 附件图片
- ✅ 支持
--fork 分叉会话
- ✅ 登录方式多样(OAuth、Device Auth、API Key)
劣势:
- ❌ 只能使用 OpenAI GPT 系列模型
- ❌ 功能相对简洁,高级特性不如 Claude Code 丰富
- ❌ 无 Subagent、Plugin、MCP 官方支持
- ❌ 无会话内压缩/合并命令
- ❌ TUI 交互功能有限(无
/search、/diff 等)
八、综合对照表
| 功能 | OpenCode | Claude Code | Codex CLI |
|---|
| 交互 TUI/REPL | ✅ | ✅ | ✅ |
| 非交互式运行 | ✅ | ✅ | ✅ |
| 多 Provider | ✅ | ❌ | ❌ |
| 多 Model 支持 | ✅ | 仅 Claude | 仅 GPT |
| Git Undo/Redo | ✅ | ❌ | ❌ |
| 会话持久化 | ✅ | ✅ | ✅ |
| 会话 Fork/Branch | ✅ | ✅ | ✅ |
| MCP 支持 | ✅ | ✅ | 部分 |
| 自定义 Agent | ✅ | ✅(Subagent) | ❌ |
| 自定义 Slash 命令 | ✅ | ✅ | ❌ |
| 自定义 Keybinds | ✅ | ✅ | ❌ |
| Web/云端部署 | ✅(serve/web) | ✅(remote-control) | ❌ |
| Chrome 集成 | ❌ | ✅ | ❌ |
| GitHub PR 交互 | ❌ | ✅ | ❌ |
| 语义代码搜索 | ❌ | ✅ | ❌ |
| Diff 视图 | ❌ | ✅ | ❌ |
| 沙箱控制 | ✅ | ✅ | ✅ |
| 配置文件格式 | JSON | JSON | TOML |
| 开源 | ✅ | ❌ | ❌ |
| 安装包大小 | 小 | 中 | 小 |
九、出处与参考
-
OpenCode 官方文档
-
Claude Code 官方文档
-
OpenAI Codex CLI 官方文档
报告生成时间:2026-03-26 | 调研范围:OpenCode、Claude Code、OpenAI Codex CLI 官方文档