从硬路由到软路由

oh-my-openagent 的逻辑是做"硬路由"——通过插件层精准拦截和分发请求。精确是真精确,但一旦上游 API 或插件接口有变动,直接就断链。

换个思路:只靠 OpenCode 自己的配置文件(opencode.json + agent/*.md),用精心设计 System Prompt 的方式,通过纯提示词来模拟类似的多 Agent 协作行为——我把这叫做 Agent 软路由。

精确度上确实不如硬路由那么丝滑,但大差不差。关键是——OpenCode 本身稳如老狗,配置不依赖任何外部插件,自然不会因为版本更新崩掉。

我的实践:my-opencode-config

我把这套配置整理完善,传到了 GitHub 上:

🔗 

核心设计

只用了 3 个模型,不做模型堆叠,靠角色分工和路由策略来提效:

模型用途
deepseek-v4-pro复杂规划、重型实现、代码分析、代码审查、主控调度
deepseek-v4-flash快速探索、外部检索、上下文压缩等轻量任务
qwen3.7-max通用问答、轻量编排、咨询讨论

10 个 Subagent 各司其职:planner(规划)、deep-worker(重型实现)、oracle(根因分析)、reviewer(代码审查)、ui-builder(前端)、explore(代码库搜索)、librarian(文档检索)、light-orchestrator(轻量任务)、consultant(方案咨询)、generalist(兜底)。

借鉴 oh-my-openagent 的精华

通过纯 Prompt 实现了 oh-my-openagent 中的关键行为:

  • IntentGate(意图门控):orchestrator 分类前先识别用户真实意图,防止字面理解偏差
  • 只读权限隔离:分析类 Agent 配置了 permission.edit/write: deny,绝不误改文件
  • 并行探索:explore / librarian 明确要求同时发起多个调用,提升效率
  • 结构化输出:规划输出统一 Handoff Plan 格式,探索返回统一结构
  • Fallback Chain:失败自动回退,任务不会中途挂掉
  • Todo 管理:多步任务强制写待办、逐步推进,杜绝"做一半忘了"

快捷命令一览

命令作用
/deep重型实现
/quick轻量快速任务
/plan制定方案
/review代码审查
/oracle根因分析
/search查资料
/consult咨询建议
/ui前端/UI

如何使用

  1. 把整个仓库 clone 或下载下来,放到你的项目根目录或 OpenCode 配置目录
  2. 唯一需要改的:把 Agent 配置里的模型名换成你自己用的模型。里面的模型是我自己用的,你让 AI 帮你批量替换一下就完事了
  3. 日常使用直接用默认的 orchestrator,它会自动判断意图并分发给最合适的 Agent

最后

这套配置的核心哲学是:不追求 Agent 数量或模型数量的堆叠,而是追求角色分工清晰、成本可控、行为稳定。

如果你也被 oh-my-openagent 的版本兼容折磨过,不妨试试这个纯配置方案。只要 OpenCode 的配置系统不变,它就永远能跑。

更多推荐