多彩编程 多彩编程MZPH · CODE BLOG
ARTICLE DETAIL

文章详情

深耕前端与后端开发技术的一线实战笔记与踩坑复盘。

从 LLM 到 OpenClaw:七步看懂 Prompt、Memory、MCP、Skills、Agent 与 TaoToken 统一 Key 通道

从 LLM 到 OpenClaw:七步看懂 Prompt、Memory、MCP、Skills、Agent 与 TaoToken 统一 Key 通道 1. 先把这七个词摆到同一张桌子上LLM、Prompt、Memory、MCP、Skills、Agent、OpenClaw这七个词经常被混在一起讲导致很多人学完一圈还是不知道它们各自管什么。我换个说法把整套系统当成一家餐厅。LLM 是厨师Prompt 是你递给他的点菜单Memory 是后厨记着的“这位客人不吃香菜”MCP 是连接仓库和外卖平台的标准化接口Skills 是菜谱流程Agent 是店长OpenClaw 是你自己开的这家店。这样一分你会发现它们不是替代关系而是层层叠加。LLM 负责“会说”MCP 和工具让它“能做”Memory、Skills、Agent 决定它“做得稳不稳”OpenClaw 把这一整套装进你自己的机器里。而 TaoToken 在这里的角色是给上面所有需要调用模型的环节提供一条统一的 Key/API 通道——你不用在每个组件里分别填不同的地址和密钥改一处就能全局生效。这篇按七步走每一步都给你可复制的配置片段和验证动作。你不需要一次全懂跟着顺序跑通一遍概念自然就落地了。适合谁写过一点 Python、装过 Node、想让 AI 真正帮自己干活的开发者也适合已经用过聊天框、但搞不清 MCP 和 Skills 区别的人。先说清楚一件事这七步不是必须全上。很多人卡在第三步就够用了。但如果你想从“问一句答一句”走到“发一句话它自己跑完”那后面四步迟早要碰。2. 第一步到第三步LLM、Prompt、Memory 的边界与 TaoToken 接入位置2.1 LLM 是引擎不是产品LLM 的本质是“根据上文预测下一个 token”。它能写、能改、能总结但默认有三个硬限制不知道实时信息、不能直接操作外部系统、对话结束不记得你。这不是 bug是它的工作方式决定的。所以后面六步本质上都是在给它补这三块短板。调用 LLM 最直接的方式就是发一个 HTTP 请求。这里就引出 TaoToken 的接入位置它是一个统一的 API 通道你拿一个 Key就能在同一个 Base URL 下调用不同模型不用为每个模型单独申请账号、记不同的地址。2.2 Prompt 是你下达任务的方式同一个模型Prompt 不同结果差很远。“帮我做个旅行计划”是泛指令“我吃素预算 1000周末两天从上海出发不爬山想安静点”是带约束的指令。后者结果明显更可用。Prompt 不需要什么玄学技巧核心就一句把约束讲清楚。2.3 Memory 分短期和长期单次对话里的上下文是短期记忆把用户偏好写进数据库是长期记忆。有了长期记忆AI 下次不用从头问你。短期记忆靠上下文窗口长期记忆靠你自己存。2.4 用 TaoToken 统一 Key 通道跑通前三步先拿 Key。打开 https://taotoken.net/api-keys 登录后创建一个 API Key复制保存。注意它只显示一次。然后配置环境变量。Linux/macOS 写进~/.bashrc或~/.zshrcWindows 用系统环境变量export TAOTOKEN_API_KEYsk-你的key export TAOTOKEN_BASE_URLhttps://taotoken.net/api验证一下是否生效echo $TAOTOKEN_BASE_URL应该输出https://taotoken.net/api。如果为空说明没写进当前 shell重新 source 一下配置文件。接着用 curl 发一个最小请求确认通道通curl https://taotoken.net/api/v1/chat/completions \ -H Authorization: Bearer $TAOTOKEN_API_KEY \ -H Content-Type: application/json \ -d { model: gpt-4o-mini, messages: [ {role: system, content: 你是一个简洁的助手}, {role: user, content: 用一句话说明什么是 Prompt} ] }返回里能看到choices[0].message.content就说明通了。这一步同时验证了三件事Key 有效、Base URL 正确、模型可调用。后面所有组件只要支持自定义 Base URL都填这两个值。注意Base URL 填https://taotoken.net/api不要多加/v1具体路径由各客户端自己拼。填错是最常见的 404 来源。到这里前三步就闭环了LLM 在跑Prompt 在控制输出Memory 暂时靠你手动拼进 messages。下一步开始接外部能力。3. 第四步 MCP把“能做”标准化附可复制配置3.1 MCP 解决的是什么问题没有 MCP 之前AI 要接日历、文件、数据库每接一个都得单独写对接代码换个模型还得重写。MCP 是 Anthropic 提出的开放协议把这些对接方式统一成一套标准工具方实现一个 MCP ServerAI 侧用 MCP Client 去连双方按同一套协议说话。迁移和维护成本一下就降下来了。3.2 在客户端里配置 MCP Server以 Cline 为例它支持在设置里配 MCP Server。配置文件通常是 JSON路径在 Cline 的 MCP 设置面板里能看到。下面是一个可复制的片段接一个文件系统 Server{ mcpServers: { filesystem: { command: npx, args: [ -y, modelcontextprotocol/server-filesystem, /Users/yourname/projects ] } } }如果你用的是 Claude Code配置写在项目根目录的.mcp.json里结构类似{ mcpServers: { filesystem: { command: npx, args: [-y, modelcontextprotocol/server-filesystem, ./data] } } }3.3 让 MCP 背后的模型调用走 TaoTokenMCP Server 本身不调模型调模型的是客户端。所以你要在客户端里把模型通道指向 TaoToken。以 Cline 为例在 API 配置里选 “OpenAI Compatible”然后填三件套配置项填写值Base URLhttps://taotoken.net/apiAPI Key你的 TaoToken KeyModel ID例如claude-3-5-sonnet-20241022或gpt-4o这三件套是后面所有客户端的通用公式记住它。Codex 的auth.json也是同样思路把 base_url 和 key 换成 TaoToken 的值即可。3.4 验证 MCP 是否真的连上配好后重启客户端在对话里问一句“列出我 projects 目录下的文件”。如果它调用了 filesystem 工具并返回真实文件名说明 MCP 通了。如果它只是编了一段文件名说明工具没挂上回去检查 JSON 路径和 npx 是否能执行。npx -y modelcontextprotocol/server-filesystem --help这条命令能跑出帮助信息说明 Server 本身没问题问题在客户端配置。4. 第五步到第七步Agent、Skills、OpenClaw 怎么串起来4.1 Agent 是“会拆任务并执行闭环”的系统Agent 的常见组成是四块LLM 负责理解生成Memory 记住上下文规划能力拆任务排序工具调用真正执行。你说“帮我安排这周末苏州行”它会自己走查日历、比车次、筛餐厅、生成行程必要时回头调整。它和普通对话的区别就在于“闭环”——不是给你一段建议而是把事做完。4.2 Skills 是流程模板不是单个工具这里最容易混。Tools 是单个能力比如“订票”“发邮件”Skills 是流程模板规定“先做什么再做什么”。很多系统里 Skill 就是一份 Markdown写清某类任务的步骤和检查点。只有订票工具时AI 可能直接下单有旅行 Skill 时它会先确认预算和时间窗口给候选方案等你确认再执行最后回传行程单。一个 Skill 的 Markdown 大概长这样# 旅行规划 Skill ## 触发条件 用户提到“安排行程”“周末去哪” ## 执行步骤 1. 确认预算、出发地、时间窗口 2. 查询目的地天气 3. 给出 2-3 个候选方案等待用户确认 4. 确认后生成详细行程单 ## 检查点 - 未确认预算前不得直接推荐具体消费项 - 涉及订票必须二次确认4.3 OpenClaw 是把整套能力落到本地的一层OpenClaw 是在本地运行的 AI 助手前面接聊天入口微信、Telegram 等后面接 LLM 与 MCP 工具核心逻辑跑在你自己的机器上。它像个网关消息进来路由到模型和工具结果回到聊天窗口。你在手机上发一句“周末帮我安排个短途”家里电脑完成查询规划结果回到聊天框。它受欢迎是因为本地部署、能接真实工作流、可跨平台触发。风险也实际一旦它拿到文件、终端或账号权限安全边界必须认真做。权限给多少、怎么隔离、日志怎么审计这些不能省。4.4 把 OpenClaw 的模型通道指向 TaoTokenOpenClaw 支持自定义模型端点。在它的配置文件里通常是config.yaml或.env把模型通道设成 TaoTokenmodel: provider: openai-compatible base_url: https://taotoken.net/api api_key: ${TAOTOKEN_API_KEY} model_id: claude-3-5-sonnet-20241022这样 OpenClaw 里所有 Agent 调用、Skill 执行时需要的模型请求都走同一条通道。你换模型只改model_id一行不用动其他配置。4.5 验证整条链路启动 OpenClaw 后在聊天入口发一句“现在几点顺便看看我 data 目录有几个文件”。如果它既回答了时间调工具又列出了真实文件走 MCP说明 LLM、MCP、Agent、OpenClaw 四层都通了。这一步跑通七步闭环就完成了。5. 常见报错排查401、local proxy failed、reading choices、OAuth配这套东西报错基本集中在几个地方。下面按真实错误对照排查。401 UnauthorizedKey 错了或没带上。先确认环境变量里TAOTOKEN_API_KEY有值再确认请求头是Authorization: Bearer sk-xxx注意 Bearer 后面有空格。如果 Key 是从网页复制的检查有没有多复制空格或换行。local proxy failed / connection refused客户端连不上 Base URL。检查https://taotoken.net/api是否拼错有没有多加/v1。如果你本地开了其他网络工具先关掉再试避免端口冲突。reading choices of undefined请求发出去了但返回结构不对。通常是模型名写错或者返回的是错误对象而不是正常响应。把 curl 的原始返回打出来看error字段会告诉你原因。常见是 Model ID 拼错比如把claude-3-5-sonnet-20241022写成claude-3.5-sonnet。OAuth 相关报错多见于 Claude Code 或 Codex 这类带登录态的客户端。如果你用的是 API Key 模式确保没有同时启用 OAuth 登录两者会冲突。在配置里明确指定用 API Key并填全三件套Base URL、Key、Model ID。MCP 工具不触发模型没调用工具通常是工具描述没被正确加载。检查 MCP Server 是否真的启动用npx -y modelcontextprotocol/server-filesystem --help验证。另外确认客户端里 MCP 是启用状态有些客户端默认关闭。Skill 不生效Skill 文件没被加载或触发条件没匹配上。检查文件路径是否在客户端扫描范围内触发关键词是否和你的输入一致。可以先手动在对话里说“使用旅行规划 Skill”强制触发一次。排查顺序建议先 curl 验证通道再验证客户端配置最后验证工具和 Skill。一层层来别一次改多个地方。6. 按七步顺序跑通后你手里有什么走到这里你手里其实是一套可复用的结构LLM 提供理解和生成Prompt 控制输入Memory 维持连续性MCP 接外部工具Skills 固化流程Agent 负责拆解执行OpenClaw 把这一切装进本地。而 TaoToken 是贯穿其中的那条 Key 通道——从第一步的 curl到第四步的 MCP 客户端再到第七步的 OpenClawBase URL 和 Key 始终是同一组值。如果你只想先跑通最小闭环建议顺序是先拿 Key 跑通 curl第一步到第三步再配一个 MCP Server第四步最后接 OpenClaw第七步。Agent 和 Skills 可以等前五步稳定后再加。需要继续深入的话模型对话入口在 https://taotoken.net/models 接入文档在 https://taotoken.net/doc 长期编码和 Agent 场景可以看 https://taotoken.net/coding-plan 。配置过程中卡住优先回看第五节的报错对照大部分问题都在那四类里。
返回列表