SKILL.md 28 KB

--- name: tihao

description: Upload/read a client brief and produce a business-ready blogger/creator recommendation list for Tihao AI. Use when the user asks for 提号、找博主、选号、达人名单、商务可用名单、根据 brief 推荐账号,or to run the Tihao SOP with sample/live e-commerce creator data.

Tihao Creator Sourcing

When To Use

Use this skill when the user wants to:

  • 上传或读取客户 Brief,并输出对应博主/达人名单。
  • 按提号 SOP 做“需求解析 -> 候选检索 -> 评分排序 -> 商务名单”。
  • 给商务一版可直接复核或发客户预览的达人/博主推荐名单。
  • 用 sample 模式演示流程,或用 live 模式调用公司 voc-e-commerce 代理接口。
  • 把客户反馈沉淀成下次选号偏好。

Do not use WebSearch as a substitute for installed 提号/电商数据 tools. For real collection, prefer MCP tool tihao_brief_sourcing_run in live mode.

First Report Standard

The first report a user receives must be a strong, business-ready 高质量首版名单, not a sample demo:

  • Default the first round to collectionMode=live with resultFirstMode=true. This is the 高质量 path: it expands reference-aware live recall, batch-analyzes more pre-ranked candidates, re-ranks after evidence, and surfaces both evidence boost and evidence risk.
  • When reference links/accounts exist, also enable reference enrichment on the first round (enableVocSocialReferenceEnrichment=true plus a vocSocialToken) so resultFirstMode fully activates and homepage/video evidence is real instead of 待补.
  • Use collectionMode=sample ONLY when the user explicitly asks for sample, 演示, 无消耗, 不用真实数据, or “先跑通 SOP”. Never run sample just to “展示流程/show the flow”, and never run sample only because a token is missing.
  • If the live Parse sessionToken is missing or invalid, return the friendly needs_token / needs_valid_token state and ask the user for a valid sessionToken. Do not silently fall back to sample unless the user explicitly approves sample or sets allowSampleFallback=true.
  • Hold the first live list to the 强推荐 evidence bar in Core Workflow step 9 (≥2 brief hit conditions, ≥1 style/tone or reference hit, no hard-constraint or implicit-rule violation, no recent-data authenticity risk, and refined homepage evidence for higher-priced accounts).

User Experience

Keep user input natural. The user can say:

  • “读取这个 brief,给我一版可直接发客户的高质量博主名单。”(默认走 live + resultFirstMode 高质量首版)
  • “用 live 小规模检索,找小红书敏感肌博主。”
  • “先用 sample 跑通提号 SOP。”(仅当用户明确要演示/无消耗时才用 sample)
  • “客户说不要硬广,偏素人感,记到下次。”
  • “Brief 里只写精致生活/时尚穿搭,我再补一段产品介绍和客户聊天记录,帮我拆方向提号。”

Do not force the user to know collectionMode, sessionToken, keywordLimit, company, or output paths. Infer safe defaults:

  • Normal brief-to-list requests, including “读取 brief 出博主名单 / 提号 / 找博主 / 选号 / 商务可用名单 / 高质量名单 / 可直接发客户的名单”: treat as the 高质量首版 — collectionMode=live, resultFirstMode=true, and enable reference enrichment when reference links/accounts exist. Only narrow to a minimal keywordLimit=1 / pagesPerKeyword=1 probe when the user explicitly asks for a 小规模/省额度 run.
  • Phrases like “用 live 小规模检索出博主名单”, “真实跑”, “真实数据”, “调用接口”, “真实接口”, or “小规模检索” must be treated as live mode.
  • Use collectionMode=sample only when the user explicitly asks for sample, 演示, 无消耗, 不用真实数据, or “先跑通 SOP”.
  • If live credentials are missing, return the friendly token/open/recharge state; do not silently fall back to sample unless the user explicitly asks for sample or sets allowSampleFallback=true.
  • If a brief file path is given, pass it as brief.
  • If the user provides product intro, product description, customer chat records, or conversation snippets, pass them as productIntro / productContext and chatRecords / customerChat; do not ask the user to merge them into the Brief manually.
  • If feedback is given after a list, call tihao_preference_update.
  • If the brief includes reference video links and a valid Parse sessionToken is available, enable VOC social reference enrichment before Doubao analysis so the workflow can fetch title, author, cover, video URL, subtitle, and frame resources instead of treating links as unresolved.

