--- name: tihao
Use this skill when the user wants to:
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.
The first report a user receives must be a strong, business-ready 高质量首版名单, not a sample demo:
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.enableVocSocialReferenceEnrichment=true plus a vocSocialToken) so resultFirstMode fully activates and homepage/video evidence is real instead of 待补.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.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.Keep user input natural. The user can say:
Do not force the user to know collectionMode, sessionToken, keywordLimit, company, or output paths. Infer safe defaults:
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.collectionMode=sample only when the user explicitly asks for sample, 演示, 无消耗, 不用真实数据, or “先跑通 SOP”.allowSampleFallback=true.brief.productIntro / productContext and chatRecords / customerChat; do not ask the user to merge them into the Brief manually.tihao_preference_update.video, image_text, account_home, or unknown.https://server.fmode.cn/api/voc-socialAuthorization: Bearer <Parse sessionToken>xiaohongshu/app_v2/get_video_note_detailnote_id or a share link; short links may be resolved first.videoUrl, coverUrl, title, authorInfo, subtitle URLs, and frame URLs into Doubao video analysis.待补口播证据 / 待补帧图证据 instead of claiming ASR or frame analysis.resultFirstMode per the First Report Standard.https://server.fmode.cn/api/voc-e-commerceAuthorization: Bearer <Parse sessionToken>/api/voc-e-commerce/{upstreamPath}xiaohongshu-pgy/api/solar/cooperator/blogger/v2/v1douyin-xingtu/gw/api/gsearch/search_for_author_square/v1referenceEvidenceStatus.providerStatusevidenceStatus.providerStatusok provider states as补证未完成, not as sourcing failure.calibrationQuestions before producing a second-round list.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.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:
https://api.fmode.cn + /v1/chat/completions + 模型 doubao-seed-2-0-pro-260215(OpenAI 兼容)发起视频/视觉分析,并复用平台 sessionToken。仅当客户要走自有视频分析通道时,才显式覆盖默认:
{
"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": "客户更喜欢素人感和真实体验,不要硬广和泛美妆号"
}
Live mode may use any of these token sources:
tihaoTokensessionTokenvocToken.env.local in the current workspaceTIHAO_SESSION_TOKENVOC_ECOMMERCE_TOKENVOC_TOKEN~/.claude/tihao-credentials.json~/.claude/voc-credentials.jsonNever 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:
needs_token, show the open/recharge link, keep errors=[].needs_recharge, show the 「社媒分析服务充值」 open/recharge link, keep errors=[]. 对外只说「社媒分析服务」,不暴露底层供应商名。needs_valid_token, ask for a valid sessionToken, keep errors=[].ok.The chat answer should include:
下一轮校准问题 and structured nextActions.Do not return only a file path. 商务 must be able to read the list in chat.
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=[]。Use preference memory for:
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:
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/user-workflow.mdreferences/live-mode.mdreferences/output-format.md../../docs/reference-evidence-roadmap.md../../docs/live-provider-integration-runbook.md../../docs/tihao-experience-optimization-plan.md