乐于分享
好东西不私藏

免费好用的主流AI编程工具

免费好用的主流AI编程工具

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