OpenCode 入门教程:让 AI 成为你的编程伙伴
什么是 OpenCode?
简单来说,OpenCode 是一个开源的 AI 编程助手。你可以把它想象成一个经验丰富的编程伙伴,它不仅能理解你的代码库,还能帮你写代码、回答问题、添加功能。
最棒的是,OpenCode 提供了多种使用方式:
- 终端界面:如果你喜欢在终端里工作,这是最直接的方式
- 桌面应用:想要更友好的界面?桌面版可能更适合你
- IDE 扩展:如果你习惯在 IDE 里编码,也可以直接集成到你的编辑器中
开始之前:你需要准备什么?
在开始使用 OpenCode 之前,我们需要先准备两样东西。
1. 一个现代化的终端
虽然听起来有点技术门槛,但其实现在大部分开发者都已经在使用现代化的终端了。如果你还没有,我推荐几个不错的选择:
- WezTerm:跨平台,功能强大,界面美观
- Alacritty:跨平台,性能优秀
- Ghostty:Linux 和 macOS 可用,轻量级
- Kitty:Linux 和 macOS 可用,可定制性强
我自己用的是 WezTerm,它的分屏功能和主题定制让我爱不释手。不过,选择哪个终端其实并不重要,重要的是你要有一个能正常工作的终端环境。
2. LLM 提供商的 API 密钥
这是 OpenCode 工作的核心。OpenCode 本身不提供 AI 能力,而是通过调用各种 LLM(大语言模型)提供商的 API 来实现功能。
如果你之前没有接触过 LLM 提供商,可能会觉得有点复杂。别担心,OpenCode 团队贴心地准备了一个叫 OpenCode Zen 的服务。这是一个经过测试和验证的模型列表,你可以直接使用,省去了自己筛选模型的麻烦。
安装 OpenCode:选择最适合你的方式
安装 OpenCode 其实很简单,官方提供了多种方式,你可以根据自己的习惯选择。
最简单的方式:一键安装脚本
如果你想要最快的方式,直接运行这个命令:
curl -fsSL https://opencode.ai/install | bash
就这么简单!脚本会自动帮你完成所有安装步骤。我第一次安装时,就是用的这种方式,整个过程不到一分钟就完成了。
使用包管理器安装
如果你习惯使用包管理器,也有多种选择:
Node.js 生态的用户:
# npm
npm install -g opencode-ai
# Bun
bun install -g opencode-ai
# pnpm
pnpm install -g opencode-ai
# Yarn
yarn global add opencode-ai
macOS 和 Linux 用户:
brew install anomalyco/tap/opencode
Arch Linux 用户:
paru -S opencode-bin
Windows 用户的特别说明
如果你使用的是 Windows,我强烈建议你使用 WSL(Windows Subsystem for Linux)。虽然 OpenCode 也支持原生 Windows 安装,但 WSL 能提供更好的性能和完整的功能支持。
Windows 上的安装选项包括:
# Chocolatey
choco install opencode
# Scoop
scoop install opencode
# NPM
npm install -g opencode-ai
# Mise
mise use -g github:anomalyco/opencode
# Docker
docker run -it --rm ghcr.io/anomalyco/opencode
当然,你也可以直接从 GitHub Releases 页面下载二进制文件。
配置 API 密钥:让 OpenCode 开始工作
安装完成后,我们需要配置 API 密钥,这样 OpenCode 才能调用 AI 服务。
使用 OpenCode Zen(推荐新手)
如果你和我一样,刚开始接触 LLM 提供商,我建议你使用 OpenCode Zen。它的配置过程非常简单:
- 在 OpenCode 的终端界面中,输入以下命令:
/connect
- 选择
opencode选项 - 浏览器会自动打开
opencode.ai/auth页面 - 登录账号,添加你的支付信息(大部分提供商都有免费额度)
- 复制你的 API 密钥
- 回到终端,粘贴你的 API 密钥
整个过程就像注册一个普通账号一样简单。我第一次配置时,只花了不到 5 分钟。
使用其他提供商
如果你已经有其他 LLM 提供商的账号,也可以直接使用。OpenCode 支持很多主流的提供商,你只需要运行 /connect 命令,然后选择对应的提供商,按照提示配置即可:
/connect
初始化项目:让 OpenCode 了解你的代码
配置好 API 密钥后,我们就可以开始使用 OpenCode 了。但在此之前,我们需要先初始化项目,让 OpenCode 了解你的代码库结构。
进入你的项目目录
首先,切换到你想让 OpenCode 帮助你的项目目录:
cd /path/to/project
启动 OpenCode
然后,直接运行:
opencode
你会看到一个简洁的终端界面。第一次看到这个界面时,我有点小兴奋,因为这意味着我的编程工作方式即将发生改变。
初始化项目
在 OpenCode 界面中,输入:
这个命令会让 OpenCode 分析你的项目,并创建一个 AGENTS.md 文件。这个文件记录了 OpenCode 对项目结构的理解,包括代码组织方式、使用的编程模式等。
一个小建议:记得把这个 AGENTS.md 文件提交到 Git。这样,当你换电脑或者团队成员使用时,OpenCode 就能快速理解项目结构,不需要重新分析。
开始使用:让 AI 成为你的编程助手
好了,准备工作都完成了。现在,让我们来看看 OpenCode 能帮你做什么。
提问:理解代码库
当你接手一个新项目,或者需要理解某个不熟悉的代码部分时,OpenCode 可以帮你快速理解。
小技巧:使用 @ 键可以快速搜索项目中的文件。比如:
How is authentication handled in @packages/functions/src/api/index.ts
OpenCode 会分析这个文件,并解释认证是如何实现的。这比你自己阅读代码要快得多,特别是当代码很复杂的时候。
我记得有一次,我需要理解一个复杂的认证流程,如果自己看代码,可能需要一两个小时。但用 OpenCode 一问,几分钟就搞清楚了。
添加功能:从计划到实现
添加新功能是 OpenCode 最强大的能力之一。但这里有个小技巧:不要直接让它写代码,而是先让它制定计划。
第一步:创建计划
按 Tab 键切换到"计划模式"(Plan mode)。在这个模式下,OpenCode 不会直接修改代码,而是告诉你它会如何实现这个功能。你可以在界面右下角看到模式指示器。
然后,详细描述你想要的功能:
When a user deletes a note, we'd like to flag it as deleted in the database.
Then create a screen that shows all the recently deleted notes.
From this screen, the user can undelete a note or permanently delete it.
重要提示:描述得越详细越好。就像你在和团队里的初级开发者沟通一样,把需求说清楚。OpenCode 理解得越准确,生成的代码就越符合你的期望。
第二步:迭代优化计划
OpenCode 生成计划后,你可以提出反馈或补充细节。比如:
We'd like to design this new screen using a design I've used before.
[Image #1] Take a look at this image and use it as a reference.
另一个小技巧:你可以直接把图片拖拽到终端里,OpenCode 会识别图片内容,并参考图片来设计界面。这个功能真的很实用,特别是当你想要复刻某个设计时。
第三步:实现功能
当你对计划满意后,再按一次 Tab 键切换回"构建模式"(Build mode),然后告诉 OpenCode:
Sounds good! Go ahead and make the changes.
OpenCode 就会按照计划开始修改代码了。
直接修改:简单快速的改动
对于一些简单的修改,你不需要走计划流程,可以直接让 OpenCode 实现:
We need to add authentication to the /settings route. Take a look at how this is
handled in the /notes route in @packages/functions/src/notes.ts and implement
the same logic in @packages/functions/src/settings.ts
这种方式适合那些逻辑清晰、改动不大的场景。OpenCode 会参考你指定的代码,用相同的模式实现新功能。
撤销和重做:不怕犯错
有时候,OpenCode 生成的结果可能不是你想要的。别担心,你可以随时撤销。
输入以下命令,OpenCode 会撤销刚才的修改,并重新显示你之前的提示:
/undo
这样你就可以调整提示,让 OpenCode 再试一次。
如果需要撤销多次,可以连续运行 /undo 命令。如果撤销过头了,还可以用以下命令恢复:
/redo
这个功能让我在使用 OpenCode 时更有安全感,因为我知道即使出错了,也能轻松回退。
分享对话:与团队协作
OpenCode 还有一个很实用的功能:分享对话。
输入以下命令:
/share
OpenCode 会创建一个链接,并自动复制到你的剪贴板。你可以把这个链接分享给团队成员,让他们看到你和 OpenCode 的对话过程。
这对于代码审查、知识分享或者问题排查都很有帮助。我记得有一次,我用 OpenCode 解决了一个复杂的问题,通过分享链接,团队成员很快就理解了解决方案。
注意:默认情况下,对话是私有的,只有你主动分享,别人才能看到。
个性化定制:让 OpenCode 更符合你的习惯
当你熟悉了基本功能后,可以开始定制 OpenCode,让它更符合你的使用习惯。
你可以:
- 选择主题:让界面更美观
- 自定义快捷键:设置你习惯的按键组合
- 配置代码格式化工具:确保生成的代码符合你的项目规范
- 创建自定义命令:定义一些常用的操作
- 调整配置:根据你的需求微调 OpenCode 的行为
这些定制选项让 OpenCode 不仅仅是一个工具,更像是你的专属编程助手。