open-source-teardown
GitHub用于深度拆解明星开源项目,通过源码审计验证宣传特性、分析架构与算法含量,并评估技术取舍。
Trigger Scenarios
Install
npx skills add zts212653/clowder-ai --skill open-source-teardown -g -y
SKILL.md
Frontmatter
{
"name": "open-source-teardown",
"triggers": [
"拆解明星开源项目",
"拆解开源项目",
"竞品拆解",
"热门 GitHub 项目",
"它有什么真本事",
"我们能学什么",
"marketing vs reality",
"算法含量",
"拆解 hermes",
"看看 letta 怎么做的",
"codex cli 源码",
"agent runtime 拆解"
],
"description": "明星开源项目拆解:从宣传\/PPT\/README 进入源码,验证真实架构、明星特性、算法含量、营销水分、可学习点和不 follow 的 tradeoff。 Use when: operator要求拆解热门 GitHub 项目、竞品 agent\/runtime、外部 skill\/tool 框架,或问“它到底有什么真本事\/我们能学什么”。 Not for: 普通资料搜索(用 deep-research)、社区 issue\/PR 运营(用 opensource-ops)、只需要架构头脑风暴(用 collaborative-thinking)。 Output: feature-discussions\/YYYY-MM-DD-{project}-deep-dive\/ 下的代码证据报告 + 对比结论 + 候选 lesson\/skill。 GOTCHA: 不许只看 README 下判断;每个明星特性必须追到代码路径、状态突变点、反馈闭环和算法输入输出。\n",
"tips_exempt": "Existing teardown quality contract refinement; no new user-facing capability or discovery moment."
}
Open Source Teardown
明星项目拆解不是“读 README 做竞品分析”,而是宣传 claim → 源码证据 → 能力边界 → 我们的 tradeoff 的审计流程。
When to Use
触发:operator看到 PPT、博客、README、社区讨论后问“这个项目是不是很强?”;需要拆解 agent runtime、skill 系统、memory/RAG、MCP/gateway、RL/eval、插件架构等工程系统;或需要把一次竞品分析沉淀为 lesson / ADR / skill。
排除:只需要查公开资料或论文综述用 deep-research;只需要处理外部 issue/PR/intake 用 opensource-ops;还没有明确目标项目、只是在讨论方向用 collaborative-thinking。
灰例:如果用户同时要求“查社区 issue 情报 + 读源码”,先用本 skill 建代码证据骨架,再按需补 deep-research 或 opensource-ops。
Required Output
默认落盘:feature-discussions/YYYY-MM-DD-{project}-deep-dive/,包含 README、architecture-map、明星特性深挖、comparison、lessons/next steps。
最小合格产物必须包含:
- source repo URL、local path、commit SHA、更新时间。
- 宣传 claims ledger:claim / evidence files / Source verdict / Decision fit / unknowns。
- 输入谱系与复现矩阵:paper / appendix / limitations / code / config / data / checkpoint / 本次环境,
写明版本、可得性和不一致处;没有实验 claim 时记
not applicable,不虚构 artifact。 - 原始输出与失败尾部审计:raw transcript/output/log、成功与失败样本、per-run/per-seed 稳定性;
没有运行 claim 时记
not applicable,不可得的 artifact 显式记unknown。 - 架构图或模块地图:entrypoints、state stores、extension points、empty dirs;用 ASCII tree 或 Mermaid,参考 (internal reference removed)。
- 明星特性深挖:每个特性都写到代码路径和运行链路。
- 算法剥皮表:真算法 / LLM judge / 启发式 / 规则 / 外部服务。
- Clowder AI 对比:能学、不能学、我们因为 tradeoff 不 follow 的理由。
报告模板见 refs/report-template.md;十二个审计镜头 + 命令见 refs/teardown-method.md;用户视角第一性原理见 refs/user-mind-evaluation.md。
进度纪律
- 分次推进:每只猫每次只做 1-2 份产物,commit 后传球,不一气呵成。
- 双视角交叉:架构/明星特性/合流/skill draft 至少跨两只猫完成。
- 对口 review:最终报告或 skill draft 必须由非作者猫 review,跨族优先。
Step 0 — 定边界和真相源
- 记录用户原始问题和最关心的 claims。
search_evidence查我们是否已有同项目/同类系统讨论、lesson、feature anchor;有矛盾就 flag。- clone 或 update 到
/home/user/projects/ref/{project}。 - 记录
git rev-parse HEAD、最新 tag/release、git status --short。 - 把 README/PPT/官网中的明星特性拆成 claims ledger。
- 若项目伴随论文或实验 claim,先读论文正文、附录、limitations、data/model card 和发布 artifact,再读 thread / 搬运文 / 总结;二手材料用于找争议和反例,不替代一手证据。
不要先评价。先把“它声称自己有什么”列成可验证对象。
Step 1 — 架构地图
用 git ls-files、find . -type d -empty、rg 建第一版地图:
- entrypoints:CLI/server/worker/daemon/web。
- state stores:DB、files、cache、memory、lockfile、config。
- extension points:plugin/provider/adapter/registry。
- suspicious placeholders:空目录、TODO-only、docs-only 模块。
- community signals:高赞 issue、roadmap、真实 bug/feature 请求,验证宣传和用户痛点是否一致。
Step 2 — 明星特性逐个追链路
每个 claim 单独拆:
claim -> public API/command -> entrypoint -> core module -> state mutation -> future behavior
如果 claim 说“self-improving / learns / evolves”,必须画:
signal -> decision -> state mutation -> future behavior
断一环,就只能写“有 UX/telemetry/CRUD”,不能写“闭环进化”。
scoped ledger 审计(性能/成本类 claim 必做):宣称“节约 token / 更快 / 更省”的 claim,追完链路真实性后,还要重建足以支持当前决定的边界账本,而不是宣称掌握了 “完整总账”:
- 固定目标 workload、provider/model、版本、时间窗与 comparator;
- 写清 numerator、denominator、排除项和 benchmark 是否被反复用于挑方案;
- 分开统计 ingest/extract、query/retrieval、generation、cache write/read/miss、维护和人审;
- 并列报告 quality、coverage/abstention、latency、reliability、privacy/risk;
- 未报告或无法复核的项写
unknown,不得用常识猜成 0。
Context 变短可能减少输入,也可能改变可复用前缀和缓存经济性;结果取决于供应商规则、 breakpoint、请求序列和实际命中率。必须读取 usage/billing 或做配对实验,不能把“中间 context 变化”直接写成“cache 全 miss”或固定倍率。claim 真实 ≠ 足以支持产品决定。
Step 2.5 — 输入谱系、复现实物与原始输出
研究、benchmark、RL/eval 或“自进化”claim 不能只追源码控制流,还要追实验到底吃了什么、 吐了什么:
- 建
paper-config / code-config / reproduction-config三向 diff,锁定 repo commit/tag、依赖、 base model、dataset/split、prompt/template、超参、checkpoint 和随机种子。 - 把 unavailable、未公开、文档歧义、代码默认值覆盖论文值分别记录;缺失是证据边界,
不是自动
reject,也不能从“无代码/复现失败”直接推导“造假/cherry-pick”。 - 安全、成本和授权允许时,先做有边界的 smoke;记录 exact command、环境、状态和与报告结果的
delta。训练、RL 或大规模 eval 的完整复现默认
not_attempted,属于需 operator 明确授权的支出项, 不是 audit 默认动作。不能运行时写清原因,不用脑补运行结果。 - 不只看 aggregate score、best checkpoint 或 loss curve。抽查 raw transcript/output/log,至少覆盖 一个成功样本与一个失败/尾部样本;对训练结果查看 failed run、per-seed/per-task 分布和异常退出。
- cherry-pick 分型判证:run/seed 选择性汇报需要候选 run、选择规则与报告 run 的关系等 过程证据;comparator / tuning budget 不对等可由论文表格和公开 config 的明确差异成立。 两类都要与“本次未复现”“release artifact 不足”“论文 claim 不可信”拆开表述。
这里的“经典材料 / 跨域材料”用于提出更强 baseline、替代解释和 failure mode,不因年代或名气 自动获得权威;primary-first 也不等于 author-first,作者 artifact 与独立复现证据仍需分栏。
Step 3 — 算法剥皮
把被宣传成“算法”的点分栏:真算法 / LLM judge / 启发式 / 规则 / 外部服务。
硬规则:
- LLM prompt judge 不是算法,除非有独立 eval、score、threshold、rollback。
- Hash update 不是知识过期。
- Usage dashboard 不是生命周期治理。
- Reward 只说明 reward 覆盖的任务类型,不自动证明开放任务能力。
Step 4 — 反馈链和评价主体
检查谁在判断“更好”:
| 任务类型 | 可接受评价主体 |
|---|---|
| 客观任务:测试、编译、错误修复 | 机器/CI/eval |
| 专业任务:架构、review、审美、产品判断 | 对口专家/peer review |
| 主观/愿景任务:PPT、品牌、方向选择 | operator/用户明确反馈 |
如果项目把三层都压给同一个模型自评,要明确写风险:它可能能沉淀步骤,但不能证明质量提升。
Step 5 — 和 Clowder AI 对比
不要写“我们有/没有”流水账。每个维度都写价值函数:
- Learn:立刻值得学的工程手法。
- Gap:我们承认缺口,需要立项或排优先级。
- Do Not Follow:我们不做,并写清哲学理由。
按决策向量重新判适用性:外部 SOTA / benchmark 分数是它所测构念的证据,不是 产品总效用,也不能因为不覆盖我们的病灶就贬成“只是线索”。先写清它实际测了什么, 再映射到当前目标 workload 的决策向量:
quality/correctness | coverage/abstention | lifecycle cost | latency
reliability | operability | privacy/risk
用约束或 Pareto frontier 做 Learn / Gap / Do Not Follow 判断(例如“污染率不超 ε 时
最大化 coverage”)。不同量纲不得直接相乘成一个“猫咖总 loss”;只有 operator 明确给出
权重、单位换算和决策场景时,才允许生成标量总分。若 benchmark 与目标只部分重合,
写 partial 和未覆盖维度,不得写“高分证明产品强”或“与我们正交所以分数无效”。
Step 6 — 沉淀
- 把候选 lesson 写进报告,不直接改全局 lesson,等operator确认。
- 如果形成稳定方法论,更新本 skill 或相关 skill。
- docs 产物 commit + push;如果是新 skill,还要跑
pnpm check:skills和pnpm sync:skills。
Common Mistakes
| 错误 | 后果 | 修正 |
|---|---|---|
| 只看 README/PPT 就下结论 | 被营销话术带跑 | 每个 claim 必须有代码路径 |
| 先读 thread / 总结再读原文 | 二手 framing 变成默认问题定义 | primary-first:正文→附录/limitations→artifact→二手争议 |
| 只看 best score / loss / 汇总表 | 崩溃 run、seed 方差和尾部失败被平均数埋掉 | 抽 raw output/log、失败样本和 per-run/per-seed 分布 |
| 默认 paper config = released code config | 在不同输入上复现,却把偏差全归因给算法 | 建 paper/code/reproduction 三向 diff,锁 commit 与环境 |
| 把“有命令/有 UI”当成“有闭环” | 误判能力成熟度 | 追到 state mutation 和 future behavior |
| 把 LLM judge 当算法 | 高估系统可验证性 | 算法表强制分栏 |
| 把 hash update 当 stale | 混淆上游版本和知识失效 | 分开写 package update / knowledge stale |
| 把 telemetry 当治理 | last_used_at 被过度解读 |
看它是否进入排序/淘汰/晋升 |
| 只看源码不看社区 | 错过用户真实痛点和官方 roadmap | 查高赞 issue / bug / enhancement |
| 用”我们没有”替代 tradeoff / 用”对方有”误报为”对方强” | 把设计选择误报成缺口 / 接口齐全度误读为质量 | 写清价值函数 + 用户视角第一性原理(refs/user-mind-evaluation.md) |
| 把不同量纲乘成“总 loss” | 权重和单位被藏进公式,结论任意 | 保留决策向量;有明确权重和场景才标量化 |
| 把缓存风险写成固定倍率 | provider / model / workload 一换就失真 | 读 usage/billing,报告 cache read/write/miss 与请求序列 |
| 把“不覆盖我们的病灶”写成“benchmark 无效” | 否定了它在原测量构念上的证据价值 | 分开写 source validity 与 decision fit |
| 一只猫写完不找 review | 方法论未经挑战 | skill/report 交对口猫 review |
和其他 Skill 的区别
deep-research:多源资料调研;本 skill 是源码优先的能力审计。opensource-ops:社区 issue/PR/intake;本 skill 是项目架构和宣传真实性拆解。expert-panel:多猫观点碰撞;本 skill 是固定产物和检查项。writing-skills:写 skill 的质量纪律;本 skill 可产出候选 skill,但写入时仍要加载writing-skills。
下一步:工程/产品决策 → collaborative-thinking 或 feat-lifecycle;新 skill/修改 skill → writing-skills;外部社区情报 → deep-research 或 opensource-ops。
Version History
-
56d7c29
Current 2026-08-17 04:23
更新最小合格产物清单,增加输入谱系与复现矩阵、原始输出与失败尾部审计要求;细化 Step 2 中性能/成本类声明的边界账本审计流程。
-
f30e20c
2026-08-05 06:06
将内部参考名称从 Cat Café 更新为 Clowder AI;细化性能/成本类声明的审计要求,强调需重建边界账本而非依赖常识猜测,并明确未报告项标记为 unknown。
- 4167cb0 2026-07-05 14:52