Core Workflow

  1. Read the brief file or brief text.
  2. Extract client/brand, category, platforms, target count, fan range, budget, style preferences, reference blogger links/accounts, exclusions, region, delivery requirements, product context, and customer-chat hidden requirements.
  3. Split requirements into three layers before sourcing:
    • Hard quantitative constraints: platform, fan range, region/city, budget, CPE/CP1/CPM, gender/fan ratio, interaction level, category, target count, exclusions.
    • Product/audience implicit rules: product use scenario, likely user gender/age/life stage, unsuitable creator types, compliance risks, and common-sense category rules such as beauty device -> female beauty/lifestyle context.
    • Tone/style evidence: reference accounts, desired content form, homepage visual quality, recent-note category consistency, persona, scene, commercial intensity, and broad-category subtype such as 港风/成熟风, 护肤/妆教/测评.
  4. For reference links/accounts:
    • Decide whether each reference can be used as a type anchor, tone anchor, both, or neither. If multiple references conflict in style, do not force a single tone standard; mark the conflict and ask a calibration question.
    • Extract the human-review dimensions used by business teams: recent 10-20 notes, cover consistency, content category, scene, persona, visual quality, title/body signals, recent update/average likes/repeated-comment risks, and video evidence when needed.
    • Classify every link as video, image_text, account_home, or unknown.
    • When a reference video exists and a Parse sessionToken is available, request VOC social reference enrichment:
      • Base URL: https://server.fmode.cn/api/voc-social
      • Auth: Authorization: Bearer <Parse sessionToken>
      • Xiaohongshu video detail path: xiaohongshu/app_v2/get_video_note_detail
      • Input can be note_id or a share link; short links may be resolved first.
    • 抖音参考链接解析走接口清单里的 social 线(同一个 tihao_api_call):
      • 参考视频分享链接(含 v.douyin.com 短链)→ douyin.fetch_one_video_by_share_url 一步拿到视频完整数据和作者 sec_user_id。
      • 参考账号主页链接 → douyin.get_sec_user_id 解析出 sec_user_id,再用 douyin.user_profile / douyin.user_posts 补主页资料与近 10-20 条作品证据,douyin.video_comments 查互动真实性。
      • 要接回星图详情线(报价/CP/商单)时,用 douyin.xingtu.get_xingtu_kolid_by_sec_user_id(或客户只给抖音号时用 get_xingtu_kolid_by_unique_id)把账号换成星图 kolId,再当 oAuthorId 调星图详情接口。
    • Pass returned videoUrl, coverUrl, title, authorInfo, subtitle URLs, and frame URLs into Doubao video analysis.
    • If these resources are not available, keep 待补口播证据 / 待补帧图证据 instead of claiming ASR or frame analysis.
  5. If sample mode (only when explicitly requested), run the safe built-in sample data. Otherwise the first round is live + resultFirstMode per the First Report Standard.
  6. If live mode, call the company proxy:
    • Base URL: https://server.fmode.cn/api/voc-e-commerce
    • Auth: Authorization: Bearer <Parse sessionToken>
    • Proxy route shape: /api/voc-e-commerce/{upstreamPath}
    • Xiaohongshu creator path: xiaohongshu-pgy/api/solar/cooperator/blogger/v2/v1
    • Douyin creator path: douyin-xingtu/gw/api/gsearch/search_for_author_square/v1
  7. Prefer platform-specific sourcing paths:
    • Xiaohongshu/Pugongying: use reference-account similarity and related-account expansion when available, then re-check type and tone.
    • Douyin/Xingtu: treat Xingtu labels as a candidate entry point, not proof of fit; if recall is weak, expand with the douyin social line (douyin.search_user / douyin.search_video keyword search in the Douyin APP ecosystem), then bridge promising accounts back to Xingtu via kolId conversion for quote/performance data, or fall back to recruitment-style replenishment guidance.
  8. Score candidates by fan fit, price fit, content/style fit, reference-style signals, recent homepage evidence, region, cooperation readiness, implicit-rule fit, and risk/exclusion hits.
  9. For strong recommendations, require evidence beyond raw platform tags:
    • At least two brief hit conditions.
    • At least one style/tone or reference hit point.
    • No hard constraint violation.
    • No obvious implicit-rule violation, such as male generic creators for a female beauty-device brief.
    • No recent-data authenticity risk such as 近30天无更新、百赞以下、重复评论/刷评.
    • For accounts priced above roughly 300 RMB, homepage cover/visual evidence should be clear, unified, and refined enough to support the quote.
  10. Review provider status fields:
    • referenceEvidenceStatus.providerStatus
    • evidenceStatus.providerStatus
    • Treat non-ok provider states as补证未完成, not as sourcing failure.
  11. Return the report body in chat. Also save Markdown, JSON, and CSV files.
  12. Ask the report's calibrationQuestions before producing a second-round list.
  13. Accept business/client feedback and update preference memory.

