【开源】94K Star!告别厂商锁定,完全开源、隐私优先的 AI 编程助手 ,支持 75+ 模型,用 AI 帮你读懂、重构、修复整个项目
OpenCode是一款开源的AI编程代理工具,已在GitHub获得93.6K星。它提供终端优先的TUI体验,支持75+种大模型,可完成代码理解、编写、重构等任务。作为"代理时代"的代表,OpenCode解决了商业工具的闭源、隐私和上下文割裂问题,支持本地部署和GitHub集成。其亮点包括项目级Agent、多会话并行、模型无关等特性,适合注重隐私的企业和终端开发者。相比Copil
最近在 GitHub 上发现一个非常对味的 AI 编程项目——OpenCode。
它在 GitHub 上已经冲到94K Star,定位是开源的 AI 编程代理(AI coding agent)。简单说,它就像一个住在你电脑里的“AI 同事”,能帮你:
-
读懂陌生代码库
-
编写新功能
-
重构、优化、修复 Bug
而且它不挑环境,你可以在终端、桌面应用、VS Code等主流 IDE 里跟它互动,完成各种代码任务。
如果你用过Claude 的 Code 模式或Cursor 的 Agent 功能,可以把 OpenCode 理解为它们的“开源版 + 终端加强版”:功能同样强大,但完全开源、隐私优先,还能自由切换多种大模型。

