在我的使用经验里,opencode 不算那种“装完就能跑出漂亮 demo、之后就吃灰”的工具,它更像个需要慢慢布置的指挥中枢。尤其是把 Oh-My-Opencode 和 SuperPower 插件一起放进同一套环境后,核心逻辑才真正暴露出来:一套 AI 编码流程能不能用顺,关键不在于你敲了多少神奇命令,而在于你的工具链是否围绕“agent + skill”这个结构组织好了。
这篇就围绕我在 Mac 系统上从零安装 opencode、再接入 Oh-My-Opencode 和 SuperPower 的完整过程来写。内容包括每一步操作的背后逻辑、目录结构、常见报错、以及我从实际使用中总结出的建议。适合刚从终端 AI 编程进来、想把 opencode 当日常主力工具用起来的开发者,也适合那些和我一样在安装器问题上栽过跟头的人。
1. 先把 opencode、Oh-My-Opencode、SuperPower 三者的分工理清楚
很多人一上来就搜“opencode 安装”,结果照着命令装完,发现自己只是拿到了一个能聊天的终端程序,等真正想让它参与项目开发时又无从下手。这其实是安装前就没区分“核心程序”和“能力扩展”导致的。
1.1 opencode 是什么,它区别于普通 CLI 的地方在哪
opencode 在 Mac 上属于那种“终端里运行的 AI 编程代理”。它不像 git 或 curl 那样只是替你做一件明确的事情,而更像一个有记忆、能拆解任务、能来回调整方案的执行者。你给它一个目标,它会自主规划步骤,调用工具,搜索文件,修改代码,然后回来向你报告。
这种工具的定位决定了它的安装不只是“把二进制放到 /usr/local/bin”,而是要同步考虑三件事:
- 模型从哪里来,调用什么 API;
- 它的工作目录在哪里,权限范围怎么控制;
- 它通过什么机制读取额外的“能力包”。
很多搜索词里都带“opencode 架构源码”“opencode skills”“opencode 如何切换模型”,说明大家真正关心的是它的扩展机制和可组合性,而不只是那个安装命令。
1.2 Oh-My-Opencode 和 SuperPower 各自解决什么问题
Oh-My-Opencode 从名字就能看出来,它模仿的是 Oh-My-Zsh 那套“给基础程序增加一套可管理的配置和插件集”的思路。opencode 原生支持加载 skill 文件,但没有统一管理入口,你装了一堆 skill 之后可能连自己装过什么、放在哪都弄不清。Oh-My-Opencode 就把这些 skill、配置、预设指令组织起来,给出一套清晰的目录结构和操作命令。
SuperPower 则是一组精心设计的能力模块,主题往往包含特定工作流的深度方法论。比如怎么拆用户故事、怎么写高质量代码评审、怎么组织一次完整的重构等等。它不是简单的“提示词收藏夹”,而是能被 opencode 在任务中自动识别和加载的结构化指引。
所以安装顺序应该很明确:先装 opencode 本体,再装 Oh-My-Opencode 做统一管理,最后把 SuperPower 作为能力包导入。反过来装你会发现,管理框架有了但下面没有承载它的基础程序,等于白搭。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. Mac 上安装 opencode 本体:从终端命令到第一个可用会话
我建议先在一个干净的终端环境里完成 opencode 的本体安装,不要一上来就尝试同时装其他插件,否则一旦出问题,你很难判断是主体配置出了错,还是某个技能包的路径没有加载正确。
2.1 安装命令、版本确认和目录位置
opencode 的官方安装方式通常是执行一行 curl 脚本或通过包管理工具安装。我在 Mac 上实操时更推荐把版本固定下来,尽量不要用“每次都拉最新版”的方式,因为 AI 工具迭代快,某个小版本的行为可能变化很大,固定版本能减少“昨天还能用,今天突然不识别参数”的那种尴尬。
我当时的操作顺序是:
bash复制# 先确认本机有没有残留的旧版本
which opencode
opencode --version
# 执行官方安装脚本
curl -fsSL https://opencode.ai/install | bash
安装完成后,你会看到二进制通常被释放到用户目录下的 .opencode/bin 或者 /usr/local/bin 下,具体取决于安装脚本检测到的系统环境。我建议安装后立刻做两件事:
bash复制which opencode
opencode --version
如果 which 没有任何输出,说明安装目录没有进入当前 shell 的 PATH。这时先别急着改系统级配置文件,可以把检查范围缩小到 shell 配置里有没有加载对应的路径。常见情况是用户装了 nvm、pyenv 这类版本管理工具,它们可能在 .zshrc 里有自己的 PATH 重排逻辑,导致 opencode 的目录被覆盖。