MCP Tools

Prefer MCP tools when available:

  • tihao_brief_sourcing_run: main brief-to-blogger-list workflow.
  • tihao_token_check: check live token availability without echoing secrets.
  • tihao_preference_update: save user feedback as sourcing memory.
  • tihao_api_search: 发现/检索已登记的电商数据接口清单(抖音/小红书 搜索 + 详情),返回 id、proxyPath、必填参数、标签。需要 CPM/CPE、商单数、阅读/互动/播放中位数等媒体详情/绩效数据时,先用它找到对应详情接口。
  • tihao_api_doc: 按 id 或 proxyPath 读取某个接口的完整参数说明与调用模板,调详情接口前用它确认怎么入参。
  • tihao_api_call: 实际调用某个接口(搜索或详情)。用于第二波详情补全:把搜索拿到的达人 id 传给详情接口换取绩效数据;也用于小红书素人/非蒲公英接口(channel=social)。计费优先走 NewAPI(fmode-api)sk- token,鉴权失败自动回退平台 sessionToken。失败时返回可执行状态(needs_token / needs_valid_token / needs_recharge / needs_permission / needs_input / upstream_unstable),不暴露底层鉴权/供应商细节。

媒体详情数据(接口清单 / 第二波补全)

搜索/列表接口本身不返回绩效数据(CPM/CPE、商单数、阅读/互动/播放中位数、抖音短 id 等)。这些字段要靠「第二波」详情接口按需补全。第二波不写死在主流程里,而是登记在接口清单中,由你(Claude Code)自由编排:

  • 接口清单索引:mcp/catalog/voc-e-commerce-endpoints.json
  • 每平台参数说明:mcp/catalog/params/douyin.json、mcp/catalog/params/xiaohongshu.json

两波工作流:

  1. 第一波(搜索):调搜索接口拿到达人列表与基础数据,每个达人带一个 id。
    • 抖音搜索返回 star_id。
    • 小红书搜索返回 userId(及短 id redId)。
  2. 第二波(详情,按需):对需要绩效数据的达人,用上一步的 id 调详情接口。
    • 抖音详情接口的达人参数名是 oAuthorId,取值 = 搜索结果的 star_id。
    • 小红书详情接口的达人参数名是 userId,取值 = 搜索结果的 userId。

典型用法:先 tihao_api_search(按 platform + 关键词如 cpm/商单/中位数 检索)→ 用 tihao_api_doc 看清入参 → 用 tihao_api_call 传达人 id 取回 CPM/CPE、商单数、中位数等,再合并进名单。所有接口共用同一个 voc-e-commerce 代理与同一个平台 sessionToken,对外只称「电商数据服务/星图·蒲公英」,不暴露任何底层供应商名。

{ "id": "douyin.author_cp_info", "params": { "oAuthorId": "<搜索返回的 star_id>" } }
{ "id": "xiaohongshu.kol_cost_effective", "params": { "userId": "<搜索返回的 userId>" } }

小红书素人 / 非蒲公英(channel=social)