🤔 为什么会出现 OpenCode?
要理解 OpenCode,得先看看 AI 编程工具的演进史:
-
补全时代:代表是 Copilot,核心是“自动补全”。
-
对话时代:代表是 ChatGPT,核心是“聊天式写代码”。
-
代理时代 (现在):AI 不再只聊天,而是能读文件、改代码、跑命令、串起完整工作流,像一个真正的“项目级助理”。
OpenCode 正是诞生于这个“代理时代”的开源代表。它由 SST 团队(Serverless Stack)开发,于 2024 年左右开始活跃,2025 年 6 月 19 日正式发布 1.0 版本,并迅速在开源社区走红。
它的出现,正是为了解决开发者对现有工具的几大痛点:
-
黑盒与锁定:许多商业工具是闭源的,行为不透明,且绑定特定厂商,更换成本高。
-
上下文割裂:在 IDE、浏览器、聊天窗口之间频繁切换,手动复制粘贴上下文,效率低下。
-
隐私与合规:企业代码上云存在安全和合规风险,需要能私有化部署的方案。
因此,OpenCode 的设计目标非常明确:做一个完全开源、终端优先、模型无关、可自托管的 AI 编程代理。
✨ OpenCode 的亮点功能
1. 终端优先,真正的 TUI 体验
OpenCode 的核心是终端,提供了非常精致的 TUI(终端用户界面)。你只需在终端输入 opencode即可启动,所有操作都在终端内完成,包括切换模型、执行命令、查看 diff 等。它原生支持 LSP,能提供代码补全、跳转、诊断等 IDE 级别的能力,对 Vim/Neovim 用户尤其友好。
2. 项目级 Agent,不止于聊天
OpenCode 内置了 build和 plan两种核心 Agent:
-
Plan 模式:只读,用于分析、规划、解释代码,不修改任何文件,适合大改动前的安全探索。
-
Build 模式:可读写文件、执行命令,负责具体实现功能、修复 Bug。
此外,它还支持多会话并行,你可以为不同任务开启独立的 Agent 会话,互不干扰。会话还可以生成分享链接,方便团队协作和复盘。
3. 模型无关,75+ 家提供商任选
OpenCode 支持超过 75 家模型提供商,包括 OpenAI、Anthropic、Google 等,并内置了 GLM-4.7、MiniMax M2.1 等免费模型。你可以轻松接入本地模型(如通过 Ollama 或 vLLM 部署的 Llama 3、Qwen 等),实现完全离线的私有化部署。
4. 深度集成 GitHub/GitLab
通过 opencode github install命令,它可以在你的仓库中安装 GitHub App,让你能在 Issue 或 PR 的评论中直接使用 /opencode指令,让 AI 自动分析问题、创建分支、修改代码并提交 PR。
5. 客户端/服务器架构,多端统一
采用客户端/服务器架构,核心逻辑在服务端运行,终端、桌面 App、VS Code 插件等只是不同的“前端”。这意味着你可以在服务器上运行 OpenCode,然后从手机、平板等任意设备连接并驱动它工作。
🆚 同类平台对比
|
特性 |
OpenCode |
Claude Code |
Cursor |
VS Code + Copilot |
TRAE |
|---|---|---|---|---|---|
|
开源与可控 |
✅ 完全开源 (MIT),可自托管、审计和二次开发。 |
❌ 闭源商业产品,无法自托管。 |
❌ 闭源商业产品,无法自托管。 |
❌ 闭源商业产品,无法自托管。 |
❌ 闭源商业产品,无法自托管。 |
|
模型选择 |
✅ 供应商无关,支持 75+ 家模型,可自由切换和组合。 |
❌ 绑定 Anthropic 生态,主要使用 Claude 系列模型。 |
❌ 深度集成 OpenAI,主要使用 GPT 系列模型。 |
❌ 深度集成 OpenAI,主要使用 GPT 系列模型。 |
❌ 深度绑定 GLM 生态,主要使用智谱 AI 模型。 |
|
终端体验 |
✅ 终端优先 (TUI),为重度终端用户提供极致体验。 |
✅ 终端优先 (TUI),功能强大,但对非终端用户有门槛。 |
❌ 图形界面 (GUI),基于 VS Code,体验偏向传统 IDE。 |
✅ 图形界面 (GUI),生态成熟,但对纯终端用户不够友好。 |
❌ 图形界面 (GUI),体验偏向 AI 原生 IDE。 |
|
工作流集成 |
✅ 深度集成 GitHub/GitLab,支持在 PR/Issue 中调用。 |
✅ 支持 CLI 和脚本,适合工程化集成。 |
✅ 深度集成 IDE,适合个人开发。 |
✅ 深度集成 IDE,适合个人开发。 |
✅ 深度集成 IDE,适合个人开发。 |
|
隐私与安全 |
✅ 隐私优先,支持完全本地部署,代码不离开内网。 |
⚠️ 云端服务,代码需发送至 Anthropic 服务器。 |
⚠️ 云端服务,代码需发送至 OpenAI 服务器。 |
⚠️ 云端服务,代码需发送至 OpenAI 服务器。 |
⚠️ 云端服务,代码需发送至智谱 AI 服务器。 |
|
适合人群 |
🏢 企业、注重隐私的团队、重度终端用户、开源爱好者。 |
🏢 Anthropic 生态用户、愿意付费的企业。 |
👨💻 个人开发者、VS Code 重度用户。 |
👨💻 个人开发者、VS Code 重度用户。 |
👨💻 个人开发者、偏好国产模型用户。 |
🚀 如何快速上手?
OpenCode 支持 macOS / Windows / Linux 多平台安装。
通用一键安装脚本这是最简单的方法:
curl -fsSL https://opencode.ai/install | bash
安装完成后,你应该能通过命令行运行:
opencode --version
如果输出类似 1.1.19 这种的版本号信息表示安装成功。
包管理器安装
macOS / Linux
brew install opencode
或者:
npm install -g opencode-ai
Windows
choco install opencode
或者:
scoop bucket add extras scoop install extras/opencode
Arch Linux
paru -S opencode-bin
OpenCode 是在终端运行的,我们可以使用默认系统自带的终端,也可以使用一些好用的现代化的终端工具:
-
WezTerm, 跨平台
-
Alacritty, 跨平台
-
Ghostty, Linux 与 macOS
-
Kitty, Linux 与 macOS
桌面应用
OpenCode 也提供桌面端应用,可直接从 发布页面 或 opencode.ai/download 下载。
|
系统平台 |
下载安装包 |
|---|---|
|
macOS(苹果芯片) |
opencode-desktop-darwin-aarch64.dmg |
|
macOS(英特尔芯片) |
opencode-desktop-darwin-x64.dmg |
|
Windows |
opencode-desktop-windows-x64.exe |
|
Linux |
.deb、.rpm 或 AppImage 格式 |
启动与使用
启动 OpenCode 只需要终端输入启动命令:
opencode
首次启动会引导完成基础配置:
- 模型选择:
默认展示可用模型列表,可直接选择标注 Free 的免费模型(如 MiniMax M2.1、GLM-4.7),无需 API Key 即可使用。
- 登录选项:
可选择跳过登录,后续需对接商业模型时再配置 API Key,也可登录 Claude Code Pro 账号调用专属模型。
启动成功后进入 TUI 界面,即可开始使用核心功能。
我们可以在终端输入 /models 查看可用的免费模型:

弹出的查看,右边有 Free 字样的就是免费的:

配置 API 密钥与模型
如果你连接一个 AI 提供商的 API 密钥,例如 OpenAI 或 Anthropic Claude,运行:
opencode auth login
或者在终端启动后输入:
/connect
选择模型。按照提示登录并粘贴你的 API Key。

