cheat-on-content
给所有想把"感觉"变成可校准预测的内容创作者。**方法论通用**——打分 → 盲预测 → T+3d 复盘 → 进化 rubric 的循环适用任何能被量化(播放 / 阅读 / 收听 / 点击)的内容。**rubric 是循环的内容,不是循环本身**——当前内置一份观点视频 rubric(参考博主 25+…
从对标账号导入 script + 数据 → 拆 pattern + 派生 base rubric 信号 → 写到 benchmark.md / script_patterns.md / rubric_notes.md。**这是工具最早期信号的来源**——cold-start 用户没自己历史时全靠对标,发过历史的用户也建议至少 1 个对标做 sanity check。触发词:"学这个账号"/"拆这几个对标视频"/"learn from"/"导入对标账号"/"找对标"。
$ npx -y skills add LiHongwei-cn/lihongwei-cn --skill cheat-learn-from --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/cheat-learn-fromContext preview
The summary Claude sees to decide when to auto-load this skill.
从对标账号导入 script + 数据 → 拆 pattern + 派生 base rubric 信号 → 写到 benchmark.md / script_patterns.md / rubric_notes.md。**这是工具最早期信号的来源**——cold-start 用户没自己历史时全靠对标,发过历史的用户也建议至少 1 个对标做 sanity check。触发词:"学这个账号"/"拆这几个对标视频"/"learn from"/"导入对标账号"/"找对标"。
name: cheat-learn-from description: 从对标账号导入 script + 数据 → 拆 pattern + 派生 base rubric 信号 → 写到 benchmark.md / script_patterns.md / rubric_notes.md。**这是工具最早期信号的来源**——cold-start 用户没自己历史时全靠对标,发过历史的用户也建议至少 1 个对标做 sanity check。触发词:"学这个账号"/"拆这几个对标视频"/"learn from"/"导入对标账号"/"找对标"。 argument-hint: <账号名> [— way: a (default) | b] [— append | --replace] allowed-tools: Bash(*), Read, Write, Edit, Glob, WebFetch, Skill
工具早期最重要的信号源是**对标账号**——你 init 完没数据,rubric 等权 v0 等于占星。但如果你能找一个你想做成那样的账号,导入 5-10 条它的高/中/低样本,工具就有了 anchor。
后期当你自己 calibration_samples ≥ 10 时,benchmark 影响自然减弱——你的真实数据成为主要信号源。但 benchmark.md **不删**,仍是 cheat-seed brainstorm 的 reference frame。
[用户:学这个账号 / 启动 cheat-learn-from] ↓ [Phase 0: 检查 benchmark 状态] ↓ [Phase 1: 选 input 方式(Way a 默认)] ↓ [Phase 2: 收集材料] Way a: 用户粘 N 条 script 文本 + 数据 Way b: 用 whisper 转录 samples/ 目录里的视频 ↓ [Phase 3: 询问每条样本的"印象判断"(高/中/低 + 为啥)] ↓ [Phase 4: Claude 拆 pattern + 派生 rubric 信号] ↓ [Phase 5: 用户 review → 改 → 落盘] ↓ [Phase 6: 写 benchmark.md / script_patterns.md / rubric_notes.md] ↓ [Phase 7: 更新 state.benchmark_status]
| 必填 | 来源 | |---|---| | `<账号名>` | 用户参数;缺失则询问 | | `.cheat-state.json` | 状态文件 | | Way a: 用户粘的 script 文本 + 数据 | 对话 | | Way b: `samples/<账号名>/*.mp4` 等视频文件 | 用户提前下载好放进去 |
读 `.cheat-state.json` 的 `benchmark_status`:
| 状态 | 处理 | |---|---| | `none` | 首次导入——继续 Phase 1 | | `pending` | 用户之前答应等下找——继续 Phase 1 | | `imported` 已有 benchmark | 询问"你已有 benchmark [当前名],N 条样本。要做什么? a) 追加新视频到当前 benchmark b) 替换为新 benchmark c) 只看不改" |
参数解析:
每条样本 = **script** + **数据**。两者怎么拿是独立的——你可以混搭。
script 怎么拿?
a) **粘文本(最简单,推荐)**
- 你自己整理过 / 用工具提取过——直接粘进对话
- 工具推荐(按方便程度排):
抖音 / 小红书:
- 微信小程序「轻抖」—— 粘视频链接 → 自动提取文案 + 评论。最快
- 类似工具:"视频解析助手" / "短视频文案提取" 等小程序
- 通常有免费额度,重度使用收费
B 站 / YouTube:
- 视频页面有"显示字幕/文字记录"按钮(如果 UP 主开了)
- 第三方:DownSub / SaveSubs / yt-dlp --write-auto-sub
公众号 / Substack:
- 直接复制网页文字
b) **whisper 转录视频文件**
- 你下载了视频到 samples/<账号名>/<video>/source.mp4
- 需要装 whisper-cpp + ffmpeg(见 adapters/script-extraction/whisper/README.md)
- 转录可能有错别字 / 漏字 / 标点不准——准确度比 a 差
c) **跳过 script,只用元数据 + 印象**
- 你拿不到稿子也懒得用工具
- 后果:pattern 拆不深(只能看标题 / 数据 / 你的印象),但 rubric 信号还行
- 适合"先快速搭起来,将来补"
回 a / b / c。数据(播放 / 点赞 / 评论 / 转发)怎么拿? a) **手填数字(最简单)** - 你查一下账号后台或视频页面,告诉我数字 - 不需要装任何工具 b) **adapter 自动抓(如已配置)** - 你已经装了 perf-data adapter(如 douyin-session) - 给我视频 URL,工具自己抓数据 + top 评论 - 评论数据更全(手填只能告诉我数字,adapter 能拿到具体评论文本) 回 a / b。
**最常见的组合**:
按 Phase 1a + 1b 的组合走对应路径。
**通用纪律**:每条样本最少要有 (script 或 transcript 或 N/A标记) + 数据 (4 项基础:播放/点赞/评论/转发)。
好。我们一条一条来。最少 3 条,推荐 5-10 条。 第 1 条 script,把整段粘下面(段落版,不要字幕格式):
收到 script → 算 video_id(sha256(script_content)[:12])→ 进 Phase 2 数据采集。
先确认 whisper 装了: [运行 `command -v whisper-cpp` 或 `command -v whisper` 检测] 如果没装: ❌ whisper 没装。三选一: - brew install whisper-cpp(推荐——快) - pip install openai-whisper(Python 慢些) - 切回 Path A 自己粘文本(推荐用轻抖等小程序) 装好后:把视频文件放到 samples/<账号名>/<video-name>/source.mp4 (一个视频一个子目录) 放好后告诉我"放好了 N 条",我转录。
用户放好后: 1. Glob `samples/<账号名>/*/source.*` 找视频文件 2. 对每个视频跑 `bash adapters/script-extraction/whisper/run.sh <video> samples/<账号名>/<id>/` 3. 失败项报告但继续其他 4. 进 Phase 2 数据采集
直接进 Phase 2 数据采集——告诉用户"没 script 我能拆的 pattern 仅限标题级别 / 你的印象,rubric 信号正常拆"。
**如 Phase 1b=a(手填)**:
第 1 条数据:告诉我 - 标题 - 播放量 - 点赞 - 评论数(不是评论内容,是数字) - 转发 / 分享数 格式随意,能识别就行。例如: "标题:怎么停止期待 播放:71w / 点赞 2.4w / 评论 899 / 转发 1.8w" 如果你能再粘 top 5-10 条评论(带赞数)更好——pattern 拆能挖到模因层。
**如 Phase 1b=b(adapter)**:
你说装了 adapter(如 douyin-session)。给我每条视频的 URL, 我跑 adapter 自动抓数据 + top 评论。 第 1 条 URL:
收到 URL → 调对应 adapter → 写数据 + 评论到 samples/<账号名>/<id>/meta.md。
**通用**:继续问第 2 条 / 第 3 条 / ... 用户说"够了"或达到 MAX_SAMPLES_PER_RUN 时进 Phase 3。
对每条样本(不管 Way a 或 b),收完数据后**追加问印象**:
你看完 / 听完这条视频的印象,算这个账号的: a) 高表现样本(代表作 / 你想做成这样的) b) 中表现样本(普通水准 / 不上不下) c) 低表现样本(不算这个账号的代表 / 你不想做成这样) 为什么?(一句话——这个判断比数据更能告诉我你想做什么风格)
记录 (impression_label, impression_reason) 到内存。
> 注意:印象**可以**和数据冲突——比如某条数据高但用户觉得"不算代表作"。这种冲突本身是有用信号,记录下来。
阅读所有 (script, 数据, 印象) → 自己分析:
按 script_patterns.md 的 cheat sheet 框架拆:
输出 N 个具体 pattern(每个引用具体样本作证据)。
对每条样本打 7 维分(用通用维度),然后看:
输出**定性方向**(不是数值权重):
一次性展示所有结果给用户:
我从你给的 N 条对标视频拆出: 📝 N 个 script pattern: 1. **[Pattern 1 名称]**:[一句话描述] → 证据:[样本 X / Y] 2. ... 🎯 Rubric 定性信号: - 看起来重要的维度:ER / QL / MS(每个有 N 条高样本支持) - 看起来不显著的维度:SR / NA - 给的初始建议:你的对标账号是 [情感+金句驱动型] / [数据驱动型] / [类比讲解型] / ... - **不直接给数值权重**——5-10 样本拟合容易过拟合,先用作 tier-2 信号 🎨 选题方向感: - 主题分布大概:[主题 A 40% / 主题 B 30% / ...] - 调性:[一句话] 回 "ok" 我落盘, 或指出哪些 pattern / 信号你不认同("Pattern X 我觉得不准" / "Rubric 信号 Y 错了")。
用户反馈循环:
MUNDO - THE EMPEROR. Complete AI orchestration system with 1208 skills, 25 capability modules, self-evolving, collective consciousness. GitHub Actions 24/7 automation.
Repo: LiHongwei-cn/lihongwei-cn
给所有想把"感觉"变成可校准预测的内容创作者。**方法论通用**——打分 → 盲预测 → T+3d 复盘 → 进化 rubric 的循环适用任何能被量化(播放 / 阅读 / 收听 / 点击)的内容。**rubric 是循环的内容,不是循环本身**——当前内置一份观点视频 rubric(参考博主 25+…
提议并执行 rubric 或 bucket 升级。两种模式:**完整 rubric bump**(最高风险动作,5 步强制 + 跨模型审核)和 **--bucket-only 轻量重校**(只换 bucket 边界,不动 rubric 公式)。**Phase 2 强制走 cheat-score-blind…
cheat-on-content 的首次 onboarding 与脚手架创建器。统一流程——所有用户都走相同 5 阶段闭环,唯一区别是"发过视频的人"会在 init 时多一步:抓取已有视频建立历史 context(用于后续 cheat-seed 给更贴合的选题、更准的…
把老用户的 .cheat-state.json 升级到当前 schema_version。读 migrations/registry.md 算迁移链,按顺序应用每一步迁移文件。幂等:跑两次结果一样。失败停在中间版本不前进。触发词:"迁移"/"升级 state"/"migrate"/"我的 state…
从复盘评论数据派生 / 刷新账号的受众画像,写入 audience.md。这是和 rubric 平行的第二个派生物——rubric 答"怎么打分",persona 答"谁在看"。cheat-seed 选题 / 写稿时读它。**audience.md 含实绩信号,cheat-score-blind…
给最终稿写一份 immutable 盲预测日志。这是 cheat-on-content 整个校准循环的核心动作——预测段一旦写完不可改,由 hook 强制。**自动检测**:如目标文件已有 `## 预测` / `## 预测 v1` 段(被 cheat-shoot 调用走 v2 模式),改成 append `## 预测…