蒲公英(PGY)只覆盖「商单博主」(CPM/CPE/商单等绩效,走电商网关 channel=ecommerce)。要搜素人/非蒲公英的小红书笔记、用户、评论、话题,用 channel=social 的接口——它们走公司 voc-social 全量代理网关(上游全量代理,不存在「电商网关 404」问题),同一套 tihao_api_search / tihao_api_doc / tihao_api_call 流程,tihao_api_call 会按 endpoint 的 channel 自动选 voc-social 网关。

  • 搜笔记:xiaohongshu.search_notes(xiaohongshu/app/search_notes,必填 keyword、page)。
  • 搜用户:xiaohongshu.web_v3.fetch_search_users(必填 keyword)。
  • 笔记详情/评论:xiaohongshu.note_detail(note_id)、xiaohongshu.note_comments(note_id)。
  • 用户资料/发布笔记:xiaohongshu.user_info(user_id)、xiaohongshu.user_notes(user_id)。
  • 话题笔记:xiaohongshu.topic_notes(page_id、first_load_time)。

    { "id": "xiaohongshu.search_notes", "params": { "keyword": "敏感肌", "page": 1 } }
    
    { "id": "xiaohongshu.user_notes", "params": { "user_id": "<笔记/搜索返回的 user_id>" } }
    

素人线以 app 接口为主(已验证);若需要 web 端字段可用 web_v3.* 备用接口,个别 web_v3 接口需按文档补齐 xsec_token 等参数。清单里没有的素人接口,可直接用 tihao_api_call 传 rawPath + channel: "social" 调用。

抖音素人 / 开放端(channel=social)

星图只覆盖「星图入驻达人」(报价/CP/商单,走电商网关 channel=ecommerce)。要在抖音 APP 生态里搜素人/非星图账号与视频、解析参考账号/参考视频链接,用 channel=social 的抖音接口——同走公司 voc-social 全量代理网关,同一套 tihao_api_search / tihao_api_doc / tihao_api_call 流程:

  • 搜账号:douyin.search_user(必填 keyword,返回 sec_user_id 与抖音号 unique_id)。
  • 搜视频:douyin.search_video(必填 keyword);意图不明时用 douyin.search_general 综合搜索。
  • 参考链接解析:douyin.get_sec_user_id(主页链接→sec_user_id)、douyin.fetch_one_video_by_share_url(视频分享链接→视频数据+作者)。
  • 主页/近作/评论:douyin.user_profile、douyin.user_posts、douyin.video_detail、douyin.video_comments(sec_user_id / aweme_id)。
  • 桥接星图详情线:douyin.xingtu.get_xingtu_kolid_by_sec_user_id、douyin.xingtu.get_xingtu_kolid_by_unique_id(账号→星图 kolId→当 oAuthorId 查报价/CP/商单)。

    { "id": "douyin.search_user", "params": { "keyword": "港风穿搭" } }
    
    { "id": "douyin.fetch_one_video_by_share_url", "params": { "share_url": "https://v.douyin.com/xxxxxxx/" } }
    

注意:抖音搜索接口是 POST body 传参(工具会按清单自动组装);清单里没有的抖音素人接口,同样可用 tihao_api_call 传 rawPath + channel: "social" 调用。

Typical Tool Calls

Default first report (live + result-first 高质量首版). Use this shape for normal brief-to-list requests:

{
  "collectionMode": "live",
  "brief": "E:\\workspace\\tihao-ai\\dha_brief.xlsx",
  "resultFirstMode": true,
  "enableVocSocialReferenceEnrichment": true,
  "vocSocialToken": "<Parse sessionToken>",
  "videoAnalysisBaseUrl": "https://api.fmode.cn",
  "videoAnalysisModel": "doubao-seed-2-0-pro-260215",
  "videoAnalysisToken": "<runtime model token>"
}

Sample (explicit demo only — only when the user asks for 演示/无消耗/不用真实数据/先跑通 SOP):

{
  "collectionMode": "sample",
  "brief": "E:\\workspace\\tihao-ai\\docs\\示例Brief-新锐护肤品牌种草合作.md"
}

Live small run (省额度探针,仅当用户明确要小规模时):

{
  "collectionMode": "live",
  "brief": "E:\\workspace\\tihao-ai\\dha_brief.xlsx",
  "keywordLimit": 1,
  "pagesPerKeyword": 1
}

Multi-input Brief with product and customer chat:

