원클릭으로
hit-score
给单篇稿子打 rubric 分。**只在控制台输出,不写文件,不预测**。触发词:"打分这篇 [path]"/"score this [path]"/"给这稿子打分"/"先打分看看"。是 hit-predict 之前的轻量探索动作。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
给单篇稿子打 rubric 分。**只在控制台输出,不写文件,不预测**。触发词:"打分这篇 [path]"/"score this [path]"/"给这稿子打分"/"先打分看看"。是 hit-predict 之前的轻量探索动作。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
把内容创作变成可校准的预测循环——打分 → 盲预测 → T+3d 复盘 → 进化 rubric,适用任何能被量化(播放/阅读/收听/点击)的内容;内置一份观点视频 rubric,其他形态可借此起步。触发词:"初始化"/"打分这篇"/"启动预测"/"已发布"/"复盘"/"升级 rubric"/"推荐选题"/"抓热点"/"挖问题"/"状态"/"找对标"/"learn from"。首次使用必须先跑 /hit-init,强烈建议先用 /hit-learn-from 导入对标账号作为初始信号源。
hit-lab 的首次 onboarding 与脚手架创建器。统一流程——所有用户都走相同 5 阶段闭环,唯一区别是"发过视频的人"会在 init 时多一步:抓取已有视频建立历史 context(用于后续 hit-seed 给更贴合的选题、更准的 baseline)。触发词:"初始化"/"init"/"首次使用"/"我是新用户"/"setup hit-lab"。**必须在用户第一次会话执行;其他子 skill 在 .hit-state.json 不存在时自动路由到此。**
从 candidates.md 里按当前 rubric 排序推荐 top N 选题,每条带 composite + 一句 rationale + 锚点对比。**candidates 不存在时给引导而非报错**。触发词:"推荐选题"/"next topic"/"下一篇做什么"/"recommend topics"/"挑一个选题"。
从配置的源抓今天的选题原料(两类:**热点话题** via aihot/trendradar 等,或 **真实用户提问** via community-questions),去重 + 粗打分 + 写入 candidates.md。**绝大部分人没有候选池——这是让"我没素材"问题在 onboarding 第二步就消失的钥匙**。触发词:"抓热点"/"fetch trends"/"今天有什么可做的"/"trending now"/"找选题"/"挖问题"(= 抓真实用户提问,等价于 sources: community-questions)。
登记一篇内容已发布,把 URL/平台 ID/发布时间写入对应预测文件 header 和 state file。这是一个轻量动作——只更新元数据,**不动预测段任何字符**。另含两个子模式:--backfill 补登记历史已发内容(无预测)、--preflight 发布前检查(标题 lint / 字数 / 图数)。触发词:"已发布"/"I shipped"/"发布链接是 X"/"刚发完 [url]"/"补登记"/"backfill"/"发布前检查"/"preflight"。
INTERNAL sub-agent for blind 9-dim rubric scoring — NOT user-facing, do NOT invoke from main conversation. Spawned via Task tool by hit-score / hit-predict / hit-bump(channel B:A=main / B=blind sub / C=cross-model). Input ONLY script_path + rubric_notes_path, refuses anything else. Output strict JSON: 9 dims × {score 0-5, confidence enum, one-line reason}. Hard-refuses to Read .hit-state.json / predictions/* / retro 段 / audience.md, or anything that could leak post-publish data.
| name | hit-score |
| description | 给单篇稿子打 rubric 分。**只在控制台输出,不写文件,不预测**。触发词:"打分这篇 [path]"/"score this [path]"/"给这稿子打分"/"先打分看看"。是 hit-predict 之前的轻量探索动作。 |
| argument-hint | <draft-path> |
| allowed-tools | Read, Glob, Grep |
打分但不预测。用户用它快速看稿子的 composite,决定是否值得进入正式预测流程。
[用户:打分这篇 draft.md]
↓
[读 draft.md + rubric_notes.md]
↓
[逐维度打 0-5 + 写一行理由 + 算 composite]
↓
[控制台输出:评分 + composite + 推荐下一步]
↓
[结束 — 不写任何文件]
💡 调用时覆盖:
/hit-score draft.md — OUTPUT_DETAIL: compact
| 必填 | 来源 |
|---|---|
<draft-path> | 用户作为参数传入;如缺失则在对话里询问 |
rubric_notes.md | 用户项目根 |
.hit-state.json | 用户项目根(用于读当前 rubric_version 与 mode) |
.hit-state.json → 不存在则提示用户先跑 /hit-init,停止<draft-path> → 不存在或无内容 → 报错并停止rubric_notes.md 找到当前生效的公式段(一般在"当前评分维度"或"综合分公式"位置)从 rubric_notes.md 解析出:
ER×1.5 + SR×1.5 + HP×1.5 + QL + NA + AB + SAT)/ 8.5 × 2.0)如果 rubric_notes.md 格式与预期不符(用户手改过结构)→ 询问用户当前公式是哪一行,不要自己猜。
主对话已经被用户对话 / 已发数据 / 历史 retro 段污染——inline 打分等于带着后视镜判分。
改成通过 Task tool 调 /hit-score-blind sub-agent,主 Claude 只做调度 + review。详见 skills/hit-score-blind/SKILL.md。
Task prompt 模板(只能含下面这些):
Spawn hit-score-blind sub-agent.
Input:
script_path: <用户给的 draft path>
rubric_notes_path: rubric_notes.md
Task: 按 rubric_notes 当前公式给上面 script 打分。返回严格 JSON(见 hit-score-blind SKILL.md Phase 2 schema)。
不要读 state file / predictions/ / videos/ 任何其他文件。
不要询问用户 —— 你没有用户。
禁止塞进 Task prompt 的东西(hit-score-blind/SKILL.md 的"主 Claude 调用契约"段):
predictions/*.md 路径调用前 grep 自检:echo "<prompt>" | grep -Ei '播放|阅读|点赞|评论数|实际|retro|复盘|实绩|w$|万$' 命中 → 改 prompt 重发。
sub-agent 返回严格 JSON。主 Claude:
self_check.any_contamination_signal == false,否则警告User Override 但 sub-agent 原始分留档如果 sub-agent 返回 refusal != null:
blocked_contaminated_input → 报告 Task prompt 含违禁字段,让主 Claude 重发script_path_invalid → 检查路径rubric_unparseable → 提示用户 rubric_notes.md 损坏non_blind_warning → 仍接受 dimensions(但 confidence 全 medium),警告按当前公式算综合分。控制台输出(OUTPUT_DETAIL=full):
📊 [draft.md 短标题] — 打分(rubric: v2)
| 维度 | 分 | 理由 |
|---|---|---|
| ER (情感共鸣) | 5 | "半夜三点翻聊天记录" 极端具象 |
| HP (钩子强度) | 5 | IS 句一句锁定受众 |
| QL (金句密度) | 5 | MVP 句"间歇性希望"独立可传 |
| NA (叙事性) | 3 | 平铺直叙,弱弧线 |
| AB (受众广度) | 5 | 暗恋/前任普适 |
| SR (社会议题共振) | 2 | 纯个人情感,无社会托底 |
| SAT (讽刺深度) | 4 | 致谢段自指反讽 |
公式:(ER×1.5 + SR×1.5 + HP×1.5 + QL + NA + AB + SAT) / 8.5 × 2.0
composite = (5×1.5 + 2×1.5 + 5×1.5 + 5 + 3 + 5 + 4) / 8.5 × 2.0 = **8.24**
📍 落在 30-100w 桶(基于 starter-rubrics 的 bucket 边界)
下一步建议:
- 如果你已写定最终稿、准备发布 → 说 "启动预测"
- 如果想再改稿子 → 改完再打一次(多次打分不留痕迹)
- 如果想看历史相近 composite 的样本 → 说 "找 composite 8.0-8.5 的锚点"
OUTPUT_DETAIL=compact 时仅输出分数表 + composite,不附理由列。
/hit-predict。原因:predict 必须走 blind check + 写 immutable 日志,score 跳过这些--skip-blind)。score 是轻量探索,没理由放弃隔离。如真的 Task tool 不可用 → 提示用户配置后再试hit-predict 的前置探索:用户可以反复 score 不同稿子版本,确定一份再 predict.hit-state.json——这是无副作用操作