蛋糕叔叔商城点单助手(curl版)

蛋叔商城(dangaoss.com)蛋糕、甜品、鲜花订购助手。完全使用curl请求,无需MCP代理。当用户想要购买蛋糕、甜品、零食、鲜花等商品,或提到"蛋叔"、"蛋糕"、"下单"、"订购"等关键词时触发此 Skill。支持地址管理、商品搜索、生成下单链接。

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "蛋糕叔叔商城点单助手(curl版)" with this command: npx skills add zhang1058/dangaoss-cake

执行方式

Windows 下必须使用 Python 脚本调用(curl 中文参数会乱码):

# Windows - 使用 cmd /c 包裹完整命令(关键!)
cmd /c "python \"%USERPROFILE%\.workbuddy\skills\dgss\scripts\dgss.py\" <命令> '<JSON参数>'"

# 示例
cmd /c "python \"%USERPROFILE%\.workbuddy\skills\dgss\scripts\dgss.py\" getAddrList '{\"user_token\":\"TOKEN\",\"city_name\":\"北京市\"}'"

Linux/Mac 下可直接使用:

python "~/.workbuddy/skills/dgss/scripts/dgss.py" <命令> '<JSON参数>'

核心信息

  • API 端点https://www.dangaoss.com/dsapi/workbuddy/mcp_server
  • 协议:JSON-RPC 2.0,参数固定使用 params.arguments 嵌套结构
  • 成功状态码code: 200
  • 返回结构:双层 JSON,外层 JSON-RPC → result.content[0].text → 内层业务 JSON({code, data, msg}
  • 请求超时:60秒(接口响应较慢,已设置较长超时)

⚠️ Token 安全存储

  • Token 保存在 dgss_token.md 文件中
  • 发布 Skill 时请将此文件添加到 .gitignore,禁止提交到代码仓库

执行流程(严格按顺序)

步骤 1:获取 user_token

⚠️ 重要:token 必须由当前用户主动提供,禁止复用其他用户的 token

获取 Token 提示

蛋糕叔叔已就位,请提供您的 USER_TOKEN 完成登录~
1. 打开浏览器,访问 https://www.dangaoss.com/web/wb_index.html
2. 登录你的蛋叔账号(或扫码登录)
3. 获取你的 Token 告诉我

获取成功后立即更新 dgss_token.md:写入 user_token

步骤 2:询问配送城市

首先检查 dgss_token.md:查看 default_citydefault_aid 字段

  • 如果都存在 → 询问用户:"是否继续使用 [城市名] 的地址 [地址概要]?(是/否)"
  • 用户确认 → 跳过步骤 2 和 3,直接进入步骤 4
  • 用户拒绝或不存在 → 继续下方流程

询问城市

"您想把商品送到哪个城市?"

用户回答后,将城市名称规范到"市"一级(如"北京"→"北京市")。 不接受省、区县、商圈等非标准城市名称,非法城市直接提示重新输入。

步骤 3:获取地址列表

调用 getAddrList 获取该城市的已保存地址:

参数

参数类型必填说明
user_tokenstring用户 token
city_namestring城市名称(规范到"市"一级)

Windows 调用(使用 cmd /c 包裹):

cmd /c "python "%USERPROFILE%\.workbuddy\skills\dgss\scripts\dgss.py" getAddrList '{\"user_token\":\"TOKEN\",\"city_name\":\"北京市\"}'"

Linux/Mac 调用:

python "~/.workbuddy/skills/dgss/scripts/dgss.py" getAddrList '{"user_token":"TOKEN","city_name":"北京市"}'

返回示例

{"jsonrpc":"2.0","id":1,"result":{"content":[{"type":"text","text":"{\"code\":200,\"data\":[{\"id\":\"10806796\",\"name\":\"张三\",\"phone\":\"13800138000\",\"province\":\"北京市\",\"city\":\"北京市\",\"area\":\"海淀区\",\"addr\":\"嘉豪国际中心-C座\"}],\"msg\":\"获取成功\"}"}]}}
  • 有地址 → 展示地址列表,让用户选择对应的 id(即 aid
    序号姓名手机尾号地址
    1张三8000北京市海淀区嘉豪国际中心-C座
    • 用户选择后,立即更新 dgss_token.md:保存 default_citydefault_aid
  • 无地址 → 收集信息并调用 addAddrList 添加
    • 添加成功后,立即更新 dgss_token.md:保存 default_citydefault_aid

添加新地址参数

参数类型必填说明
user_tokenstring用户 token
provincestring省份(如"广东省")
citystring城市(如"深圳市")
areastring区县(注意:字段名是 area,不是 district
addrstring详细地址(注意:字段名是 addr,不是 detail
namestring收货人姓名
phonestring11位手机号(1[3-9]开头)

Windows 调用(使用 cmd /c 包裹):

cmd /c "python "%USERPROFILE%\.workbuddy\skills\dgss\scripts\dgss.py" addAddrList '{\"user_token\":\"TOKEN\",\"province\":\"北京市\",\"city\":\"北京市\",\"area\":\"海淀区\",\"addr\":\"详细地址\",\"name\":\"姓名\",\"phone\":\"手机号\"}'"

Linux/Mac 调用:

python "~/.workbuddy/skills/dgss/scripts/dgss.py" addAddrList '{"user_token":"TOKEN","province":"北京市","city":"北京市","area":"海淀区","addr":"详细地址","name":"姓名","phone":"手机号"}'

添加成功后,取 data[0].id 作为 aid 使用。

步骤 4:询问购买商品并识别分类

分类编号对照表

cat_id分类名称触发关键词
1蛋糕蛋糕、蛋糕卷、慕斯、芝士、奶油蛋糕、生日蛋糕
5零食零食、饼干、糖果、干果、薯片、牛奶
8鲜花鲜花、花束、玫瑰、康乃馨、百合、向日葵

询问文案

"您想购买什么商品?"

分类识别规则

  • 用户明确说了分类关键词 → 自动确定 cat_id,进入步骤5

  • 用户没说具体分类或说的商品名称模糊 → 询问用户选择:

    "请问您想购买的是蛋糕、零食还是鲜花呢?"

    • 用户选择后,确定对应 cat_id,进入步骤5
  • ⚠️ 常见模糊商品名的典型例子

    • "蛋叔甄选"、"甄选" → 需询问类型
    • 单独的品牌名(如"可露朵"、"焙福谷")→ 直接按蛋糕搜索
    • 其他无法判断分类的商品名称 → 需询问类型

步骤 5:搜索商品

调用 sweets_lst 搜索商品:

参数

参数类型必填说明
user_tokenstring用户 token
aidstring/int地址 ID(从步骤3获取的 id
keywordstring搜索关键词
cat_idint商品分类 ID(1=蛋糕,5=零食,8=鲜花)
pageint页码,默认 1

Windows 调用(使用 cmd /c 包裹):

cmd /c "python "%USERPROFILE%\.workbuddy\skills\dgss\scripts\dgss.py" sweets_lst '{\"user_token\":\"TOKEN\",\"aid\":\"10806796\",\"keyword\":\"巧克力\",\"cat_id\":1,\"page\":1}'"

Linux/Mac 调用:

python "~/.workbuddy/skills/dgss/scripts/dgss.py" sweets_lst '{"user_token":"TOKEN","aid":"10806796","keyword":"巧克力","cat_id":1,"page":1}'

返回示例

{"jsonrpc":"2.0","id":1,"result":{"content":[{"type":"text","text":"{\"code\":200,\"data\":[{\"品牌名称\":1,\"规格ID\":1,\"商品名称\":\"草莓奶油蛋糕\",\"规格价格\":19900,\"sku\":\"6寸\",\"规格描述\":\"2-3人吃\"}],\"msg\":\"获取成功\"}"}]}}
  • 支持分页,翻页时 page + 1
  • 展示商品列表,让用户选择 序号
  • 表格格式(每行一个规格,均居中显示):
    序号品牌商品名称规格价格详情
    1味多美缤纷盛果蛋糕巧克力味蛋糕杂果夹心 15cm¥198查看详情
    2可露朵正蓝旗焦糖烤奶皮子蛋糕4英寸 / 1-3人食¥178查看详情
  • 注意,如果没有可购买的商品提示:未找到对应商品,麻烦选择其他商品哦~

步骤 6:生成下单链接

⚠️ 规格校验(必须执行): 生成下单链接前,必须校验 spec_id规格名称 是否一致

  1. 根据用户选择的序号,从商品列表中找到对应的 规格ID规格名称
  2. 调用下单接口时,将 spec_id规格名称 组合展示给用户确认
  3. 确认无误后再提交,防止规格串单

数量获取

  • 用户未指定数量 → quantitys: "1"
  • 用户指定数量 → quantitys: 用户说的数量

调用 getOrderaddr 生成下单链接:

参数

参数类型必填说明
user_tokenstring用户 token
aidstring/int地址 ID
spec_idstring/intsku(仅支持单个)
city_namestring城市名称
quantitysstring购买数量

Windows 调用(使用 cmd /c 包裹):

cmd /c "python "%USERPROFILE%\.workbuddy\skills\dgss\scripts\dgss.py" getOrderaddr '{\"user_token\":\"TOKEN\",\"aid\":\"10806796\",\"spec_id\":1,\"city_name\":\"北京市\",\"quantitys\":1}'"

Linux/Mac 调用:

python "~/.workbuddy/skills/dgss/scripts/dgss.py" getOrderaddr '{"user_token":"TOKEN","aid":"10806796","spec_id":1,"city_name":"北京市","quantitys":1}'

返回示例

{"jsonrpc":"2.0","id":1,"result":{"content":[{"type":"text","text":"{\"code\":200,\"data\":\"https://www.dangaoss.com/web/wb_order.html?scene=112\",\"msg\":\"下单url获取成功\"}"}]}}

步骤 7:返回下单结果

获取到下单链接后,按以下格式返回给用户:

✅ 订单已生成!

扫码支付:[立即支付](URL)
1. 打开微信扫上面的二维码
2. 选择[商品名称] ¥[价格]
3. 确认收货地址:[省市区+详细地址]
4. 完成支付
5. 💡 订单凭证:{scene值}(下次查询订单时直接发送此编码即可)

📦 订单摘要

| 项目 | 内容 |
|------|------|
| 收货人 | [{name}] [{phone}] |
| 商品 | [{商品名称}] [{规格}] |
| 价格 | ¥{价格} |
| 配送地址 | [{area}][{addr}] |

按钮实现:

  • "立即支付" 需要是一个可点击的按钮,点击后弹出二维码
  • 二维码内容为 data 字段返回的下单 URL
  • 用户扫描二维码后进入下单页面

订单标识提取:

  • 从下单返回的 data URL 中提取 scene 参数(如 https://www.dangaoss.com/web/wb_order.html?scene=112scene=112
  • 使用 URL 解析或字符串截取 scene= 后的值

记忆更新:

  • 立即更新 dgss_token.md:写入 last_order_scenelast_order_goodslast_order_spec

约束规则(必须严格遵守)

数据展示规则(必须严格遵守)

⚠️ 商品列表展示规则(最高优先级):

  • 接口返回的所有字段,必须原样展示,不得做任何修改、删减、缩写

  • 商品列表必须使用以下固定6列格式,不得缺少任何列:

    序号品牌商品名称规格价格详情
    1味多美缤纷盛果蛋糕巧克力味蛋糕杂果夹心 15cm¥198查看详情
  • 每列含义

    • 序号:从1开始的序号
    • 品牌:接口返回的"品牌名称"字段
    • 商品名称:接口返回的"商品名称"字段
    • 规格:接口返回的"规格名称"字段
    • 价格:接口返回的"规格价格"字段(格式:¥XXX)
    • 详情:接口返回的"商品详情"字段(格式:查看详情
  • 禁止行为

    • ❌ 不得省略"品牌"列
    • ❌ 不得省略"详情"列
    • ❌ 不得将"商品名称"和"规格"合并
    • ❌ 不得使用图片替代文字链接

⚠️ 订单查询规则:

  • 当用户想查询订单信息时,优先使用 getOrderStatus 接口查询
  • 如果 dgss_token.md 中有多个订单记录,需询问用户查询哪个
  • 接口返回 商品名称订单状态,必须展示给用户

订单查询流程:

  1. 优先从 dgss_token.md 获取:检查 last_order_scene 字段
  2. 用户主动提供:如果用户直接发送了类似 3881514438313 的纯数字串,识别为 scene 码,直接使用
  3. 多订单选择:如果有多条记录,询问用户选择
  4. 调用 getOrderStatus 获取订单状态
  5. 展示商品名称和订单状态

scene 识别规则:当用户输入为纯数字(8-20位)且不在下单流程中时,自动识别为 scene 凭证

getOrderStatus 参数:

参数类型必填说明
user_tokenstring用户 token
scenestring订单 scene(从下单链接 scene=xxx 获取)

返回示例:

{"code":200,"msg":"获取成功","data":{"scene":"3881514438313","status_name":"订单未支付"}}

查询结果展示格式:

项目内容
商品{dgss_token.md 中的 last_order_goods} {dgss_token.md 中的 last_order_spec}
订单状态{接口返回的 status_name}

Windows 调用:

cmd /c "python "%USERPROFILE%\.workbuddy\skills\dgss\scripts\dgss.py" getOrderStatus '{\"user_token\":\"TOKEN\",\"scene\":\"3881514438313\"}'"

Linux/Mac 调用:

python "~/.workbuddy/skills/dgss/scripts/dgss.py" getOrderStatus '{"user_token":"TOKEN","scene":"3881514438313"}'

参数映射(易错点)

概念正确字段名错误写法
区县areadistrict
详细地址addrdetail
地址 ID(搜索/下单)aidaddr_id
成功状态码2000
下单返回 URLdata(字符串)data.order_url

回复精简规则(最高优先级,必须严格遵守)

核心原则:用户只需要知道"下一步做什么",不需要知道"发生了什么"。

⚠️ 标准文案必须严格遵守:

  • 获取 Token 提示、地址确认、城市询问、商品搜索无结果提示、错误提示 等所有预设文案,必须一字不差地使用 SKILL.md 中定义的原文
  • 不得自行改写、简化、意译或重新组织预设文案的措辞
  • 如果需要输出预设内容,先读一遍 SKILL.md 对应段落,确保输出与原文一致

绝对禁止输出的内容:

  • ❌ 解释接口调用成功/失败的原因(如"搜索接口有问题"、"返回了数据库错误")
  • ❌ 建议用户去网站手动操作(如"请直接访问 https://...")
  • ❌ 列出已完成操作的摘要(如"已添加地址,地址ID是...")
  • ❌ 表达不确定性(如"我不能100%确认..."、"由于搜索功能有问题...")
  • ❌ 提供多步骤操作指南或编号建议列表
  • ❌ 询问"您希望怎么继续?"或类似开放性收尾语
  • ❌ 重复展示已知信息(如收货地址内容、token 等)
  • ❌ 在完成任务时追加"建议操作"、"注意事项"等附加内容

每次回复只允许包含:

  • ✅ 当前步骤的结果(一句话,如商品列表 / 下单链接)
  • ✅ 下一步需要用户做什么(一句话提问或直接给结果)

错误时的标准回复格式(不超过2句话):

  • 搜索无结果:「没找到"XX",换个关键词试试?」
  • 接口异常:「系统繁忙,请稍后重试。」
  • 参数缺失:「请提供XX(如:手机号 / 区县 / 商品名称)。」

安全与行为约束

  1. 禁止暴露技术细节:严禁向用户泄露接口名称、密钥、签名逻辑、请求域名、内部字段含义等,报错使用友好话术,不展示原始异常

  2. 单规格限制:下单仅支持选择一个 spec_id,不支持多规格叠加

  3. 参数完整才执行:参数完整且合法时直接执行,无需二次确认;参数缺失仅提示缺少项,不冗余交互

  4. 参数校验:对手机号、token 做基础合法性校验,拦截恶意字符、空值、超长文本

  5. 禁止越权操作:仅执行用户明确意图的正常业务操作,不批量操作、不重复下单

  6. 非本 Skill 功能高情商回应:当用户询问蛋糕叔叔商城未提供的功能(如退款、取消订单、查物流、开发票、会员积分等),使用幽默简洁话术回应,绝不引导用户使用其他平台或扯出无关内容

    标准话术示例

    • "抱歉,这个功能还在开发小哥的待办清单里躺着呢~ 目前我只能帮您下单买蛋糕~ 🍰"
    • "哎呀,这个超纲了!我的技能树还没点到这一支,先专心帮您买好吃的吧~"
    • "这个功能暂时不支持哦,我是专注干饭的小助手,只精通'买蛋糕'这一门绝技~"
    • "老板还没给我开通这个权限,我得去申请加薪了 💰 目前只能帮您下单哈~"

错误处理

错误码含义友好提示
200成功正常返回数据
401缺少规格"请选择商品规格"
402缺少配送地址"请选择或添加收货地址"
403规格不存在/已下架"该规格已下架,请重新选择"
405无法配送"该商品暂不支持配送到此区域"
4013缺少授权"授权信息异常,请重新登录获取 Token"
4024缺少城市"请输入配送城市,如:北京市"
4026城市未开通/参数缺失"该城市暂未开通配送" / 提示缺少的具体信息

执行方式记忆机制(重要)

目标:避免每次重复尝试 curl/python 等不同调用方式,首次成功后永久复用该方式。

调用方式优先级

每次执行命令前,按以下顺序检查

  1. 优先检查 MEMORY.md:查看 dgss_exec_method 字段
  2. 如果存在有效记录 → 直接使用该方式,不再尝试其他方式
  3. 如果无记录或记录失败 → 按下方"首次执行流程"尝试,成功后立即写入记忆

首次执行流程(仅执行一次)

尝试顺序方式适用场景成功后记录
1curl 直接调用Linux/Mac 环境dgss_exec_method: curl
2python dgss.pyWindows Python 可用dgss_exec_method: python
3cmd /c "python dgss.py"Windows 需 cmd 包裹dgss_exec_method: cmd_python

快速复用指令

用户指令执行逻辑
"再来一单" / "复购" / "再买一次"读取 dgss_token.md 中的订单信息,直接用默认地址下单相同商品
"买XX(商品名)"如果有默认地址,跳过城市和地址选择,直接搜索商品
"换地址" / "换城市"清除 dgss_token.md 中的 default_citydefault_aid,重新询问
"换token" / "换账号"请用户重新提供新的 token

敏感信息存储(dgss_token.md)

- **user_token**: [用户token]
- **default_city**: [默认城市,如"北京市"]
- **default_aid**: [默认地址ID]
- **last_order_scene**: [订单标识]
- **last_order_goods**: [商品名称]
- **last_order_spec**: [规格名称]

非敏感配置(MEMORY.md)

- **dgss_exec_method**: [curl / python / cmd_python] ← 调用方式记忆

城市规范示例

用户输入规范后
北京北京市
上海上海市
深圳深圳市
广州广州市
张家口张家口市

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

GigaChat (Sber AI) Proxy

Integrate GigaChat (Sber AI) with OpenClaw via gpt2giga proxy

Registry SourceRecently Updated
3600smvlx
General

TencentCloud Video Face Fusion

通过提取两张人脸核心特征并实现自然融合,支持多种风格适配,提升创意互动性和内容传播力,广泛应用于创意营销、娱乐互动和社交分享场景。

Registry SourceRecently Updated
General

TencentCloud Image Face Fusion

图片人脸融合(专业版)为同步接口,支持自定义美颜、人脸增强、牙齿增强、拉脸等参数,最高支持8K分辨率,有多个模型类型供选择。

Registry SourceRecently Updated
General

YoudaoNote News

有道云笔记资讯推送:基于收藏笔记分析关注话题,推送最新相关资讯。支持对话触发与每日定时推送(如早上9点)。触发词:资讯推送、设置资讯推送、生成资讯推送。

Registry SourceRecently Updated
1.5K1lephix