{
  "collectionMode": "live",
  "briefText": "找精致生活/时尚穿搭类账号,小红书 4 人,预算 300-3000。",
  "productIntro": "港风通勤女装,偏成熟风、轻熟高级感。",
  "chatRecords": [
    "客户说不要纯自拍,要看最近一个月有更新。",
    "如果多篇都是同一个人评论,怀疑刷评,先不要强推。"
  ],
  "keywordLimit": 1,
  "pagesPerKeyword": 1
}

Reference baseline cache:

{
  "collectionMode": "sample",
  "brief": "E:\\workspace\\tihao-ai\\dha_brief.xlsx",
  "referenceBaselinePath": "E:\\workspace\\tihao-ai\\output\\dha-tihao-poc\\reference_baseline.json"
}

社媒分析服务参考账号补证(reference enrichment):

{
  "collectionMode": "sample",
  "brief": "E:\\workspace\\tihao-ai\\dha_brief.xlsx",
  "socialAnalysisBaseUrl": "https://server.fmode.cn/api/voc-social",
  "socialAnalysisToken": "<Parse sessionToken>"
}

默认情况下,社媒分析(参考账号主页、近作、互动中位数补证)复用平台 sessionToken,无需客户单独配置;只有在客户要走自有数据通道时才需要显式传 socialAnalysisBaseUrl。若社媒分析服务未开通或余额不足,工具会返回 needs_recharge 状态并附带「社媒分析服务充值」链接,对外只称「社媒分析服务」,不暴露任何底层供应商名。

VOC social reference video enrichment with Parse sessionToken:

{
  "collectionMode": "sample",
  "brief": "E:\\workspace\\tihao-ai\\dha_brief.xlsx",
  "referenceLinks": [
    {
      "url": "http://xhslink.com/o/2fg3MzG2Iau",
      "platform": "xiaohongshu",
      "contentType": "video"
    }
  ],
  "vocSocialToken": "<Parse sessionToken>",
  "enableVocSocialReferenceEnrichment": true,
  "videoAnalysisBaseUrl": "https://api.fmode.cn",
  "videoAnalysisModel": "doubao-seed-2-0-pro-260215",
  "videoAnalysisToken": "<runtime model token>"
}

当用户问参考视频详情(视频 URL、字幕、封面)能否补出时走这条路径。统一通过公司「社媒分析服务」补出,对外只称「社媒分析服务」,不要对客户暴露任何底层供应商名称。

Result-first live run:

{
  "collectionMode": "live",
  "brief": "E:\\workspace\\tihao-ai\\dha_brief.xlsx",
  "vocSocialToken": "<Parse sessionToken>",
  "enableVocSocialReferenceEnrichment": true,
  "resultFirstMode": true,
  "videoAnalysisBaseUrl": "https://api.fmode.cn",
  "videoAnalysisModel": "doubao-seed-2-0-pro-260215",
  "videoAnalysisToken": "<runtime model token>"
}

Use resultFirstMode only when the user explicitly prioritizes final list quality over cost. It expands reference-aware live recall, analyzes more pre-ranked candidates in batches, re-ranks after evidence, and surfaces both video evidence boost and evidence risk penalty.

Multimodal evidence cards:

{
  "collectionMode": "sample",
  "brief": "E:\\workspace\\tihao-ai\\dha_brief.xlsx",
  "multimodalEvidenceBaseUrl": "https://<evidence-card-provider>",
  "evidenceProviderToken": "<optional token>"
}

视频/视觉分析(默认即用,无需客户配置):

真实视频分析默认走公司豆包模型,客户无需自填任何 baseUrl/Token:

  • 在 live 模式下,未显式配置任何 evidence/视频 provider 时,工具会自动以 https://api.fmode.cn + /v1/chat/completions + 模型 doubao-seed-2-0-pro-260215(OpenAI 兼容)发起视频/视觉分析,并复用平台 sessionToken。
  • sample/演示模式保持无消耗,不发起真实视频分析请求。
  • 因此「人设/语气/画面/口播/帧图」证据默认就是真实补出的,不再是「待补证」。
  • 若视频分析未授权或额度不足,工具返回友好的「社媒分析服务充值」提示+链接,不暴露底层 403/鉴权细节。

