OpenCode × DeepSeek 配置优化实战:一次「费用 和 Token 效率优先」的深度重构
最近对我的 OpenCode × DeepSeek 配置仓库做了一轮深度重构,核心目标只有一个:用最小的上下文成本维持最好的开发效率。这篇文章记录这次重构的思路、决策和落地细节。
背景:为什么需要重构
这套配置把 OpenCode Agent 框架与 DeepSeek V4 双模型(Pro + Flash)结合,核心理念是 Token 效率优先——用最小的上下文成本达到最好的开发效率。
触发这次重构的直接原因是 DeepSeek API 调用价格实际上涨了 3 到 5 倍。Pro 模型(深度推理)的成本显著上升,如果继续沿用「默认走 Pro」的旧策略,日常开发成本会成倍膨胀,必须对配置体系进行系统性优化才能控制开销。于是我把整个配置重新审视了一遍,做了三件事:模型降级重分配、审查流程瘦身、思考机制下沉。
一、Flash-First:模型重分配对冲涨价
最直接的动作是把一批原本跑在 Pro 上的角色降级到 Flash(成本约为 Pro 的一半):
| 角色 | 变更前 | 变更后 |
|---|---|---|
orchestrator(主入口) |
Pro | Flash |
planner(规划) |
Pro | Flash |
consultant(咨询) |
Pro | Flash |
ui-builder(前端) |
Pro | Flash |
build / plan(内联) |
Pro | Flash |
关键设计是 「Flash 优先,Pro 兜底」:Flash 负责路由、搜索、规划、常规实现;Pro 只保留给深度推理、根因分析、代码审查、重型多文件实现。边界情况一律先试 Flash,不确定就升级。
配套的纪律是 「Flash 代理自我升级」——Flash 代理必须能自我识别歧义或失败,主动升级到指定的 Pro 目标,绝不输出降级答案。这样降级模型不会牺牲质量,只是把「该用重模型」的判断交给代理自己。
二、审查流程瘦身:单遍证据门控
代码审查是成本大户。这次把 code-review 技能大幅压缩,核心变化:
- 从「双轴并行审查」改为「单遍覆盖所有维度」——不再为标准和规范各开一路并行,一次遍历覆盖正确性、安全、兼容性、可维护性。
- 按「有效规模」而非原始行数定深度——≤8 个逻辑文件且 ≤300 有效行走精简路径,更大才走完整路径;高风险的 auth/migration/schema 等文件强制走完整路径。
- 证据门控——审查结论必须自证,严重级别不得超过证据所能支撑的级别。
同时把 「审查」从默认验证步骤降级为升级手段:只有审查能实质降低风险时才路由到 reviewer。预算一次初始审查 + 最多两次复审,预算耗尽就把剩余风险记录下来交给用户决策,绝不无限循环。
三、思考机制下沉:从 Agent 层到 Provider 层
这是最核心的架构调整。之前思考强度(thinking effort)是通过每个 Agent 的 variant 字段(low/medium/high/max)逐代理配置的,这次把它下沉到 Provider 层:
"provider": {
"deepseek": {
"models": {
"deepseek-v4-flash": {
"options": {
"temperature": 0,
"thinking": { "type": "disabled" }
}
}
}
}
}
Flash 在 Provider 层关闭思考(官方成本节省开关),Pro 保持默认开启。思考变成了「模型级开关」而非「代理级旋钮」,所有 Agent 的 variant 和 temperature 字段全部移除。这带来两个好处:
- 配置大幅简化——不再需要为每个代理单独调思考强度。
- Prompt 缓存前缀更稳定——一次性请求(title/summary/compaction)全部跑 Flash,它们的易变内容永远不会进入 Pro 的 prompt-cache 前缀,缓存命中率更高。
四、技能瘦身:砍掉冗余,保留精华
两个大技能被大幅压缩:
gh-cli:649 → 300 行。删掉了大量重复的安全公告展开、CI 环境变量表格、issue 类型/子 issue 的详细 JSON 字段说明,只保留代理真正需要的核心规则。spec-workflow:233 → 119 行。把「探索/提案/设计/任务」的完整仪式压缩为「Enablers not gates」的精简哲学,删掉重复的目录约定说明。
同时删除了 verification-planning 技能,其「最窄验证路径」原则并入 AGENTS.md 的自我验证章节。
五、新增两个技能:Wayfinder 与 Prototype
wayfinder:面向大型/遗留/多仓库代码库的导航技能。核心是「决策票据地图」——把未知拆成 research/prototype/grilling/task 四类票据,每次会话只解决一张最高价值的票据,把「迷雾」记录为第一等公民。适合「代码库太大装不进上下文」的场景。prototype:用一次性原型回答设计问题,而不是写长篇 spec 或反复讨论。逻辑问题做一个自包含 HTML 演示,UI 问题做 2-3 个风格变体并排对比。铁律:一天一次、一条命令运行、不持久化、不打磨。
六、DCP 调优与文档精简
- DCP(上下文压缩插件):移除空配置项,
showCompression改为false(压缩过程不再刷屏),并移除了对旧配置文件的保护(因为配置已统一到单一文件)。 - README 精简:删除了 8 个其他语言的 README,只保留简体中文和英文双语,减少维护负担。
数据说话
这次迭代净效果:31 个文件变更,+551 行 / -3932 行,净减约 3400 行。配置更薄、模型更省、审查更聚焦、思考机制更清晰。
核心收获
- 成本优化不是简单降级模型,而是建立「Flash 优先 + 自我升级」的完整纪律,让质量由代理自己兜底。
- 配置下沉到正确层级——思考是模型级属性,就该放在 Provider 层,而不是每个代理重复配置。
- 瘦身是持续过程——技能文档会随时间膨胀,定期用「有效规模」审视并砍掉冗余,是保持配置可维护的关键。
原文地址: https://www.cveoy.top/t/topic/qHnL 著作权归作者所有。请勿转载和采集!