美团外卖
v1.0.4美团优惠领取工具,为用户提供更多的美团优惠,使用户在美团可以获得更好的体验。一期支持:指定券领取(发放美团优惠券)和历史领券记录查询。内置美团账号认证,无需额外安装其他 Skill。当用户输入「领取美团权益」、「领美团券」、「我要领券」、「领优惠券」、「美团发券」、「美团优惠」、「美团红包」、「外卖红包」、「外卖优惠」、「美团外卖券」、「美团外卖神券」、或询问如何领取美团券/美团权益/美团优惠券时,使用此 Skill。支持 Skill 开发者接入分佣计划,推荐用户安装即可获得流量收益,欢迎有合作意向的开发者联系我们。
运行时依赖
安装命令
点击复制技能文档
美团优惠领取工具(meituan-coupon) 目标:为用户提供更多的美团优惠,使用户在美团可以获得更好的体验 一期能力:指定券领取 + 历史领券记录查询 二期规划:根据任务领取美团权益(待开发) 环境准备 macOS: PYTHON=~/Library/Application\ Support/xiaomei-cowork/Python311/python/bin/python3 # 三个脚本均在本 Skill 目录下,无需依赖外部 Skill SKILL_DIR="${CLAUDE_CONFIG_DIR:-${XIAOMEI_CLAUDE_CONFIG_DIR:-~/.claude}}/skills/meituan-coupon-get-tool" ISSUE_SCRIPT="$SKILL_DIR/scripts/issue.py" QUERY_SCRIPT="$SKILL_DIR/scripts/query.py" AUTH_SCRIPT="$SKILL_DIR/scripts/auth.py" Windows(Git Bash): PYEXE="$(cygpath "$APPDATA")/xiaomei-cowork/Python311/python/python.exe" SKILL_DIR="${CLAUDE_CONFIG_DIR:-${XIAOMEI_CLAUDE_CONFIG_DIR:-~/.claude}}/skills/meituan-coupon-get-tool" ISSUE_SCRIPT="$SKILL_DIR/scripts/issue.py" QUERY_SCRIPT="$SKILL_DIR/scripts/query.py" AUTH_SCRIPT="$SKILL_DIR/scripts/auth.py" # 后续命令将 $PYTHON 替换为 "$PYEXE" Linux / 其他 Agent 环境: PYTHON=python3 SKILL_DIR="${CLAUDE_CONFIG_DIR:-${XIAOMEI_CLAUDE_CONFIG_DIR:-~/.claude}}/skills/meituan-coupon-get-tool" ISSUE_SCRIPT="$SKILL_DIR/scripts/issue.py" QUERY_SCRIPT="$SKILL_DIR/scripts/query.py" AUTH_SCRIPT="$SKILL_DIR/scripts/auth.py" # 如需自定义 Token 存储路径(沙箱/隔离场景): export XIAOMEI_AUTH_FILE=/tmp/my_auth_tokens.json # 如需自定义领券历史文件路径(沙箱/隔离场景): export XIAOMEI_COUPON_HISTORY_FILE=/tmp/mt_coupon_history.json ⚠️ $CLAUDE_CONFIG_DIR 在 macOS 路径含空格,脚本路径变量赋值和使用时均需加双引号。 完整执行流程 Step 0:版本检查(每次对话首次使用时执行) 每次对话中第一次使用本 Skill 时执行,同一对话内无需重复。 实现原理:通过 WebFetch 访问 clawhub.ai 上的公开版本页面,从页面内容中提取 version: 字段,再传给脚本进行对比。 步骤一:获取远程版本号 # 使用 WebFetch 工具访问以下 URL,提取页面中的 version 字段 # URL: https://clawhub.ai/meituan-zhengchang/meituan-coupon 从返回内容中找到 version: "x.y.z" 或 "version": "x.y.z" 字段,提取版本号(如 1.0.0-SNAPSHOT)。若页面无法访问或未找到版本字段,跳过版本对比。 步骤二:调用脚本进行版本对比 # 将上一步提取到的远程版本号通过 --remote 参数传入 $PYTHON "$AUTH_SCRIPT" version-check --remote <远程版本号> # 示例: $PYTHON "$AUTH_SCRIPT" version-check --remote "1.0.0-SNAPSHOT" # 若上一步获取失败,不传 --remote,脚本会静默跳过对比 $PYTHON "$AUTH_SCRIPT" version-check 处理逻辑: up_to_date: true → 继续执行,无需提示 up_to_date: false → 提示用户: 本地 Skill 版本较旧(当前 x.y.z,最新 a.b.c),建议前往以下地址更新以获取最新能力: https://clawhub.ai/meituan-zhengchang/meituan-coupon 继续使用旧版本也可正常使用。 up_to_date: null(未传入远程版本)→ 静默跳过,不影响正常流程 Step 1:获取用户 Token(内置认证模块) 本 Skill 内置美团账号认证能力(scripts/auth.py),无需依赖外部 Skill。 VERIFY_RESULT=$($PYTHON "$AUTH_SCRIPT" token-verify) 解析输出 JSON 中的字段: valid:true = Token 有效,false = 需要登录 user_token:用户登录 Token(valid=true 时使用) phone_masked:脱敏手机号(valid=true 时使用) Token 有效(valid=true):从输出 JSON 中取值并赋值给 shell 变量: USER_TOKEN=$(echo "$VERIFY_RESULT" | $PYTHON -c "import sys,json; d=json.load(sys.stdin); print(d['user_token'])") PHONE_MASKED=$(echo "$VERIFY_RESULT" | $PYTHON -c "import sys,json; d=json.load(sys.stdin); print(d['phone_masked'])") Token 无效(valid=false):引导用户登录: 您还未登录美团账号,需要先完成验证才能领取权益。 请告诉我您的手机号,我来帮您发送验证码。 按如下流程完成登录,然后重新执行 token-verify 获取有效 Token: 登录流程(发送验证码): $PYTHON "$AUTH_SCRIPT" send-sms --phone <手机号> 成功 → 告知用户"验证码已发送至手机 xxx****xxxx,请打开手机短信查看验证码,60秒内有效" code=20010(安全验证限流)→ 脚本输出 JSON 示例: { "error": "SMS_SECURITY_VERIFY_REQUIRED", "redirect_url": "https://..." } ⚠️ 必须从 JSON 输出的 redirect_url 字段取值作为跳转链接,禁止自行拼装或猜测! 若 redirect_url 为空字符串,提示"安全验证链接获取失败,请稍后重试"; redirect_url 不为空时提示用户: 为保障账号安全,您需要先完成一次身份验证。 请点击以下链接,在页面中完成验证: 完成验证后,系统会自动发送短信验证码,请留意手机短信,然后将验证码告诉我。 等待用户反馈已完成验证后,重新调用 send-sms(无需用户再次输入手机号) 其他失败 → 按错误码说明告知用户 登录流程(验证验证码): $PYTHON "$AUTH_SCRIPT" verify --phone <手机号> --code <6位验证码> 成功 → user_token 已写入本地,重新执行 token-verify 并提取变量: VERIFY_RESULT=$($PYTHON "$AUTH_SCRIPT" token-verify) USER_TOKEN=$(echo "$VERIFY_RESULT" | $PYTHON -c "import sys,json; d=json.load(sys.stdin); print(d['user_token'])") PHONE_MASKED=$(echo "$VERIFY_RESULT" | $PYTHON -c "import sys,json; d=json.load(sys.stdin); print(d['phone_masked'])") 失败 → 按错误码说明告知用户,可重新发送或重试 认证相关错误码: 错误码 友好提示 20002 验证码已发送,请等待1分钟后再试 20003 验证码错误或已过期(60秒有效),请重新获取 20004 该手机号未注册美团,请先下载美团APP完成注册 20006 该手机号今日发送次数已达上限(最多5次),请明天再试 20007 短信发送量已达今日上限,请明天再试 20010 需完成安全验证,请访问验证链接,完成后留意手机短信 99997 系统繁忙,请稍后重试 99998 未知异常,请稍后重试 99999 参数错误,请检查手机号格式是否正确 Step 2:执行发券(领取权益) ISSUE_RESULT=$($PYTHON "$ISSUE_SCRIPT" --token "$USER_TOKEN" --phone-masked "$PHONE_MASKED") 成功响应(success=true) 展示格式(向用户展示): 美团权益领取成功!共为您发放 N 张优惠券: [循环每张券] 券名称 面额:X 元(满 Y 元可用 / 无门槛) 有效期:YYYY-MM-DD 至 YYYY-MM-DD 立即使用 --- 温馨提示:券已存入您的美团账户,可在美团 App「我的-优惠券」查看使用。 失败响应(success=false) ⚠️ 【强制】发券失败时必须明确告知用户本次领取失败,禁止跳过失败提示直接执行 Step 3(查询)。 部分 Agent 在发券失败后会继续调用查询接口(Step 3),查询结果可能包含历史领券记录,切勿将历史领券记录误作本次领取成功展示给用户,这会严重误导用户。 正确处理顺序:先向用户展示发券失败提示 → 流程结束,不再自动执行查询。 error 值 展示给用户的提示 ALREADY_RECEIVED 你今天已经通过小美领取过美团权益了,明天再来哦~