Install
openclaw skills install tencent-delivery-skillBooks same-city on-demand courier delivery (pickup-and-deliver within 2 hours, typically small parcels <30kg) via Tencent Mobility MCP. Use this skill when the user asks to physically move an item between two addresses in the same Chinese city — common Chinese triggers include "跑腿"、"帮我寄"、"帮我送"、"配送"、"取件"、"送达"、"骑手"。Also handles on-going order queries, rider tracking, and cancellation. Do NOT use for cross-city express/快递, food delivery/外卖, ride-hailing/打车, or stock/financial/股票 queries.
openclaw skills install tencent-delivery-skill帮你完成跑腿下单、查单、取消、查骑手等操作。
<a id="entry-hard-rule"></a>
🛑 不论用户首句说什么,回复前先跑一条命令:
python3 ./scripts/tms_delivery.py bootstrap
按返回的 stage 分流(所有分支都已包含 next_doc / reply_template,直接照用):
| stage | 动作 |
|---|---|
ready | → §1 流程选择器 |
has_ongoing_order | 原样输出 reply_template 拦截用户,禁下新单 |
setup_token | → quick-start-workflow 引导取 Token |
error | 按 error-handling 处理 |
bootstrap 命令本身执行失败时(command not found / 非零退出码且无 JSON stdout / 报 Python 相关错误),原样回复以下模版,禁自行揣测原因:
当前环境无法执行跑腿 skill 所需的 Python 脚本,请按以下顺序自检:
1. 终端运行 `python3 --version`,确认已安装 Python 3.8+
2. 在当前 IDE / 客户端设置中确认已允许执行 shell 命令
3. 仍无法解决请查阅项目 README 的「环境前置」与「故障排查 FAQ」章节
python3 ./scripts/tms_delivery.py state next # 查下一步
python3 ./scripts/tms_delivery.py state show # 查当前快照(手机号脱敏)
⚠️ 正常路径不必调 state next——commit-* / pick-address / select-sku / run-estimate 等命令返回值里已内含 next_state / next_action / next_doc(LLM 下一步该读的文档锚点)。只在异常分叉(用户中途"算了")时才调。
<a id="flow-selector"></a>
| 用户意图 | 执行流程 |
|---|---|
| 跑腿下单 | → delivery-workflow.md |
| 查订单 / 查骑手 | → order-workflow.md#order-query-flow |
| 取消订单 | → order-workflow.md#order-cancel-flow |
| 放弃当前流程 | → delivery-workflow.md#delivery-exit-flow |
| 配置 / 换 Token | → quick-start-workflow.md |
bootstrap / pick-address <role> <N> / select-sku <N>——每条都内置多步逻辑,勿拆成 state set 序列reply_template 时原样粘给用户,禁自行改写assets/PREFERENCE.md 地址簿里的别名或联系人名(用户说"公司/家/妈妈家/张三"时直接把原词传给 resolve-address,脚本会自动查地址簿)。严禁基于背景知识、常识、IP 归属、跨会话历史推断(例:用户没说"腾讯总部"就不能拿"北京腾讯总部"去搜)。三种来源都不命中 → 先开口问,宁问勿造。prefill-contacts 一次性落盘 4 个槽位(未抽到的传空串)。后续 FSM 推进时已填字段自动跳过,可省去单独问联系人的轮次。详见 step-1-sender §0.1。<a id="output-leak-firewall"></a>
🚫 用户端回复禁止出现:estimatePriceRecordId / skuMap / skuId / selectedSkuId / 形如 60796_2 的 {数字}_{数字} 值 / expressSkuInfos / defaultChecked。
脚本出口已黑名单过滤,但 LLM 仍须自检:回复前扫描上述字段 → 发现即删。
save-token 写入、mcp-call 内部使用,禁输出到对话state 子命令读写,禁 read_file / cat ~/.config/tms-delivery/session.json脚本返回值里的 next_doc 就是 LLM 下一步该读的文档锚点,按提示读即可。无 next_doc 时按下表按意图查:
| 遇到什么情况 | 读哪个文档 |
|---|---|
| 用户表达跑腿 / 下单意图 | references/delivery-workflow.md |
| 查订单 / 查骑手 / 取消 | references/order-workflow.md |
| 配置 Token / 切换账号 | references/quick-start-workflow.md |
| 看到未识别错误码 / message | references/error-handling.md |
| MCP 工具入参 / 响应字段细节 | references/api-contract.md |
| 调试 session 字段 / 状态机 | references/session-state.md |