新年来分享我的oh-my-opencode配置和学习心得
- 内容介绍
- 文章标签
- 相关推荐
用opencode也一两个月了,眼看着oh-my-opencode越发完善,很多设计理念都让我感到十分精妙,让最合适的模型去做最合适的agent,让每个agent配置对应不同的任务,各司其职的感觉不仅让我想起电台头的歌曲 Everything In Its Right Place(虽然歌名和实际表达的意思正好相反)。
由于oh-my-opencode更新很频繁,github上readme很多时候更新不及时,也不够详细,这里就简单介绍一下最新版的agents集群架构。
简单来说就是oh-my-opencode通过把写代码,甚至是任何可以AI操作的电脑任务拆解成几个部分:规划、查阅、执行,具体的agent带着prompt、skills等上下文各司其职,团队分工合作完成复杂任务,多说无益我们看这个简化版的架构图:
image2496×1537 352 KB
我们大致可以拆成四个部分来看这张图:
a.编排器与调度器
- Sisyphus(主控 & 总工程师)
- 西西弗斯主agent,绝大多数时候都是和用户对话的agent和所有任务的入口
- 总规划编排调度,可以调用其他subagent,必要时还可以临时创建特定任务的agent
- 非常简单的任务也会自己直接阅读/写代码,有时其他agent职责没有覆盖/完成的也会自己上手
- Atlas(调度器 & 计划执行器)
- 阅读Sisyphus或者Prometheus的plan,逐条执行ToDo
- 主要功能是调用其他subagent,分配具体任务
- 简单问题也会自己直接执行读写文件
b.计划与验证
- Prometheus(战略规划师)
- 生成plan给Atlas,一般由Sisyphus调用,如果用户对任务有详细的认知和描述可以手动切换直接与Prometheus对话,这样会更精确执行用户的目标
- 可能会询问用户问题来澄清需求
- Metis(预分析规划顾问)
- Prometheus的分析顾问,制定plan之前的风险分析和方案探索
- 挖隐含需求、补上下文、避免过度设计
- Momus(战略审查师)
- 作为Prometheus的审稿人对plan审查与结果验证
c.检索与顾问
- Oracle(架构/调试顾问)
- 当其他agent(Atlas/Sisyphus等)有疑问的时候调用Oracle解决局部难点
- 一般是解释代码给出建议,做头脑风暴、审阅
- Librarian(检索专家)
- grep文档、API、README、GitHub代码
- 当其他agent需要外部信息的时候调用它
- Explore(代码库探索)
- 做结构化的语义grep,告诉其它agent某段逻辑、风格
- 当其他agent需要本地文档信息的时候调用它
- multimodal‑looker(多模态分析师)
- 查看PDF、图片、截图等内容
d.执行器
- Hephaestus(长周期执行器)
- 利用codex系列长期工作的特性执行那些需要几十分钟起步的任务
- 循环跑读、写代码、运行、检查结果的循环
- 由Sisyphus或Atlas调用
- Sisyphus‑Junior(单任务执行器)
- 由用户创建或者Sisyphus临时生成的特定任务执行器
- 专注于某一种任务的执行,可以读写代码
- 用户可以手动在categories字段创建(见下文的json配置)
*注:除了上面两个,Sisyphus和Atlas本身也可以读写文件,任务简单的时候也能直接修改代码,在早期版本中,Sisyphus会倾向于自己修改代码或者调用opencode的build agent修改代码,现在更加完善了
看完上面的每个agent分析,是不是发觉这个agents集群是一个精妙的系统,agent之间可以互相调用,可以返回各种信息,需要时还可以创建新的agent新的skill和其他约束最终高质量的交付。就这种各司其职的,让每个agent和模型做最适合自己的事情就像是拆解了一台精妙仪器一样。
在下一节的jsonc代码里我会列出每个agent最适合的模型
佬友佬友,你讲了这么多,我似懂非懂了,那有没有一键使用的模板呢
有的,兄弟有的
理解了上面的原理后,下面这份模板你就可以拿走改改变成最适合自己的了
首先在你的机器上找到.config/opencode路径(win上是%USERPROFILE%\.config\opencode),安装并运行oh-my-opencode(如果没有安装可以在opencode里的build模式里直接给AI说我要安装oh-my-opencode,把github链接甩过去他就会安装了)之后就会有一个oh-my-opencode.json文件,我们可以把这个json改成jsonc文件(这样兼容性更好,支持批注和更多语法),然后按照我下面的参考进行配置。
我自己在用的配置如下,其中fallback链是结合代码和作者的推荐给出的推荐模型顺序,优先选择上面靠前的模型,意味着这个模型更适合这个任务,当然没有相关模型的订阅也可以顺次换成其他推荐的模型。写的模型是我正在用的,因为我没有官方的claude订阅(用的第三方API),所以用GPT代替了一部分claude模型(OpenAI订阅真的量大管饱啊),你们也可以根据自己的订阅来切换不同的模型。
{
"$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/master/assets/oh-my-opencode.schema.json",
//2026-02-28
//"disabled_agents": ["oracle", "multimodal-looker"],//来禁用某个特定代理
"runtime_fallback": {
"enabled": true,
"retry_on_errors": [400, 429, 500, 503, 529],
"max_fallback_attempts": 3,
"cooldown_seconds": 60, // 回退冷却时间,防止短时间反复尝试已故障的模型
"timeout_seconds": 60, // 单个请求超时时间(秒),超过则视为失败并触发回退,默认30
"notify_on_fallback": true
},
"agents": {
// ======================
// 1. 编排规划与验证系列
// ======================
"sisyphus": {
// 主编排器:委托任务编排分配、TODO、后台并行、动态组合技能,调用subagent
// fallback:claude-opus-4-6 → kimi-k2.5 → glm-4.7 → gpt-5.3-codex → gemini-3-pro
"model": "claude/claude-opus-4-6",
"temperature": 0.1,
"fallback_models": [
"kimi-for-coding/k2p5",
"zai-coding-plan/glm-4.7",
"openai/gpt-5.3-codex",
"google/gemini-3-pro-preview"
]
},
"atlas": {
// 高级编排器:全生命周期管理,任务路由,基于skills调度,全局会话级别的编排器,一般由内部逻辑/hook唤起
// fallback:claude-sonnet-4-5 → kimi-k2.5 → gpt-5.2 → gemini-3-pro
"model": "openai/gpt-5.2",
"temperature": 0.1,
"fallback_models": [
"anthropic/claude-sonnet-4-5",
"kimi-for-coding/k2p5",
"google/gemini-3-pro-preview"
]
},
"prometheus": {
// 战略规划:澄清需求、验证计划、复杂任务分解,推荐内部plan而不是和用户直接交互
// fallback:claude-opus-4-6 → kimi-k2.5 → gpt-5.2
"model": "claude/claude-opus-4-6",
"temperature": 0.1,
"fallback_models": [
"kimi-for-coding/k2p5",
"openai/gpt-5.2"
]
},
"metis": {
// 预分析规划顾问:正式plan/执行前进行问题理解、风险与上下文分析,温度略高,探索更多方案
// fallback:claude-opus-4-6 → kimi-k2.5 → gpt-5.2-high
"model": "anthropic/claude-opus-4-6",
"temperature": 0.3,
"variant": "max",
"fallback_models": [
"kimi-for-coding/k2p5",
"openai/gpt-5.2"
]
},
"momus": {
// 计划与结果验证:对计划/方案进行合理性检查和评审
// gpt-5.2 → claude-opus-4-6 → gemini-3-pro
"model": "openai/gpt-5.2",
"temperature": 0.1,
"variant": "medium",
"fallback_models": [
"anthropic/claude-opus-4-6",
"google/gemini-3-pro-preview"
]
},
// ======================
// 2. 执行系
// ======================
"hephaestus": {
// 深度自主工作专用,长周期,深度任务
// 只推荐OpenAI codex模型,如果没有codex则不会使用这个agent
"model": "openai/gpt-5.3-codex",
"temperature": 0.1,
"fallback_models": [ "openai/gpt-5.2-codex" ]
},
// ======================
// 3. 顾问与检索系
// ======================
"oracle": {
// 咨询/调试/架构专家:代码审查、复杂问题拆解,交互式问答
// fallback:gpt-5.2-high → gemini-3-pro → claude-opus-4-6
"model": "openai/gpt-5.2",
"temperature": 0.1,
"variant": "high",
"fallback_models": [
"google/gemini-3-pro-preview",
"anthropic/claude-opus-4-6"
]
},
"librarian": {
// 文档/仓库检索专家:文档/README/API 手册/GitHub 仓库搜索,大量输入,需要快速便宜长上下文的模型
// fallback:glm-4.7 → gpt-5.3-codex-spark → gemini-3-flash
"model": "zai-coding-plan/glm-4.7",
"fallback_models": [
"zai-coding-plan/glm-4.7",
"openai/gpt-5.3-codex-spark",
"gemini/gemini-3-flash-preview"
]
},
"explore": {
// 快速代码库探索:grep(上下文感知搜索)
// fallback:gpt-5.3-codex-spark → grok-code-fast-1 → claude-haiku-4-5 → gpt-5-mini → gpt-5-nano
"model": "openai/gpt-5.3-codex-spark",
"fallback_models": [
"github-copilot/grok-code-fast-1",
"anthropic/claude-haiku-4-5",
"openai/gpt-5-mini",
"openai/gpt-5-nano"
]
},
"multimodal-looker": {
// 多模态分析:PDF/图片分析,多模态好的模型
// fallback:gemini-3-flash → kimi-k2.5
"model": "gemini/gemini-3-pro-preview",
"fallback_models": [
"gemini/gemini-3-flash-preview",
"kimi-for-coding/k2p5"
]
}
},
"categories": {
// 快速小活:haiku / gemini-flash / nano
"quick": { "model": "openai/gpt-5.3-codex-spark", "temperature": 0.1 },
// 深度执行:codex / opus / gemini-pro
"deep": { "model": "openai/gpt-5.3-codex", "variant": "medium", "temperature": 0.1 },
// 超大脑:codex xhigh(更激进)
"ultrabrain": { "model": "openai/gpt-5.3-codex", "variant": "xhigh", "temperature": 0.1 },
// 视觉/前端/GUI:gemini-pro-high / glm-5 / opus
"visual-engineering": { "model": "google/gemini-3-pro-preview", "temperature": 0.1 },
// 文本/写作:glm4.7 / k2.5 / gemini-flash / sonnet
"writing": { "model": "gemini/gemini-3-pro-preview", "temperature": 0.2 },
// 未指定低/高档位
"unspecified-low": { "model": "claude/claude-sonnet-4-5", "temperature": 0.1 },
"unspecified-high": { "model": "claude/claude-opus-4-6", "variant": "max", "temperature": 0.1 }
}
}
其中categories部分也是看自己的需求添加即可
上面模型前面的供应商是opencode.jsonc里的provider,模型是模型的调用名字,假如说我在全局opencode配置里加了
"new-api": {
"npm": "@ai-sdk/openai",
"name": "New API (OpenAI Responses)",
"options": {
"baseURL": "https://newapi.example.com/v1",
"apiKey": "sk-123456789"
},
"models": {
"gpt-5.2": { "name": "gpt-5.2 (New API)" },
"gpt-5.3-codex": { "name": "gpt-5.3 codex (New API)" }
}
},
那我在oh-my-opencode.jsonc里就写new-api/gpt-5.3-codex即可
大部分模型都是可以按照fallback列表配置的,有推荐列表前面的模型对应的订阅就优先选择它,后面的也不是不能用,总体上丰俭由人,根据自己手里的渠道选择
值得注意的是,谷歌宣布从3月10号下架Gemini 3.0 Pro,建议替换成3.1 Pro
一些模型选择的思路:
codex是那种说什么就做什么的模型,绝不多做,也不发挥主观能动性给你代码优化,而opus就更喜欢帮你优化代码,有更多主观能动性(GPT 5.2/5.3 codex对比opus4.5/4.6),所以codex就更适合做写代码的,opus更适合给codex布置任务、监工。又比如codex-spark是非常快的那种,就适合做大量grep的任务,Gemini多模态明显是御三家里最好的,所以就拿来多模态这样子。还有一些思路,比如说西西弗斯和阿特拉斯用不同家的模型互补,普罗米修斯和其他审阅plan的模型也不一样这样才能集思广益。
2.28修改:在上面配置里添加了佬友加的fallback配置,具体解释:
JasonWenTF:网友解答:
"runtime_fallback": { // 全局回退策略 "enabled": true, // 打开回退,默认是关闭(不写的话) "retry_on_errors": [ // 哪些报错会回退 400, // Bad Request(部分 provider 的临时无效请求,可重试) 429, // Rate Limit / 频率限制 / 配额用尽(最常见触发场景) 500, // Internal Server Error(服务器内部错误) 503, // Service Unavailable(服务暂时不可用) 529 // 部分提供商(如 Gemini、中转服务)的过载/临时错误 ], "max_fallback_attempts": 5, // 单个请求允许的最大回退尝试次数(包含原始模型),默认为3 "cooldown_seconds": 60, // 模型回退后进入冷却的时间(秒),防止短时间内反复尝试同一个已故障的模型 "timeout_seconds": 30, // 单个请求超时时间(秒),超过则视为失败并触发回退,默认30 "notify_on_fallback": true // 发生模型切换时,是否弹出桌面通知告知用户(推荐开启,方便知道发生了回退) },
--【壹】--:
哇,感谢大佬
--【贰】--:
cool!
--【叁】--:
感谢用心分享,图片整理的非常直观易懂!另外可以问一下对各个代理挑选不同模型的逻辑是什么吗?换句话说,不同模型如Claude 或gpt、gpt-codex,他们的具体优势区间是什么?
--【肆】--:
没遇到过,但是遇到过别的报错导致用不了的,原因还很多 每次都是AI debug
--【伍】--:
这个用起来真的好用吗
--【陆】--:
真是不容易,编辑了这么久 中间还让AI帮忙画了几张图,但是都有点小问题,就没放进正文里
ChatGPT画的貌似没啥问题,但是这个配色看的我头大
image2483×1515 449 KB
nano banana pro画的有不少小问题,我本来想draw io编辑一下的,但是太麻烦了,遂放弃
1771343284166_69ba8c98-a38a-4e0a-9856-a03aee9c2b44 (1)1920×1071 501 KB
下面是Gemini写的mermaid,我又改了三轮终于可看了:
JasonWenTF:重新改了一遍mermaid,删了一些东西,现在可读性好多了
image2358×1767 420 KB
--【柒】--: JasonWenTF:
my-opencode越发完善,很多设计理念都让我感到十分精妙,让最合适的模型去做最合适的agent,让每个agent配置对应不同的任务,各司其职的感觉不仅让我想起电台头的歌曲 Everything In Its Right Place(虽然歌名和实际表达的意思正好相反)。
由于oh-my-opencode更新很频繁,github上readme很多时候更新不及时,也不够详细,这里就简单介绍一下最新版的agents集群架构。
简单来说就是oh-my-opencode通过把写代码,甚至是任何可以AI操作的电脑任务拆解成几个部分:规划、查阅、执行,具体的agent带着prompt、skills等上下文各司其职,团队分工合作完成复杂任务,多说无益我们看这个简化版的架
ohmyopencode主要是给opencode多agent工作能力,分任务使用对应的模型也是很好的思路。
刚开始用的时候很不习惯作者搞得那堆希腊神话名字(最搞笑的github配的AI生成图,西西弗斯和赫菲斯托斯变韩国人了)
还是按照职务命名比较合适
--【捌】--:
收藏记录学习
--【玖】--:
mark起来,后面研究一下
--【拾】--:
佬,有没有遇到过 模型太次的,不会调用其他智能体的情况
--【拾壹】--:
偶遇中。。。
--【拾贰】--:
好像在 omo 设置里直接放 variant 属性是不生效的,需要包在 option 里边?
--【拾叁】--:
是不是我比较费模型?
--【拾肆】--:
好棒的分享,赞
--【拾伍】--:
我咋感觉看到你之前写过
--【拾陆】--:
大佬辛苦了 新年快乐
--【拾柒】--:
感谢佬的用心分享
--【拾捌】--:
很好的教程
--【拾玖】--:
咦,oh-my-opencode是第一次,上次有个回答写了很详细的nano banana pro的使用技巧
用opencode也一两个月了,眼看着oh-my-opencode越发完善,很多设计理念都让我感到十分精妙,让最合适的模型去做最合适的agent,让每个agent配置对应不同的任务,各司其职的感觉不仅让我想起电台头的歌曲 Everything In Its Right Place(虽然歌名和实际表达的意思正好相反)。
由于oh-my-opencode更新很频繁,github上readme很多时候更新不及时,也不够详细,这里就简单介绍一下最新版的agents集群架构。
简单来说就是oh-my-opencode通过把写代码,甚至是任何可以AI操作的电脑任务拆解成几个部分:规划、查阅、执行,具体的agent带着prompt、skills等上下文各司其职,团队分工合作完成复杂任务,多说无益我们看这个简化版的架构图:
image2496×1537 352 KB
我们大致可以拆成四个部分来看这张图:
a.编排器与调度器
- Sisyphus(主控 & 总工程师)
- 西西弗斯主agent,绝大多数时候都是和用户对话的agent和所有任务的入口
- 总规划编排调度,可以调用其他subagent,必要时还可以临时创建特定任务的agent
- 非常简单的任务也会自己直接阅读/写代码,有时其他agent职责没有覆盖/完成的也会自己上手
- Atlas(调度器 & 计划执行器)
- 阅读Sisyphus或者Prometheus的plan,逐条执行ToDo
- 主要功能是调用其他subagent,分配具体任务
- 简单问题也会自己直接执行读写文件
b.计划与验证
- Prometheus(战略规划师)
- 生成plan给Atlas,一般由Sisyphus调用,如果用户对任务有详细的认知和描述可以手动切换直接与Prometheus对话,这样会更精确执行用户的目标
- 可能会询问用户问题来澄清需求
- Metis(预分析规划顾问)
- Prometheus的分析顾问,制定plan之前的风险分析和方案探索
- 挖隐含需求、补上下文、避免过度设计
- Momus(战略审查师)
- 作为Prometheus的审稿人对plan审查与结果验证
c.检索与顾问
- Oracle(架构/调试顾问)
- 当其他agent(Atlas/Sisyphus等)有疑问的时候调用Oracle解决局部难点
- 一般是解释代码给出建议,做头脑风暴、审阅
- Librarian(检索专家)
- grep文档、API、README、GitHub代码
- 当其他agent需要外部信息的时候调用它
- Explore(代码库探索)
- 做结构化的语义grep,告诉其它agent某段逻辑、风格
- 当其他agent需要本地文档信息的时候调用它
- multimodal‑looker(多模态分析师)
- 查看PDF、图片、截图等内容
d.执行器
- Hephaestus(长周期执行器)
- 利用codex系列长期工作的特性执行那些需要几十分钟起步的任务
- 循环跑读、写代码、运行、检查结果的循环
- 由Sisyphus或Atlas调用
- Sisyphus‑Junior(单任务执行器)
- 由用户创建或者Sisyphus临时生成的特定任务执行器
- 专注于某一种任务的执行,可以读写代码
- 用户可以手动在categories字段创建(见下文的json配置)
*注:除了上面两个,Sisyphus和Atlas本身也可以读写文件,任务简单的时候也能直接修改代码,在早期版本中,Sisyphus会倾向于自己修改代码或者调用opencode的build agent修改代码,现在更加完善了
看完上面的每个agent分析,是不是发觉这个agents集群是一个精妙的系统,agent之间可以互相调用,可以返回各种信息,需要时还可以创建新的agent新的skill和其他约束最终高质量的交付。就这种各司其职的,让每个agent和模型做最适合自己的事情就像是拆解了一台精妙仪器一样。
在下一节的jsonc代码里我会列出每个agent最适合的模型
佬友佬友,你讲了这么多,我似懂非懂了,那有没有一键使用的模板呢
有的,兄弟有的
理解了上面的原理后,下面这份模板你就可以拿走改改变成最适合自己的了
首先在你的机器上找到.config/opencode路径(win上是%USERPROFILE%\.config\opencode),安装并运行oh-my-opencode(如果没有安装可以在opencode里的build模式里直接给AI说我要安装oh-my-opencode,把github链接甩过去他就会安装了)之后就会有一个oh-my-opencode.json文件,我们可以把这个json改成jsonc文件(这样兼容性更好,支持批注和更多语法),然后按照我下面的参考进行配置。
我自己在用的配置如下,其中fallback链是结合代码和作者的推荐给出的推荐模型顺序,优先选择上面靠前的模型,意味着这个模型更适合这个任务,当然没有相关模型的订阅也可以顺次换成其他推荐的模型。写的模型是我正在用的,因为我没有官方的claude订阅(用的第三方API),所以用GPT代替了一部分claude模型(OpenAI订阅真的量大管饱啊),你们也可以根据自己的订阅来切换不同的模型。
{
"$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/master/assets/oh-my-opencode.schema.json",
//2026-02-28
//"disabled_agents": ["oracle", "multimodal-looker"],//来禁用某个特定代理
"runtime_fallback": {
"enabled": true,
"retry_on_errors": [400, 429, 500, 503, 529],
"max_fallback_attempts": 3,
"cooldown_seconds": 60, // 回退冷却时间,防止短时间反复尝试已故障的模型
"timeout_seconds": 60, // 单个请求超时时间(秒),超过则视为失败并触发回退,默认30
"notify_on_fallback": true
},
"agents": {
// ======================
// 1. 编排规划与验证系列
// ======================
"sisyphus": {
// 主编排器:委托任务编排分配、TODO、后台并行、动态组合技能,调用subagent
// fallback:claude-opus-4-6 → kimi-k2.5 → glm-4.7 → gpt-5.3-codex → gemini-3-pro
"model": "claude/claude-opus-4-6",
"temperature": 0.1,
"fallback_models": [
"kimi-for-coding/k2p5",
"zai-coding-plan/glm-4.7",
"openai/gpt-5.3-codex",
"google/gemini-3-pro-preview"
]
},
"atlas": {
// 高级编排器:全生命周期管理,任务路由,基于skills调度,全局会话级别的编排器,一般由内部逻辑/hook唤起
// fallback:claude-sonnet-4-5 → kimi-k2.5 → gpt-5.2 → gemini-3-pro
"model": "openai/gpt-5.2",
"temperature": 0.1,
"fallback_models": [
"anthropic/claude-sonnet-4-5",
"kimi-for-coding/k2p5",
"google/gemini-3-pro-preview"
]
},
"prometheus": {
// 战略规划:澄清需求、验证计划、复杂任务分解,推荐内部plan而不是和用户直接交互
// fallback:claude-opus-4-6 → kimi-k2.5 → gpt-5.2
"model": "claude/claude-opus-4-6",
"temperature": 0.1,
"fallback_models": [
"kimi-for-coding/k2p5",
"openai/gpt-5.2"
]
},
"metis": {
// 预分析规划顾问:正式plan/执行前进行问题理解、风险与上下文分析,温度略高,探索更多方案
// fallback:claude-opus-4-6 → kimi-k2.5 → gpt-5.2-high
"model": "anthropic/claude-opus-4-6",
"temperature": 0.3,
"variant": "max",
"fallback_models": [
"kimi-for-coding/k2p5",
"openai/gpt-5.2"
]
},
"momus": {
// 计划与结果验证:对计划/方案进行合理性检查和评审
// gpt-5.2 → claude-opus-4-6 → gemini-3-pro
"model": "openai/gpt-5.2",
"temperature": 0.1,
"variant": "medium",
"fallback_models": [
"anthropic/claude-opus-4-6",
"google/gemini-3-pro-preview"
]
},
// ======================
// 2. 执行系
// ======================
"hephaestus": {
// 深度自主工作专用,长周期,深度任务
// 只推荐OpenAI codex模型,如果没有codex则不会使用这个agent
"model": "openai/gpt-5.3-codex",
"temperature": 0.1,
"fallback_models": [ "openai/gpt-5.2-codex" ]
},
// ======================
// 3. 顾问与检索系
// ======================
"oracle": {
// 咨询/调试/架构专家:代码审查、复杂问题拆解,交互式问答
// fallback:gpt-5.2-high → gemini-3-pro → claude-opus-4-6
"model": "openai/gpt-5.2",
"temperature": 0.1,
"variant": "high",
"fallback_models": [
"google/gemini-3-pro-preview",
"anthropic/claude-opus-4-6"
]
},
"librarian": {
// 文档/仓库检索专家:文档/README/API 手册/GitHub 仓库搜索,大量输入,需要快速便宜长上下文的模型
// fallback:glm-4.7 → gpt-5.3-codex-spark → gemini-3-flash
"model": "zai-coding-plan/glm-4.7",
"fallback_models": [
"zai-coding-plan/glm-4.7",
"openai/gpt-5.3-codex-spark",
"gemini/gemini-3-flash-preview"
]
},
"explore": {
// 快速代码库探索:grep(上下文感知搜索)
// fallback:gpt-5.3-codex-spark → grok-code-fast-1 → claude-haiku-4-5 → gpt-5-mini → gpt-5-nano
"model": "openai/gpt-5.3-codex-spark",
"fallback_models": [
"github-copilot/grok-code-fast-1",
"anthropic/claude-haiku-4-5",
"openai/gpt-5-mini",
"openai/gpt-5-nano"
]
},
"multimodal-looker": {
// 多模态分析:PDF/图片分析,多模态好的模型
// fallback:gemini-3-flash → kimi-k2.5
"model": "gemini/gemini-3-pro-preview",
"fallback_models": [
"gemini/gemini-3-flash-preview",
"kimi-for-coding/k2p5"
]
}
},
"categories": {
// 快速小活:haiku / gemini-flash / nano
"quick": { "model": "openai/gpt-5.3-codex-spark", "temperature": 0.1 },
// 深度执行:codex / opus / gemini-pro
"deep": { "model": "openai/gpt-5.3-codex", "variant": "medium", "temperature": 0.1 },
// 超大脑:codex xhigh(更激进)
"ultrabrain": { "model": "openai/gpt-5.3-codex", "variant": "xhigh", "temperature": 0.1 },
// 视觉/前端/GUI:gemini-pro-high / glm-5 / opus
"visual-engineering": { "model": "google/gemini-3-pro-preview", "temperature": 0.1 },
// 文本/写作:glm4.7 / k2.5 / gemini-flash / sonnet
"writing": { "model": "gemini/gemini-3-pro-preview", "temperature": 0.2 },
// 未指定低/高档位
"unspecified-low": { "model": "claude/claude-sonnet-4-5", "temperature": 0.1 },
"unspecified-high": { "model": "claude/claude-opus-4-6", "variant": "max", "temperature": 0.1 }
}
}
其中categories部分也是看自己的需求添加即可
上面模型前面的供应商是opencode.jsonc里的provider,模型是模型的调用名字,假如说我在全局opencode配置里加了
"new-api": {
"npm": "@ai-sdk/openai",
"name": "New API (OpenAI Responses)",
"options": {
"baseURL": "https://newapi.example.com/v1",
"apiKey": "sk-123456789"
},
"models": {
"gpt-5.2": { "name": "gpt-5.2 (New API)" },
"gpt-5.3-codex": { "name": "gpt-5.3 codex (New API)" }
}
},
那我在oh-my-opencode.jsonc里就写new-api/gpt-5.3-codex即可
大部分模型都是可以按照fallback列表配置的,有推荐列表前面的模型对应的订阅就优先选择它,后面的也不是不能用,总体上丰俭由人,根据自己手里的渠道选择
值得注意的是,谷歌宣布从3月10号下架Gemini 3.0 Pro,建议替换成3.1 Pro
一些模型选择的思路:
codex是那种说什么就做什么的模型,绝不多做,也不发挥主观能动性给你代码优化,而opus就更喜欢帮你优化代码,有更多主观能动性(GPT 5.2/5.3 codex对比opus4.5/4.6),所以codex就更适合做写代码的,opus更适合给codex布置任务、监工。又比如codex-spark是非常快的那种,就适合做大量grep的任务,Gemini多模态明显是御三家里最好的,所以就拿来多模态这样子。还有一些思路,比如说西西弗斯和阿特拉斯用不同家的模型互补,普罗米修斯和其他审阅plan的模型也不一样这样才能集思广益。
2.28修改:在上面配置里添加了佬友加的fallback配置,具体解释:
JasonWenTF:网友解答:
"runtime_fallback": { // 全局回退策略 "enabled": true, // 打开回退,默认是关闭(不写的话) "retry_on_errors": [ // 哪些报错会回退 400, // Bad Request(部分 provider 的临时无效请求,可重试) 429, // Rate Limit / 频率限制 / 配额用尽(最常见触发场景) 500, // Internal Server Error(服务器内部错误) 503, // Service Unavailable(服务暂时不可用) 529 // 部分提供商(如 Gemini、中转服务)的过载/临时错误 ], "max_fallback_attempts": 5, // 单个请求允许的最大回退尝试次数(包含原始模型),默认为3 "cooldown_seconds": 60, // 模型回退后进入冷却的时间(秒),防止短时间内反复尝试同一个已故障的模型 "timeout_seconds": 30, // 单个请求超时时间(秒),超过则视为失败并触发回退,默认30 "notify_on_fallback": true // 发生模型切换时,是否弹出桌面通知告知用户(推荐开启,方便知道发生了回退) },
--【壹】--:
哇,感谢大佬
--【贰】--:
cool!
--【叁】--:
感谢用心分享,图片整理的非常直观易懂!另外可以问一下对各个代理挑选不同模型的逻辑是什么吗?换句话说,不同模型如Claude 或gpt、gpt-codex,他们的具体优势区间是什么?
--【肆】--:
没遇到过,但是遇到过别的报错导致用不了的,原因还很多 每次都是AI debug
--【伍】--:
这个用起来真的好用吗
--【陆】--:
真是不容易,编辑了这么久 中间还让AI帮忙画了几张图,但是都有点小问题,就没放进正文里
ChatGPT画的貌似没啥问题,但是这个配色看的我头大
image2483×1515 449 KB
nano banana pro画的有不少小问题,我本来想draw io编辑一下的,但是太麻烦了,遂放弃
1771343284166_69ba8c98-a38a-4e0a-9856-a03aee9c2b44 (1)1920×1071 501 KB
下面是Gemini写的mermaid,我又改了三轮终于可看了:
JasonWenTF:重新改了一遍mermaid,删了一些东西,现在可读性好多了
image2358×1767 420 KB
--【柒】--: JasonWenTF:
my-opencode越发完善,很多设计理念都让我感到十分精妙,让最合适的模型去做最合适的agent,让每个agent配置对应不同的任务,各司其职的感觉不仅让我想起电台头的歌曲 Everything In Its Right Place(虽然歌名和实际表达的意思正好相反)。
由于oh-my-opencode更新很频繁,github上readme很多时候更新不及时,也不够详细,这里就简单介绍一下最新版的agents集群架构。
简单来说就是oh-my-opencode通过把写代码,甚至是任何可以AI操作的电脑任务拆解成几个部分:规划、查阅、执行,具体的agent带着prompt、skills等上下文各司其职,团队分工合作完成复杂任务,多说无益我们看这个简化版的架
ohmyopencode主要是给opencode多agent工作能力,分任务使用对应的模型也是很好的思路。
刚开始用的时候很不习惯作者搞得那堆希腊神话名字(最搞笑的github配的AI生成图,西西弗斯和赫菲斯托斯变韩国人了)
还是按照职务命名比较合适
--【捌】--:
收藏记录学习
--【玖】--:
mark起来,后面研究一下
--【拾】--:
佬,有没有遇到过 模型太次的,不会调用其他智能体的情况
--【拾壹】--:
偶遇中。。。
--【拾贰】--:
好像在 omo 设置里直接放 variant 属性是不生效的,需要包在 option 里边?
--【拾叁】--:
是不是我比较费模型?
--【拾肆】--:
好棒的分享,赞
--【拾伍】--:
我咋感觉看到你之前写过
--【拾陆】--:
大佬辛苦了 新年快乐
--【拾柒】--:
感谢佬的用心分享
--【拾捌】--:
很好的教程
--【拾玖】--:
咦,oh-my-opencode是第一次,上次有个回答写了很详细的nano banana pro的使用技巧

