ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

DeepSeek+Manus 的协作 Skill,让 Claude Code 走 TaoToken 行不行?

DeepSeek+Manus 的协作 Skill,让 Claude Code 走 TaoToken 行不行? 把《AI双轨革命》里的 DeepSeek 认知层和 Manus 动作层串成一条「自然语言 → 意图 → 轨迹 → 执行」链路再做成 Skill 交给 Claude Code 跑想法本身不复杂。真正卡住人的是模型通道Base URL、Key、模型 ID 三样全要换官方控制台还经常一把 Key 搞不定所有模型。我的做法是先到 TaoToken 拿 Key再改 Claude Code 的~/.claude/settings.json让这个双角色 Skill 在同一通道上把「思考」和「执行」跑完整。先说结论行而且不需要给 Claude Code 配两套模型。TaoToken 提供的是统一 API 通道Skill 里的 DeepSeek 角色和 Manus 角色由 Claude Code 的上下文编排通道只负责把请求送到模型并取回结果。下面按「Skill 怎么写 → 通道怎么配 → 链路怎么验」的顺序展开。1. 双轨 Skill 卡在哪认知层和动作层不该是两个 API原文把 DeepSeek 定位成「认知智能」负责自然语言理解、知识推理和轨迹规划Manus 定位成「动作执行」负责把意图变成可落地的操作。这个划分放在 Skill 里非常顺但有一个隐含前提两个角色是同一个模型在两种提示词约束下的行为模式而不是两个独立 API 的拼接。1.1 Skill 里的 DeepSeek 和 Manus 不是两个模型如果把这个 Skill 拆开看认知层要做三件事识别用户意图、列出约束条件、生成执行轨迹。动作层要做三件事把轨迹转成具体命令或文件改动、执行这些改动、把输出结果送回认知层。整个过程发生在 Claude Code 的一次对话上下文里所谓 DeepSeek 角色和 Manus 角色本质是 SKILL.md 里两段不同的规则提示词。一旦把「DeepSeek 是一个模型Manus 是另一个模型」当成前提配置就会走偏有人去找两个 API Key有人在请求里写两个 model ID还有人到处搜「如何让 Claude Code 同时调用两个模型」。这些都是多余的。TaoToken 只提供一个兼容 Anthropic API 的 Base URL 和一把 KeyClaude Code 拿着它去请求模型模型根据 SKILL.md 的规则决定当前回合是「认知输出」还是「动作输出」。1.2 官方端点下最容易出现的不匹配Claude Code 默认指向 Anthropic 官方端点这时第一个坑就来了Skill 是通用的但官方控制台创建的 Key 和模型 ID 不一定能对上你 Skill 里写的模型名。尤其是把《AI双轨革命》这类技术文章里的模型名直接抄进配置时经常出现model_not_found。另一个坑是官方 Key 的额度模型和 Skill 的使用频率不匹配跑一次双轨链路需要多轮你来我往余额很快见底。所以这一步的关键不是继续和官方端点搏斗而是换一个能统一承接请求的通道打开 TaoToken 注册并创建 API Key后面所有配置都以这把 Key 为准。2. 把「自然语言 → 意图 → 轨迹 → 执行」写进 SKILL.md原文的联合应用架构画了一条清晰的链路自然语言指令 → DeepSeek 理解 → 动作意图解析 → Manus 执行 → 反馈给 DeepSeek 优化。这条链路可以直接翻译成 SKILL.md 的规则正文。Claude Code 的 Skill 通常放在个人目录的skills子目录下每个 Skill 是一个文件夹里面有SKILL.md作为入口。下面这个例子就是按双轨思路组织的。2.1 SKILL.md 的 frontmatter 怎么定义双角色frontmatter 里只需要name和description描述写得越明确Claude Code 在匹配 Skill 时越不容易误触发。--- name: deepseek-manus-dual-track description: 双轨协作 Skill。先由认知层拆解意图和约束再生成执行轨迹动作层按轨迹执行并把结果回灌给认知层校验。适合需要“先想清楚再动手”的多步任务。 ---description 里的关键词很重要认知层、动作层、执行轨迹、回灌校验。这样当用户输入任务时Claude Code 会优先把该 Skill 纳入候选。2.2 规则正文的四阶段编排SKILL.md 的正文部分用纯文本规则描述四个阶段比 Jupyter Notebook 式的长文更适合模型解析。# DeepSeek Manus 双轨协作规则 ## 角色定义 - 认知层DeepSeek 角色识别用户意图列出约束条件生成执行轨迹。 - 动作层Manus 角色将轨迹转换为具体命令或文件改动执行后输出结果。 ## 处理流程 1. 认知层输出意图和约束。 意图用户希望达成的最终结果。 约束不能触碰的边界例如“不要修改 test 目录”“只生成 SQL 不连库执行”。 2. 认知层根据意图和约束生成轨迹。 轨迹是动作层的执行清单每一步都要有可验证的输出。 3. 动作层逐条执行轨迹。 凡是涉及命令行、数据库、系统级注册或编译运行的步骤动作层只生成命令由用户在本地终端执行再把输出贴回对话。 4. 认知层读取执行反馈。 若结果满足约束则汇总结论若不满足则重新规划轨迹最多循环 3 次。这套规则解决了一个关键问题不会让模型自作主张直连生产环境。原文里的robot_control是理想化的直接执行落到实际开发环境动作层生成命令、用户本地执行、结果贴回对话才是安全的编排方式。2.3 认知层生成轨迹、动作层回灌结果的示意原文给了robot_control的 Python 片段这里改成 Skill 规则对应的流程示意方便理解四阶段如何衔接def dual_track(prompt): intent cognitive_layer.parse(prompt) # 认知层提取意图和约束 trajectory cognitive_layer.plan(intent) # 认知层生成执行轨迹 result action_layer.execute(trajectory) # 动作层执行并返回输出 return cognitive_layer.validate(result) # 认知层校验结果是否满足约束这段不是可安装的工具包只是把 SKILL.md 的规则用代码形式表达出来。实际运行时Claude Code 会按规则正文逐阶段输出而不是真的去调用一个叫cognitive_layer的模块。3. Claude Code 接入 TaoTokensettings.json 的 env 配置Skill 规则写好后下一步就是把 Claude Code 的模型通道指到 TaoToken。这一步只有三个变量Base URL、Key、模型 ID。三者各就各位Skill 才能正常拿到模型响应。3.1 先在官网拿 Key 并确认模型 ID打开 TaoToken 完成注册登录在控制台的 API Keys 页面创建一把新 Key复制后保存为YOUR_API_KEY。模型 ID 不要凭记忆猜以 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_end 模型广场当时列表为准复制当前可用的模型 ID记为YOUR_MODEL_ID。这一步相当于原文里「进入控制台复制 API Key」的动作只是统一挪到了 TaoToken 上。3.2 修改 ~/.claude/settings.jsonClaude Code 通过环境变量ANTHROPIC_BASE_URL和ANTHROPIC_AUTH_TOKEN指定通道和身份认证。在~/.claude/settings.json的env块里写入{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_AUTH_TOKEN: YOUR_API_KEY, ANTHROPIC_MODEL: YOUR_MODEL_ID } }配置里出现的YOUR_API_KEY和YOUR_MODEL_ID都要替换成真实值前者来自控制台创建的 Key后者来自模型广场的模型列表。Base URL 保持https://taotoken.net/api结尾不要加/v1也不要加任何 UTM 参数。官网链接和接口地址是两回事官网用于注册、创建 Key、看模型和用量接口地址只填进工具的配置里。3.3 环境变量和官网落地页不要混用有些读者会把https://taotoken.net/?utm_sourcetaotoken_aicg_blog_end直接填进ANTHROPIC_BASE_URL这会导致请求打到网页而不是 API。记住一个简单的区分方法在浏览器里打开的是官网带 UTM 参数在 Claude Code、Codex、CC Switch 里填的是接口地址只有https://taotoken.net/api。Claude Code 完整的环境变量对照也可以参考 接入文档 核对。4. 验证双轨链路从模型对话到 Skill 全流程配置保存后不要直接冲进大项目里试先从最小验证开始。原文把 DeepSeek 和 Manus 的融合场景分成机器人控制、数字人、医疗康复这里对应的是另一组场景先把通道打通再让 Skill 跑一个真实任务。4.1 用 TaoToken 模型对话先测 Key 和模型 ID先在 TaoToken 模型对话 里用同一把 Key 发一条消息确认 Key 有效、模型 ID 能正常响应、账户有可用额度。模型对话页比直接进 Claude Code 更容易定位问题如果这里就报错说明 Key 或模型 ID 的问题和 Claude Code 配置无关如果这里正常而 Claude Code 报错问题才出在 settings.json 或环境变量。4.2 在 Claude Code 里跑一次真实的双轨任务选一个既能体现认知拆解、又能体现动作执行的小任务。例如「统计当前项目里所有 TODO 注释按优先级排序并生成一份 Markdown 报告」。这个任务在 SKILL.md 里的运行过程是认知层输出意图统计 TODO 注释并排序。约束只读代码文件不修改源码。认知层生成轨迹第一步扫描目录第二步过滤 TODO 注释第三步按优先级分类第四步生成报告。动作层把轨迹转成命令生成一个grep或 Python 扫描脚本由用户在本地终端执行。用户把终端输出贴回对话认知层校验结果并产出 Markdown 报告。整个过程中模型通过 TaoToken 通道返回的响应同时承担了「认知层」和「动作层」两种角色的输出但网络请求只有一条链路。这也验证了前面的判断双轨 Skill 不需要两个 API只需要一个稳定的通道。5. 排障与收尾401、model_not_found、去控制台对账如果验证时没通过大多数问题集中在两个报错上。把处理顺序固定下来比每次乱试要快得多。5.1 两个高频报错及处理顺序401 authentication_error出现时先检查环境变量里是否多了空格或换行。很多复制操作会把 Key 前后的空字符一起带进去可以在终端里用env | grep ANTHROPIC确认。确认无误后到 控制台 API Keys 重新创建一把 Key替换旧的YOUR_API_KEY。model_not_found出现时说明ANTHROPIC_MODEL填了一个模型广场上不存在的 ID。常见原因是引用了旧文章里带日期后缀的模型名或者自己想当然写了个deepseek-chat之类的名字。正确做法是回到 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_end 的模型广场复制当前实际可用的模型 ID再更新 settings.json。记住模型 ID 以模型广场当时列表为准不要相信任何文章里的硬编码名字。5.2 去控制台对账并配置 Coding Plan链路跑通之后打开控制台的用量页面确认刚才 Claude Code 的调用确实被记上了账。这一步相当于原文「打开控制台查看运行状态」的收尾动作一方面确认通道计费正常另一方面看看一次双轨任务的 token 消耗量级。如果打算长期把 Claude Code 当成主力编辑器搭档可以在 Coding Plan 里选一个更匹配的套餐Key 的创建和管理始终在 控制台 API Keys 完成。最后提醒一件事这个双轨 Skill 的想象力不止于 Claude Code。同样的ANTHROPIC_BASE_URL和 Key也可以填进 Codex 的config.toml或 CC Switch 的自定义供应商里规则文件不用改通道层已经统一了。AI 双轨从文章走向日常开发差的本来就不是模型能力而是一条让 Claude Code 稳定拿到响应的通路。
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进