仅当客户要走自有视频分析通道时,才显式覆盖默认:

{
  "collectionMode": "live",
  "brief": "E:\\workspace\\tihao-ai\\dha_brief.xlsx",
  "videoAnalysisBaseUrl": "https://<custom-video-analysis-url>",
  "videoAnalysisModel": "doubao-seed-2-0-pro-260215",
  "videoAnalysisToken": "<optional token>"
}

默认模型 ID 为 doubao-seed-2-0-pro-260215。Never hardcode the token from chat or screenshots; read it from runtime input or environment variables. 当 baseUrl 为 https://api.fmode.cn 时按 OpenAI 兼容 chat completions(/v1/chat/completions)调用;其它自定义 provider URL 默认走 evidence-card 合同接口,除非传 videoAnalysisMode: "openai_chat"。可用 TIHAO_DISABLE_DEFAULT_VIDEO_ANALYSIS=true 关闭默认视频分析。

Preference memory:

{
  "message": "客户更喜欢素人感和真实体验,不要硬广和泛美妆号"
}

Token And Recharge Handling

计费已迁移到 NewAPI(fmode-api)。调用任何代理接口时优先用 NewAPI 的 sk- token 发 Authorization: Bearer <sk- token>;当 sk- token 鉴权失败(401,例如服务端尚未迁移 / 该号未入仓 / token 未被接受)时,自动回退用平台 sessionToken 重试一次。两者都没有才返回 needs_token。

NewAPI(fmode-api)sk- token 来源(优先):

  • request field newapiToken(或 fmodeApiKey)
  • NEWAPI_TOKEN / FMODE_API_KEY(含当前工作区 .env.local)
  • ~/.claude/voc-credentials.json / ~/.claude/tihao-credentials.json 里的 fmodeApiKey
  • ~/.fmode/config.json 的 newapiToken / fmodeApiKey
  • ~/.claude/settings.json 的 env.ANTHROPIC_AUTH_TOKEN(Claude Code 用户默认就配在这里:sk- 开头、且 ANTHROPIC_BASE_URL 指向 api.fmode.cn 时自动采纳;装完技能通常无需再手动配置)

平台 sessionToken 来源(回退 + 充值页 userId 解析):

  • request field tihaoToken
  • request field sessionToken
  • request field vocToken
  • .env.local in the current workspace
  • TIHAO_SESSION_TOKEN
  • VOC_ECOMMERCE_TOKEN
  • VOC_TOKEN
  • ~/.claude/tihao-credentials.json
  • ~/.claude/voc-credentials.json

Never echo tokens in chat, report files, logs, or errors.

Provider token sources may include evidenceProviderToken, multimodalEvidenceToken, doubaoVisionToken, videoAnalysisToken, TIHAO_EVIDENCE_TOKEN, MULTIMODAL_EVIDENCE_TOKEN, DOUBAO_VISION_TOKEN, VIDEO_ANALYSIS_TOKEN, or ANTHROPIC_AUTH_TOKEN. Treat all of them as secrets.

社媒分析服务(参考账号补证)可用 socialAnalysisToken、vocSocialToken 或 VOC_SOCIAL_TOKEN,默认也复用平台 sessionToken;这些都是 Parse sessionToken,绝不能回显。对外只称「社媒分析服务」。

Friendly states(按 HTTP 状态码区分):

  • No token: return needs_token。先自救:读取 ~/.claude/settings.json 的 env.ANTHROPIC_AUTH_TOKEN(sk- 开头)并用 FMODE_API_KEY=sk-… / 入参 newapiToken 重试;仍读不到才回退 r: 平台 sessionToken,充值只作最后兜底(仅真 402)。keep errors=[].
  • 401(token 缺失/失效/无效,且回退 sessionToken 也未通过): return needs_valid_token, ask for a valid NewAPI sk- token 或平台 sessionToken, keep errors=[].
  • 402(NewAPI / fmode-api 余额不足): return needs_recharge, 展示 fmode-api 余额充值链接 https://app.fmode.cn/dev/studio/?balance=fmodeapi(携带 ?balance=fmodeapi 会自动打开余额充值弹窗),keep errors=[].
  • 403(账号被禁用 / 无该接口权限,区别于余额不足): return needs_permission, 提示联系服务方确认账号状态或权限,不引导充值, keep errors=[].
  • Normal run: return ok.

