本文档记录 @vocmarket/tihao 的重要变更、验证情况和仍需注意的边界。命令名、字段名、包名保留英文,因为它们是实际运行契约。
Status: published to npm. This release makes the first report a high-quality live result-first list by default, instead of opening with a sample demo.
Positioning:
tihao SKILL now defines a "First Report Standard": normal brief-to-list requests default to collectionMode=live with resultFirstMode=true, and enable reference enrichment when reference links/accounts exist, so the first list is business-ready 高质量首版 rather than a sample demo.sample mode is now demo-only. The skill must never run sample just to "show the flow" or because a token is missing.needs_token / needs_valid_token state and asks the user for a valid sessionToken instead of silently falling back to sample.README.md, skill-package-manifest.json recommended prompts, and docs/skill-database-record.json were updated to stop steering the first run toward sample.Notes:
resolveCollectionMode already defaulted to live, and resultFirstMode stays an explicit flag. This release changes the agent-facing rules/docs so the first round is driven to live + result-first.Status: published to npm. @vocmarket/tihao@1.0.9 is latest, with registry verification and fresh @latest workspace install smoke passed. This release fixes the real live first-round Tihao output so a user can drop in a Brief and get a business-reviewable blogger table before later calibration.
Positioning:
粉丝要求:1k-10w, 单个预算:2000内, and 主页互动数据200+.Validation:
E:\test-tihao\outputs\tihao-real-fixed-1781542350326: 15 rows, 13 rows with prices, 15 rows with profile URLs, and no strong recommendation without price.npm run acceptance passed on @vocmarket/tihao@1.0.9, including package contents smoke with 185 files and package size about 644.2 kB.npm publish --dry-run --access public --registry https://registry.npmjs.org/ passed.npm publish --access public --registry https://registry.npmjs.org/ succeeded and returned + @vocmarket/tihao@1.0.9.npm view @vocmarket/tihao@1.0.9 version --registry https://registry.npmjs.org/ returned 1.0.9.npm view @vocmarket/tihao dist-tags.latest version --registry https://registry.npmjs.org/ returned latest=1.0.9.npx --yes @vocmarket/tihao@latest workspace --smoke passed.Status: published to npm. @vocmarket/tihao@1.0.8 is latest, with registry verification and fresh @latest workspace/user install smoke passed. This release renames the public skill package, primary CLI command, plugin install directory, and MCP server name to tihao.
Positioning:
@vocmarket/tihao.npx --yes @vocmarket/tihao@latest workspace --smoke.tihao; legacy alias tihao-sourcing is still shipped for transition..claude/plugins/tihao and tihao..claude/plugins/tihao-sourcing and .claude/skills/tihao-creator-sourcing, and removes the legacy tihao-sourcing entry from workspace .mcp.json.skills table source record now uses npmPackage=@vocmarket/tihao, pluginName=tihao, and mcpServerName=tihao.@vocmarket/tihao-sop remains historical; customers should install @vocmarket/tihao going forward.Validation:
node --check install.js, node --check bin/tihao.js, node --check mcp/src/server.js, node --check scripts/acceptance.js, and node --check scripts/package-contents-smoke.js.npm run package:contents:smoke, npm run smoke:package, npm run mcp:smoke, npm run skill:refs:smoke, and npm run acceptance passed.npm publish --dry-run --access public --registry https://registry.npmjs.org/ passed.npm publish --access public --registry https://registry.npmjs.org/ succeeded and returned + @vocmarket/tihao@1.0.8.npm view @vocmarket/tihao@1.0.8 version --registry https://registry.npmjs.org/ returned 1.0.8.npm view @vocmarket/tihao dist-tags.latest version --registry https://registry.npmjs.org/ returned latest=1.0.8.npx --yes @vocmarket/tihao@latest workspace --smoke passed, wrote .claude/plugins/tihao and .claude/skills/tihao/SKILL.md, and removed legacy .claude/plugins/tihao-sourcing plus .claude/skills/tihao-creator-sourcing.npm exec --yes --package @vocmarket/tihao@latest -- tihao install --smoke passed for user-level install.Status: published to npm. @vocmarket/tihao-sop@1.0.7 is latest, with registry verification and fresh @latest workspace install smoke passed.
Positioning:
skills table source record and npm management docs with the two real install targets:
npx --yes @vocmarket/tihao-sop@latest workspace --smokenpm install -g @vocmarket/tihao-sop && tihao-sourcing install --smoketihao.@vocmarket/tihao-sop, tihao-sourcing, and tihao-sourcing..claude/skills/tihao-creator-sourcing cleanup behavior from 1.0.6.Validation:
node --check install.js and node --check mcp/src/server.js passed.npm run smoke:package, npm run skill:refs:smoke, npm run package:contents:smoke, and npm run acceptance passed.npm publish --dry-run --access public --registry https://registry.npmjs.org/ passed.npm publish --access public --registry https://registry.npmjs.org/ succeeded and returned + @vocmarket/tihao-sop@1.0.7.npm view @vocmarket/tihao-sop@1.0.7 version --registry https://registry.npmjs.org/ returned 1.0.7.npm view @vocmarket/tihao-sop dist-tags.latest version --registry https://registry.npmjs.org/ returned latest=1.0.7.npm exec --yes --package @vocmarket/tihao-sop@latest -- tihao-sourcing workspace --smoke passed, wrote .claude/skills/tihao/SKILL.md, and removed legacy .claude/skills/tihao-creator-sourcing.Status: published to npm. @vocmarket/tihao-sop@1.0.6 published the installed Claude Code skill rename from tihao-creator-sourcing to tihao.
Positioning:
.claude/skills/tihao/SKILL.md..claude/skills/tihao-creator-sourcing directory under the same target .claude/skills root to avoid duplicate skill entries.@vocmarket/tihao-sop, tihao-sourcing, and tihao-sourcing.docs/skill-database-record.json as the database skills table source record for skillName=tihao.Validation:
node --check install.js passed.npm run smoke:package, npm run skill:refs:smoke, npm run package:contents:smoke, and npm run acceptance passed.npm publish --dry-run --access public --registry https://registry.npmjs.org/ passed.npm publish --access public --registry https://registry.npmjs.org/ succeeded and returned + @vocmarket/tihao-sop@1.0.6.npm view @vocmarket/tihao-sop@1.0.6 version --registry https://registry.npmjs.org/ returned 1.0.6.npm view @vocmarket/tihao-sop dist-tags.latest version --registry https://registry.npmjs.org/ returned latest=1.0.6.npm exec --yes --package @vocmarket/tihao-sop@latest -- tihao-sourcing workspace --smoke passed, wrote .claude/skills/tihao/SKILL.md, and removed legacy .claude/skills/tihao-creator-sourcing.Status: published to npm. @vocmarket/tihao-sop@1.0.5 is latest, with registry verification and fresh npx @latest workspace --smoke passed. This release absorbs the two new 提号经验 transcripts and extends the live brief-to-list workflow without changing the small-live default.
Positioning:
not_business_proof boundary.Validation:
node --check for brief parser, experience rules, homepage evidence, ranker, MCP server, and experience transcript index.npm run smoke:briefs, npm run hard-rules:smoke, npm run experience-transcript:index:smoke, npm run smoke:package, npm run mcp:smoke, npm run package:contents:smoke, and npm run acceptance passed.transcriptCount=4, coveredRuleCount=13, canCloseProofGap=false.npm publish --access public --registry https://registry.npmjs.org/, npm view @vocmarket/tihao-sop@1.0.5 version, npm view @vocmarket/tihao-sop dist-tags.latest version, and fresh npx --yes @vocmarket/tihao-sop@latest workspace --smoke passed.Status: published to npm. @vocmarket/tihao-sop@1.0.4 is latest, with registry verification and fresh npx @latest workspace --smoke passed.
Positioning:
粉丝 5000-20万,预算 800-5000.小红书/抖音 and dirty fragments like 个健身 do not become the first search keyword.Validation:
node --check mcp/src/features/tihao-sourcing/brief-parser.js passed.npm run smoke:briefs, npm run smoke:package, npm run mcp:smoke, npm run package:contents:smoke, and npm run acceptance passed.npm publish --dry-run --access public --registry https://registry.npmjs.org/ passed.npm publish --access public --registry https://registry.npmjs.org/, registry verification, and fresh npx --yes @vocmarket/tihao-sop@latest workspace --smoke passed.Status: published to npm. @vocmarket/tihao-sop@1.0.3 is latest, with registry verification and fresh npx @latest workspace --smoke passed.
Positioning:
keywordLimit=1 and pagesPerKeyword=1.sample, demo/no-cost mode, no real data, or "先跑通 SOP".Validation:
node --check mcp/src/features/tihao-sourcing/sourcing-workflow.js, node --check mcp/src/server.js, node --check scripts/smoke-package.js.npm run smoke:package, npm run mcp:smoke, npm run package:contents:smoke, npm run acceptance.npm publish --dry-run --access public --registry https://registry.npmjs.org/, npm publish --access public --registry https://registry.npmjs.org/, npm view @vocmarket/tihao-sop@1.0.3 version, npm view @vocmarket/tihao-sop dist-tags.latest version, and fresh npx --yes @vocmarket/tihao-sop@latest workspace --smoke.状态:已发布到 npm;@vocmarket/tihao-sop@1.0.2 已成为 latest,并通过 registry 查询和 fresh npx 工作区安装 smoke。
版本定位:
real-gap-material-audit 从独立审计推进到 round:refresh 主链路,并同步写入 latest form、handoff、evidence index 和 round deposition 守卫。gapCount=3、materialFoundCount=3、openGapCount=3、canCloseProofGap=false。主要变化:
npm run round:refresh -- --output-root outputs --strict 现在包含 29 个步骤,并在 local-seed-to-intake-worklist 后执行 real-gap-material-audit。latest-form:index 和 handoff:summary 已传播 realGapMaterialAudit,接手方不用再单独猜三缺口材料审计产物位置。evidence:index 将 real-gap-material-audit 固定归类为 not_business_proof,防止把材料存在误升格为业务证明。round-deposition 新增三缺口材料审计守卫,校验 standalone、latest-form 和 handoff 三处都保留 canCloseProofGap=false 边界。验证情况:
npm run real-gap:materials:smoke 通过。npm run evidence:index:smoke 通过,当前 fixture total=44、not_business_proof=19、real_evidence=6。npm run task:handoff-index:smoke 通过。npm run round:refresh:smoke 通过,29 步全部 pass,round-deposition.passCount=142、failCount=0。npm run round:refresh -- --output-root outputs --strict 通过,真实输出已刷新。npm run package:contents:smoke、npm run acceptance 和 npm publish --dry-run --access public --registry https://registry.npmjs.org/ 通过。npm publish --access public --registry https://registry.npmjs.org/ 成功,npm 返回 + @vocmarket/tihao-sop@1.0.2。npm view @vocmarket/tihao-sop@1.0.2 version --registry https://registry.npmjs.org/ 返回 1.0.2。npm view @vocmarket/tihao-sop dist-tags.latest version --registry https://registry.npmjs.org/ 返回 latest=1.0.2。npx --yes @vocmarket/tihao-sop@latest workspace --smoke 在 fresh workspace 通过。状态:已发布到 npm;@vocmarket/tihao-sop@1.0.1 已成为 latest,并通过 registry 查询和 fresh npx 工作区安装 smoke。
版本定位:
real-gap:materials 会同时读取 DHA PoC 原始资料、候选视频资源、提号经验逐字稿、proof-gap:closure 和 video A/B preflight。real-gap-material-audit.openGapCount=3、materialFoundCount=3、canCloseProofGap=false。主要变化:
npm run real-gap:materials,输出 outputs/real-gap-material-audit-latest/real-gap-material-audit-summary.json、Markdown 和 CSV。real-gap:materials:smoke 并纳入 npm run acceptance,确保三个缺口都能找到项目材料,但 canCloseNow=false 不被误改。historical-dataset:DHA Brief/PoC/参考分析工作簿已找到,historyDraftRows=12,逐字稿记录了 DHA 已提报但客户未反馈/未选新号;仍缺至少 5 个真实历史 Brief、客户决策、拒绝原因和历史人工补号量。video-ab-live-proof:videoResourceReady=true、realCandidateRows=1、realReferenceRows=1、候选视频 note 线索 15 条;仍缺 acceptance:video-ab 的 live proofContext 和 runtime/company/provider。manual-review-and-customer-effect:manualReviewDraftRows=12,逐字稿覆盖客户选中率目标和人工复核逻辑;仍缺真实人工复核标签、客户选中/拒绝、反馈原因、本轮人工补号量,并且必须绑定通过的 history audit。验证情况:
npm run real-gap:materials:smoke 通过。npm run real-gap:materials 通过,当前输出 gapCount=3、materialFoundCount=3、openGapCount=3、canCloseProofGap=false。npm run acceptance 通过,包内容 smoke 显示 version=1.0.1、entryCount=178、package size=607.4 kB。npm publish --dry-run --access public --registry https://registry.npmjs.org/ 通过,确认 tarball 为 @vocmarket/tihao-sop@1.0.1。npm publish --access public --registry https://registry.npmjs.org/ 成功,npm 返回 + @vocmarket/tihao-sop@1.0.1。npm view @vocmarket/tihao-sop@1.0.1 version --registry https://registry.npmjs.org/ 返回 1.0.1。npm view @vocmarket/tihao-sop dist-tags.latest version --registry https://registry.npmjs.org/ 返回 latest=1.0.1、version=1.0.1。npx --yes @vocmarket/tihao-sop@latest workspace --smoke 在 fresh temp workspace 通过,安装 .claude/plugins/tihao-sourcing 和 .claude/skills/tihao-creator-sourcing 后输出 tihao smoke ok。状态:已发布到 npm;@vocmarket/tihao-sop@1.0.0 已成为 latest,并通过 registry 查询和 npx 工作区安装 smoke。
版本定位:
@vocmarket/tihao-sop 的客户可安装 1.0 技能包版本,面向 Claude Code 工作区安装、Brief 到商务可复核名单、sample/live 小规模运行、偏好记忆、真实 provider runbook 和补证闭环交接。proof-gap:closure 和 optimization:completion 为准:businessOpenCount/openCount=3、closedCount=2、readyForClaim=false。主要变化:
referenceStyleFingerprints,覆盖视频/图文/账号类型、人设、内容结构、语气、视觉元素、卖点承接、商业强度、合规风险和证据可用性。briefFitScore、referenceStyleFitScore、dataQualityScore、budgetFitScore、riskPenalty、命中条件、缺失条件和人工复核字段。Brief 解析摘要、参考视频风格指纹、候选召回记录、多模态证据卡、商务可用名单、剔除/降级原因、下一轮校准问题。https://server.fmode.cn/api/voc-social 获取小红书视频详情,再把真实视频、封面、字幕或帧图资源传给豆包;不能拿 Parse sessionToken 直接调用公开第三方采集接口。npm run acceptance:video-ab,用于同一 Brief 和参考视频的 live A/B 验收。DHA 专业科普 这类和 Brief 绑定的召回词;禁止婚礼、宴会、布景、满月宴、仪式感等跑偏场景词污染召回。evidenceScoreBoost,让商务能看到验证过的视频/证据分析对候选的贡献。resultFirstMode,用于本轮不优先考虑成本、只优先追求结果质量的场景。evidenceRiskPenalty,让混类或合规风险账号即使命中基础母婴信号也能被压低。live:preflight,在真实 live/video 长跑前检查 sessionToken、company、provider 和豆包模型配置。reference-account、homepage-evidence、video-enhanced、result-first、result-first-risk、result-first-broad。TIHAO_GATE_REQUIRE_REFERENCE_PROVIDER 和 TIHAO_GATE_REQUIRE_HOMEPAGE_PROVIDER。review:metrics,统计商务可用率、负样本率、负样本归因覆盖率、客户选中率、重复键和每个 brief 内排名连续性。history:audit,验收真实历史 Brief、人工最终名单、客户选中/拒绝记录和拒绝原因是否足够做长期优化。teamRuleSuggestions,同类反馈累计 3 次后建议升级为团队规则。local-seed-to-intake-worklist 现在生成 history-intake-draft.csv、manual-review-draft.csv、video-resource-worklist.csv 和 candidate-seed-worklist.csv,并在 proofGapMaterialBridge 中标记三个仍 open 缺口的资料来源和不能关闭原因。proof-gap:closure 现在读取最新 local-seed-to-intake-worklist-summary.json,把 historical-dataset、video-ab-live-proof、manual-review-and-customer-effect 的 materialBridge 写入 open 行,避免继续误判为“项目没有资料”。acceptance:video-ab proofContext;人工复核草稿 12 行仍缺真实标注、客户选择、归因和本轮人工补号量。验证情况:
npm run acceptance 通过。npm publish --dry-run --access public 通过,确认 tarball 为 @vocmarket/tihao-sop@1.0.0,共 176 个文件,package size 约 598.5 kB。npm publish --access public --registry https://registry.npmjs.org/ 成功,npm 返回 + @vocmarket/tihao-sop@1.0.0。npm view @vocmarket/tihao-sop@1.0.0 version --registry https://registry.npmjs.org/ 返回 1.0.0。npm view @vocmarket/tihao-sop dist-tags.latest version --registry https://registry.npmjs.org/ 返回 latest=1.0.0、version=1.0.0。npx --yes @vocmarket/tihao-sop@latest workspace --smoke 通过,fresh workspace 安装写入 .claude/plugins/tihao-sourcing、.claude/skills/tihao-creator-sourcing 并跑通 tihao smoke ok。npm run acceptance:providers:mock 通过。npm run review:metrics:smoke 通过。npm run history:audit:smoke 通过。npx tihao-sourcing workspace --smoke 通过。voc-e-commerce live 验收使用有效运行时 sessionToken/company,返回 20 个候选和 10 条客户可用名单。doubao-seed-2-0-pro,返回 97 个 live 候选、10 条客户可用名单、31 个强推荐、2 个参考指纹、1 个视频指纹、5 条召回记录,并生成 Markdown/JSON/CSV。DHA 专业科普 替代基线 母婴,加载 1 个真实参考资源和 10 张豆包证据卡,强推荐增加 3 个,top 10 证据命中候选增加 7 个,平均参考风格分增加 8.2,平均总分增加 7.4。DHA 专业科普、DHA 节点合集、DHA 清单推荐、DHA 理性科普;豆包返回 20 张证据卡;强推荐从 5 个提升到 10 个;top 10 证据命中候选从 0 个提升到 10 个;平均参考风格分增加 2.1,平均总分增加 5.5。Authorization 字符串。已知边界:
live_network_error,重试后通过。后续 runbook 保留 retry/backoff,并建议对单关键词失败做软失败处理。review:metrics 统计已标注样本。npm publish 成功和 registry 验证为准;仅 npm pack 或 dry-run 通过时只能称为本地包已重建。状态:本地待发布版本;包含最新交接文档、递归证明产物发现说明和 proof-gap 失败条件沉淀。发布前必须通过 npm run acceptance、npm run package:contents:smoke 和 npm publish 权限校验。
主要变化:
docs/tihao-handoff-index.md 和 docs/tihao-experience-implementation-log.md 已同步最新 proof-gap 边界:round-deposition.passCount=137、optimization-completion.missingProofRequirementCount=113、proof-gap-closure.businessOpenCount/openCount=3。optimization-pipeline-latest 内嵌的 history-audit/historical-dataset-audit.json 与 customer-effect-audit/customer-effect-summary.json 会被读取为失败证据,不能被误判为“文件缺失”或“可完成证明”。optimization-completion.readyForClaim=false 时,不得宣称提号率提升、客户效果达标或人工补号量下降。为什么三个真实缺口还没有完成:
briefCount=1,缺 5 条以上真实 Brief、人工最终名单、客户选中/拒绝、拒绝原因和历史人工补号量基线。用 seed、示例、模板或本地 PoC 候选补数会造成错误业务宣称。video-hit-rate-preflight-summary.json,不能生成 proofContext.generatedBy=acceptance:video-ab 的 live 证明。customer-effect:audit 证明,当前缺客户最终选择、参考链路客户选择、本轮人工补号量,并且绑定的历史审计仍未通过客户效果证明门槛。验证:
npm.cmd run task:handoff-index:smokenpm.cmd run hygiene:smokenpm.cmd run round:refresh:smokenpm.cmd run package:contents:smokenpm.cmd run install:smokenpm.cmd run smoke:packagenpm.cmd run acceptancenpm.cmd pack --dry-run --json状态:VOCMarket npm scope 迁移版本。
主要变化:
@gangvy/tihao-sop 改为 @vocmarket/tihao-sop。tihao-sourcing,Claude Code plugin/skill 标识保持不变。npx --yes @vocmarket/tihao-sop@latest workspace --smoke。0.1.13 的真实豆包 OpenAI 兼容服务适配。验证:
npm run acceptancenpm run acceptance:providers:mocknpx --yes @vocmarket/tihao-sop@latest workspace --smoke备注:
@vocmarket/tihao-sop@0.1.14 registry PUT 200 且 dist-tag 显示 latest,但 public npm view/npx 返回 404,因此未作为客户可安装版本。状态:真实豆包 OpenAI 兼容服务适配版本。
主要变化:
doubaoVisionBaseUrl: "https://api.fmode.cn" 默认请求 /v1/chat/completions,默认模型为 doubao-seed-2-0-pro。choices[0].message.content 证据卡解析的 mock 覆盖。验证:
https://api.fmode.cn/v1/chat/completions 返回 HTTP 200,模型为 doubao-seed-2-0-pro-260215。doubao_vision_verified 证据卡,并写出 Markdown/JSON/CSV。npm run acceptance:providers:mocknpm run mcp:smoke备注:
状态:已发布,豆包 provider 验证加固版本。
主要变化:
## 多模态证据卡 和 doubao_vision_verified。.npm-cache-*,避免 npm registry cache 被误判为源码泄露。验证:
npm run acceptance:providers:mocknpm run acceptance备注:
状态:已发布,豆包视频分析 provider 合同版本。
主要变化:
doubaoVisionBaseUrl、doubaoVisionPath、doubaoVisionModel、doubaoVisionToken、videoAnalysisBaseUrl、videoAnalysisPath、videoAnalysisModel、videoAnalysisToken。doubao-seed-2-0-pro。providerType、model、requestedCapabilities、Brief 标准和候选博主。evidenceCards 和 OpenAI 风格 choices[0].message.content JSON。sk-... 形式 token 写入包文件。验证:
npm run acceptance:providers:mocknpm run acceptance:pmnpm run acceptance状态:已发布,provider 失败状态加固版本。
主要变化:
referenceEvidenceStatus 增加结构化 provider 状态字段:providerRequested、providerStatus、providerHttpStatus、providerWarning。evidenceStatus 增加同样的状态字段。not_requested、missing_base_url、network_error、unauthorized_or_quota、http_error、empty_result、parse_error、ok。not_requested、network_error、unauthorized_or_quota、http_error、empty_result、parse_error、ok。验证:
npm run acceptance:providers:mocknpm run acceptance:pmnpm run acceptance状态:已发布,provider 合同加固版本。
主要变化:
contractVersion: "tihao-provider-v1"。acceptance:providers:mock 会验证入站请求体、候选身份、参考锚点和可选 Authorization。验证:
npm run acceptance:providers:mocknpm run acceptance:pmnpm run acceptance已发布版本主要完成:
referenceEnrichmentBaseUrl / socialAnalysisToken provider 接口、evidenceCards / evidenceCardsPath、multimodalEvidenceBaseUrl 和对应验收。.mcp.json 写入客户工作区。@gangvy/tihao-sop,后续迁移到 @vocmarket/tihao-sop。长期边界:
npm run acceptance
npm run acceptance:providers:mock
npm run acceptance:pm
npm run live:acceptance
npm run acceptance:video-ab
live:acceptance 需要运行时提供:
$env:TIHAO_SESSION_TOKEN="<Parse sessionToken>"
$env:TIHAO_COMPANY="<Company objectId>"
acceptance:video-ab 还需要运行时提供视频分析 URL、模型和 token。所有 token 都不能写入文件。