OpenCode 是什么?
OpenCode 是一个开源、可自托管的 AI 编程代理。它支持接入任何大模型(如 Claude、OpenAI、Google 或自建本地模型),以终端为主界面,同时也提供桌面应用和 IDE 插件等形式。
简单来说,它的定位介于传统工具之间:
- Copilot 是'副驾驶式'的自动补全;
- Cursor 等是'AI 原生 IDE';
- OpenCode 则是'项目级 AI 工程师 + 协同机器人',更偏向于能独立完成任务的 Agent。

为什么值得关注?
1. 完全开源且供应商无关
代码透明,支持自托管和二次开发。不绑定单一模型供应商,你可以灵活选择 Claude、OpenAI、Gemini,甚至是本地模型。这意味着合规敏感或内网环境可以全部跑在自己服务器上,也能随时切换到更便宜的模型,避免被单一厂商锁定。
2. 终端优先的开发体验
OpenCode 的 TUI(Terminal UI)设计相当精致,支持主题切换、快捷键、多窗口以及文件拖拽(包括图片),还内嵌了 LSP 支持。
日常典型场景如下:
在终端输入 opencode 进入 TUI 后,你可以直接用自然语言提问,例如 @packages/functions/src/api/index.ts 里的鉴权是怎么实现的?,或者让它加功能:在删除笔记后软删除;再写一个'最近删除'页面,可以恢复或彻底删除。
通过 Tab 键可以在'Plan 模式'(只规划不改动)和'Build 模式'(真改文件)之间切换,先看方案再动手。如果修改不符合预期,直接 /undo 回滚,甚至 /redo 重新执行。这种在终端里聊着聊着就把活干了的感觉,对经常使用 Neovim、tmux 的开发者来说非常顺手。
3. 项目级'代理'能力
运行 /init 一次,它会分析你的项目结构,在根目录生成 AGENTS.md,把你的架构、编码风格、约定记下来。建议把这个文件提交进 Git,方便后续所有会话复用。
内置两个主要 Agent:
- build:默认的开发 Agent,可读写文件、跑命令,负责实际干活;
- plan:只读、不修改文件、运行命令前先请求权限,用来安全地探索陌生代码库或做大改动前的规划。
你本质上是在训练一个属于你项目的'AI 同事',而不是每次都从零给它喂上下文。
4. GitHub / GitLab 深度集成
在 GitHub 仓库里运行 opencode github install,它会自动帮你安装 GitHub App、生成 workflow、设置 secrets。之后,你可以在 Issue 或 PR 评论里这样用:
/opencode 帮我看一下这个问题,分析一下可能原因/opencode 帮我写个单元测试覆盖这个边界情况
它在 GitHub Actions runner 中执行,可以自动创建分支、修改代码、提交 commit、打开 PR。还支持定时任务扫描 TODO 和 PR 自动 review,这已经把'AI 当 teammate 一起干活'这件事做得非常工程化了。
5. 客户端/服务器架构
核心逻辑在 server 端运行,TUI 只是其中一个前端。你可以在服务器或云端跑 OpenCode server,从本地终端、手机、未来的 Web UI 等多种客户端驱动它干活,对团队远程开发场景特别友好。
从零到跑起来
前置准备
你需要一款现代终端模拟器(如 WezTerm、Alacritty、Ghostty、Kitty)以及想用的 LLM 提供商 API Key(如果不熟悉,推荐先用官方的 OpenCode Zen)。


