这是什么
Takeout 外卖助手 帮用户把一顿外卖点完:搜附近店铺、看菜单选菜、预览下单、追踪订单——全流程一站搞定。 它是一个建立在网关之上、可安装的技能包,装在你的 Agent(Claude Code / OpenClaw / Codex)上。装好后,Agent 通过调用技能 CLI 暴露的子命令(1:1 对应网关 MCP 工具名)来完成点单,不直接接触网关接口——交互流程、措辞规范、纠错引导都已封装在技能里,开箱即用。想自己用裸接口编排底层能力?技能背后是网关的 24 个外卖 MCP 工具。需要细粒度控制时看 MCP 概览;本页讲的是”装上即用”的封装。
安装
技能仓为三个 Agent 平台各提供一条安装命令,把<platform> 换成对应平台即可:
v1.0.0)。
装完后,在技能根目录放一个 .env:
API_KEY 必填,GATEWAY_MCP_URL 用默认值即可。到控制台创建 Agent、开通外卖能力,拿到 clw_ 开头的 API Key。
鉴权
技能采用双层身份,但你只需注入一个值:API_KEY。
API_KEY(Agent 身份,clw_前缀): 唯一必需注入项,写进.env。缺失时脚本返回RECOVERY[API_KEY_MISSING],引导去控制台拿 key。consent_grant(用户授权,cg_前缀): 代表一个已授权用户,有效期 90 天。开局留空,由用户本人走一次绑定生成。
request_user_bind(第 1 步,发短信 / 返回授权链接)→ verify_user_bind(第 2 步,验码 / 轮询)→ 成功后凭证写入共享缓存(~/.clawdot/credentials.json,按 API_KEY + 手机号隔离,skill 升级重装不丢)。- 单用户: 绑定一次后,业务调用无需
--phone。 - 多用户: 一个
API_KEY可服务多个用户,各自绑定一次;业务调用带--phone <11位手机号>指定是谁(按手机号存共享缓存)。
12 个命令
Agent 通过 CLI 子命令调用(子命令 1:1 对应网关 MCP 工具名):python3 scripts/clawdot.py <command> [--phone <手机号>]。
下单 item 模型
preview_order 的 --items 是一个 JSON 数组,每个元素描述一个商品:
item_id、quantity必填;sku_id、ingredient_option_ids、remark可选。sku_id取自商品的sku_options[].sku_id(不传用默认规格);ingredient_option_ids取自ingredient_options[].option_id。- 所有 id 都来自当前店的
get_shop_menu输出——禁止跨店复用,禁止把中文菜名当 id。 - 金额字段单位均为分。
交互范式
技能的”灵魂”是一套统一的交互约定,让 Agent 知道每一步是成功还是失败、该怎么对用户说话。 成功 / 失败信号:- 成功 = 脚本 stdout 返回 JSON。
- 失败 = stderr 输出中文错误 +
RECOVERY[CODE]: <下一步>,非零退出码。Agent 按 RECOVERY 提示挑下一个 action——例如USER_NOT_BOUND_NEEDS_SMS→ 走request_user_bind/verify_user_bind绑定;引用过期(如REFERENCE_STALE)→ 重新search_shops→get_shop_menu拿新 id。
- 默认能服务——技能已加载就当可点单推进,别凭空拒答。
- 不谎报成功——成功结论以 stdout 实际返回为准。
- 地址先确认——选定收货地址、跟用户确认后再推进下单。
- 追问带选项——需要用户决策时给出 2~3 个选项,别开放式发问。
preview_id、confirmation_token 等只在 Agent 内部流转)。
下一步
MCP 概览
想自己编排底层 24 个工具、做细粒度控制?看裸 MCP 工具契约。
安装与平台
Claude Code / OpenClaw / Codex 各平台的安装与触发细节。

