先上GitHub链接:https://github.com/anomalyco/opencode
兄弟们,今天要给大家安利一个我最近挖到的宝藏项目,看完直接给我跪了。
事情是这样的,前段时间一直在用 Claude Code,体验确实不错,但总有点别扭——毕竟是闭源的,而且跟 Anthropic 强绑定,想换个模型都不行。就在我以为要在 Claude Code 这棵树上吊死的时候,这个叫 OpenCode 的项目突然蹦到我面前。
第一次看到它的时候,我还心想:"又一个仿品吧?"结果试了一把,发现自己打脸了。
这玩意儿直接把 Claude Code 的核心功能都复刻了一遍,还全开源了。最骚的是什么?它不绑定任何厂商,想用 Claude 就用 Claude,想用 OpenAI 就用 OpenAI,甚至还能跑本地的 Llama。对于我这种有选择困难症的人来说,简直是福音。
好了,废话不多说,直接进入正题。
一、快速上手指南(手把手版)
1.1 安装,比你想象中简单
老实说,我最怕的就是安装过程,一个项目安装能装出我半条命。但 OpenCode 的安装真的让我感动。
如果你是 Linux/Mac 用户,一条命令搞定:
curl -fsSL https://opencode.ai/install | bash这命令虽然有点 "YOLO"(You Only Live Once),但真的能用。
如果你喜欢用包管理器,也有多种选择:
npm i -g opencode-ai@latest # npm 用户scoop bucket add extras; scoop install extras/opencode # Windows 用户choco install opencode # Windows 用户brew install opencode # macOS 和 Linux 用户paru -S opencode-bin # Arch Linux 用户mise use -g opencode # 通用用户Windows 用户别急,后面还会说桌面应用的安装。
1.2 第一次运行,打开新世界
安装完之后,直接在终端输入:
opencode如果你是第一次用,它会要求你进行一些基础配置。主要是设置 AI provider 和 API key。
支持的 provider 包括但不限于:
OpenAI(GPT-4o、GPT-4o-mini 等)
Anthropic(Claude 3.5 Sonnet、Claude 3 Opus 等)
Google(Gemini Pro)
以及各种兼容 OpenAI API 的本地模型(比如 Ollama)
配置完之后,你就进入 TUI(Terminal User Interface)模式了。说实话,我第一次看到这个界面的时候,心里想:"这不就是我在终端里也能用 IDE 了吗?"
界面很直观,左侧是文件浏览器,右侧是聊天区域,底部是工具栏。对于习惯了终端操作的人来说,上手几乎没有学习成本。
1.3 两种 Agent,切换自如
OpenCode 内置了两种主要的 Agent,你可以通过 Tab 键快速切换:
build Agent(默认模式)
这是全功能的开发 agent,拥有所有权限:
可以编辑文件
可以运行 bash 命令
可以执行所有工具
适合实际的开发工作、功能实现、bug 修复
plan Agent(只读模式)
这是只读的分析 agent:
默认拒绝文件编辑
运行命令前会请求权限
适合探索陌生代码库或规划变更
我个人经常这么用:先用 plan agent 理解项目结构,规划要做什么,然后切换到 build agent 实际干活。这种模式真的很好用,避免了一开始就直接修改文件改坏的尴尬。
二、核心功能深度解析
2.1 工具系统,比想象的更强大
OpenCode 的工具系统是我最喜欢的部分之一。它内置了大量实用的工具,而且工具执行过程完全透明,你可以清楚地看到 agent 做了什么。
Bash 工具
允许执行 shell 命令。我经常用它来做:
opencode> 安装依赖Agent> 正在运行: bun installAgent> 安装完成!Edit 工具
编辑文件,支持精确到行号。比如:
opencode> 把 src/index.js 的第 10-15 行改成新的实现Write 工具
直接写入文件内容:
opencode> 创建一个新的 utils.ts 文件,包含 debounce 函数Search 工具
包括 Grep、Glob 和 CodeSearch:
Grep:在代码中搜索特定文本
Glob:按模式匹配文件
CodeSearch:语义化代码搜索(这个很高级)
Web 工具
WebSearch:网络搜索
WebFetch:获取网页内容
LSP 工具
这个是我觉得最牛的。OpenCode 开箱即支持 LSP,可以直接和 Language Server Protocol 交互,获取代码的智能提示、跳转定义、查找引用等。
2.2 TUI vs CLI 模式,按需选择
OpenCode 有两种运行模式,各有优劣:
我日常开发主要用 TUI 模式,因为体验更好;如果要集成到自动化流程中,会选 CLI 模式。
2.3 会话管理,历史不会丢失
OpenCode 的会话系统很完善:
所有对话历史都会保存
可以随时恢复之前的会话
支持会话压缩,避免上下文过长
不同项目可以有独立的会话
这个功能对于我这种经常在不同项目间切换的人来说太有用了。
三、实际应用场景举例
场景一:接手遗留项目
公司分配给你一个五年前的项目,代码没人维护,文档几乎没有。这时候怎么办?
用 OpenCode 的 plan agent,让它帮你分析项目结构:
opencode> 帮我分析这个项目的整体架构,找出核心模块和它们的依赖关系plan agent 会:
扫描所有文件
分析代码依赖
生成项目结构图
总结主要功能模块
然后你可以让它找出潜在问题:
opencode> 找出这个项目中最需要重构的 5 个地方场景二:快速实现新功能
产品经理甩给你一个需求:"加个用户积分系统。"
你可以让 OpenCode 的 build agent 帮你:
opencode> 实现一个用户积分系统,包括:1. 用户注册时赠送 100 积分2. 每日签到获得 10 积分3. 邀请好友获得 50 积分4. 积分可以兑换优惠券请创建必要的数据库表、API 接口和前端页面build agent 会:
设计数据库表结构
编写后端 API
实现前端页面
确保代码风格一致
场景三:调试疑难 bug
线上突然报错,但你复现不出来?
让 OpenCode 帮你分析:
opencode> 分析这个错误日志,找出可能的原因和修复方案错误信息:Error: Cannot read property 'x' of undefined at line 245它可以:
定位到错误代码
分析可能导致 null/undefined 的原因
建议修复方案
甚至帮你写测试用例
场景四:代码审查优化
代码写得乱七八糟,没时间整理?
opencode> 审查 src/ 目录下的所有代码,找出:1. 潜在的性能问题2. 代码重复3. 不符合最佳实践的代码4. 安全隐患然后让它帮你重构:
opencode> 根据上面的审查结果,帮我重构这些问题场景五:学习新技术
想学某个新框架,但不知道从哪开始?
opencode> 用 Next.js 创建一个简单的博客系统,包括:1. 文章列表页2. 文章详情页3. Markdown 支持4. 评论区5. 管理后台它不仅会生成代码,还会解释每一步在做什么,让你边做边学。
四、桌面应用,不止于终端
OpenCode 还有桌面应用版本(目前是 BETA),适合不喜欢在终端里操作的用户。
下载地址:https://opencode.ai/download
支持的系统:
macOS(Apple Silicon 和 Intel)
Windows
Linux(支持 .deb、.rpm 和 AppImage)
macOS 用户用 Homebrew 也能装:
brew install --cask opencode-desktop桌面应用的功能和 CLI 版本基本一致,但有了图形界面,操作更直观。
五、进阶玩法
5.1 自定义配置
OpenCode 支持通过配置文件自定义行为。你可以设置:
默认使用的模型
Agent 行为参数
工具权限规则
快捷键绑定
配置文件通常在 ~/.opencode/config.json。
5.2 集成到现有工作流
如果你已经在用 VS Code,可以安装 OpenCode 的 VS Code 插件(sdks/vscode 目录下有源码)。
如果你是 Neovim 用户,OpenCode 也提供了集成方案。
5.3 本地 LLM 支持
对于注重隐私的用户,OpenCode 支持本地 LLM。通过 Ollama 或其他兼容 OpenAI API 的本地服务,你可以完全在本地运行,不用担心数据外泄。
六、一些心得
用了 OpenCode 这段时间,我觉得它最大的优势不是某个具体的功能,而是它的开放性和灵活性。
你可以选择用哪家公司的模型,可以决定数据存在哪里,可以自定义 agent 行为,甚至可以自己开发新的工具。对于有技术追求的开发者来说,这种掌控感真的很爽。
当然,它也不是完美的。作为开源项目,有时候文档不够详细,一些高级功能需要自己摸索。但这也是开源的魅力——有问题可以去 issue 里讨论,甚至可以自己提交 PR。
七、最后
如果你:
受够了闭源工具的各种限制
想要一个真正属于自己的 AI 编程助手
希望在 AI 辅助开发这件事上有更多选择
那 OpenCode 值得一试。它不是那种会帮你写完所有代码的"魔法工具",但能让你在编程这件事上更高效、更自由。
项目地址:https://github.com/anomalyco/opencode
好了,今天就分享到这里。希望这篇文章对你有帮助。如果你觉得有用,记得给项目点个 star,让更多人知道这个优秀的开源工具。