{"id":"d091f3a2-5f2d-4680-aeb5-dd82a66c5259","entityType":"agent","slug":"clawhub-linkfox-ai-linkfox-shopee-store-follow-prize","name":"Shopee店铺-关注有礼","canonicalUrl":"https://www.xpersona.co/agent/clawhub-linkfox-ai-linkfox-shopee-store-follow-prize","canonicalPath":"/agent/clawhub-linkfox-ai-linkfox-shopee-store-follow-prize","generatedAt":"2026-10-13T19:01:29.556Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-12T00:40:25.143Z","emptyReason":null},"description":"Shopee（虾皮）关注有礼 Follow Prize（与 linkfox-shopee-store-auth 同系列），经 /shopee/developerProxy 转发 Shopee Open API Follow Prize 模块全部 6 个接口：add_follow_prize、get_follow_prize_list、get_follow_prize_detail、update_follow_prize、end_follow_prize、delete_follow_prize。当用户提到 Shopee 关注有礼、Follow Prize、关注送券、add_follow_prize、campaign_id、粉丝福利 时触发。即使未明确提及\"关注有礼\"，只要涉及已授权 Shopee 店铺的 Follow Prize 活动管理，也应触发。","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 966 downloads reported by the source. Last updated 10/12/2026.","installCommand":"clawhub skill install s171g8b6m2khwdy9ye8bxj0wx183vd4z:linkfox-shopee-store-follow-prize","sourceUrl":"https://clawhub.ai/linkfox-ai/linkfox-shopee-store-follow-prize","homepage":"https://clawhub.ai/linkfox-ai/skills/linkfox-shopee-store-follow-prize","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/linkfox-ai/linkfox-shopee-store-follow-prize","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/linkfox-ai/skills/linkfox-shopee-store-follow-prize","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":60,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Shopee店铺-关注有礼 technical dossier on Xpersona with agent coverage, OPENCLEW support, and live trust metadata."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-12T00:40:25.143Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-12T00:40:25.143Z","emptyReason":null},"stars":null,"forks":null,"downloads":966,"likes":null,"task":null,"library":null,"packageName":null,"latestVersion":"1.0.6","tractionLabel":"966 downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-12T00:40:25.023Z","emptyReason":null},"lastUpdatedAt":"2026-10-12T00:40:25.143Z","lastCrawledAt":"2026-10-12T00:40:25.023Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-13T00:40:25.023Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.6","createdAt":"2026-09-14T05:27:22.326Z","changelog":"Update from 1.0.5 to 1.0.6","fileCount":23,"zipByteSize":33796},{"version":"1.0.5","createdAt":"2026-08-14T15:03:39.633Z","changelog":"Update from 1.0.4 to 1.0.5","fileCount":23,"zipByteSize":33725},{"version":"1.0.4","createdAt":"2026-08-07T11:01:12.980Z","changelog":"Update from 1.0.3 to 1.0.4","fileCount":23,"zipByteSize":33839},{"version":"1.0.3","createdAt":"2026-07-13T12:21:06.612Z","changelog":"Update from 1.0.2 to 1.0.3","fileCount":15,"zipByteSize":18075},{"version":"1.0.2","createdAt":"2026-07-06T11:29:43.637Z","changelog":"Update from 1.0.1 to 1.0.2","fileCount":15,"zipByteSize":17241},{"version":"1.0.1","createdAt":"2026-07-03T08:29:00.577Z","changelog":"Update from 1.0.0 to 1.0.1","fileCount":14,"zipByteSize":15942},{"version":"1.0.0","createdAt":"2026-07-02T13:47:03.762Z","changelog":"Initial release","fileCount":14,"zipByteSize":15926}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s171g8b6m2khwdy9ye8bxj0wx183vd4z:linkfox-shopee-store-follow-prize","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s171g8b6m2khwdy9ye8bxj0wx183vd4z:linkfox-shopee-store-follow-prize` in an isolated environment before connecting it to live workloads.","No published capability contract is available yet, so validate auth and request/response behavior manually.","Review the upstream CLAWHUB listing at https://clawhub.ai/linkfox-ai/linkfox-shopee-store-follow-prize before using production credentials."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-linkfox-ai-linkfox-shopee-store-follow-prize/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-linkfox-ai-linkfox-shopee-store-follow-prize/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-linkfox-ai-linkfox-shopee-store-follow-prize/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-linkfox-ai-linkfox-shopee-store-follow-prize/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-linkfox-ai-linkfox-shopee-store-follow-prize/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-linkfox-ai-linkfox-shopee-store-follow-prize/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-13T19:01:29.555Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-linkfox-ai-linkfox-shopee-store-follow-prize/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-linkfox-ai-linkfox-shopee-store-follow-prize/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-linkfox-ai-linkfox-shopee-store-follow-prize/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-linkfox-ai-linkfox-shopee-store-follow-prize/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-12T00:40:25.143Z","emptyReason":null},"readme":"Skill: Shopee店铺-关注有礼\n\nOwner: linkfox-ai\n\nSummary: Shopee（虾皮）关注有礼 Follow Prize（与 linkfox-shopee-store-auth 同系列），经 /shopee/developerProxy 转发 Shopee Open API Follow Prize 模块全部 6 个接口：add_follow_prize、get_follow_prize_list、get_follow_prize_detail、update_follow_prize、end_follow_prize、delete_follow_prize。当用户提到 Shopee 关注有礼、Follow Prize、关注送券、add_follow_prize、campaign_id、粉丝福利 时触发。即使未明确提及\"关注有礼\"，只要涉及已授权 Shopee 店铺的 Follow Prize 活动管理，也应触发。\n\nTags: latest:1.0.6\n\nVersion history:\n\nv1.0.6 | 2026-09-14T05:27:22.326Z | user\n\nUpdate from 1.0.5 to 1.0.6\n\nv1.0.5 | 2026-08-14T15:03:39.633Z | user\n\nUpdate from 1.0.4 to 1.0.5\n\nv1.0.4 | 2026-08-07T11:01:12.980Z | user\n\nUpdate from 1.0.3 to 1.0.4\n\nv1.0.3 | 2026-07-13T12:21:06.612Z | user\n\nUpdate from 1.0.2 to 1.0.3\n\nv1.0.2 | 2026-07-06T11:29:43.637Z | user\n\nUpdate from 1.0.1 to 1.0.2\n\nv1.0.1 | 2026-07-03T08:29:00.577Z | user\n\nUpdate from 1.0.0 to 1.0.1\n\nv1.0.0 | 2026-07-02T13:47:03.762Z | user\n\nInitial release\n\nArchive index:\n\nArchive v1.0.6: 23 files, 33796 bytes\n\nFiles: references/api.md (3230b), references/apis/add-follow-prize.md (1427b), references/apis/delete-follow-prize.md (1399b), references/apis/end-follow-prize.md (1381b), references/apis/get-follow-prize-detail.md (1466b), references/apis/get-follow-prize-list.md (1472b), references/apis/update-follow-prize.md (1417b), references/onboarding.md (1999b), scripts/_follow_prize_api_runner.py (4332b), scripts/_follow_prize_endpoints.py (2161b), scripts/_shopee_follow_prize_common.py (11839b), scripts/add_follow_prize.py (747b), scripts/check_auth_dependency.py (3993b), scripts/delete_follow_prize.py (765b), scripts/end_follow_prize.py (747b), scripts/follow_prize_api.py (1062b), scripts/get_follow_prize_detail.py (789b), scripts/get_follow_prize_list.py (777b), scripts/onboarding.py (24027b), scripts/update_follow_prize.py (765b), skill-card.md (3287b), SKILL.md (5240b), _meta.json (152b)\n\nFile v1.0.6:SKILL.md\n\n---\nname: linkfox-shopee-store-follow-prize\ndescription: Shopee（虾皮）关注有礼 Follow Prize（与 linkfox-shopee-store-auth 同系列），经 /shopee/developerProxy 转发 Shopee Open API Follow Prize 模块全部 6 个接口：add_follow_prize、get_follow_prize_list、get_follow_prize_detail、update_follow_prize、end_follow_prize、delete_follow_prize。当用户提到 Shopee 关注有礼、Follow Prize、关注送券、add_follow_prize、campaign_id、粉丝福利 时触发。即使未明确提及\"关注有礼\"，只要涉及已授权 Shopee 店铺的 Follow Prize 活动管理，也应触发。\n---\n\n# Shopee 关注有礼 Follow Prize\n\nShopee Open Platform **Follow Prize 模块**（6 个 API）。**依赖 `linkfox-shopee-store-auth`** 选店；经 **`POST /shopee/developerProxy`** 传入 `shopId`（或 `merchantId`），由服务端解析 token 转发（`path` 须 `api/v2/follow_prize/...`）。\n\n## 调用方式\n\n- **API 端点**：`POST /shopee/developerProxy`（不同操作通过请求体区分；完整参数/响应/错误码见 `references/api.md`）\n- **Python 脚本**：`python scripts/follow_prize_api.py '<JSON 参数>' [--inline]`（可用脚本见上文脚本一览）\n- **成本约束**：本工具会消耗算力；失败/空结果不得自动换关键词、翻页或连续试探；需要继续检索时先向用户说明会产生额外消耗。\n\n**输出策略（脚本默认行为）**：\n- **始终**将完整响应写入 `<cwd>/linkfox/<YYYY-MM-DD>/<session>/data/<linkfox-shopee-store-follow-prize>-<timestamp>.json`（`<cwd>` 为脚本执行时的工作目录，在 Claude Code 里即当前项目目录；`<session>` 取自环境变量 `SESSION_ID`，按用户任务自动聚合；**禁止写入 /tmp**，当前目录不可写则报错）\n- 响应体 ≤ 8 KB：落盘后把完整 JSON 打印到 stdout\n- 响应体 > 8 KB：落盘后 stdout 只输出摘要（顶层字段、常见计数如 `total`/`costToken`、最大列表字段的长度 + 前 3 条样本）\n- 加 `--inline` 强制全量打印到 stdout（同样落盘）\n\n**读数据建议**：先看摘要判断是否足够；需要具体字段时优先用 `jq`或`ConvertFrom-Json` 从保存的 json 文件按需抽取，避免整份 JSON 进入上下文。\n\n## 解决认证和算力问题\n发生以下异常情况时，采用 references/onboarding.md 引导解决问题：\n\n### 异常情况\n- **未配置API Key**：环境变量未配置 `LINKFOX_AGENT_API_KEY`，也未配置 `LINKFOXAGENT_API_KEY`。\n- **响应401或402状态码**\n- **响应提示算力或余额不足**：消息含\"算力余额不足/计费不足/余额不足/quota exceeded/insufficient balance/套餐到期/需充值/请充值\"，或类似含义的内容。\n\n## 官方参考\n\nFollow Prize 模块索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n---\n\n## Prerequisites\n\n1. 运行 `python scripts/check_auth_dependency.py`；exit code **42** → 先安装 **`linkfox-shopee-store-auth`**。\n2. 其它促销：Discount / Bundle Deal / Voucher / Shop Flash Sale → 对应促销 skill。\n\n## 可用脚本（6 个 API）\n\n| 脚本 | API | Method |\n|------|-----|--------|\n| `add_follow_prize.py` | add_follow_prize | POST |\n| `delete_follow_prize.py` | delete_follow_prize | POST |\n| `end_follow_prize.py` | end_follow_prize | POST |\n| `update_follow_prize.py` | update_follow_prize | POST |\n| `get_follow_prize_detail.py` | get_follow_prize_detail | GET |\n| `get_follow_prize_list.py` | get_follow_prize_list | GET |\n| `follow_prize_api.py` | 通用入口 | — |\n\n## 接口说明（按 API）\n\n入参与响应细节放在 `references/apis/`，SKILL 只保留索引。\n\n| API | 说明文档 |\n|-----|----------|\n| `add_follow_prize` | [references/apis/add-follow-prize.md](./references/apis/add-follow-prize.md) |\n| `delete_follow_prize` | [references/apis/delete-follow-prize.md](./references/apis/delete-follow-prize.md) |\n| `end_follow_prize` | [references/apis/end-follow-prize.md](./references/apis/end-follow-prize.md) |\n| `get_follow_prize_detail` | [references/apis/get-follow-prize-detail.md](./references/apis/get-follow-prize-detail.md) |\n| `get_follow_prize_list` | [references/apis/get-follow-prize-list.md](./references/apis/get-follow-prize-list.md) |\n| `update_follow_prize` | [references/apis/update-follow-prize.md](./references/apis/update-follow-prize.md) |\n\n模块总览 / Feedback 见 [references/api.md](./references/api.md)。\n\n## Usage Scenarios\n\n### 1. 创建关注有礼活动\n1. `add_follow_prize.py` 传完整 `body`\n2. `get_follow_prize_list.py` 查看活动列表\n3. `update_follow_prize.py` / `end_follow_prize.py` 更新或结束\n\n## Not Applicable\n\n- 店铺授权 → `linkfox-shopee-store-auth`\n- 限时折扣 Discount → `linkfox-shopee-store-discount`\n- 优惠券 Voucher → `linkfox-shopee-store-voucher`\n- 店铺秒杀 Shop Flash Sale → `linkfox-shopee-store-shop-flash-sale`\n- 商品 listing → `linkfox-shopee-store-product`\n\n## 算力消耗规则\n\n不消耗算力。\n\n**Feedback:** 见 `references/api.md`。\n\n---\n*For more high-quality, professional cross-border e-commerce skills, visit [LinkFox Skills](https://skill.linkfox.com/).*\n\nFile v1.0.6:_meta.json\n\n{\n  \"ownerId\": \"kn7dmc1t4j28hem1twwyav85p182pb1j\",\n  \"slug\": \"linkfox-shopee-store-follow-prize\",\n  \"version\": \"1.0.6\",\n  \"publishedAt\": 1789363642326\n}\n\nFile v1.0.6:references/api.md\n\n# linkfox-shopee-store-follow-prize — 参数与字段参考\n\n> 单接口入参/响应说明已拆到 **`apis/`**（按 API 一份）；本文件保留模块总览与 Feedback。\nShopee **Follow Prize 模块**全部 6 个 API，经 **`POST /shopee/developerProxy`** 转发。\n\n授权见 **`linkfox-shopee-store-auth`**。官方索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n## 通用约定\n\n- **path**：须 `api/v2/follow_prize/...`\n- **标识**：通常传 **`shopId`**\n- **官方文档 URL 规则**：`https://open.shopee.com/documents/v2/v2.follow_prize.{api}?module=113&type=1`\n\n---\n\n## Follow Prize 模块总览\n\n| # | API | Method | path | 脚本 | 官方文档 |\n|---|-----|--------|------|------|----------|\n| 1 | add_follow_prize | POST | `api/v2/follow_prize/add_follow_prize` | `add_follow_prize.py` | [apis/add-follow-prize.md](./apis/add-follow-prize.md) |\n| 2 | delete_follow_prize | POST | `api/v2/follow_prize/delete_follow_prize` | `delete_follow_prize.py` | [apis/delete-follow-prize.md](./apis/delete-follow-prize.md) |\n| 3 | end_follow_prize | POST | `api/v2/follow_prize/end_follow_prize` | `end_follow_prize.py` | [apis/end-follow-prize.md](./apis/end-follow-prize.md) |\n| 4 | get_follow_prize_detail | GET | `api/v2/follow_prize/get_follow_prize_detail` | `get_follow_prize_detail.py` | [apis/get-follow-prize-detail.md](./apis/get-follow-prize-detail.md) |\n| 5 | get_follow_prize_list | GET | `api/v2/follow_prize/get_follow_prize_list` | `get_follow_prize_list.py` | [apis/get-follow-prize-list.md](./apis/get-follow-prize-list.md) |\n| 6 | update_follow_prize | POST | `api/v2/follow_prize/update_follow_prize` | `update_follow_prize.py` | [apis/update-follow-prize.md](./apis/update-follow-prize.md) |\n通用入口：`follow_prize_api.py`（JSON 含 `\"api\": \"<上表 API 名>\"`）。\n\n---\n\n## 常用接口说明\n\n| API | 要点 |\n|-----|------|\n| `add_follow_prize` | 创建关注有礼活动；POST `body` — [apis/add-follow-prize.md](./apis/add-follow-prize.md) |\n| `get_follow_prize_list` | 活动列表 — [apis/get-follow-prize-list.md](./apis/get-follow-prize-list.md) |\n| `get_follow_prize_detail` | 活动详情 — [apis/get-follow-prize-detail.md](./apis/get-follow-prize-detail.md) |\n| `update_follow_prize` | 更新活动 — [apis/update-follow-prize.md](./apis/update-follow-prize.md) |\n| `end_follow_prize` | 提前结束 — [apis/end-follow-prize.md](./apis/end-follow-prize.md) |\n| `delete_follow_prize` | 删除活动 — [apis/delete-follow-prize.md](./apis/delete-follow-prize.md) |\n\n---\n\n## curl 示例\n\n```bash\ncurl -X POST ${LINKFOX_TOOL_GATEWAY}/shopee/developerProxy \\\n  -H \"Authorization: $LINKFOX_AGENT_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"path\": \"api/v2/follow_prize/get_follow_prize_list\",\n    \"method\": \"GET\",\n    \"accessToken\": \"xxx\",\n    \"shopId\": \"67890\"\n  }'\n```\n\n---\n\n## Feedback API\n\n```bash\ncurl -X POST https://skill-api.linkfox.com/api/v1/public/feedback \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"skillName\":\"linkfox-shopee-store-follow-prize\",\"sentiment\":\"POSITIVE\",\n       \"category\":\"OTHER\",\"content\":\"关注有礼查询正常\"}'\n```\n\nFile v1.0.6:references/apis/add-follow-prize.md\n\n# add_follow_prize\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/add_follow_prize.py` |\n| Method / path | POST `api/v2/follow_prize/add_follow_prize` |\n| 官方文档 | [add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1) |\n| 用途 | Create follow prize promotion; pass full body |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**POST**\n- POST：传 `body` / `requestBody`，或把 `body_fields` 列在 JSON 顶层\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：Create follow prize promotion; pass full body\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/add_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"add_follow_prize\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`addFollowPrize`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.6:references/apis/delete-follow-prize.md\n\n# delete_follow_prize\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/delete_follow_prize.py` |\n| Method / path | POST `api/v2/follow_prize/delete_follow_prize` |\n| 官方文档 | [delete_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.delete_follow_prize?module=113&type=1) |\n| 用途 | Delete follow prize |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**POST**\n- POST：传 `body` / `requestBody`，或把 `body_fields` 列在 JSON 顶层\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：Delete follow prize\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/delete_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"delete_follow_prize\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`deleteFollowPrize`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.6:references/apis/end-follow-prize.md\n\n# end_follow_prize\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/end_follow_prize.py` |\n| Method / path | POST `api/v2/follow_prize/end_follow_prize` |\n| 官方文档 | [end_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.end_follow_prize?module=113&type=1) |\n| 用途 | End follow prize early |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**POST**\n- POST：传 `body` / `requestBody`，或把 `body_fields` 列在 JSON 顶层\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：End follow prize early\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/end_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"end_follow_prize\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`endFollowPrize`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.6:references/apis/get-follow-prize-detail.md\n\n# get_follow_prize_detail\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/get_follow_prize_detail.py` |\n| Method / path | GET `api/v2/follow_prize/get_follow_prize_detail` |\n| 官方文档 | [get_follow_prize_detail](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_detail?module=113&type=1) |\n| 用途 | Follow prize detail by campaign_id |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**GET**\n- GET：业务字段放 JSON **顶层**，runner 拼进 `queryString`（不含 `?`）\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：Follow prize detail by campaign_id\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/get_follow_prize_detail.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"get_follow_prize_detail\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`getFollowPrizeDetail`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.6:references/apis/get-follow-prize-list.md\n\n# get_follow_prize_list\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/get_follow_prize_list.py` |\n| Method / path | GET `api/v2/follow_prize/get_follow_prize_list` |\n| 官方文档 | [get_follow_prize_list](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_list?module=113&type=1) |\n| 用途 | List follow prizes; pagination/status filters |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**GET**\n- GET：业务字段放 JSON **顶层**，runner 拼进 `queryString`（不含 `?`）\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：List follow prizes; pagination/status filters\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/get_follow_prize_list.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"get_follow_prize_list\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`getFollowPrizeList`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.6:references/apis/update-follow-prize.md\n\n# update_follow_prize\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/update_follow_prize.py` |\n| Method / path | POST `api/v2/follow_prize/update_follow_prize` |\n| 官方文档 | [update_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.update_follow_prize?module=113&type=1) |\n| 用途 | Update follow prize settings |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**POST**\n- POST：传 `body` / `requestBody`，或把 `body_fields` 列在 JSON 顶层\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：Update follow prize settings\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/update_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"update_follow_prize\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`updateFollowPrize`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.6:references/onboarding.md\n\n# 解决认证和算力问题\n\n调用本 skill 时若网关返回 **auth** 或 **billing** 错误，走本 skill 自带的 `scripts/onboarding.py` 完成引导。\n\n**auth 场景**：`errcode=401` 或消息含 `authorized error`/`鉴权失败`/`未授权`/`unauthorized`；或 `LINKFOX_AGENT_API_KEY` 与 `LINKFOXAGENT_API_KEY` 均为空。\n1. 若已配置 key → 先让用户重启会话（最常见误判），仍失败让用户重新取 key 或换手机号重注册\n2. 未配置 → 询问：自助去 https://agent.linkfox.com/ 取 key，或提供手机号让脚本注册\n3. 手机号路径：\n   - `python scripts/onboarding.py send-code <phone>` → 展示 JSON 里的 phone/agreements\n   - 收到验证码后：`python scripts/onboarding.py login <phone> <code>`\n   - 拿到 `api_key` 后把下面三平台配置转发给用户，提示重启会话生效：\n     - Windows PowerShell（永久）：`setx LINKFOX_AGENT_API_KEY \"<key>\"`\n     - macOS zsh：`echo 'export LINKFOX_AGENT_API_KEY=\"<key>\"' >> ~/.zshrc && source ~/.zshrc`\n     - Linux bash：`echo 'export LINKFOX_AGENT_API_KEY=\"<key>\"' >> ~/.bashrc && source ~/.bashrc`\n     - 变量名 `LINKFOX_AGENT_API_KEY`（主推）或 `LINKFOXAGENT_API_KEY`（老规范）任一即可\n\n**billing 场景**：`errcode=402` 或消息含 `算力/余额/quota/insufficient/充值/套餐到期`。\n- `python scripts/onboarding.py list-plans` → 有 AskUserQuestion 就弹菜单，否则输出编号清单让用户选\n- 校验 `plan_id` ∈ 清单、支付方式 ∈ 该套餐 `available_methods`（通常 `wechat/alipay`）\n- `python scripts/onboarding.py order <plan_id> <method>` → 展示优先级 PNG > `pay_url` > `ascii_qr`（标注兜底）\n- 已付款可选调 `python scripts/onboarding.py query <order_id>`，不主动轮询\n\n排除 `errcode=403`（无权限，不归入这两类）。所有子命令输出 stdout JSON，`error` 字段已含阶段前缀，透传给用户即可。完整用法：`python scripts/onboarding.py --help`。\n\nFile v1.0.6:skill-card.md\n\n## Description:\n\nShopee（虾皮）关注有礼 Follow Prize skill for managing authorized store Follow Prize campaigns through LinkFox, covering create, list, detail, update, end, and delete operations.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[linkfox-ai](https://clawhub.ai/user/linkfox-ai)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal sellers and operators use this skill to manage Shopee Follow Prize promotions for authorized stores. It helps an agent call LinkFox/Shopee APIs, check campaign state, and create, update, end, or delete Follow Prize campaigns.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill can create, update, end, and delete Shopee Follow Prize campaigns.\n\nMitigation: Require explicit user confirmation before any campaign mutation and verify the target shop or merchant ID before execution.\n\nRisk: The skill handles LinkFox API keys, phone/SMS login, billing orders, and gateway environment variables.\n\nMitigation: Prefer session-scoped credentials, avoid persisting API keys in shell startup files where possible, and confirm any payment action before running billing commands.\n\nRisk: The skill saves complete API responses to local JSON files.\n\nMitigation: Review saved response files for sensitive store or campaign data and remove them when they are no longer needed.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/linkfox-ai/skills/linkfox-shopee-store-follow-prize)\n- [Skill API reference](references/api.md)\n- [Authentication and billing onboarding](references/onboarding.md)\n- [Shopee Follow Prize add_follow_prize documentation](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n- [Shopee Follow Prize get_follow_prize_list documentation](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_list?module=113&type=1)\n- [Shopee Follow Prize get_follow_prize_detail documentation](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_detail?module=113&type=1)\n- [Shopee Follow Prize update_follow_prize documentation](https://open.shopee.com/documents/v2/v2.follow_prize.update_follow_prize?module=113&type=1)\n- [Shopee Follow Prize end_follow_prize documentation](https://open.shopee.com/documents/v2/v2.follow_prize.end_follow_prize?module=113&type=1)\n- [Shopee Follow Prize delete_follow_prize documentation](https://open.shopee.com/documents/v2/v2.follow_prize.delete_follow_prize?module=113&type=1)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, code, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown guidance, shell command examples, JSON API parameters, JSON API responses, and saved JSON response files]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Small API responses are printed after being saved; larger responses are summarized with top-level fields, counts, and sample records.]\n\n## Skill Version(s):\n\n1.0.6 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v1.0.5: 23 files, 33725 bytes\n\nFiles: references/api.md (3230b), references/apis/add-follow-prize.md (1427b), references/apis/delete-follow-prize.md (1399b), references/apis/end-follow-prize.md (1381b), references/apis/get-follow-prize-detail.md (1466b), references/apis/get-follow-prize-list.md (1472b), references/apis/update-follow-prize.md (1417b), references/onboarding.md (2046b), scripts/_follow_prize_api_runner.py (4332b), scripts/_follow_prize_endpoints.py (2161b), scripts/_shopee_follow_prize_common.py (11609b), scripts/add_follow_prize.py (747b), scripts/check_auth_dependency.py (3993b), scripts/delete_follow_prize.py (765b), scripts/end_follow_prize.py (747b), scripts/follow_prize_api.py (1062b), scripts/get_follow_prize_detail.py (789b), scripts/get_follow_prize_list.py (777b), scripts/onboarding.py (24089b), scripts/update_follow_prize.py (765b), skill-card.md (2820b), SKILL.md (5240b), _meta.json (152b)\n\nFile v1.0.5:SKILL.md\n\n---\nname: linkfox-shopee-store-follow-prize\ndescription: Shopee（虾皮）关注有礼 Follow Prize（与 linkfox-shopee-store-auth 同系列），经 /shopee/developerProxy 转发 Shopee Open API Follow Prize 模块全部 6 个接口：add_follow_prize、get_follow_prize_list、get_follow_prize_detail、update_follow_prize、end_follow_prize、delete_follow_prize。当用户提到 Shopee 关注有礼、Follow Prize、关注送券、add_follow_prize、campaign_id、粉丝福利 时触发。即使未明确提及\"关注有礼\"，只要涉及已授权 Shopee 店铺的 Follow Prize 活动管理，也应触发。\n---\n\n# Shopee 关注有礼 Follow Prize\n\nShopee Open Platform **Follow Prize 模块**（6 个 API）。**依赖 `linkfox-shopee-store-auth`** 选店；经 **`POST /shopee/developerProxy`** 传入 `shopId`（或 `merchantId`），由服务端解析 token 转发（`path` 须 `api/v2/follow_prize/...`）。\n\n## 调用方式\n\n- **API 端点**：`POST /shopee/developerProxy`（不同操作通过请求体区分；完整参数/响应/错误码见 `references/api.md`）\n- **Python 脚本**：`python scripts/follow_prize_api.py '<JSON 参数>' [--inline]`（可用脚本见上文脚本一览）\n- **成本约束**：本工具会消耗积分；失败/空结果不得自动换关键词、翻页或连续试探；需要继续检索时先向用户说明会产生额外消耗。\n\n**输出策略（脚本默认行为）**：\n- **始终**将完整响应写入 `<cwd>/linkfox/<YYYY-MM-DD>/<session>/data/<linkfox-shopee-store-follow-prize>-<timestamp>.json`（`<cwd>` 为脚本执行时的工作目录，在 Claude Code 里即当前项目目录；`<session>` 取自环境变量 `SESSION_ID`，按用户任务自动聚合；**禁止写入 /tmp**，当前目录不可写则报错）\n- 响应体 ≤ 8 KB：落盘后把完整 JSON 打印到 stdout\n- 响应体 > 8 KB：落盘后 stdout 只输出摘要（顶层字段、常见计数如 `total`/`costToken`、最大列表字段的长度 + 前 3 条样本）\n- 加 `--inline` 强制全量打印到 stdout（同样落盘）\n\n**读数据建议**：先看摘要判断是否足够；需要具体字段时优先用 `jq`或`ConvertFrom-Json` 从保存的 json 文件按需抽取，避免整份 JSON 进入上下文。\n\n## 解决认证和积分问题\n发生以下异常情况时，采用 references/onboarding.md 引导解决问题：\n\n### 异常情况\n- **未配置API Key**：环境变量未配置 `LINKFOX_AGENT_API_KEY`，也未配置 `LINKFOXAGENT_API_KEY`。\n- **响应401或402状态码**\n- **响应提示积分或余额不足**：消息含\"积分余额不足/计费不足/余额不足/quota exceeded/insufficient balance/套餐到期/需充值/请充值\"，或类似含义的内容。\n\n## 官方参考\n\nFollow Prize 模块索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n---\n\n## Prerequisites\n\n1. 运行 `python scripts/check_auth_dependency.py`；exit code **42** → 先安装 **`linkfox-shopee-store-auth`**。\n2. 其它促销：Discount / Bundle Deal / Voucher / Shop Flash Sale → 对应促销 skill。\n\n## 可用脚本（6 个 API）\n\n| 脚本 | API | Method |\n|------|-----|--------|\n| `add_follow_prize.py` | add_follow_prize | POST |\n| `delete_follow_prize.py` | delete_follow_prize | POST |\n| `end_follow_prize.py` | end_follow_prize | POST |\n| `update_follow_prize.py` | update_follow_prize | POST |\n| `get_follow_prize_detail.py` | get_follow_prize_detail | GET |\n| `get_follow_prize_list.py` | get_follow_prize_list | GET |\n| `follow_prize_api.py` | 通用入口 | — |\n\n## 接口说明（按 API）\n\n入参与响应细节放在 `references/apis/`，SKILL 只保留索引。\n\n| API | 说明文档 |\n|-----|----------|\n| `add_follow_prize` | [references/apis/add-follow-prize.md](./references/apis/add-follow-prize.md) |\n| `delete_follow_prize` | [references/apis/delete-follow-prize.md](./references/apis/delete-follow-prize.md) |\n| `end_follow_prize` | [references/apis/end-follow-prize.md](./references/apis/end-follow-prize.md) |\n| `get_follow_prize_detail` | [references/apis/get-follow-prize-detail.md](./references/apis/get-follow-prize-detail.md) |\n| `get_follow_prize_list` | [references/apis/get-follow-prize-list.md](./references/apis/get-follow-prize-list.md) |\n| `update_follow_prize` | [references/apis/update-follow-prize.md](./references/apis/update-follow-prize.md) |\n\n模块总览 / Feedback 见 [references/api.md](./references/api.md)。\n\n## Usage Scenarios\n\n### 1. 创建关注有礼活动\n1. `add_follow_prize.py` 传完整 `body`\n2. `get_follow_prize_list.py` 查看活动列表\n3. `update_follow_prize.py` / `end_follow_prize.py` 更新或结束\n\n## Not Applicable\n\n- 店铺授权 → `linkfox-shopee-store-auth`\n- 限时折扣 Discount → `linkfox-shopee-store-discount`\n- 优惠券 Voucher → `linkfox-shopee-store-voucher`\n- 店铺秒杀 Shop Flash Sale → `linkfox-shopee-store-shop-flash-sale`\n- 商品 listing → `linkfox-shopee-store-product`\n\n## 积分消耗规则\n\n不消耗积分。\n\n**Feedback:** 见 `references/api.md`。\n\n---\n*For more high-quality, professional cross-border e-commerce skills, visit [LinkFox Skills](https://skill.linkfox.com/).*\n\nFile v1.0.5:_meta.json\n\n{\n  \"ownerId\": \"kn7dmc1t4j28hem1twwyav85p182pb1j\",\n  \"slug\": \"linkfox-shopee-store-follow-prize\",\n  \"version\": \"1.0.5\",\n  \"publishedAt\": 1786719819633\n}\n\nFile v1.0.5:references/api.md\n\n# linkfox-shopee-store-follow-prize — 参数与字段参考\n\n> 单接口入参/响应说明已拆到 **`apis/`**（按 API 一份）；本文件保留模块总览与 Feedback。\nShopee **Follow Prize 模块**全部 6 个 API，经 **`POST /shopee/developerProxy`** 转发。\n\n授权见 **`linkfox-shopee-store-auth`**。官方索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n## 通用约定\n\n- **path**：须 `api/v2/follow_prize/...`\n- **标识**：通常传 **`shopId`**\n- **官方文档 URL 规则**：`https://open.shopee.com/documents/v2/v2.follow_prize.{api}?module=113&type=1`\n\n---\n\n## Follow Prize 模块总览\n\n| # | API | Method | path | 脚本 | 官方文档 |\n|---|-----|--------|------|------|----------|\n| 1 | add_follow_prize | POST | `api/v2/follow_prize/add_follow_prize` | `add_follow_prize.py` | [apis/add-follow-prize.md](./apis/add-follow-prize.md) |\n| 2 | delete_follow_prize | POST | `api/v2/follow_prize/delete_follow_prize` | `delete_follow_prize.py` | [apis/delete-follow-prize.md](./apis/delete-follow-prize.md) |\n| 3 | end_follow_prize | POST | `api/v2/follow_prize/end_follow_prize` | `end_follow_prize.py` | [apis/end-follow-prize.md](./apis/end-follow-prize.md) |\n| 4 | get_follow_prize_detail | GET | `api/v2/follow_prize/get_follow_prize_detail` | `get_follow_prize_detail.py` | [apis/get-follow-prize-detail.md](./apis/get-follow-prize-detail.md) |\n| 5 | get_follow_prize_list | GET | `api/v2/follow_prize/get_follow_prize_list` | `get_follow_prize_list.py` | [apis/get-follow-prize-list.md](./apis/get-follow-prize-list.md) |\n| 6 | update_follow_prize | POST | `api/v2/follow_prize/update_follow_prize` | `update_follow_prize.py` | [apis/update-follow-prize.md](./apis/update-follow-prize.md) |\n通用入口：`follow_prize_api.py`（JSON 含 `\"api\": \"<上表 API 名>\"`）。\n\n---\n\n## 常用接口说明\n\n| API | 要点 |\n|-----|------|\n| `add_follow_prize` | 创建关注有礼活动；POST `body` — [apis/add-follow-prize.md](./apis/add-follow-prize.md) |\n| `get_follow_prize_list` | 活动列表 — [apis/get-follow-prize-list.md](./apis/get-follow-prize-list.md) |\n| `get_follow_prize_detail` | 活动详情 — [apis/get-follow-prize-detail.md](./apis/get-follow-prize-detail.md) |\n| `update_follow_prize` | 更新活动 — [apis/update-follow-prize.md](./apis/update-follow-prize.md) |\n| `end_follow_prize` | 提前结束 — [apis/end-follow-prize.md](./apis/end-follow-prize.md) |\n| `delete_follow_prize` | 删除活动 — [apis/delete-follow-prize.md](./apis/delete-follow-prize.md) |\n\n---\n\n## curl 示例\n\n```bash\ncurl -X POST ${LINKFOX_TOOL_GATEWAY}/shopee/developerProxy \\\n  -H \"Authorization: $LINKFOX_AGENT_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"path\": \"api/v2/follow_prize/get_follow_prize_list\",\n    \"method\": \"GET\",\n    \"accessToken\": \"xxx\",\n    \"shopId\": \"67890\"\n  }'\n```\n\n---\n\n## Feedback API\n\n```bash\ncurl -X POST https://skill-api.linkfox.com/api/v1/public/feedback \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"skillName\":\"linkfox-shopee-store-follow-prize\",\"sentiment\":\"POSITIVE\",\n       \"category\":\"OTHER\",\"content\":\"关注有礼查询正常\"}'\n```\n\nFile v1.0.5:references/apis/add-follow-prize.md\n\n# add_follow_prize\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/add_follow_prize.py` |\n| Method / path | POST `api/v2/follow_prize/add_follow_prize` |\n| 官方文档 | [add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1) |\n| 用途 | Create follow prize promotion; pass full body |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**POST**\n- POST：传 `body` / `requestBody`，或把 `body_fields` 列在 JSON 顶层\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：Create follow prize promotion; pass full body\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/add_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"add_follow_prize\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`addFollowPrize`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.5:references/apis/delete-follow-prize.md\n\n# delete_follow_prize\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/delete_follow_prize.py` |\n| Method / path | POST `api/v2/follow_prize/delete_follow_prize` |\n| 官方文档 | [delete_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.delete_follow_prize?module=113&type=1) |\n| 用途 | Delete follow prize |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**POST**\n- POST：传 `body` / `requestBody`，或把 `body_fields` 列在 JSON 顶层\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：Delete follow prize\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/delete_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"delete_follow_prize\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`deleteFollowPrize`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.5:references/apis/end-follow-prize.md\n\n# end_follow_prize\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/end_follow_prize.py` |\n| Method / path | POST `api/v2/follow_prize/end_follow_prize` |\n| 官方文档 | [end_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.end_follow_prize?module=113&type=1) |\n| 用途 | End follow prize early |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**POST**\n- POST：传 `body` / `requestBody`，或把 `body_fields` 列在 JSON 顶层\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：End follow prize early\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/end_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"end_follow_prize\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`endFollowPrize`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.5:references/apis/get-follow-prize-detail.md\n\n# get_follow_prize_detail\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/get_follow_prize_detail.py` |\n| Method / path | GET `api/v2/follow_prize/get_follow_prize_detail` |\n| 官方文档 | [get_follow_prize_detail](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_detail?module=113&type=1) |\n| 用途 | Follow prize detail by campaign_id |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**GET**\n- GET：业务字段放 JSON **顶层**，runner 拼进 `queryString`（不含 `?`）\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：Follow prize detail by campaign_id\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/get_follow_prize_detail.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"get_follow_prize_detail\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`getFollowPrizeDetail`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.5:references/apis/get-follow-prize-list.md\n\n# get_follow_prize_list\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/get_follow_prize_list.py` |\n| Method / path | GET `api/v2/follow_prize/get_follow_prize_list` |\n| 官方文档 | [get_follow_prize_list](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_list?module=113&type=1) |\n| 用途 | List follow prizes; pagination/status filters |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**GET**\n- GET：业务字段放 JSON **顶层**，runner 拼进 `queryString`（不含 `?`）\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：List follow prizes; pagination/status filters\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/get_follow_prize_list.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"get_follow_prize_list\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`getFollowPrizeList`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.5:references/apis/update-follow-prize.md\n\n# update_follow_prize\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/update_follow_prize.py` |\n| Method / path | POST `api/v2/follow_prize/update_follow_prize` |\n| 官方文档 | [update_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.update_follow_prize?module=113&type=1) |\n| 用途 | Update follow prize settings |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**POST**\n- POST：传 `body` / `requestBody`，或把 `body_fields` 列在 JSON 顶层\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：Update follow prize settings\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/update_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"update_follow_prize\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`updateFollowPrize`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.5:references/onboarding.md\n\n# 解决认证和积分问题\n\n调用本 skill 时若网关返回 **auth** 或 **billing** 错误，走本 skill 自带的 `scripts/onboarding.py` 完成引导。\n\n**auth 场景**：`errcode=401` 或消息含 `authorized error`/`鉴权失败`/`未授权`/`unauthorized`；或 `LINKFOX_AGENT_API_KEY` 与 `LINKFOXAGENT_API_KEY` 均为空。\n1. 若已配置 key → 先让用户重启会话（最常见误判），仍失败让用户重新取 key 或换手机号重注册\n2. 未配置 → 询问：自助去 https://agent.linkfox.com/ 取 key，或提供手机号让脚本注册\n3. 手机号路径：\n   - `python scripts/onboarding.py send-code <phone>` → 展示 JSON 里的 phone/agreements\n   - 收到验证码后：`python scripts/onboarding.py login <phone> <code>`（workbuddy 宿主加 `--channel workbuddy`）\n   - 拿到 `api_key` 后把下面三平台配置转发给用户，提示重启会话生效：\n     - Windows PowerShell（永久）：`setx LINKFOX_AGENT_API_KEY \"<key>\"`\n     - macOS zsh：`echo 'export LINKFOX_AGENT_API_KEY=\"<key>\"' >> ~/.zshrc && source ~/.zshrc`\n     - Linux bash：`echo 'export LINKFOX_AGENT_API_KEY=\"<key>\"' >> ~/.bashrc && source ~/.bashrc`\n     - 变量名 `LINKFOX_AGENT_API_KEY`（主推）或 `LINKFOXAGENT_API_KEY`（老规范）任一即可\n\n**billing 场景**：`errcode=402` 或消息含 `积分/余额/quota/insufficient/充值/套餐到期`。\n- `python scripts/onboarding.py list-plans` → 有 AskUserQuestion 就弹菜单，否则输出编号清单让用户选\n- 校验 `plan_id` ∈ 清单、支付方式 ∈ 该套餐 `available_methods`（通常 `wechat/alipay`）\n- `python scripts/onboarding.py order <plan_id> <method>` → 展示优先级 PNG > `pay_url` > `ascii_qr`（标注兜底）\n- 已付款可选调 `python scripts/onboarding.py query <order_id>`，不主动轮询\n\n排除 `errcode=403`（无权限，不归入这两类）。所有子命令输出 stdout JSON，`error` 字段已含阶段前缀，透传给用户即可。完整用法：`python scripts/onboarding.py --help`。\n\nFile v1.0.5:skill-card.md\n\n## Description:\n\nManages Shopee Follow Prize campaigns for authorized stores through LinkFox gateway scripts covering add, list, detail, update, end, and delete operations.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[linkfox-ai](https://clawhub.ai/user/linkfox-ai)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal sellers, e-commerce operators, and agent developers use this skill to create, inspect, update, end, or delete Shopee Follow Prize promotions for stores that already have LinkFox Shopee authorization.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill can create, update, end, or delete live Shopee Follow Prize campaigns.\n\nMitigation: Require explicit user confirmation before each add, update, end, or delete action and verify the target shop or merchant identifier before execution.\n\nRisk: The skill handles LinkFox API keys, login details, SMS codes, payment flows, and QR files.\n\nMitigation: Treat keys, phone numbers, verification codes, payment artifacts, stdout logs, and saved session files as sensitive and clean them up when they are no longer needed.\n\nRisk: The skill saves complete business API responses locally.\n\nMitigation: Review saved linkfox session data for sensitive store or campaign information and avoid sharing full response files unless necessary.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/linkfox-ai/skills/linkfox-shopee-store-follow-prize)\n- [Publisher profile](https://clawhub.ai/user/linkfox-ai)\n- [Follow Prize API reference](references/api.md)\n- [Authentication and billing onboarding](references/onboarding.md)\n- [Shopee add_follow_prize documentation](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n- [Shopee get_follow_prize_list documentation](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_list?module=113&type=1)\n- [Shopee update_follow_prize documentation](https://open.shopee.com/documents/v2/v2.follow_prize.update_follow_prize?module=113&type=1)\n\n## Skill Output:\n\n**Output Type(s):** [text, JSON, shell commands, configuration, guidance, files]\n\n**Output Format:** [Markdown guidance with shell commands and JSON API responses saved to local files]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Small responses are printed in full; larger responses are summarized while the complete response is written under a linkfox session data directory.]\n\n## Skill Version(s):\n\n1.0.5 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v1.0.4: 23 files, 33839 bytes\n\nFiles: references/api.md (3230b), references/apis/add-follow-prize.md (1427b), references/apis/delete-follow-prize.md (1399b), references/apis/end-follow-prize.md (1381b), references/apis/get-follow-prize-detail.md (1466b), references/apis/get-follow-prize-list.md (1472b), references/apis/update-follow-prize.md (1417b), references/onboarding.md (2046b), scripts/_follow_prize_api_runner.py (4332b), scripts/_follow_prize_endpoints.py (2161b), scripts/_shopee_follow_prize_common.py (11609b), scripts/add_follow_prize.py (747b), scripts/check_auth_dependency.py (3993b), scripts/delete_follow_prize.py (765b), scripts/end_follow_prize.py (747b), scripts/follow_prize_api.py (1062b), scripts/get_follow_prize_detail.py (789b), scripts/get_follow_prize_list.py (777b), scripts/onboarding.py (24089b), scripts/update_follow_prize.py (765b), skill-card.md (3037b), SKILL.md (5240b), _meta.json (152b)\n\nFile v1.0.4:SKILL.md\n\n---\nname: linkfox-shopee-store-follow-prize\ndescription: Shopee（虾皮）关注有礼 Follow Prize（与 linkfox-shopee-store-auth 同系列），经 /shopee/developerProxy 转发 Shopee Open API Follow Prize 模块全部 6 个接口：add_follow_prize、get_follow_prize_list、get_follow_prize_detail、update_follow_prize、end_follow_prize、delete_follow_prize。当用户提到 Shopee 关注有礼、Follow Prize、关注送券、add_follow_prize、campaign_id、粉丝福利 时触发。即使未明确提及\"关注有礼\"，只要涉及已授权 Shopee 店铺的 Follow Prize 活动管理，也应触发。\n---\n\n# Shopee 关注有礼 Follow Prize\n\nShopee Open Platform **Follow Prize 模块**（6 个 API）。**依赖 `linkfox-shopee-store-auth`** 选店；经 **`POST /shopee/developerProxy`** 传入 `shopId`（或 `merchantId`），由服务端解析 token 转发（`path` 须 `api/v2/follow_prize/...`）。\n\n## 调用方式\n\n- **API 端点**：`POST /shopee/developerProxy`（不同操作通过请求体区分；完整参数/响应/错误码见 `references/api.md`）\n- **Python 脚本**：`python scripts/follow_prize_api.py '<JSON 参数>' [--inline]`（可用脚本见上文脚本一览）\n- **成本约束**：本工具会消耗积分；失败/空结果不得自动换关键词、翻页或连续试探；需要继续检索时先向用户说明会产生额外消耗。\n\n**输出策略（脚本默认行为）**：\n- **始终**将完整响应写入 `<cwd>/linkfox/<YYYY-MM-DD>/<session>/data/<linkfox-shopee-store-follow-prize>-<timestamp>.json`（`<cwd>` 为脚本执行时的工作目录，在 Claude Code 里即当前项目目录；`<session>` 取自环境变量 `SESSION_ID`，按用户任务自动聚合；**禁止写入 /tmp**，当前目录不可写则报错）\n- 响应体 ≤ 8 KB：落盘后把完整 JSON 打印到 stdout\n- 响应体 > 8 KB：落盘后 stdout 只输出摘要（顶层字段、常见计数如 `total`/`costToken`、最大列表字段的长度 + 前 3 条样本）\n- 加 `--inline` 强制全量打印到 stdout（同样落盘）\n\n**读数据建议**：先看摘要判断是否足够；需要具体字段时优先用 `jq`或`ConvertFrom-Json` 从保存的 json 文件按需抽取，避免整份 JSON 进入上下文。\n\n## 解决认证和积分问题\n发生以下异常情况时，采用 references/onboarding.md 引导解决问题：\n\n### 异常情况\n- **未配置API Key**：环境变量未配置 `LINKFOX_AGENT_API_KEY`，也未配置 `LINKFOXAGENT_API_KEY`。\n- **响应401或402状态码**\n- **响应提示积分或余额不足**：消息含\"积分余额不足/计费不足/余额不足/quota exceeded/insufficient balance/套餐到期/需充值/请充值\"，或类似含义的内容。\n\n## 官方参考\n\nFollow Prize 模块索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n---\n\n## Prerequisites\n\n1. 运行 `python scripts/check_auth_dependency.py`；exit code **42** → 先安装 **`linkfox-shopee-store-auth`**。\n2. 其它促销：Discount / Bundle Deal / Voucher / Shop Flash Sale → 对应促销 skill。\n\n## 可用脚本（6 个 API）\n\n| 脚本 | API | Method |\n|------|-----|--------|\n| `add_follow_prize.py` | add_follow_prize | POST |\n| `delete_follow_prize.py` | delete_follow_prize | POST |\n| `end_follow_prize.py` | end_follow_prize | POST |\n| `update_follow_prize.py` | update_follow_prize | POST |\n| `get_follow_prize_detail.py` | get_follow_prize_detail | GET |\n| `get_follow_prize_list.py` | get_follow_prize_list | GET |\n| `follow_prize_api.py` | 通用入口 | — |\n\n## 接口说明（按 API）\n\n入参与响应细节放在 `references/apis/`，SKILL 只保留索引。\n\n| API | 说明文档 |\n|-----|----------|\n| `add_follow_prize` | [references/apis/add-follow-prize.md](./references/apis/add-follow-prize.md) |\n| `delete_follow_prize` | [references/apis/delete-follow-prize.md](./references/apis/delete-follow-prize.md) |\n| `end_follow_prize` | [references/apis/end-follow-prize.md](./references/apis/end-follow-prize.md) |\n| `get_follow_prize_detail` | [references/apis/get-follow-prize-detail.md](./references/apis/get-follow-prize-detail.md) |\n| `get_follow_prize_list` | [references/apis/get-follow-prize-list.md](./references/apis/get-follow-prize-list.md) |\n| `update_follow_prize` | [references/apis/update-follow-prize.md](./references/apis/update-follow-prize.md) |\n\n模块总览 / Feedback 见 [references/api.md](./references/api.md)。\n\n## Usage Scenarios\n\n### 1. 创建关注有礼活动\n1. `add_follow_prize.py` 传完整 `body`\n2. `get_follow_prize_list.py` 查看活动列表\n3. `update_follow_prize.py` / `end_follow_prize.py` 更新或结束\n\n## Not Applicable\n\n- 店铺授权 → `linkfox-shopee-store-auth`\n- 限时折扣 Discount → `linkfox-shopee-store-discount`\n- 优惠券 Voucher → `linkfox-shopee-store-voucher`\n- 店铺秒杀 Shop Flash Sale → `linkfox-shopee-store-shop-flash-sale`\n- 商品 listing → `linkfox-shopee-store-product`\n\n## 积分消耗规则\n\n不消耗积分。\n\n**Feedback:** 见 `references/api.md`。\n\n---\n*For more high-quality, professional cross-border e-commerce skills, visit [LinkFox Skills](https://skill.linkfox.com/).*\n\nFile v1.0.4:_meta.json\n\n{\n  \"ownerId\": \"kn7dmc1t4j28hem1twwyav85p182pb1j\",\n  \"slug\": \"linkfox-shopee-store-follow-prize\",\n  \"version\": \"1.0.4\",\n  \"publishedAt\": 1786100472980\n}\n\nFile v1.0.4:references/api.md\n\n# linkfox-shopee-store-follow-prize — 参数与字段参考\n\n> 单接口入参/响应说明已拆到 **`apis/`**（按 API 一份）；本文件保留模块总览与 Feedback。\nShopee **Follow Prize 模块**全部 6 个 API，经 **`POST /shopee/developerProxy`** 转发。\n\n授权见 **`linkfox-shopee-store-auth`**。官方索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n## 通用约定\n\n- **path**：须 `api/v2/follow_prize/...`\n- **标识**：通常传 **`shopId`**\n- **官方文档 URL 规则**：`https://open.shopee.com/documents/v2/v2.follow_prize.{api}?module=113&type=1`\n\n---\n\n## Follow Prize 模块总览\n\n| # | API | Method | path | 脚本 | 官方文档 |\n|---|-----|--------|------|------|----------|\n| 1 | add_follow_prize | POST | `api/v2/follow_prize/add_follow_prize` | `add_follow_prize.py` | [apis/add-follow-prize.md](./apis/add-follow-prize.md) |\n| 2 | delete_follow_prize | POST | `api/v2/follow_prize/delete_follow_prize` | `delete_follow_prize.py` | [apis/delete-follow-prize.md](./apis/delete-follow-prize.md) |\n| 3 | end_follow_prize | POST | `api/v2/follow_prize/end_follow_prize` | `end_follow_prize.py` | [apis/end-follow-prize.md](./apis/end-follow-prize.md) |\n| 4 | get_follow_prize_detail | GET | `api/v2/follow_prize/get_follow_prize_detail` | `get_follow_prize_detail.py` | [apis/get-follow-prize-detail.md](./apis/get-follow-prize-detail.md) |\n| 5 | get_follow_prize_list | GET | `api/v2/follow_prize/get_follow_prize_list` | `get_follow_prize_list.py` | [apis/get-follow-prize-list.md](./apis/get-follow-prize-list.md) |\n| 6 | update_follow_prize | POST | `api/v2/follow_prize/update_follow_prize` | `update_follow_prize.py` | [apis/update-follow-prize.md](./apis/update-follow-prize.md) |\n通用入口：`follow_prize_api.py`（JSON 含 `\"api\": \"<上表 API 名>\"`）。\n\n---\n\n## 常用接口说明\n\n| API | 要点 |\n|-----|------|\n| `add_follow_prize` | 创建关注有礼活动；POST `body` — [apis/add-follow-prize.md](./apis/add-follow-prize.md) |\n| `get_follow_prize_list` | 活动列表 — [apis/get-follow-prize-list.md](./apis/get-follow-prize-list.md) |\n| `get_follow_prize_detail` | 活动详情 — [apis/get-follow-prize-detail.md](./apis/get-follow-prize-detail.md) |\n| `update_follow_prize` | 更新活动 — [apis/update-follow-prize.md](./apis/update-follow-prize.md) |\n| `end_follow_prize` | 提前结束 — [apis/end-follow-prize.md](./apis/end-follow-prize.md) |\n| `delete_follow_prize` | 删除活动 — [apis/delete-follow-prize.md](./apis/delete-follow-prize.md) |\n\n---\n\n## curl 示例\n\n```bash\ncurl -X POST ${LINKFOX_TOOL_GATEWAY}/shopee/developerProxy \\\n  -H \"Authorization: $LINKFOX_AGENT_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"path\": \"api/v2/follow_prize/get_follow_prize_list\",\n    \"method\": \"GET\",\n    \"accessToken\": \"xxx\",\n    \"shopId\": \"67890\"\n  }'\n```\n\n---\n\n## Feedback API\n\n```bash\ncurl -X POST https://skill-api.linkfox.com/api/v1/public/feedback \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"skillName\":\"linkfox-shopee-store-follow-prize\",\"sentiment\":\"POSITIVE\",\n       \"category\":\"OTHER\",\"content\":\"关注有礼查询正常\"}'\n```\n\nFile v1.0.4:references/apis/add-follow-prize.md\n\n# add_follow_prize\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/add_follow_prize.py` |\n| Method / path | POST `api/v2/follow_prize/add_follow_prize` |\n| 官方文档 | [add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1) |\n| 用途 | Create follow prize promotion; pass full body |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**POST**\n- POST：传 `body` / `requestBody`，或把 `body_fields` 列在 JSON 顶层\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：Create follow prize promotion; pass full body\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/add_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"add_follow_prize\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`addFollowPrize`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.4:references/apis/delete-follow-prize.md\n\n# delete_follow_prize\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/delete_follow_prize.py` |\n| Method / path | POST `api/v2/follow_prize/delete_follow_prize` |\n| 官方文档 | [delete_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.delete_follow_prize?module=113&type=1) |\n| 用途 | Delete follow prize |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**POST**\n- POST：传 `body` / `requestBody`，或把 `body_fields` 列在 JSON 顶层\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：Delete follow prize\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/delete_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"delete_follow_prize\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`deleteFollowPrize`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.4:references/apis/end-follow-prize.md\n\n# end_follow_prize\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/end_follow_prize.py` |\n| Method / path | POST `api/v2/follow_prize/end_follow_prize` |\n| 官方文档 | [end_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.end_follow_prize?module=113&type=1) |\n| 用途 | End follow prize early |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**POST**\n- POST：传 `body` / `requestBody`，或把 `body_fields` 列在 JSON 顶层\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：End follow prize early\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/end_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"end_follow_prize\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`endFollowPrize`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.4:references/apis/get-follow-prize-detail.md\n\n# get_follow_prize_detail\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/get_follow_prize_detail.py` |\n| Method / path | GET `api/v2/follow_prize/get_follow_prize_detail` |\n| 官方文档 | [get_follow_prize_detail](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_detail?module=113&type=1) |\n| 用途 | Follow prize detail by campaign_id |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**GET**\n- GET：业务字段放 JSON **顶层**，runner 拼进 `queryString`（不含 `?`）\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：Follow prize detail by campaign_id\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/get_follow_prize_detail.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"get_follow_prize_detail\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`getFollowPrizeDetail`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.4:references/apis/get-follow-prize-list.md\n\n# get_follow_prize_list\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/get_follow_prize_list.py` |\n| Method / path | GET `api/v2/follow_prize/get_follow_prize_list` |\n| 官方文档 | [get_follow_prize_list](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_list?module=113&type=1) |\n| 用途 | List follow prizes; pagination/status filters |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**GET**\n- GET：业务字段放 JSON **顶层**，runner 拼进 `queryString`（不含 `?`）\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：List follow prizes; pagination/status filters\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/get_follow_prize_list.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"get_follow_prize_list\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`getFollowPrizeList`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.4:references/apis/update-follow-prize.md\n\n# update_follow_prize\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/update_follow_prize.py` |\n| Method / path | POST `api/v2/follow_prize/update_follow_prize` |\n| 官方文档 | [update_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.update_follow_prize?module=113&type=1) |\n| 用途 | Update follow prize settings |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**POST**\n- POST：传 `body` / `requestBody`，或把 `body_fields` 列在 JSON 顶层\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：Update follow prize settings\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/update_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"update_follow_prize\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`updateFollowPrize`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准\n\nFile v1.0.4:references/onboarding.md\n\n# 解决认证和积分问题\n\n调用本 skill 时若网关返回 **auth** 或 **billing** 错误，走本 skill 自带的 `scripts/onboarding.py` 完成引导。\n\n**auth 场景**：`errcode=401` 或消息含 `authorized error`/`鉴权失败`/`未授权`/`unauthorized`；或 `LINKFOX_AGENT_API_KEY` 与 `LINKFOXAGENT_API_KEY` 均为空。\n1. 若已配置 key → 先让用户重启会话（最常见误判），仍失败让用户重新取 key 或换手机号重注册\n2. 未配置 → 询问：自助去 https://agent.linkfox.com/ 取 key，或提供手机号让脚本注册\n3. 手机号路径：\n   - `python scripts/onboarding.py send-code <phone>` → 展示 JSON 里的 phone/agreements\n   - 收到验证码后：`python scripts/onboarding.py login <phone> <code>`（workbuddy 宿主加 `--channel workbuddy`）\n   - 拿到 `api_key` 后把下面三平台配置转发给用户，提示重启会话生效：\n     - Windows PowerShell（永久）：`setx LINKFOX_AGENT_API_KEY \"<key>\"`\n     - macOS zsh：`echo 'export LINKFOX_AGENT_API_KEY=\"<key>\"' >> ~/.zshrc && source ~/.zshrc`\n     - Linux bash：`echo 'export LINKFOX_AGENT_API_KEY=\"<key>\"' >> ~/.bashrc && source ~/.bashrc`\n     - 变量名 `LINKFOX_AGENT_API_KEY`（主推）或 `LINKFOXAGENT_API_KEY`（老规范）任一即可\n\n**billing 场景**：`errcode=402` 或消息含 `积分/余额/quota/insufficient/充值/套餐到期`。\n- `python scripts/onboarding.py list-plans` → 有 AskUserQuestion 就弹菜单，否则输出编号清单让用户选\n- 校验 `plan_id` ∈ 清单、支付方式 ∈ 该套餐 `available_methods`（通常 `wechat/alipay`）\n- `python scripts/onboarding.py order <plan_id> <method>` → 展示优先级 PNG > `pay_url` > `ascii_qr`（标注兜底）\n- 已付款可选调 `python scripts/onboarding.py query <order_id>`，不主动轮询\n\n排除 `errcode=403`（无权限，不归入这两类）。所有子命令输出 stdout JSON，`error` 字段已含阶段前缀，透传给用户即可。完整用法：`python scripts/onboarding.py --help`。\n\nFile v1.0.4:skill-card.md\n\n## Description:\n\nHelps agents manage Shopee Follow Prize campaigns through LinkFox's Shopee developer proxy, including creating, listing, viewing, updating, ending, and deleting campaigns.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[linkfox-ai](https://clawhub.ai/user/linkfox-ai)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal e-commerce operators and developers use this skill to manage Follow Prize promotions for authorized Shopee stores through LinkFox scripts and API guidance. It supports campaign creation, retrieval, updates, early ending, and deletion when the user provides the required shop or merchant context.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill can create, update, end, or delete Shopee Follow Prize campaigns.\n\nMitigation: Confirm campaign identifiers, request bodies, and destructive actions with the store operator before executing API calls.\n\nRisk: The skill handles LinkFox account login, API keys, billing orders, and Shopee shop operations.\n\nMitigation: Install only if the user trusts LinkFox, keep API keys private, and require explicit user confirmation for account or billing setup.\n\nRisk: Endpoint environment variables can alter which LinkFox host receives requests.\n\nMitigation: Pin LinkFox endpoint variables to trusted hosts before running the scripts.\n\nRisk: Saved response files may contain sensitive shop, campaign, or account data.\n\nMitigation: Treat saved linkfox response files as sensitive data and avoid sharing them outside the authorized workspace.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/linkfox-ai/skills/linkfox-shopee-store-follow-prize)\n- [Shopee Follow Prize API index](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n- [Follow Prize API reference](references/api.md)\n- [Follow Prize onboarding guide](references/onboarding.md)\n- [Add Follow Prize](references/apis/add-follow-prize.md)\n- [Get Follow Prize List](references/apis/get-follow-prize-list.md)\n- [Get Follow Prize Detail](references/apis/get-follow-prize-detail.md)\n- [Update Follow Prize](references/apis/update-follow-prize.md)\n- [End Follow Prize](references/apis/end-follow-prize.md)\n- [Delete Follow Prize](references/apis/delete-follow-prize.md)\n\n## Skill Output:\n\n**Output Type(s):** [Shell commands, Configuration, Guidance, JSON files]\n\n**Output Format:** [Markdown guidance with shell commands and JSON API response files]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Scripts save full API responses under linkfox/<date>/<session>/data and print either full JSON or a summary depending on response size.]\n\n## Skill Version(s):\n\n1.0.4 (source: server release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v1.0.3: 15 files, 18075 bytes\n\nFiles: references/api.md (2945b), scripts/_follow_prize_api_runner.py (4319b), scripts/_follow_prize_endpoints.py (2161b), scripts/_shopee_follow_prize_common.py (11423b), scripts/add_follow_prize.py (725b), scripts/check_auth_dependency.py (3993b), scripts/delete_follow_prize.py (743b), scripts/end_follow_prize.py (725b), scripts/follow_prize_api.py (1062b), scripts/get_follow_prize_detail.py (767b), scripts/get_follow_prize_list.py (755b), scripts/update_follow_prize.py (743b), skill-card.md (2899b), SKILL.md (4924b), _meta.json (152b)\n\nFile v1.0.3:SKILL.md\n\n---\nname: linkfox-shopee-store-follow-prize\ndescription: Shopee（虾皮）关注有礼 Follow Prize（与 linkfox-shopee-store-auth 同系列），经 /shopee/developerProxy 转发 Shopee Open API Follow Prize 模块全部 6 个接口：add_follow_prize、get_follow_prize_list、get_follow_prize_detail、update_follow_prize、end_follow_prize、delete_follow_prize。当用户提到 Shopee 关注有礼、Follow Prize、关注送券、add_follow_prize、campaign_id、粉丝福利 时触发。即使未明确提及\"关注有礼\"，只要涉及已授权 Shopee 店铺的 Follow Prize 活动管理，也应触发。\n---\n\n# Shopee 关注有礼 Follow Prize\n\nShopee Open Platform **Follow Prize 模块**（6 个 API）。**依赖 `linkfox-shopee-store-auth`**：先取 `accessToken`，再经 **`POST /shopee/developerProxy`** 转发（`path` 须 `api/v2/follow_prize/...`）。\n\n## 调用方式\n\n- **API 端点**：`POST /shopee/developerProxy`（不同操作通过请求体区分；完整参数/响应/错误码见 `references/api.md`）\n- **Python 脚本**：`python scripts/follow_prize_api.py '<JSON 参数>' [--inline]`（可用脚本见上文脚本一览）\n- **成本约束**：本工具会消耗积分；失败/空结果不得自动换关键词、翻页或连续试探；需要继续检索时先向用户说明会产生额外消耗。\n\n**输出策略（脚本默认行为）**：\n- **始终**将完整响应写入 `<cwd>/linkfox/<YYYY-MM-DD>/<session>/data/<linkfox-shopee-store-follow-prize>-<timestamp>.json`（`<cwd>` 为脚本执行时的工作目录，在 Claude Code 里即当前项目目录；`<session>` 取自环境变量 `SESSION_ID`，按用户任务自动聚合；**禁止写入 /tmp**，当前目录不可写则报错）\n- 响应体 ≤ 8 KB：落盘后把完整 JSON 打印到 stdout\n- 响应体 > 8 KB：落盘后 stdout 只输出摘要（顶层字段、常见计数如 `total`/`costToken`、最大列表字段的长度 + 前 3 条样本）\n- 加 `--inline` 强制全量打印到 stdout（同样落盘）\n\n**读数据建议**：先看摘要判断是否足够；需要具体字段时优先用 `jq`或`ConvertFrom-Json` 从保存的 json 文件按需抽取，避免整份 JSON 进入上下文。\n\n## 解决认证和积分问题\n发生以下异常情况时，采用以下措施来处理：\n\n### 异常情况\n- **未配置API Key**：环境变量未配置 `LINKFOX_AGENT_API_KEY`，也未配置 `LINKFOXAGENT_API_KEY`。\n- **响应401或402状态码**\n- **响应提示积分或余额不足**：消息含\"积分余额不足/计费不足/余额不足/quota exceeded/insufficient balance/套餐到期/需充值/请充值\"，或类似含义的内容。\n\n### 措施\n- 优先采用skill内的 onboarding.md 引导解决问题。\n- 如找不到 onboarding.md 文件，则加载 /linkfox-onboarding 这个skill并根据它的引导来处理。如未安装请先安装：\n    - 下载 https://agent-files.linkfox.com/skills/linkfox-onboarding/release.zip，解压后安装这个skill。如需用户授权才可下载，要询问用户获得授权，你不能自己放弃下载。\n- 兜底措施：仅当前面两个措施经过所有努力都走不通时，才提示用户依据 https://skill.linkfox.com/linkfoxskills/guide.htm 指引获取API Key，或去 https://os.linkfox.com/ 补充积分。\n\n## 官方参考\n\nFollow Prize 模块索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n---\n\n## Prerequisites\n\n1. 运行 `python scripts/check_auth_dependency.py`；exit code **42** → 先安装 **`linkfox-shopee-store-auth`**。\n2. 其它促销：Discount / Bundle Deal / Voucher / Shop Flash Sale → 对应促销 skill。\n\n## 可用脚本（6 个 API）\n\n| 脚本 | API | Method |\n|------|-----|--------|\n| `add_follow_prize.py` | add_follow_prize | POST |\n| `delete_follow_prize.py` | delete_follow_prize | POST |\n| `end_follow_prize.py` | end_follow_prize | POST |\n| `update_follow_prize.py` | update_follow_prize | POST |\n| `get_follow_prize_detail.py` | get_follow_prize_detail | GET |\n| `get_follow_prize_list.py` | get_follow_prize_list | GET |\n| `follow_prize_api.py` | 通用入口 | — |\n\n## Usage Scenarios\n\n### 1. 创建关注有礼活动\n1. `add_follow_prize.py` 传完整 `body`\n2. `get_follow_prize_list.py` 查看活动列表\n3. `update_follow_prize.py` / `end_follow_prize.py` 更新或结束\n\n## Not Applicable\n\n- 店铺授权 → `linkfox-shopee-store-auth`\n- 限时折扣 Discount → `linkfox-shopee-store-discount`\n- 优惠券 Voucher → `linkfox-shopee-store-voucher`\n- 店铺秒杀 Shop Flash Sale → `linkfox-shopee-store-shop-flash-sale`\n- 商品 listing → `linkfox-shopee-store-product`\n\n## 积分消耗规则\n\n不消耗积分。\n\n**Feedback:** 见 `references/api.md`。\n\n---\n*For more high-quality, professional cross-border e-commerce skills, visit [LinkFox Skills](https://skill.linkfox.com/).*\n\nFile v1.0.3:_meta.json\n\n{\n  \"ownerId\": \"kn7dmc1t4j28hem1twwyav85p182pb1j\",\n  \"slug\": \"linkfox-shopee-store-follow-prize\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1783945266612\n}\n\nFile v1.0.3:references/api.md\n\n# linkfox-shopee-store-follow-prize — 参数与字段参考\n\nShopee **Follow Prize 模块**全部 6 个 API，经 **`POST /shopee/developerProxy`** 转发。\n\n授权见 **`linkfox-shopee-store-auth`**。官方索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n## 通用约定\n\n- **path**：须 `api/v2/follow_prize/...`\n- **标识**：通常传 **`shopId`**\n- **官方文档 URL 规则**：`https://open.shopee.com/documents/v2/v2.follow_prize.{api}?module=113&type=1`\n\n---\n\n## Follow Prize 模块总览\n\n| # | API | Method | path | 脚本 | 官方文档 |\n|---|-----|--------|------|------|----------|\n| 1 | add_follow_prize | POST | `api/v2/follow_prize/add_follow_prize` | `add_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1) |\n| 2 | delete_follow_prize | POST | `api/v2/follow_prize/delete_follow_prize` | `delete_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.delete_follow_prize?module=113&type=1) |\n| 3 | end_follow_prize | POST | `api/v2/follow_prize/end_follow_prize` | `end_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.end_follow_prize?module=113&type=1) |\n| 4 | get_follow_prize_detail | GET | `api/v2/follow_prize/get_follow_prize_detail` | `get_follow_prize_detail.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_detail?module=113&type=1) |\n| 5 | get_follow_prize_list | GET | `api/v2/follow_prize/get_follow_prize_list` | `get_follow_prize_list.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_list?module=113&type=1) |\n| 6 | update_follow_prize | POST | `api/v2/follow_prize/update_follow_prize` | `update_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.update_follow_prize?module=113&type=1) |\n通用入口：`follow_prize_api.py`（JSON 含 `\"api\": \"<上表 API 名>\"`）。\n\n---\n\n## 常用接口说明\n\n| API | 要点 |\n|-----|------|\n| `add_follow_prize` | 创建关注有礼活动；POST `body` |\n| `get_follow_prize_list` | 活动列表 |\n| `get_follow_prize_detail` | 活动详情 |\n| `update_follow_prize` | 更新活动 |\n| `end_follow_prize` | 提前结束 |\n| `delete_follow_prize` | 删除活动 |\n\n---\n\n## curl 示例\n\n```bash\ncurl -X POST ${LINKFOX_TOOL_GATEWAY}/shopee/developerProxy \\\n  -H \"Authorization: $LINKFOX_AGENT_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"path\": \"api/v2/follow_prize/get_follow_prize_list\",\n    \"method\": \"GET\",\n    \"accessToken\": \"xxx\",\n    \"shopId\": \"67890\"\n  }'\n```\n\n---\n\n## Feedback API\n\n```bash\ncurl -X POST https://skill-api.linkfox.com/api/v1/public/feedback \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"skillName\":\"linkfox-shopee-store-follow-prize\",\"sentiment\":\"POSITIVE\",\n       \"category\":\"OTHER\",\"content\":\"关注有礼查询正常\"}'\n```\n\nFile v1.0.3:skill-card.md\n\n## Description: <br>\nHelps agents manage authorized Shopee store Follow Prize campaigns through LinkFox by creating, listing, inspecting, updating, ending, and deleting campaign records. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[linkfox-ai](https://clawhub.ai/user/linkfox-ai) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal merchants, operators, and agents use this skill to manage Follow Prize promotions for Shopee stores they are authorized to operate. It supports campaign creation, list and detail retrieval, updates, early ending, and deletion through the documented LinkFox and Shopee API workflow. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill can create, update, end, or delete live Shopee Follow Prize promotions. <br>\nMitigation: Use it only for stores the user is authorized to manage, and require explicit confirmation before any write or destructive campaign action. <br>\nRisk: Full API responses may be retained locally under linkfox session folders. <br>\nMitigation: Treat saved response files as sensitive store data and remove them from shared, backed-up, or long-lived workspaces when they are no longer needed. <br>\nRisk: The workflow uses LinkFox API credentials and Shopee campaign data with LinkFox gateway endpoints. <br>\nMitigation: Keep API keys in environment variables, avoid exposing command arguments or saved outputs, and run only in trusted workspaces. <br>\nRisk: Credit or billing behavior is unclear for repeated use. <br>\nMitigation: Clarify cost behavior with the publisher before running repeated requests or broad campaign-management workflows. <br>\n\n\n## Reference(s): <br>\n- [Skill API reference](references/api.md) <br>\n- [Shopee Follow Prize API documentation](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1) <br>\n- [ClawHub skill page](https://clawhub.ai/linkfox-ai/skills/linkfox-shopee-store-follow-prize) <br>\n- [ClawHub publisher profile](https://clawhub.ai/user/linkfox-ai) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, code, shell commands, configuration, JSON files] <br>\n**Output Format:** [Markdown guidance, shell commands, and JSON API responses saved to local files with optional stdout output.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Full responses are saved under linkfox session folders; large responses are summarized unless inline output is requested.] <br>\n\n## Skill Version(s): <br>\n1.0.3 (source: release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v1.0.2: 15 files, 17241 bytes\n\nFiles: references/api.md (2945b), scripts/_follow_prize_api_runner.py (4319b), scripts/_follow_prize_endpoints.py (2161b), scripts/_shopee_follow_prize_common.py (11329b), scripts/add_follow_prize.py (725b), scripts/check_auth_dependency.py (3993b), scripts/delete_follow_prize.py (743b), scripts/end_follow_prize.py (725b), scripts/follow_prize_api.py (1062b), scripts/get_follow_prize_detail.py (767b), scripts/get_follow_prize_list.py (755b), scripts/update_follow_prize.py (743b), skill-card.md (2567b), SKILL.md (3790b), _meta.json (152b)\n\nFile v1.0.2:SKILL.md\n\n---\nname: linkfox-shopee-store-follow-prize\ndescription: Shopee（虾皮）关注有礼 Follow Prize（与 linkfox-shopee-store-auth 同系列），经 /shopee/developerProxy 转发 Shopee Open API Follow Prize 模块全部 6 个接口：add_follow_prize、get_follow_prize_list、get_follow_prize_detail、update_follow_prize、end_follow_prize、delete_follow_prize。当用户提到 Shopee 关注有礼、Follow Prize、关注送券、add_follow_prize、campaign_id、粉丝福利 时触发。即使未明确提及\"关注有礼\"，只要涉及已授权 Shopee 店铺的 Follow Prize 活动管理，也应触发。\n---\n\n# Shopee 关注有礼 Follow Prize\n\nShopee Open Platform **Follow Prize 模块**（6 个 API）。**依赖 `linkfox-shopee-store-auth`**：先取 `accessToken`，再经 **`POST /shopee/developerProxy`** 转发（`path` 须 `api/v2/follow_prize/...`）。\n\n## 调用方式\n\n- **API 端点**：`POST /shopee/developerProxy`（不同操作通过请求体区分；完整参数/响应/错误码见 `references/api.md`）\n- **Python 脚本**：`python scripts/follow_prize_api.py '<JSON 参数>' [--inline]`（可用脚本见上文脚本一览）\n- **成本约束**：本工具会消耗积分；失败/空结果不得自动换关键词、翻页或连续试探；需要继续检索时先向用户说明会产生额外消耗。\n\n**输出策略（脚本默认行为）**：\n- **始终**将完整响应写入 `<cwd>/linkfox/<YYYY-MM-DD>/<session>/data/<linkfox-shopee-store-follow-prize>-<timestamp>.json`（`<cwd>` 为脚本执行时的工作目录，在 Claude Code 里即当前项目目录；`<session>` 取自环境变量 `SESSION_ID`，按用户任务自动聚合；**禁止写入 /tmp**，当前目录不可写则报错）\n- 响应体 ≤ 8 KB：落盘后把完整 JSON 打印到 stdout\n- 响应体 > 8 KB：落盘后 stdout 只输出摘要（顶层字段、常见计数如 `total`/`costToken`、最大列表字段的长度 + 前 3 条样本）\n- 加 `--inline` 强制全量打印到 stdout（同样落盘）\n\n**读数据建议**：先看摘要判断是否足够；需要具体字段时优先用 `jq`或`ConvertFrom-Json` 从保存的 json 文件按需抽取，避免整份 JSON 进入上下文。\n\n## 官方参考\n\nFollow Prize 模块索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n---\n\n## Prerequisites\n\n1. 运行 `python scripts/check_auth_dependency.py`；exit code **42** → 先安装 **`linkfox-shopee-store-auth`**。\n2. 其它促销：Discount / Bundle Deal / Voucher / Shop Flash Sale → 对应促销 skill。\n\n## 可用脚本（6 个 API）\n\n| 脚本 | API | Method |\n|------|-----|--------|\n| `add_follow_prize.py` | add_follow_prize | POST |\n| `delete_follow_prize.py` | delete_follow_prize | POST |\n| `end_follow_prize.py` | end_follow_prize | POST |\n| `update_follow_prize.py` | update_follow_prize | POST |\n| `get_follow_prize_detail.py` | get_follow_prize_detail | GET |\n| `get_follow_prize_list.py` | get_follow_prize_list | GET |\n| `follow_prize_api.py` | 通用入口 | — |\n\n## Usage Scenarios\n\n### 1. 创建关注有礼活动\n1. `add_follow_prize.py` 传完整 `body`\n2. `get_follow_prize_list.py` 查看活动列表\n3. `update_follow_prize.py` / `end_follow_prize.py` 更新或结束\n\n## Not Applicable\n\n- 店铺授权 → `linkfox-shopee-store-auth`\n- 限时折扣 Discount → `linkfox-shopee-store-discount`\n- 优惠券 Voucher → `linkfox-shopee-store-voucher`\n- 店铺秒杀 Shop Flash Sale → `linkfox-shopee-store-shop-flash-sale`\n- 商品 listing → `linkfox-shopee-store-product`\n\n**Feedback:** 见 `references/api.md`。\n\n---\n*For more high-quality, professional cross-border e-commerce skills, visit [LinkFox Skills](https://skill.linkfox.com/).*\n\nFile v1.0.2:_meta.json\n\n{\n  \"ownerId\": \"kn7dmc1t4j28hem1twwyav85p182pb1j\",\n  \"slug\": \"linkfox-shopee-store-follow-prize\",\n  \"version\": \"1.0.2\",\n  \"publishedAt\": 1783337383637\n}\n\nFile v1.0.2:references/api.md\n\n# linkfox-shopee-store-follow-prize — 参数与字段参考\n\nShopee **Follow Prize 模块**全部 6 个 API，经 **`POST /shopee/developerProxy`** 转发。\n\n授权见 **`linkfox-shopee-store-auth`**。官方索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n## 通用约定\n\n- **path**：须 `api/v2/follow_prize/...`\n- **标识**：通常传 **`shopId`**\n- **官方文档 URL 规则**：`https://open.shopee.com/documents/v2/v2.follow_prize.{api}?module=113&type=1`\n\n---\n\n## Follow Prize 模块总览\n\n| # | API | Method | path | 脚本 | 官方文档 |\n|---|-----|--------|------|------|----------|\n| 1 | add_follow_prize | POST | `api/v2/follow_prize/add_follow_prize` | `add_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1) |\n| 2 | delete_follow_prize | POST | `api/v2/follow_prize/delete_follow_prize` | `delete_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.delete_follow_prize?module=113&type=1) |\n| 3 | end_follow_prize | POST | `api/v2/follow_prize/end_follow_prize` | `end_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.end_follow_prize?module=113&type=1) |\n| 4 | get_follow_prize_detail | GET | `api/v2/follow_prize/get_follow_prize_detail` | `get_follow_prize_detail.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_detail?module=113&type=1) |\n| 5 | get_follow_prize_list | GET | `api/v2/follow_prize/get_follow_prize_list` | `get_follow_prize_list.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_list?module=113&type=1) |\n| 6 | update_follow_prize | POST | `api/v2/follow_prize/update_follow_prize` | `update_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.update_follow_prize?module=113&type=1) |\n通用入口：`follow_prize_api.py`（JSON 含 `\"api\": \"<上表 API 名>\"`）。\n\n---\n\n## 常用接口说明\n\n| API | 要点 |\n|-----|------|\n| `add_follow_prize` | 创建关注有礼活动；POST `body` |\n| `get_follow_prize_list` | 活动列表 |\n| `get_follow_prize_detail` | 活动详情 |\n| `update_follow_prize` | 更新活动 |\n| `end_follow_prize` | 提前结束 |\n| `delete_follow_prize` | 删除活动 |\n\n---\n\n## curl 示例\n\n```bash\ncurl -X POST ${LINKFOX_TOOL_GATEWAY}/shopee/developerProxy \\\n  -H \"Authorization: $LINKFOX_AGENT_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"path\": \"api/v2/follow_prize/get_follow_prize_list\",\n    \"method\": \"GET\",\n    \"accessToken\": \"xxx\",\n    \"shopId\": \"67890\"\n  }'\n```\n\n---\n\n## Feedback API\n\n```bash\ncurl -X POST https://skill-api.linkfox.com/api/v1/public/feedback \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"skillName\":\"linkfox-shopee-store-follow-prize\",\"sentiment\":\"POSITIVE\",\n       \"category\":\"OTHER\",\"content\":\"关注有礼查询正常\"}'\n```\n\nFile v1.0.2:skill-card.md\n\n## Description: <br>\nHelps agents manage Shopee Follow Prize campaigns through LinkFox by calling the six Shopee Open Platform Follow Prize APIs for creating, listing, inspecting, updating, ending, and deleting campaigns. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[linkfox-ai](https://clawhub.ai/user/linkfox-ai) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal e-commerce operators and developers use this skill to manage authorized Shopee store Follow Prize promotions through LinkFox, including campaign creation, status review, updates, early termination, and deletion. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill can create, update, end, or delete Shopee Follow Prize campaigns through LinkFox. <br>\nMitigation: Require explicit user confirmation before running add, update, end, or delete operations. <br>\nRisk: The skill saves complete API responses locally, which may include sensitive shop or campaign details. <br>\nMitigation: Use it only where local storage is acceptable and review saved files under LinkFox session directories after use. <br>\nRisk: The security verdict is suspicious because campaign mutation APIs are combined with broader local response archiving than the documentation suggests. <br>\nMitigation: Review the skill before use for sensitive shops and install only when this authority and storage behavior are acceptable. <br>\n\n\n## Reference(s): <br>\n- [API reference](references/api.md) <br>\n- [Shopee Follow Prize add_follow_prize documentation](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1) <br>\n- [Skill page](https://clawhub.ai/linkfox-ai/skills/linkfox-shopee-store-follow-prize) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [API Calls, JSON, Files, Shell commands, Guidance] <br>\n**Output Format:** [JSON responses saved to local files with stdout JSON or summaries] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Requires LinkFox API credentials and the linkfox-shopee-store-auth dependency; large responses are summarized unless inline output is requested.] <br>\n\n## Skill Version(s): <br>\n1.0.2 (source: server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v1.0.1: 14 files, 15942 bytes\n\nFiles: references/api.md (2945b), scripts/_follow_prize_api_runner.py (4319b), scripts/_follow_prize_endpoints.py (2161b), scripts/_shopee_follow_prize_common.py (11329b), scripts/add_follow_prize.py (725b), scripts/check_auth_dependency.py (3993b), scripts/delete_follow_prize.py (743b), scripts/end_follow_prize.py (725b), scripts/follow_prize_api.py (1062b), scripts/get_follow_prize_detail.py (767b), scripts/get_follow_prize_list.py (755b), scripts/update_follow_prize.py (743b), SKILL.md (3790b), _meta.json (152b)\n\nFile v1.0.1:SKILL.md\n\n---\nname: linkfox-shopee-store-follow-prize\ndescription: Shopee（虾皮）关注有礼 Follow Prize（与 linkfox-shopee-store-auth 同系列），经 /shopee/developerProxy 转发 Shopee Open API Follow Prize 模块全部 6 个接口：add_follow_prize、get_follow_prize_list、get_follow_prize_detail、update_follow_prize、end_follow_prize、delete_follow_prize。当用户提到 Shopee 关注有礼、Follow Prize、关注送券、add_follow_prize、campaign_id、粉丝福利 时触发。即使未明确提及\"关注有礼\"，只要涉及已授权 Shopee 店铺的 Follow Prize 活动管理，也应触发。\n---\n\n# Shopee 关注有礼 Follow Prize\n\nShopee Open Platform **Follow Prize 模块**（6 个 API）。**依赖 `linkfox-shopee-store-auth`**：先取 `accessToken`，再经 **`POST /shopee/developerProxy`** 转发（`path` 须 `api/v2/follow_prize/...`）。\n\n## 调用方式\n\n- **API 端点**：`POST /shopee/developerProxy`（不同操作通过请求体区分；完整参数/响应/错误码见 `references/api.md`）\n- **Python 脚本**：`python scripts/follow_prize_api.py '<JSON 参数>' [--inline]`（可用脚本见上文脚本一览）\n- **成本约束**：本工具会消耗积分；失败/空结果不得自动换关键词、翻页或连续试探；需要继续检索时先向用户说明会产生额外消耗。\n\n**输出策略（脚本默认行为）**：\n- **始终**将完整响应写入 `<cwd>/linkfox/<YYYY-MM-DD>/<session>/data/<linkfox-shopee-store-follow-prize>-<timestamp>.json`（`<cwd>` 为脚本执行时的工作目录，在 Claude Code 里即当前项目目录；`<session>` 取自环境变量 `SESSION_ID`，按用户任务自动聚合；**禁止写入 /tmp**，当前目录不可写则报错）\n- 响应体 ≤ 8 KB：落盘后把完整 JSON 打印到 stdout\n- 响应体 > 8 KB：落盘后 stdout 只输出摘要（顶层字段、常见计数如 `total`/`costToken`、最大列表字段的长度 + 前 3 条样本）\n- 加 `--inline` 强制全量打印到 stdout（同样落盘）\n\n**读数据建议**：先看摘要判断是否足够；需要具体字段时优先用 `jq`或`ConvertFrom-Json` 从保存的 json 文件按需抽取，避免整份 JSON 进入上下文。\n\n## 官方参考\n\nFollow Prize 模块索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n---\n\n## Prerequisites\n\n1. 运行 `python scripts/check_auth_dependency.py`；exit code **42** → 先安装 **`linkfox-shopee-store-auth`**。\n2. 其它促销：Discount / Bundle Deal / Voucher / Shop Flash Sale → 对应促销 skill。\n\n## 可用脚本（6 个 API）\n\n| 脚本 | API | Method |\n|------|-----|--------|\n| `add_follow_prize.py` | add_follow_prize | POST |\n| `delete_follow_prize.py` | delete_follow_prize | POST |\n| `end_follow_prize.py` | end_follow_prize | POST |\n| `update_follow_prize.py` | update_follow_prize | POST |\n| `get_follow_prize_detail.py` | get_follow_prize_detail | GET |\n| `get_follow_prize_list.py` | get_follow_prize_list | GET |\n| `follow_prize_api.py` | 通用入口 | — |\n\n## Usage Scenarios\n\n### 1. 创建关注有礼活动\n1. `add_follow_prize.py` 传完整 `body`\n2. `get_follow_prize_list.py` 查看活动列表\n3. `update_follow_prize.py` / `end_follow_prize.py` 更新或结束\n\n## Not Applicable\n\n- 店铺授权 → `linkfox-shopee-store-auth`\n- 限时折扣 Discount → `linkfox-shopee-store-discount`\n- 优惠券 Voucher → `linkfox-shopee-store-voucher`\n- 店铺秒杀 Shop Flash Sale → `linkfox-shopee-store-shop-flash-sale`\n- 商品 listing → `linkfox-shopee-store-product`\n\n**Feedback:** 见 `references/api.md`。\n\n---\n*For more high-quality, professional cross-border e-commerce skills, visit [LinkFox Skills](https://skill.linkfox.com/).*\n\nFile v1.0.1:_meta.json\n\n{\n  \"ownerId\": \"kn7dmc1t4j28hem1twwyav85p182pb1j\",\n  \"slug\": \"linkfox-shopee-store-follow-prize\",\n  \"version\": \"1.0.1\",\n  \"publishedAt\": 1783067340577\n}\n\nFile v1.0.1:references/api.md\n\n# linkfox-shopee-store-follow-prize — 参数与字段参考\n\nShopee **Follow Prize 模块**全部 6 个 API，经 **`POST /shopee/developerProxy`** 转发。\n\n授权见 **`linkfox-shopee-store-auth`**。官方索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n## 通用约定\n\n- **path**：须 `api/v2/follow_prize/...`\n- **标识**：通常传 **`shopId`**\n- **官方文档 URL 规则**：`https://open.shopee.com/documents/v2/v2.follow_prize.{api}?module=113&type=1`\n\n---\n\n## Follow Prize 模块总览\n\n| # | API | Method | path | 脚本 | 官方文档 |\n|---|-----|--------|------|------|----------|\n| 1 | add_follow_prize | POST | `api/v2/follow_prize/add_follow_prize` | `add_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1) |\n| 2 | delete_follow_prize | POST | `api/v2/follow_prize/delete_follow_prize` | `delete_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.delete_follow_prize?module=113&type=1) |\n| 3 | end_follow_prize | POST | `api/v2/follow_prize/end_follow_prize` | `end_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.end_follow_prize?module=113&type=1) |\n| 4 | get_follow_prize_detail | GET | `api/v2/follow_prize/get_follow_prize_detail` | `get_follow_prize_detail.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_detail?module=113&type=1) |\n| 5 | get_follow_prize_list | GET | `api/v2/follow_prize/get_follow_prize_list` | `get_follow_prize_list.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_list?module=113&type=1) |\n| 6 | update_follow_prize | POST | `api/v2/follow_prize/update_follow_prize` | `update_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.update_follow_prize?module=113&type=1) |\n通用入口：`follow_prize_api.py`（JSON 含 `\"api\": \"<上表 API 名>\"`）。\n\n---\n\n## 常用接口说明\n\n| API | 要点 |\n|-----|------|\n| `add_follow_prize` | 创建关注有礼活动；POST `body` |\n| `get_follow_prize_list` | 活动列表 |\n| `get_follow_prize_detail` | 活动详情 |\n| `update_follow_prize` | 更新活动 |\n| `end_follow_prize` | 提前结束 |\n| `delete_follow_prize` | 删除活动 |\n\n---\n\n## curl 示例\n\n```bash\ncurl -X POST ${LINKFOX_TOOL_GATEWAY}/shopee/developerProxy \\\n  -H \"Authorization: $LINKFOX_AGENT_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"path\": \"api/v2/follow_prize/get_follow_prize_list\",\n    \"method\": \"GET\",\n    \"accessToken\": \"xxx\",\n    \"shopId\": \"67890\"\n  }'\n```\n\n---\n\n## Feedback API\n\n```bash\ncurl -X POST https://skill-api.linkfox.com/api/v1/public/feedback \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"skillName\":\"linkfox-shopee-store-follow-prize\",\"sentiment\":\"POSITIVE\",\n       \"category\":\"OTHER\",\"content\":\"关注有礼查询正常\"}'\n```\n\nArchive v1.0.0: 14 files, 15926 bytes\n\nFiles: references/api.md (2946b), scripts/_follow_prize_api_runner.py (4319b), scripts/_follow_prize_endpoints.py (2161b), scripts/_shopee_follow_prize_common.py (11330b), scripts/add_follow_prize.py (725b), scripts/check_auth_dependency.py (3993b), scripts/delete_follow_prize.py (743b), scripts/end_follow_prize.py (725b), scripts/follow_prize_api.py (1062b), scripts/get_follow_prize_detail.py (767b), scripts/get_follow_prize_list.py (755b), scripts/update_follow_prize.py (743b), SKILL.md (3790b), _meta.json (152b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: linkfox-shopee-store-follow-prize\ndescription: Shopee（虾皮）关注有礼 Follow Prize（与 linkfox-shopee-store-auth 同系列），经 /shopee/developerProxy 转发 Shopee Open API Follow Prize 模块全部 6 个接口：add_follow_prize、get_follow_prize_list、get_follow_prize_detail、update_follow_prize、end_follow_prize、delete_follow_prize。当用户提到 Shopee 关注有礼、Follow Prize、关注送券、add_follow_prize、campaign_id、粉丝福利 时触发。即使未明确提及\"关注有礼\"，只要涉及已授权 Shopee 店铺的 Follow Prize 活动管理，也应触发。\n---\n\n# Shopee 关注有礼 Follow Prize\n\nShopee Open Platform **Follow Prize 模块**（6 个 API）。**依赖 `linkfox-shopee-store-auth`**：先取 `accessToken`，再经 **`POST /shopee/developerProxy`** 转发（`path` 须 `api/v2/follow_prize/...`）。\n\n## 调用方式\n\n- **API 端点**：`POST /shopee/developerProxy`（不同操作通过请求体区分；完整参数/响应/错误码见 `references/api.md`）\n- **Python 脚本**：`python scripts/follow_prize_api.py '<JSON 参数>' [--inline]`（可用脚本见上文脚本一览）\n- **成本约束**：本工具会消耗积分；失败/空结果不得自动换关键词、翻页或连续试探；需要继续检索时先向用户说明会产生额外消耗。\n\n**输出策略（脚本默认行为）**：\n- **始终**将完整响应写入 `<cwd>/linkfox/<YYYY-MM-DD>/<session>/data/<linkfox-shopee-store-follow-prize>-<timestamp>.json`（`<cwd>` 为脚本执行时的工作目录，在 Claude Code 里即当前项目目录；`<session>` 取自环境变量 `SESSION_ID`，按用户任务自动聚合；**禁止写入 /tmp**，当前目录不可写则报错）\n- 响应体 ≤ 8 KB：落盘后把完整 JSON 打印到 stdout\n- 响应体 > 8 KB：落盘后 stdout 只输出摘要（顶层字段、常见计数如 `total`/`costToken`、最大列表字段的长度 + 前 3 条样本）\n- 加 `--inline` 强制全量打印到 stdout（同样落盘）\n\n**读数据建议**：先看摘要判断是否足够；需要具体字段时优先用 `jq`或`ConvertFrom-Json` 从保存的 json 文件按需抽取，避免整份 JSON 进入上下文。\n\n## 官方参考\n\nFollow Prize 模块索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n---\n\n## Prerequisites\n\n1. 运行 `python scripts/check_auth_dependency.py`；exit code **42** → 先安装 **`linkfox-shopee-store-auth`**。\n2. 其它促销：Discount / Bundle Deal / Voucher / Shop Flash Sale → 对应促销 skill。\n\n## 可用脚本（6 个 API）\n\n| 脚本 | API | Method |\n|------|-----|--------|\n| `add_follow_prize.py` | add_follow_prize | POST |\n| `delete_follow_prize.py` | delete_follow_prize | POST |\n| `end_follow_prize.py` | end_follow_prize | POST |\n| `update_follow_prize.py` | update_follow_prize | POST |\n| `get_follow_prize_detail.py` | get_follow_prize_detail | GET |\n| `get_follow_prize_list.py` | get_follow_prize_list | GET |\n| `follow_prize_api.py` | 通用入口 | — |\n\n## Usage Scenarios\n\n### 1. 创建关注有礼活动\n1. `add_follow_prize.py` 传完整 `body`\n2. `get_follow_prize_list.py` 查看活动列表\n3. `update_follow_prize.py` / `end_follow_prize.py` 更新或结束\n\n## Not Applicable\n\n- 店铺授权 → `linkfox-shopee-store-auth`\n- 限时折扣 Discount → `linkfox-shopee-store-discount`\n- 优惠券 Voucher → `linkfox-shopee-store-voucher`\n- 店铺秒杀 Shop Flash Sale → `linkfox-shopee-store-shop-flash-sale`\n- 商品 listing → `linkfox-shopee-store-product`\n\n**Feedback:** 见 `references/api.md`。\n\n---\n*For more high-quality, professional cross-border e-commerce skills, visit [LinkFox Skills](https://skill.linkfox.com/).*\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn7dmc1t4j28hem1twwyav85p182pb1j\",\n  \"slug\": \"linkfox-shopee-store-follow-prize\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1783000023762\n}\n\nFile v1.0.0:references/api.md\n\n# linkfox-shopee-store-follow-prize — 参数与字段参考\n\nShopee **Follow Prize 模块**全部 6 个 API，经 **`POST /shopee/developerProxy`** 转发。\n\n授权见 **`linkfox-shopee-store-auth`**。官方索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n## 通用约定\n\n- **path**：须 `api/v2/follow_prize/...`\n- **标识**：通常传 **`shopId`**\n- **官方文档 URL 规则**：`https://open.shopee.com/documents/v2/v2.follow_prize.{api}?module=113&type=1`\n\n---\n\n## Follow Prize 模块总览\n\n| # | API | Method | path | 脚本 | 官方文档 |\n|---|-----|--------|------|------|----------|\n| 1 | add_follow_prize | POST | `api/v2/follow_prize/add_follow_prize` | `add_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1) |\n| 2 | delete_follow_prize | POST | `api/v2/follow_prize/delete_follow_prize` | `delete_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.delete_follow_prize?module=113&type=1) |\n| 3 | end_follow_prize | POST | `api/v2/follow_prize/end_follow_prize` | `end_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.end_follow_prize?module=113&type=1) |\n| 4 | get_follow_prize_detail | GET | `api/v2/follow_prize/get_follow_prize_detail` | `get_follow_prize_detail.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_detail?module=113&type=1) |\n| 5 | get_follow_prize_list | GET | `api/v2/follow_prize/get_follow_prize_list` | `get_follow_prize_list.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.get_follow_prize_list?module=113&type=1) |\n| 6 | update_follow_prize | POST | `api/v2/follow_prize/update_follow_prize` | `update_follow_prize.py` | [doc](https://open.shopee.com/documents/v2/v2.follow_prize.update_follow_prize?module=113&type=1) |\n通用入口：`follow_prize_api.py`（JSON 含 `\"api\": \"<上表 API 名>\"`）。\n\n---\n\n## 常用接口说明\n\n| API | 要点 |\n|-----|------|\n| `add_follow_prize` | 创建关注有礼活动；POST `body` |\n| `get_follow_prize_list` | 活动列表 |\n| `get_follow_prize_detail` | 活动详情 |\n| `update_follow_prize` | 更新活动 |\n| `end_follow_prize` | 提前结束 |\n| `delete_follow_prize` | 删除活动 |\n\n---\n\n## curl 示例\n\n```bash\ncurl -X POST ${LINKFOX_AGENT_API_URL}/shopee/developerProxy \\\n  -H \"Authorization: $LINKFOX_AGENT_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"path\": \"api/v2/follow_prize/get_follow_prize_list\",\n    \"method\": \"GET\",\n    \"accessToken\": \"xxx\",\n    \"shopId\": \"67890\"\n  }'\n```\n\n---\n\n## Feedback API\n\n```bash\ncurl -X POST https://skill-api.linkfox.com/api/v1/public/feedback \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"skillName\":\"linkfox-shopee-store-follow-prize\",\"sentiment\":\"POSITIVE\",\n       \"category\":\"OTHER\",\"content\":\"关注有礼查询正常\"}'\n```","readmeExcerpt":"Skill: Shopee店铺-关注有礼 Owner: linkfox-ai Summary: Shopee（虾皮）关注有礼 Follow Prize（与 linkfox-shopee-store-auth 同系列），经 /shopee/developerProxy 转发 Shopee Open API Follow Prize 模块全部 6 个接口：add_follow_prize、get_follow_prize_list、get_follow_prize_detail、update_follow_prize、end_follow_prize、delete_follow_prize。当用户提到 Shopee 关注有礼、Follow Prize、关注送券、add_follow_prize、campaign_id、粉丝福利 时触发。即使未明确提及\"关注有礼\"，只要涉及已授权 Shopee 店铺的 Follow Prize 活动管","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"curl -X POST ${LINKFOX_TOOL_GATEWAY}/shopee/developerProxy \\\n  -H \"Authorization: $LINKFOX_AGENT_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{"},{"language":"bash","snippet":"curl -X POST ${LINKFOX_TOOL_GATEWAY}/shopee/developerProxy \\\n  -H \"Authorization: $LINKFOX_AGENT_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"path\": \"api/v2/follow_prize/get_follow_prize_list\",\n    \"method\": \"GET\",\n    \"accessToken\": \"xxx\",\n    \"shopId\": \"67890\"\n  }'"},{"language":"bash","snippet":"curl -X POST https://skill-api.linkfox.com/api/v1/public/feedback \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"skillName\":\"linkfox-shopee-store-follow-prize\",\"sentiment\":\"POSITIVE\","},{"language":"bash","snippet":"curl -X POST https://skill-api.linkfox.com/api/v1/public/feedback \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"skillName\":\"linkfox-shopee-store-follow-prize\",\"sentiment\":\"POSITIVE\",\n       \"category\":\"OTHER\",\"content\":\"关注有礼查询正常\"}'"},{"language":"bash","snippet":"export LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/add_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"add_follow_prize\", \"shopId\": \"67890\"}'"},{"language":"bash","snippet":"export LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/delete_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"delete_follow_prize\", \"shopId\": \"67890\"}'"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: linkfox-shopee-store-follow-prize\ndescription: Shopee（虾皮）关注有礼 Follow Prize（与 linkfox-shopee-store-auth 同系列），经 /shopee/developerProxy 转发 Shopee Open API Follow Prize 模块全部 6 个接口：add_follow_prize、get_follow_prize_list、get_follow_prize_detail、update_follow_prize、end_follow_prize、delete_follow_prize。当用户提到 Shopee 关注有礼、Follow Prize、关注送券、add_follow_prize、campaign_id、粉丝福利 时触发。即使未明确提及\"关注有礼\"，只要涉及已授权 Shopee 店铺的 Follow Prize 活动管理，也应触发。\n---\n\n# Shopee 关注有礼 Follow Prize\n\nShopee Open Platform **Follow Prize 模块**（6 个 API）。**依赖 `linkfox-shopee-store-auth`** 选店；经 **`POST /shopee/developerProxy`** 传入 `shopId`（或 `merchantId`），由服务端解析 token 转发（`path` 须 `api/v2/follow_prize/...`）。\n\n## 调用方式\n\n- **API 端点**：`POST /shopee/developerProxy`（不同操作通过请求体区分；完整参数/响应/错误码见 `references/api.md`）\n- **Python 脚本**：`python scripts/follow_prize_api.py '<JSON 参数>' [--inline]`（可用脚本见上文脚本一览）\n- **成本约束**：本工具会消耗算力；失败/空结果不得自动换关键词、翻页或连续试探；需要继续检索时先向用户说明会产生额外消耗。\n\n**输出策略（脚本默认行为）**：\n- **始终**将完整响应写入 `<cwd>/linkfox/<YYYY-MM-DD>/<session>/data/<linkfox-shopee-store-follow-prize>-<timestamp>.json`（`<cwd>` 为脚本执行时的工作目录，在 Claude Code 里即当前项目目录；`<session>` 取自环境变量 `SESSION_ID`，按用户任务自动聚合；**禁止写入 /tmp**，当前目录不可写则报错）\n- 响应体 ≤ 8 KB：落盘后把完整 JSON 打印到 stdout\n- 响应体 > 8 KB：落盘后 stdout 只输出摘要（顶层字段、常见计数如 `total`/`costToken`、最大列表字段的长度 + 前 3 条样本）\n- 加 `--inline` 强制全量打印到 stdout（同样落盘）\n\n**读数据建议**：先看摘要判断是否足够；需要具体字段时优先用 `jq`或`ConvertFrom-Json` 从保存的 json 文件按需抽取，避免整份 JSON 进入上下文。\n\n## 解决认证和算力问题\n发生以下异常情况时，采用 references/onboarding.md 引导解决问题：\n\n### 异常情况\n- **未配置API Key**：环境变量未配置 `LINKFOX_AGENT_API_KEY`，也未配置 `LINKFOXAGENT_API_KEY`。\n- **响应401或402状态码**\n- **响应提示算力或余额不足**：消息含\"算力余额不足/计费不足/余额不足/quota exceeded/insufficient balance/套餐到期/需充值/请充值\"，或类似含义的内容。\n\n## 官方参考\n\nFollow Prize 模块索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n---\n\n## Prerequisites\n\n1. 运行 `python scripts/check_auth_dependency.py`；exit code **42** → 先安装 **`linkfox-shopee-store-auth`**。\n2. 其它促销：Discount / Bundle Deal / Voucher / Shop Flash Sale → 对应促销 skill。\n\n## 可用脚本（6 个 API）\n\n| 脚本 | API | Method |\n|------|-----|--------|\n| `add_follow_prize.py` | add_follow_prize | POST |\n| `delete_follow_prize.py` | delete_follow_prize | POST |\n| `end_follow_prize.py` | end_follow_prize | POST |\n| `update_follow_prize.py` | update_follow_prize | POST |\n| `get_follow_prize_detail.py` | get_follow_prize_detail | GET |\n| `get_follow_prize_list.py` | get_follow_prize_list | GET |\n| `follow_prize_api.py` | 通用入口 | — |\n\n## 接口说明（按 API）\n\n入参与响应细节放在 `references/apis/`，SKILL 只保留索引。\n\n| API | 说明文档 |\n|-----|----------|\n| `add_follow_prize` | [references/apis/add-follow-prize.md](./references/apis/add-follow-prize.md) |\n| `delete_follow_prize` | [references/apis/delete-follow-prize.md](./references/apis/delete-follow-prize.md) |\n| `end_follow_prize` | [references/apis/end-follow-prize.md](./references/apis/end-follow-prize.md) |\n| `get_follow_prize_detail` | [references/apis/get-follow-prize-detail.md](./references/apis/get-follow-priz"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7dmc1t4j28hem1twwyav85p182pb1j\",\n  \"slug\": \"linkfox-shopee-store-follow-prize\",\n  \"version\": \"1.0.6\",\n  \"publishedAt\": 1789363642326\n}"},{"path":"references/api.md","content":"# linkfox-shopee-store-follow-prize — 参数与字段参考\n\n> 单接口入参/响应说明已拆到 **`apis/`**（按 API 一份）；本文件保留模块总览与 Feedback。\nShopee **Follow Prize 模块**全部 6 个 API，经 **`POST /shopee/developerProxy`** 转发。\n\n授权见 **`linkfox-shopee-store-auth`**。官方索引：[v2.follow_prize.add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1)\n\n## 通用约定\n\n- **path**：须 `api/v2/follow_prize/...`\n- **标识**：通常传 **`shopId`**\n- **官方文档 URL 规则**：`https://open.shopee.com/documents/v2/v2.follow_prize.{api}?module=113&type=1`\n\n---\n\n## Follow Prize 模块总览\n\n| # | API | Method | path | 脚本 | 官方文档 |\n|---|-----|--------|------|------|----------|\n| 1 | add_follow_prize | POST | `api/v2/follow_prize/add_follow_prize` | `add_follow_prize.py` | [apis/add-follow-prize.md](./apis/add-follow-prize.md) |\n| 2 | delete_follow_prize | POST | `api/v2/follow_prize/delete_follow_prize` | `delete_follow_prize.py` | [apis/delete-follow-prize.md](./apis/delete-follow-prize.md) |\n| 3 | end_follow_prize | POST | `api/v2/follow_prize/end_follow_prize` | `end_follow_prize.py` | [apis/end-follow-prize.md](./apis/end-follow-prize.md) |\n| 4 | get_follow_prize_detail | GET | `api/v2/follow_prize/get_follow_prize_detail` | `get_follow_prize_detail.py` | [apis/get-follow-prize-detail.md](./apis/get-follow-prize-detail.md) |\n| 5 | get_follow_prize_list | GET | `api/v2/follow_prize/get_follow_prize_list` | `get_follow_prize_list.py` | [apis/get-follow-prize-list.md](./apis/get-follow-prize-list.md) |\n| 6 | update_follow_prize | POST | `api/v2/follow_prize/update_follow_prize` | `update_follow_prize.py` | [apis/update-follow-prize.md](./apis/update-follow-prize.md) |\n通用入口：`follow_prize_api.py`（JSON 含 `\"api\": \"<上表 API 名>\"`）。\n\n---\n\n## 常用接口说明\n\n| API | 要点 |\n|-----|------|\n| `add_follow_prize` | 创建关注有礼活动；POST `body` — [apis/add-follow-prize.md](./apis/add-follow-prize.md) |\n| `get_follow_prize_list` | 活动列表 — [apis/get-follow-prize-list.md](./apis/get-follow-prize-list.md) |\n| `get_follow_prize_detail` | 活动详情 — [apis/get-follow-prize-detail.md](./apis/get-follow-prize-detail.md) |\n| `update_follow_prize` | 更新活动 — [apis/update-follow-prize.md](./apis/update-follow-prize.md) |\n| `end_follow_prize` | 提前结束 — [apis/end-follow-prize.md](./apis/end-follow-prize.md) |\n| `delete_follow_prize` | 删除活动 — [apis/delete-follow-prize.md](./apis/delete-follow-prize.md) |\n\n---\n\n## curl 示例\n\n```bash\ncurl -X POST ${LINKFOX_TOOL_GATEWAY}/shopee/developerProxy \\\n  -H \"Authorization: $LINKFOX_AGENT_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"path\": \"api/v2/follow_prize/get_follow_prize_list\",\n    \"method\": \"GET\",\n    \"accessToken\": \"xxx\",\n    \"shopId\": \"67890\"\n  }'\n```\n\n---\n\n## Feedback API\n\n```bash\ncurl -X POST https://skill-api.linkfox.com/api/v1/public/feedback \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"skillName\":\"linkfox-shopee-store-follow-prize\",\"sentiment\":\"POSITIVE\",\n       \"category\":\"OTHER\",\"content\":\"关注有礼查询正常\"}'\n```"},{"path":"references/apis/add-follow-prize.md","content":"# add_follow_prize\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/add_follow_prize.py` |\n| Method / path | POST `api/v2/follow_prize/add_follow_prize` |\n| 官方文档 | [add_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.add_follow_prize?module=113&type=1) |\n| 用途 | Create follow prize promotion; pass full body |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**POST**\n- POST：传 `body` / `requestBody`，或把 `body_fields` 列在 JSON 顶层\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：Create follow prize promotion; pass full body\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/add_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"add_follow_prize\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`addFollowPrize`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准"},{"path":"references/apis/delete-follow-prize.md","content":"# delete_follow_prize\n\n| 项 | 值 |\n|----|-----|\n| 脚本 | `scripts/delete_follow_prize.py` |\n| Method / path | POST `api/v2/follow_prize/delete_follow_prize` |\n| 官方文档 | [delete_follow_prize](https://open.shopee.com/documents/v2/v2.follow_prize.delete_follow_prize?module=113&type=1) |\n| 用途 | Delete follow prize |\n\n经 **`POST /shopee/developerProxy`** 转发；依赖 **`linkfox-shopee-store-auth`** 选店（通常传 `shopId` 或 `merchantId`）。\n\n---\n\n## 脚本 JSON 入参\n\n| 字段 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `shopId` | string | 与 `merchantId` 二选一 | 店铺 ID（推荐；Public 等无店铺接口可省略） |\n| `merchantId` | string | 与 `shopId` 二选一 | 商户 ID |\n\n- Method：**POST**\n- POST：传 `body` / `requestBody`，或把 `body_fields` 列在 JSON 顶层\n- `shopId` / `merchantId` / `skipDepCheck` 等为网关选店保留字段，不会进 Shopee query/body\n- Registry notes：Delete follow prize\n\n---\n\n## 调用示例\n\n```bash\nexport LINKFOXAGENT_API_KEY=\"<your-key>\"\n\npython scripts/delete_follow_prize.py '{\"shopId\": \"67890\"}'\n\n# 通用入口\npython scripts/follow_prize_api.py '{\"api\": \"delete_follow_prize\", \"shopId\": \"67890\"}'\n```\n\n---\n\n## 响应要点\n\n1. 先看 **`developerProxy.httpStatus`** / `errcode`\n2. 再读 **`deleteFollowPrize`**（Shopee `response` 解析结果）\n3. 字段以官方文档为准"}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":null,"editorialQuality":{"score":100,"threshold":65,"status":"thin","wordCount":1056,"uniquenessScore":32,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-12T00:40:25.143Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-12T00:40:25.143Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-13T19:01:29.556Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}