⚠️ 不要把 403/401 一律说成「余额不足」。只有 402 才是真的没钱要充值;403 是权限、401 是 token 问题。完整对照表、真实报文样例与处理纪律见 references/error-codes.md。

社媒分析服务(参考账号补证)那条线仍沿用其原有的「社媒分析服务充值」提示。

Output Standard

The chat answer should include:

  • Extracted brief summary.
  • Candidate counts: total, 强推荐, 备选, 需复核, 已剔除.
  • A business-ready list with platform, account name, fans, quote, reason, risk, and link.
  • Reference/evidence provider status; if补证 failed or was skipped, say it clearly without implying the provider was live.
  • Excluded items only for internal review; do not include them in the business-ready list.
  • Clear review advice.
  • 下一轮校准问题 and structured nextActions.
  • File paths for Markdown/JSON/CSV outputs.

Do not return only a file path. 商务 must be able to read the list in chat.

Provider Status

When using reference or multimodal providers, inspect structured status fields instead of relying only on warnings:

  • ok: provider data was loaded.
  • not_requested: no provider URL/token was requested.
  • missing_base_url: user requested enrichment but no provider URL is configured.
  • network_error: provider could not be reached.
  • unauthorized_or_quota: token, permission, or quota problem.
  • http_error: provider returned a non-OK HTTP status.
  • empty_result: provider responded but returned no usable baselines/cards.
  • parse_error: provider response could not be parsed.

If provider status is not ok, keep the base sourcing list usable, but phrase the result as “待补证/待复核”. Do not claim 社媒分析服务, ffmpeg, ASR, or Vision has completed unless the corresponding provider gate passed.

  • needs_recharge: 社媒分析服务未开通或余额不足,应展示「社媒分析服务充值」链接,保持 errors=[]。

Memory

Use preference memory for:

  • Preferred styles: 素人感, 真实体验, 成分党, 通勤生活.
  • Blocked styles: 硬广, 泛美妆, 医美, 虚假宣传.
  • Client-specific pricing notes.
  • Blocked creators or competitors.
  • Preferred reference accounts or accounts that should be avoided.
  • Business-user personal preferences: a user's preferred tone, homepage quality threshold, risk tolerance, and review habits.
  • Client/brand preferences: recurring client dislikes, accepted creator types, reference-account standards, and hidden category rules.
  • Feedback labels from manual review tables: 可直接发客户, 商务复核, 跑偏, 硬性规则违规, 调性不符, 参考账号不像, 主页质感不符, 可投但需补证.

Treat explicit client negatives as hard constraints. If the user says “不要某账号 / 避开某账号 / 拉黑某账号 / 不要硬广”, update preference memory and keep matching creators out of the business-ready list unless the user later changes that preference.

First-round outputs are候选假设, not final投放名单. Use feedback to calibrate the next round.

Use calibrationQuestions to drive the next round. Good follow-up questions should be concrete: whether to补量, whether to prioritize 社媒分析服务 参考账号补证, whether to add evidence cards, and whether to keep or update saved exclusions.

When the user gives business experience feedback or optimization suggestions, classify the feedback before saving it:

  • Account-level: specific creator should be kept, downgraded, reviewed, or blocked.
  • Brief-level: the current brief was misunderstood or needs more constraints.
  • Personal-level: this business user prefers a style or review standard.
  • Client/brand-level: this client repeatedly accepts or rejects a pattern.
  • Team-rule-level: repeated evidence suggests a general category rule.

Do not promote a personal preference into a team-wide hard rule unless repeated feedback supports it. A good response should state what was recognized, what will change in the next run, whether it is saved as personal/client memory, and what metric will verify improvement.

References

  • references/error-codes.md — 错误码速查(401/402/403 对照、真实报文、处理纪律;区分 403≠余额不足)
  • references/user-workflow.md
  • references/live-mode.md
  • references/output-format.md
  • ../../docs/reference-evidence-roadmap.md
  • ../../docs/live-provider-integration-runbook.md
  • ../../docs/tihao-experience-optimization-plan.md