你也可以使用 Zen 模型集合(由 OpenCode 官方推荐、经过测试的高质量模型),省去自己管理多个外部账户的麻烦。
如果不想用了,可以使用以下命令退出:
/exit
基本使用
启动 OpenCode
进入你想处理的项目目录:
cd /path/to/your/project opencode
例如,我们创建目录 opencode-runoob-test:
mkdir opencode-runoob-test cd opencode-runoob-test
然后执行命令:
opencode
如果有权限问题,可以使用:
sudo opencode
这会打开 OpenCode 的终端交互界面(TUI)。
项目初始化
在 OpenCode 界面中,运行:
/init

这会生成一个 .opencode/ 文件夹,用于存储项目的向量化索引和自定义指令。
它会扫描当前目录的代码结构,并生成一个用于记录项目信息的 AGENTS.md 文件。

opencode-runoob-test 目录下可以看到 AGENTS.md 文件:

然后我们使用自然语言描述你的需求来发起任务:
在当前目录下创建一个登录页面
接下来大模型就会开始思考,并创建登录页面:

生成的文件:

提问解释代码
你可以直接用自然语言向 OpenCode 询问代码库细节:
文件 @index.html 包含哪些功能
其中 @ 用来引用项目里的文件路径。

日常交互
-
直接提问:例如 "解释 src/main.ts 中的认证逻辑"。
-
添加功能:描述需求,如 "添加用户注册 API,支持邮箱验证"。
-
切换模式:按 Tab 键切换 Plan/Build 模式(Plan 更安全,用于规划)。
-
撤销变更:/undo
-
重做:/redo
-
分享会话:/share
交互模式(脚本化):
opencode -p "修复 login 函数中的 bug"
内置工具介绍
OpenCode 的 AI Agent 通过以下工具操作代码库(可在 opencode.json 中控制权限:allow/deny/ask):
- bash
:执行 shell 命令(如
git status、npm test)。 - write/edit/patch
:创建/修改/打补丁文件。
- read
:读取文件内容(支持行范围)。
- grep/glob/list
:搜索和列出文件(尊重 .gitignore)。
- webfetch
:抓取网页内容(查文档)。
- lsp
(实验性):代码跳转、悬停提示等。
- question
:向你提问确认。
- todo
:维护任务清单。
自定义工具和 MCP(Model Context Protocol)服务器支持扩展(如连接数据库)。
高级用法
- 自定义命令
:在
~/.config/opencode/commands/创建 Markdown 文件,如prime-context.md,内容为预加载指令。 - 主题与按键
:在设置中自定义外观和快捷键。
- 多会话
:同时开启多个 Agent 处理不同任务。
- IDE 集成
:目前支持 VS Code 扩展(搜索 OpenCode extension),或通过客户端/服务器架构远程控制。
- 权限控制
:在配置文件中为工具设置
ask以手动确认敏感操作。
创建一个简单的 Node.js API
-
新建目录:
mkdir my-api && cd my-api -
初始化:
npm init -y -
启动 OpenCode:
opencode -
输入
/init -
提问:创建一个 Express.js 服务,支持 /hello 路由返回 JSON { message: 'Hello World' },并添加 README。
oh-my-opencode
oh-my-opencode 是一个为 OpenCode(设计的强大插件/扩展层。它将单个 AI 代理升级为一个多智能体协作团队,提供开箱即用的高级功能。
GitHub 仓库:https://github.com/code-yeongyu/oh-my-opencode
核心亮点包括:
- Sisyphus
主智能体:负责持续执行复杂任务,直至完成。
-
支持并行运行专业子智能体(如 Oracle 预言者、Librarian 文档专家、Frontend Engineer 前端工程师、Explore 探索者等)。
-
内置 LSP/AST 工具(代码重构)、MCP(模型调用插件,如搜索、文档检索)、钩子系统(25+ 种事件触发)。
-
多模型调度:自动分配任务给最适合的模型(例如 Gemini 处理前端、Claude 处理规划)。
-
关键词触发完整自动化(如
ultrawork或ulw),支持后台任务、Todo 强制执行、上下文注入等。 -
完全兼容 Claude Code 工作流,强调高性能、自动化和可定制性。
安装
推荐让 OpenCode 自动完成安装,复制以下提示并粘贴到你的 OpenCode 对话框:
按照以下说明安装和配置 oh-my-opencode:https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/refs/heads/master/docs/guide/installation.md
安装后,默认开箱即用,无需额外配置即可体验大部分功能。
基本触发
在 OpenCode 的提示词中加入关键词 ultrawork(或简写 ulw),例如:
ultrawork:请帮我实现一个React组件,支持暗黑模式。
这会激活完整模式:Sisyphus 主智能体接管,自动分配子任务给专业代理,并行执行(后台映射代码库、深度探索、自动重构等),直至任务 100% 完成。
OpenCode TUI 常用 Slash 命令速查表
OpenCode 的 Slash 命令(以 / 开头)主要在终端用户界面(TUI)中使用,用于快速控制会话、配置和操作。
核心配置与初始化
|
命令 |
描述 |
别名/快捷键 |
|---|---|---|
/connect |
添加或配置 LLM 提供商(API Key) |
无 |
/init |
创建或更新项目 |
Ctrl+X I |
/models |
列出可用模型并切换 |
Ctrl+X M |
会话管理
|
命令 |
描述 |
别名/快捷键 |
|---|---|---|
/new |
开始新会话(清除当前) |
/clear
/ |
/sessions |
列出并切换会话 |
/resume
/ |
/share |
分享当前会话(生成链接) |
Ctrl+X S |
/unshare |
取消分享当前会话 |
无 |
/compact |
压缩/总结当前会话 |
/summarize
/ |
编辑与撤销
|
命令 |
描述 |
别名/快捷键 |
|---|---|---|
/undo |
撤销最后操作(需 Git 仓库,支持文件变更回滚) |
Ctrl+X U |
/redo |
重做已撤销的操作(需 Git 仓库) |
Ctrl+X R |
视图与辅助
|
命令 |
描述 |
别名/快捷键 |
|---|---|---|
/details |
切换工具执行详情显示 |
Ctrl+X D |
/thinking |
切换思考/推理过程可见性 |
无 |
/theme |
列出并切换主题 |
Ctrl+X T |
/help |
显示帮助对话框 |
Ctrl+X H |
/editor |
使用外部编辑器撰写消息 |
Ctrl+X E |
/export |
导出当前对话为 Markdown 并打开编辑 |
Ctrl+X X |
退出
|
命令 |
描述 |
别名/快捷键 |
|---|---|---|
/exit |
退出 OpenCode |
/quit
/ |
注意:
-
这些命令在 TUI 聊天界面中直接输入
/+ 命令名即可触发(会弹出自动补全)。 /undo和
/redo需要项目是 Git 仓库才能回滚文件变更。-
你可以创建自定义 Slash 命令(放在
~/.config/opencode/commands/或项目目录下),它们会覆盖内置命令。 -
更多详情见官方文档:https://opencode.ai/docs/tui
OpenCode CLI 常用参数速查表
OpenCode 的命令行接口(CLI)主要用于启动 TUI(终端界面)、非交互模式运行提示,或设置基本选项。默认运行 opencode 会直接启动交互式 TUI。
以下是常用全局参数(flags):
|
参数 |
简称 |
描述 |
示例 |
|---|---|---|---|
--help |
-h |
显示帮助信息(列出所有可用参数) |
opencode --help |
--debug |
-d |
启用调试模式(输出更多日志,便于排查问题) |
opencode -d |
--cwd |
-c |
指定当前工作目录(启动时切换到该路径) |
opencode -c /path/to/your/project |
--prompt |
-p |
非交互模式:直接运行单个提示并输出响应(适合脚本/自动化) |
opencode -p "修复这个 bug" |
--output-format |
-f |
非交互模式下的输出格式( |
opencode -p "解释代码" -f json |
--quiet |
-q |
非交互模式下隐藏加载动画(spinner) |
opencode -p "生成 README" -q |
基本用法示例
- 启动交互式 TUI
:
opencode - 带调试启动
:
opencode -d - 指定项目目录启动
:
opencode -c ~/my-app - 非交互单次提示
:
opencode -p "添加一个登录接口" -f json
注意:
-
这些参数是全局的,可组合使用。
-
非交互模式(
-p)特别适合 CI/CD、脚本或快速查询,不进入 TUI。 -
更多高级配置(如模型选择)通常通过环境变量或配置文件
~/.opencode.json处理,而非 CLI 参数。 -
运行
opencode --help可查看最新完整列表(推荐,因为工具可能更新)。
🎯 总结
如果你符合以下任一情况,强烈建议你尝试 OpenCode:
是重度终端用户,希望在命令行中完成所有开发工作。
对代码隐私和厂商锁定非常敏感,希望拥有完全可控的工具。
希望自由选择和切换不同的大模型,以平衡成本和效果。
正在寻找一个能真正融入项目级工作流(如 GitHub)的 AI 编程助手。
当然,OpenCode 也有一些权衡,例如对纯 GUI 用户有学习门槛,生态成熟度不及 VS Code 等。但它“开源 + 终端优先 + 模型自由 + 可自托管”的组合拳,无疑为 AI 编程领域提供了一个极具吸引力的新选择。内部来自三丰 soft张三丰
更多推荐

所有评论(0)