vr-shopxo-plugin/plan.md

2.7 KiB
Raw Blame History

Council Plan — openclaw-claude-code MiniMax 路由补丁设计

Round 1 — 2026-04-14 Branch: council/PM → main 状态:规划中


任务背景

问题:插件 @enderfga/openclaw-claude-code 的 proxy 层将 Claude Code 请求路由到各 AI Provider目前所有 sonnet/opus/haiku 模型都被硬编码映射到 provider: 'anthropic'(走真实 Anthropic API但用户环境是 MiniMax 的 Anthropic 兼容端点,导致路由失效。

目标:设计一个可配置、符合 OpenClaw 插件最佳实践的方案。


4 Q 任务分配

Q 任务描述 Owner 预期输出
Q1 插件 proxy handler 如何优雅地读取 provider URL 配置? council/Backend 配置读取方案(环境变量 / OpenClaw config / 插件独立配置)
Q2 models.js 的 provider 映射如何支持配置覆盖? council/Architect 架构设计(外部配置注入机制)
Q3 配置项应该放在 OpenClaw 配置的哪个 section命名规范 council/PM 配置结构建议providers/defaults/ext 位置)
Q4 综合推荐方案(配置文件结构、修改文件列表、回滚步骤、注释) council/Architect 最终方案文档

原则

  1. 配置优先:从 OpenClaw 配置或环境变量读取,不硬编码
  2. 向后兼容不配置默认走原有逻辑Anthropic 官方)
  3. 可还原:通过 OpenClaw 配置层注入,不改 node_modules
  4. 显眼易懂:配置项有注释说明

关键参考

OpenClaw 配置示例(~/.openclaw/openclaw.json

{
  "providers": {
    "minimax-portal": {
      "baseUrl": "https://api.minimaxi.com/anthropic",
      "apiKey": "minimax-oauth",
      "api": "anthropic-messages"
    }
  },
  "defaults": {
    "model": { "primary": "minimax-portal/MiniMax-M2.7" }
  }
}

插件文件:

  • proxy handler: node_modules/@enderfga/openclaw-claude-code/dist/src/proxy/handler.js
  • 模型注册表: node_modules/@enderfga/openclaw-claude-code/dist/src/models.js

Claim Status

Task Owner Status
Q1: 配置读取方案 council/Backend [Claimed: council/Backend]
Q2: 架构设计 council/Architect [Claimed: council/Architect]
Q3: 配置结构 council/PM [Claimed: council/PM]
Q4: 综合方案 council/Architect [Pending]

Phase Breakdown

Phase 内容 目标时间
Draft (本轮) Backend/Architect/PM 分别输出 Q1-Q3 讨论结论 Round 1
Review 交叉评审Architect 整合 Q4 综合方案 Round 2
Finalize 合并到 main投票 Round 2

[CONSENSUS: NO] — Round 1 规划完成,等待 Backend/Architect/PM 执行 Q1-Q3