opencode使用指南
背景
当前vibecoding火热,国外AI编程工具如Claude code 、grok cli爆出安全问题,针对中国用户进行区分对待,并且每月几百美元的订阅费,普通用户也负担不起,那么有没有便宜安全好用的AI编程工具呢,有的,那就是opencode,它不仅提供免费模型如deepseekv4 flash,xiaomi mimo v2.5,并且还支持主流编程工具的插件功能,非常值得一试。
本体安装
安装node.js
首先从GitHub下载nodejs的管理工具nvm,https://github.com/coreybutler/nvm-windows/releases , github下载慢,访问存在问题的可以参照往期文章
然后打开powershell 安装nodejs
nvm install lts
安装opencode
npm install -g opencode-ai
配置opencode
在这里先配置好模型可以直接让opencode帮我们安装插件
首先去 https://opencode.ai/docs/zh-cn/zen/ 申请一个apikey
在powershell中输入opencode 进入opencode,然后按下ctrl+p,输入pro,选择 connect provider
选择opencode zen,输入刚刚申请的apikey,然后回到opencode主界面,输入/models回车,输入free 从几个免费模型中挑选一个,比如deepseekv4 flash free,模型即配置完毕
插件安装
现在市面上有一堆skill,mcp等东西,让人眼花缭乱,不知道该用哪个,插件即使是将skill和mcp等东西打包在一起安装的让AI编程工具更好用的东西,但是插件也不是越多越好,装的插件越多,token消耗越大,也容易把简单问题复杂化,这里只推荐安装两个插件。ohmy opencode slim轻量化智能体集群,附带websearch和context7 MCP工具;superpowers包含各类强大编程skill。
安装ohmy opencode slim
按tab键切换到build模式下,直接在opencode的主界面输入Install and configure oh-my-opencode-slim: https://raw.githubusercontent.com/alvinunreal/oh-my-opencode-slim/refs/heads/master/README.md,按下回车即可让opencode调用大模型的能力帮你执行安装命令
# 验证安装 按ctrl+c退出opencode 再重进输入
node node_modules/oh-my-opencode-slim/dist/cli/index.js doctor --json
# ~/.config/opencode目录下的三个文件
# opencode.jsonc 声明插件、MCP、自定义 provider
# package.json
# oh-my-opencode-slim.json slim 插件的核心配置:preset、agent 模型、council 预设
安装好后重启opencode,你的opencode会出现额外的orchestratoragent,和他对话它会自动调用多个agent进行协作开发,免费开玩的配置见文章结尾
安装superpowers
在opencode主界面输入Fetch and follow instructions from https://raw.githubusercontent.com/obra/superpowers/refs/heads/main/.opencode/INSTALL.md 安装完成后同样需要重启opencode,主界面输入/skills查看已安装的skills,你应该会有20多个skill,opencode会在合适的时机自动调用skill
结语
到这里,让你的opencode变好用的基本配置已经完成了,你可以一直白嫖它的免费模型,也能充值它的opencode go获得更强力的模型,首月只需5美元,这个月就能获得60美元额度,爽用国内外几乎所有的强力大模型。可以从我的邀请链接https://opencode.ai/go?ref=NXYGD8GHGM进入进行充值开通,这样你和我都能获得5美元的额外额度(直接充值是没有的)。
其他
技巧
ctrl+t 切换思考深度
tab 切换agent
! 执行命令行
ctrl+p 调出指令界面(切换会话、切换模型等)
oh-my-opencode-slim.json 配置文件
充值了opencode go的在preset栏输入opencode-go,想一分不花的在preset栏输入opencode-zen-free
{
"$schema": "https://unpkg.com/oh-my-opencode-slim@latest/oh-my-opencode-slim.schema.json",
"preset": "opencode-zen-free",
"presets": {
"opencode-zen-free": {
"orchestrator": {
"model": "opencode/hy3-free",
"variant": "high",
"temperature": 0.4,
"skills": ["*"],
"mcps": ["*", "!context7"]
},
"oracle": {
"model": "opencode/big-pickle",
"temperature": 0.4,
"variant": "max",
"skills": ["simplify"],
"mcps": []
},
"explorer": {
"model": "opencode/north-mini-code-free",
"temperature": 0.2,
"skills": [],
"mcps": []
},
"librarian": {
"model": "opencode/deepseek-v4-flash-free",
"temperature": 0.2,
"skills": [],
"mcps": ["websearch", "context7", "gh_grep"]
},
"designer": {
"model": "opencode/mimo-v2.5-free",
"temperature": 0.3,
"variant": "medium",
"skills": [],
"mcps": []
},
"fixer": {
"model": "opencode/deepseek-v4-flash-free",
"temperature": 0.2,
"variant": "high",
"skills": [],
"mcps": []
},
"observer": {
"model": "opencode/mimo-v2.5-free",
"temperature": 0.2,
"variant": "low",
"skills": [],
"mcps": []
}
},
"opencode-go": {
"orchestrator": { "model": "opencode-go/minimax-m3", "variant": "high", "skills": [ "*" ], "mcps": [ "*", "!context7" ] },
"oracle": { "model": "opencode-go/deepseek-v4-pro", "variant": "max", "skills": ["simplify"], "mcps": [] },
"librarian": { "model": "opencode-go/deepseek-v4-flash", "variant": "medium", "skills": [], "mcps": [ "websearch", "context7", "gh_grep" ] },
"explorer": { "model": "opencode-go/deepseek-v4-flash", "variant": "medium", "skills": [], "mcps": [] },
"designer": { "model": "opencode-go/kimi-k2.7-code", "variant": "medium", "skills": [], "mcps": [] },
"fixer": { "model": "opencode-go/deepseek-v4-flash", "variant": "high", "skills": [], "mcps": [] },
"observer": { "model": "opencode-go/mimo-v2.5", "variant": "high", "skills": [], "mcps": [] }
}
},
"companion": {
"enabled": true,
"position": "bottom-right",
"size": "medium",
"gifPack": "default",
"loopStyle": "classic",
"speed": 1,
"debug": false
},
"multiplexer": {
"type": "auto",
"layout": "main-vertical",
"main_pane_size": 60
}
}
opencode.jsonc 配置provider 接入openai格式模型
"provider": {
"你的provider名": {
"name": "显示名",
"npm": "@ai-sdk/openai-compatible",
"options": { "baseURL": "https://...",
"apiKey": "sk-xxxx"
},
"models": { "模型ID": { "name": "模型名" } }
}
}
也可先不设置apiKey后面再补充,先在opencode.jsonc中填写provider,再打开opencode,输入命令/connect 找到刚刚的provider的显示名,填写api-key
夜雨聆风