agent-wiki
Skill2 starsChanged 17 days agoMITView on GitHub
按 Karpathy LLM Wiki 模式运营智能体知识库:Ingest 采集入库(命中预登记、价值契约、价值判定与中止、质量过滤器、蒸馏落地状态标记)、Query 走任务必经路径(开工前检索既有 🟢/🟡 规则集、交付时登记命中归因、好答案回填)、Lint 体检(结构层多维+判断层回测,🟢 回测到期由治具机算),并执行 Planner/Generator/Evaluator 角色分离。核心流程与采集工具解耦,可跨平台移植。当用户要求采集文章/素材入库、摄入新知识、查询知识库、知识库体检/lint、蒸馏知识为 Memory/规范/Skill,或运营任何 LLM Wiki 式知识库时使用。**此外,开始一项非平凡任务(制定方案、改架构、建结构、做评审、排障复盘)前也应主动检索本库既有规则,交付时登记命中或未命中——不等用户点名知识库。**
4 other projects use a version of this.
Adopted by
Most recently taken up by
- nadavnaveh/skillstheir own version, first seen Oct 25, 2026
- lazynoc/agent-wikitheir own version, first seen Oct 25, 2026
- Dianel555/DSkillstheir own version, first seen Sep 6, 2026
- kimmihyeon12/skillstheir own version, first seen Mar 10, 2026
Other versions4 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 4
- Dianel555/DSkills★ 65same name
- lazynoc/agent-wiki★ 2same name
- nadavnaveh/skills★ 2same name
- kimmihyeon12/skills★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
The file
We split this skill into the rules it gives an agent
1 rule. 0 are common, 0 are distinctive, and 1 is very specific to this project.
0
Common
Most of the 3 edited versions we read keep these.
0
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 319
commit message:{ingest|query|lint}: {简述};初始化:init: 知识库基线
“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
知识库运营工作流(LLM Wiki 模式)
目录
- 定位与适用 —— 本库治什么病灶,什么时候不该用这套流程
- 快速上手 —— 第一次跑通要敲的四条命令
- 三层架构 —— 哪一层只读、哪一层由 LLM 维护、哪一层人机共维
- 角色分离 —— Planner / Generator / Evaluator 的职责与禁忌
- Ingest —— 0–8 步清单、中止条件与蒸馏评估
- 记忆分层与注入面抽象 —— 热层/温层/冷层、指针语法、判定阶梯、超限闸门
- Query —— 前置检索与后置归因(任务必经路径)
- Lint —— 结构层十六维与判断层回测
- 成功指标 —— 三种操作各自的验收线(生成者不自评)
- 采集引擎抽象 —— 取源引擎体检、GitHub 逐字件配方与携带包身份
- 约定速查 —— 命名、日志格式与 commit 前缀
- 常见卡点与出口 —— 症状 → 真因 → 合法出口
定位与适用
本 Skill 是平台无关的方法论:把外部知识转化为智能体运行时可调用的行为规则(Memory/规范/Skill)。知识库不是收藏夹,是智能体的能力增长引擎——每条入库知识都必须经过蒸馏,判断价值的唯一标准是:它能否直接改变智能体在具体场景下的行为决策。
引擎转不转,与采集端多忙无关,只取决于既有规则是否在任务路径上被消费:只在用户点名"查询知识库"时才走一遍检索的库,等价于不存在的库(采集照常满转、归因恒为空,是本模式最常见的失效态)。故本 Skill 把 Query 挂在任务必经路径上(见「Query」节),并让 Ingest/Lint 的每条记录都携带「命中/未命中」字段,使归因率成为可算量而非印象。
- 若项目已有自己的知识库规范文件(如
项目规范.md),以该文件为权威参照,冲突时以项目规范为准 - 在不同平台/项目应用时,按本 Skill 的三层架构与流程落地,目录名可本地化;本仓
examples/提供可直接跑通的最小样本 - 运行环境下限:Python ≥3.9;本仓全部脚本(治具/初始化器/发行构建)仅用标准库,零第三方依赖
- 本方法论当前蒸馏对象为命题知识(规则);蒸馏卡模板的「认知结构扩展」可选区为认知结构蒸馏(心智模型/决策启发式层)预留接口,需要时再启用,不预建管线
快速上手
单文件安装(只把 SKILL.md 放进技能目录)交付的是方法论本体;下述第 2–4 步依赖 scripts/ 与 examples/ 两目录,须取完整发行包。命令一律以技能包根为当前目录执行——从实例工作目录调用治具的写法见「Lint」节首段,照抄相对路径必失败。
- 自检环境:
python scripts/validate.py examples→ 应得PASS_WITH_SKIP、退出码 0、覆盖率 11/16(其余 5 维按声明门控 SKIP,报告逐项给因)。这不是全维通过,读数取法见「采用门控」。 - 建零内容实例:
python scripts/init_instance.py --root <新实例根目录> --adapter <适配器id> --user-memory-dir <记忆目录> --project-memory-dir <记忆目录> --source-domain <来源域名>→ 生成 原始采集/、知识库/、程序文件/配置/(注入面、策略副本、发行锁)与实例清单。--policy取 core(默认)或 knowledge-collection-workflow,--backup-directory可选;随包适配器为 qoder(常驻注入)与 plain(无常驻注入的降级参照)。 - 填注入面:把实例
程序文件/配置/注入面.json内的<...>占位符替换为该平台真实绝对路径。不替换则载体不可达、维度 8/9 记 SKIP 且 🟢 降 WARN——属诚实降级,不是缺陷,见「降级语义」。 - 第一次 Ingest:按「Ingest」0–8 步清单走完一轮,收尾跑
python scripts/validate.py <知识库根目录>应零 ERROR;落地台账由--refresh-landing-ledger生成,禁手编,见「落地台账」。
装到哪个目录(各宿主技能路径)属仓内侧说明,只写在仓库 README、不随包;本节不复制那张表——两处各写一份,任改一处即漂移。
三层架构
| 层 | 推荐目录 | 性质 |
| Raw Sources | 原始采集/(文章/讨论/视频) | 只读,采集后不可变 |
| The Wiki | 知识库/(目录.md、采集经验.md、操作日志.md) | LLM 维护的派生内容 |
| The Schema | 项目规范.md + 程序文件/配置/ | 人与 LLM 共同维护 |
关键原则:原始文件始终留在 Raw Sources,不移动到 Wiki;校验通过后在目录.md 中建立引用即视为"入库"。
角色分离(必须遵守)
| 角色 | 实体 | 职责 | 禁忌 |
| Planner | 人工 | 定采集目标、定价值契约、引导分析方向 | 不直接操作文件 |
| Generator | LLM | 执行采集、补元数据、写摘要、维护目录与日志 | 禁止自评产出质量 |
| Evaluator | 校验治具(如 scripts/validate.py) | 独立校验格式、编码、元数据、交叉引用 | 不参与生成 |
核心规则:模型不得给自己打分。 价值评估由 Generator 记录在操作日志,校验通过与否由 Evaluator 裁定;人工有异议时以人工判断为准。项目无治具时,按 Lint 结构层十六维与判断层逐项人工核查,但结论仍不得由生成者自证。
Ingest(摄入)
复制此清单跟踪进度:
- [ ] 0. 命中预登记(开工第一步:读落地台账取 🟢 硬约束集+🟡 应读候选集,登记本轮预期命中,见「Query」节 A 段)
- [ ] 1. 采集前价值契约(四问,第 4 问重要主题必答)
- [ ] 2. 采集并补充元数据
- [ ] 3. 读取内容、提取关键信息
- [ ] 4. 价值判定(不达标则中止)
- [ ] 5. 更新目录.md(摘要 + 交叉引用)
- [ ] 6. 追加操作日志(含 `**命中:**` 终值)
- [ ] 7. 蒸馏评估并标记落地状态
- [ ] 8. Git 提交第 0 步 · 命中预登记——采集前先看手上有什么:从落地台账读当前 🟢 硬约束集与 🟡 应读候选集,登记本轮预期命中哪条;预期无命中时写「无命中 + 缺的是哪类规则」。排在采集之前的理由:本模式的病灶是采集端满转、消费端断转,把"用到没有"记在"采进来"之前才使归因率有源头数据,否则库只会越采越厚而无人知道它是否让决策变好。终值随第 6 步入账。
第 1 步 · 采集前价值契约——动手前回答以下问题并记录:
- 这篇文章要解决什么问题?与已有知识的关系是什么?(补充/对比/延伸)
- 什么条件下算「有价值」?至少满足一个:引入新概念、提供对比视角、有直接实操参考
- 预期归入目录.md 哪一层?(基础理论/架构范式/工程实践/工具资源/社区动态)
- (重要主题必答)是否存在反方证据或批评者视角?重要且缺失时先补采再判定
第 2 步 · 采集与元数据——用当前平台的采集引擎获取原文(见「采集引擎抽象」),存入 Raw Sources 对应子目录,文件名遵循 {source}_{topic}_{date}.{ext}(如 github_karpathy_llm_wiki_20260630.md)。元数据必需字段:URL、采集时间、采集命令;建议字段:By、Site、Published、原始来源。采集引擎通常只能自动提取部分字段,其余必须补齐。
第 4 步 · 价值判定(含中止)——对照第 1 步契约评估。明显不满足任何价值条件(内容空洞、严重重复、与知识库定位无关)时,显式记录中止原因到操作日志后退出,不强行完成入库流程。
第 5 步 · 矛盾处理协议——新知识与既有条目或已落地 Memory 冲突时,按三型处理;禁止悄悄覆盖、强行调和或假装矛盾不存在:
- 时间性演化(早期 A、近期 B):记录演化轨迹,标「早期/近期」,以近期观点为主;
- 领域性差异(不同领域各持一端):分领域记录,不强求统一;
- 本质性张力(价值观内在冲突):并列呈现,显式标注「核心张力」,并记当前默认立场(何语境下默认取哪端),供 Lint 审视。
第 6 步 · 操作日志格式:## [日期] ingest | 标题(append-only),条目内必含 **命中:** 字段登记第 0 步终值(取值三型与"说不出被改变的具体决策即未命中"的判据见「Query」节 B 段;「无命中」是合法值而非空值)。
第 7 步 · 蒸馏评估——该条目是否包含可直接指导智能体行为的原子规则?先过质量过滤器,再标落地状态。
质量过滤器(两问)——借鉴三重验证精神、改写为规则场景:
- 排他性:没有这条规则,智能体的决策会有什么不同?(滤掉「任何聪明人都这么想」的常识)
- 生成力:这条规则能否推断新类似场景下的行为断言?(滤掉一次性描述)
标 🟢 时蒸馏卡须为两问各记一条具体断言(如生成力推断出的新场景),使自答可证伪,判断层蒸馏回测以此为靶。
过滤器决定标记上限(三色原义不变):
| 过滤结果 | 标记上限 | 动作 |
| 两问全过 | 🟢 已落地 | 提取原子规则写入 Memory/规范/Skill,在目录.md 条目注明 Memory 标题;适用边界为必填字段 |
| 仅过一问 | 🟡 部分落地 | 按场景受限规则落地,注明局限、已落地与未落地的具体内容及原因 |
| 两问全不过 | 🔵 参考索引 | 操作日志中简述原因 |
适用边界:规则的前提条件与「何时不适用」,随规则正文一同写入。不声明边界的规则不值得信任——脱离适用前提的规则即制造负担。Planner 覆盖过滤器上限标记时,须在操作日志与蒸馏卡显式记录覆盖理由,接受 Lint 审视;禁止静默覆盖。
指代纪律:蒸馏卡正文禁裸用「它/该机制/此规则/上述方案」等指代——实体首次出现写可检索的具体名(规则名/机制名/文件名),此后的指代须挂在该具体名下。卡是温层按需读取面,常被摘录、检索、单独打开,裸指代离开上下文即失去先行词,不可检索也不可追溯。
蒸馏标准:规则必须能改变智能体在具体场景下的行为决策,而非抽象理念或参考信息。
蒸馏卡格式见 references/rule-template.md;其结构层由 validate.py 裁定:「适用边界」「来源指针」全部卡必填非空,「否决分支」「失效扳机」两节自 CARD_REVERSE_FIELDS_SINCE 起对新卡必填(存量卡不追改)。
跨平台蒸馏适配:在 Qoder 中蒸馏产物写入 Memory 系统(方法论→task_experience、踩坑→common_pitfalls_experience、架构决策→important_decision_experience 等分类);在其他智能体平台,映射到该平台自身的持久记忆/行为规则机制,判定标准与三色标记保持不变。
第 8 步:提交本轮产物——git add <本轮新增/修改的文件路径> 后 git commit -m "ingest: 标题"。禁用 git add -A 全量暂存:同一仓库里不属于本任务的修改会被裹进同一提交。提交是用户授权范围内的收尾动作,规则命中本身不构成提交授权(宿主有拦截确认机制时按其走)。
记忆分层与注入面抽象(落地载体)
蒸馏产物落到哪里、是否常驻,由运行时注入面决定,技能不硬编码任何平台路径或用户名。技能只定义抽象契约,真实载体由每个落地实例自描述。这一层把「热层/温层」从对特定平台的硬指向中解耦出来。
三层记忆
| 层 | 载体 | 性质 |
| 热层 | 常驻注入的记忆索引(如 MEMORY.md) | 每轮上下文自动可见;条目有上限(hot_layer_cap) |
| 温层 | 蒸馏卡正文 / 记忆条目文件 | 按需读取,不常驻 |
| 冷层 | tombstone + 操作日志 | 已降级/失效留痕,append-only |
注入面自描述(程序文件/配置/注入面.json)
承担者自描述文件——技能不假设任何平台路径,热层/温层的真实载体由实例自行声明:
surfaces[]:kind=memory_dir(存在性解析)/memory_index(判定是否常驻热层)+scope+path(绝对路径)platform_capability.auto_injection:该平台能否把热层索引常驻注入上下文(true→HOT 可达;false→封顶温层);该节由初始化器自adapters/<适配器id>/adapter.json的capabilities写入,实例侧禁手编hot_layer_cap:热层条目上限的唯一机器可读源(项目规范只引用不复制,避免手抄副本漂移)degradation:降级语义说明
adapters/<适配器id>/adapter.json 以 injection_surface_template 声明占位符模板(规范占位符为 <USER_MEMORY_DIR> / <PROJECT_MEMORY_DIR>):scripts/init_instance.py --adapter <id> 按模板渲染注入面并替换为真实路径,platform_capability 同源自适配器 capabilities;无适配器的平台可复制模板手工替换占位符后生效,未替换时载体不可达,按降级语义处理。随包适配器:qoder(常驻注入)与 plain(无常驻注入,诚实降级参照)。
落地指针语法(蒸馏卡「- 落地指针:」字段)
memory:<文件名>:指向注入面memory_dir内的记忆条目file:<绝对路径>[#锚]:指向规范/Skill 等文件载体none:声明无落地载体(参考索引/示例样张)- 多指针以
;分隔
判定阶梯(由弱到强)
INVALID(语法无效)< ORPHANED(指针失效)< NONE(声明无载体)< DOC(翻阅面文档,须主动读取)< WARM(必读面或载体存在未入热层索引)< HOT(载体存在且已入热层索引);另有 MISSING_FIELD(缺落地指针字段)、UNVERIFIED(注入面不可达未解析)。
- 卡判定取所有指针中最弱一档(保守口径,供台账↔实况漂移检测)
- 注入层级取最强指针所处实际生效层(常驻=热层 / 按需=温层)
降级语义(能力边界,非缺陷)
- 注入面缺失/不可解析/载体不可达 → 指针记
UNVERIFIED,维度 8 记SKIP,🟢 降WARN,不报ERROR。平台迁移会让载体消失,下次 commit 即暴露,而非让 🟢 静默生效。 auto_injection=false(平台无常驻注入能力)→ HOT 不可达,memory指针封顶WARM(按需)。这是真实能力边界,技能层无法假装修复;诚实标注为降级,不冒充热层。- 注入面缺
platform_capability声明(迁移期旧实例)→ 保守按false封顶WARM并记WARN迁移提示(补声明或接受封顶);不沉默高判,也不沉默封顶。
采用门控(声明决定义务)
维度 8/9 的指针一致性仅在「注入面.json 存在 OR 任一蒸馏卡含『- 落地指针:』字段」时生效;未采用的知识库(如无热层机制的平台)记 SKIP(not_adopted),不强判 ERROR——防跨平台假抽象。门控的两处例外:--refresh-landing-ledger 写动作与「台账缺失」存在义务不受门控——台账是 Query 第 1 步的规则集来源,其存在独立于注入面采用;未采用且台账缺失记 WARN 迁移提示(不报 ERROR),否则未采用旧实例陷入「Query 停摆、Lint 沉默、refresh 不可用」三重盲,迁移只能靠有人记得。
热层超限冻结时的落地路线(闸门语义)
台账判定某 scope 热层超限时,闸门 = 冻结该 scope 新增常驻写入,而非批量删除。冻结窗内新 🟢 的合法出口只有三条:
- 落温层(默认):建卡+指针(
memory:/file:)但不进常驻索引,待腾退(优先热→温下沉)后提升; - 标
none:参考索引/一次性素材,诚实声明无落地载体; - 复用已索引的既有条目、就地扩写其正文:索引行数不变,不属「新增常驻」。复用的唯一合法理由是新卡命题与既有条目同题延伸——cap 按条目/索引行数计量,就地扩写增长的是每行的字节数,把不相关命题塞进既有行即绕开 cap 的后门,由 Lint 裁违规。三件自证缺一不可:①
--refresh-landing-ledger后台账机器裁定该卡注入层级为 HOT;② 卡内「适用边界」预写回撤出口(判读法不当时把扩写正文退回卡内、指针降none);③ 超限读数在窗内漂移时声明是否本轮所为,未逐条追归属时如实写明。
落地台账(机器生成,禁手编)
知识库/落地台账.md 由 validate.py --refresh-landing-ledger 生成(治具唯一写文件动作,门禁路径只读),记录每卡判定/层级/证据 + 膨胀账本(热层条目数/上限/孤儿数/🟢 回测到期未更新数/🟢 回测无锚点不可判数)。手编即制造第二份漂移副本。
内容三级复用判定(机制进本体,内容逐条判定)
机制(schema / 指针语法 / 判定阶梯 / 维度 8-9 / 降级语义)可分发进技能本体;内容(记忆条目 / 蒸馏卡正文)按三问树逐条判定能否随技能分发:
- Q1 含路径 / 用户名 / 平台运行态 / 身份敏感 → C 类:不分发,且须脱敏后方可升 A
- Q2 依赖特定语境(某仓 / 某任务) → B 类:不分发
- Q3 过排他性 + 生成力两问 → A 类:可分发
扫描只针对规则正文区(标题/规则/触发场景/行为断言/适用边界);落地元数据区(落地状态/去向/指针/tombstone)不计入 Q1,摘录时占位符化。
Query(检索:任务必经路径,非被动应答)
Query 有两个时点,缺任一即视为本库在该任务上未生效("用户没问"不构成豁免——不被点名就不调用知识库的工作流,等于没有知识库):
宿主边界:「必经」是技能层的义务声明;宿主是否提供不可绕过的调用入口由实例的适配器能力(task_interception)决定——Qoder 适配器声明为 enforced_manual(人工触发纪律)。不以追加同义要求把运行边界伪装成已具备的强制力。
A. 前置检索(任务开工前;非平凡任务必做,琐碎改写可跳)
- 读
知识库/落地台账.md取规则集,分两层:🟢 = 硬约束集;🟡 = 应读候选集(场景受限规则,局限注明于卡)。台账是机器核验过的实况,不掺手抄状态,比目录.md快- 台账缺失恢复分支:治具可用 → 先运行
python scripts/validate.py <知识库根目录> --refresh-landing-ledger(治具唯一写文件动作,不受采用门控)生成再读,并在归因字段注明本次恢复;实例冻结/只读不可写 → 降级读目录.md蒸馏卡索引,且须在本任务归因记录中显式标注「降级检索:手抄状态、未经机器核验」,不得静默当作台账同权使用
- 台账缺失恢复分支:治具可用 → 先运行
- 匹配纪律:禁止用任务标题/主题词匹配卡名——主题词相同不等于场景相同,按卡名挂名正是 B 段封堵的假命中。须以本任务的具体触发条件(此刻要做的动作、对象、约束)逐条匹配候选卡的「适用边界」与「行为断言」(🟡 层先读卡内局限再判适用),判定成立即回溯整卡确认——台账行只是索引摘录,不得以半句定案。登记预期命中;
无命中 + 缺的是哪类规则是合法值——留空与"没人查过"不可区分,正是要封堵的静默 - 🟢 层命中项升为行为规则层的硬约束——约束的是"怎么做"(决策与写法必须服从),不是"准不准"(命中一条规则不构成对本次任务范围、提交、改文件扩大等的执行授权;用户当前指令与平台权限边界始终在规则之上)。🟡 层命中项读后按卡内局限定夺是否采纳——采纳按命中登记归因(写出改变了哪个决策),不采纳按
不适用+原因登记,二者不得留空;检索记录须留完整三段链「触发条件 → 命中卡 → 将改变哪一步决策」,缺任一段即未完成前置检索
B. 后置归因(与交付物同笔落,不事后补记)
- 登记
**命中:**终值,三型:命中 {卡名/规则名}——{实际改变了哪个决策}/无命中(缺哪类规则)/不适用 + 原因。库内操作(ingest/lint/query)写在知识库/操作日志.md对应条目(治具对该文件裁字段有无);库外任务写在该任务自己的交付记录里(提交信息/收尾台账) - 判据:说不出被改变的具体决策 = 未命中。挂名不算命中——为提高归因率而堆卡名,与为提高 🟢 产出率而抬高三色标记是同一种 Goodhart 反模式,由 Lint 判断层回测兜底
C. 条件回填
- 答案构成新的可复用结论时回填为新页面,让探索本身产生复利;回填页须过治具校验
- 产生新页面后:
git add <新页面及其目录.md> && git commit -m "query: 问题"(同样禁用全量暂存)
健康度读法:一段时间内 命中 : 未命中 的比值是本库健康度主指标(封闭集口径:分母 = ingest/lint/query 顶层条目全量;判据指向 HIT_FIELD_RE,不复述形状;缺登记数单列);采集条目数不是指标,它只度量进料。比值长期为 0 且「缺哪类规则」也答不出,说明库在自转,应触发 Lint 的目的偏离复盘而不是继续采集。
Lint(体检)
优先运行项目校验治具(零依赖示例:python scripts/validate.py <知识库根目录>;加 --refresh-landing-ledger 重新生成落地台账,是治具唯一写文件动作且不受采用门控——旧实例可借此自救生成台账;门禁路径只读),治具裁定优先于人工判断。治具随技能包分发:本节相对路径以技能包根为基准,治具不会自动出现在实例工作区——从实例工作目录调用须用技能安装处(生效副本)的绝对路径;实例规范里指向工作区内旧副本的写法、或 --target 等治具不认识的参数,照抄必失败。无治具时按结构层十六维逐项核查:
- 元数据完整性 — 必需字段(URL、采集时间、采集命令)是否在元数据区以
字段: 值形态齐全且值非空(正文提及不算登记;JSON 的_metadata须非空且含同名字段非空值) - 编码正确性 — 双重编码乱码、BOM、替换字符(U+FFFD)
- 格式规范性 — Markdown 须以 H1 开头且元数据与正文以
---分隔;JSON 须有_metadata字段 - 命名规范 — 是否遵循
{source}_{topic}_{date}模式 - 交叉引用 — 目录.md 与 Wiki 页链接是否指向实际文件(去
#锚点后比对,章节引用不算断链);必需入口 目录.md 存在性(缺失 ERROR);孤儿检测覆盖两层——未被目录.md 引用的 Wiki 内容页、以及既无目录条目又未被任何蒸馏卡「来源指针」引用的原始采集/**/*.md采集件(均 WARN,不阻塞)。raw 侧曾是一处扫描范围缺口:游离采集件全程零输出,「治具 PASS」被读成「库内无遗漏」;引用集并入卡片来源指针,是为了不把「已蒸馏待进目录」的正常态也读成告警 - 来源校验 — URL 是否属于来源白名单
- 蒸馏卡规范性 — 蒸馏卡必含非空「适用边界」「来源指针」章节;「否决分支」「失效扳机」两节自
CARD_REVERSE_FIELDS_SINCE起对新卡同样必填,存量卡不追改(补反向字段等于重新解释当初的规则,会催生凑数填写)。反向字段独立成节而非嵌进「适用边界」,好让既有的章节非空检查直接覆盖;「无更严分支,因本卡断言 X 已是最严形态」是合法取值——空着才算没填(validate.py 裁定) - 落地台账一致性 — 卡内落地状态 ↔ 已提交台账 ↔ 注入面实况三者一致:台账须逐卡对账——每张有效卡须被台账收录(未刷新 ERROR)、台账状态须与卡内一致(降级/升级未刷新 ERROR,防 Query 把已降级规则当硬约束)、台账不得残留已删除/改名的幽灵行(ERROR)、判定值与实况不一致 ERROR;🟢 须有存活载体(判定 ≥ WARM),缺「落地指针」字段或指针语法无效判 ERROR;注入面不可达记 SKIP 且 🟢 降 WARN(诚实降级,不报 ERROR)。采用门控:指针一致性仅在注入面.json 存在或任一卡含落地指针字段时生效,否则记 SKIP(not_adopted);台账存在义务与 refresh 动作不受该门控——未采用且台账缺失记 WARN 迁移提示(Query 第 1 步的来源),不报 ERROR
- 目录台账一致性 — 目录.md 引用的蒸馏卡须在落地台账中存在(否则 ERROR);台账中的卡应在目录.md 被引用(否则 WARN)。封堵「目录状态标记是手抄副本、下次降级再漂移」
- 🟢 回测到期 — 每张 🟢 卡的「回测记录」须有合格回测日期锚点,距今超阈值(治具常量,本仓示例 14 天)判 ERROR。锚点由机器算,t0「落地自查」行不作锚点;合格记录须以
|/|或换行为字段边界且三要素值非空(空「执行者:」吞并下一字段值不算登记),围栏代码块内的「格式示例」整块剔除不解析;一条合格回测都没有时回落卡名日期(使「从未回测」= 满窗到期而非免检);降级为 🟡/🔵 与补一条合格回测是等价出口;无任何可用日期记 WARN(不可核 ≠ 通过)。丢弃须现身:日期打头却没落在- {YYYY-MM-DD} |记录位上的行(整行加粗、- **日期 …**等实测形态)与三要素缺项的记录,逐行记 WARN 并报缺哪一项——静默丢弃会把格式缺口读成「没人回测过」,卡名日期新鲜时更是直接放行(写了等于没写且不报错) - 归因命中字段 — 操作日志中 ingest/lint/query 条目须含非空
**命中:**字段(三型取值见「Query」节 B 段),缺失或留空记 WARN;围栏代码块内的示例不算登记,条目之后的无关章节(附录/说明段)不得为该条回填字段。只裁有无与非空,不裁真伪——真伪归判断层回测抽查。无操作日志记 SKIP - 文本形态 —
原始采集/每件须在元数据区自标与上游文本的关系,取值须以闭集档位开头(逐字全文/逐字节选/转写摘要/检索汇编/内部产物/待核),括号内可补范围限定(如「逐字节选(摘要一件;PDF 正文未采)」)——限定语只缩窄范围、不改变档位;自造模糊档位判 ERROR。逐字全文/逐字节选另须附「取证凭据」且指名可复算对象(URL 或十六进制锚点,或指向件内锚点表格且件内确有十六进制锚);待核只要求凭据非空。豁免上游原件逐字节副本与二进制件,豁免按原因计数不静默 - 归因引用 — 蒸馏卡内含「原文说/原文写道/原文类比」式归因句时,其「来源指针」所列 raw 不得全为非逐字档(否则 ERROR);同卡逐字档与非逐字档并存记 WARN,移交人工复核归属。证据枚举面 = 「来源指针」节,不是整卡正文:「适用边界」「回测记录」里作为对照或反证出现的 raw 链接一旦参与档位判定,一条顺手引用的逐字件就能把不成立的归因从 ERROR 降成 WARN(假绿),反向也能让来源指针干净的卡吃进混档告警(假红)。治具不猜句子出处(猜即越界),无可解析 raw 指针时不裁定、交维度 5
- 蒸馏卡义务 —
目录.md中标 🟢/🟡 的条目(CARD_OBLIGATION_SINCE之后的存量)须在条目块内出现对应蒸馏卡_文件,否则 ERROR;更早存量属模板诞生前,不强制补卡以免凑数 - 待处置 TTL — 解析
项目规范.md的 PENDING-TTL 机器可读块:块在而文中出现 PENDING-TTL 却找不到块判 ERROR;到期日非绝对日期判 ERROR;单元格含未转义|判 ERROR(会让到期日/状态错位);状态 ∈ 待处置/待裁定 且已过期记 WARN。默认动作=维持现状并告警,绝不默认放行 - 备份新鲜度 — 从实例清单
policy_settings.backup.bundle_directory取 bundle 目录,最新文件名内嵌 HEAD 标记,git rev-list --count 标记..HEAD超阈值记 WARN;目录/标记不可核记[UNCOVERED]不放行
维度 10/11 不受维度 8/9 的采用门控约束:任何 LLM Wiki 式知识库都有 🟢 卡与操作日志,无可豁免的能力边界。维度 12-16 各自按实例声明门控:12/13 在至少一件 raw 携带文本形态时生效,14 在实例有蒸馏卡时生效,15 在实例有 项目规范.md 时生效,16 在实例清单声明备份目录时生效;未声明记 SKIP(not_adopted) 并计入覆盖率,不得读成通过。
判断层(裁定归人工或独立智能体;治具可承接其机检臂):
- 蒸馏回测 — 每次 Lint 抽 2 条落地超两周的 🟢 规则,用 1 个历史真实任务回测:当时若有此规则,决策会否不同、方向是否正确?失败 → 降级或补适用边界标注,记入操作日志;回测失败的规则不得静默保留。
- 合格回测三要素(缺一即未回测):执行者(非该卡 Generator 本人)、历史任务标识(提交号或可指的日期化任务)、结论(保留/降级/补边界)。生成者在落地当日自写的比对一律标
落地自查(t0)、不计入回测——「模型不得给自己打分」同样约束回测动作,否则生成者在生成当场即自行 discharged,效果门会被真填上的标题充数。 - 到期由治具求值,不由卡内散文自报:「距最近合格回测 > 阈值」须机器算日期锚点(阈值与判据以治具常量为唯一机器源),t0 行不作锚点。卡内不得写「落地未满两周」式相对时间——散文不会自己过期,实测曾因此把到期卡豁免成永久免检。到期后降级与补回测同为合法出口:给得出出口才使凑数无收益,取消计数只使停摆不可见。
- 假锚点须留痕不得抹除:回测中被证伪的旧锚点(援引了不存在的实体或不可复算的对象)保留原文并就地标注证伪,作为「自评式回测可以编一个可核的名字而无人去核」的实证,不静默改写历史。
- 合格回测三要素(缺一即未回测):执行者(非该卡 Generator 本人)、历史任务标识(提交号或可指的日期化任务)、结论(保留/降级/补边界)。生成者在落地当日自写的比对一律标
追加操作日志:## [日期] lint | 检查范围,条目内必含 **命中:** 字段(本轮哪些 🟢 规则改变了整改决策、哪些未命中,判据同「Query」节 B 段);有修复则 git commit -m "lint: 检查范围"。
Harness 递减:治具与流程是补偿模型弱点的辅助机制,应随模型进步单调递减。每次 Lint 时审视:哪些校验规则已不再触发?哪些步骤模型已内化?删掉它。新增机制同样受递减约束:质量过滤器与蒸馏回测若连续 3 次 Lint 未产生真实信号(未滤掉常识、未触发降级或边界补注),应审视简化或删除。删除守卫的证据门槛:「连续若干轮没触发」不构成删除依据——没报警可能因输入恰好干净,也可能因守卫正在预防性拦截;删除前须有受控负向用例证明该守卫不再拦住任何真缺陷,并附实际维护成本(误报处理、规则漂移修复合计),两者缺一即保留。
成功指标(量化)
成功与否由可机验的验收线裁定,Generator 不得自报达标(角色分离原则在验收环节的延伸):
| 操作 | 验收线(全部满足才算成功) |
| Ingest | ⓪ 第 0 步命中预登记有记录(「无命中+缺哪类规则」算满足,留空不满足);① 治具对新入库文件裁定零 ERROR;② 目录.md 条目建成且交叉引用无断链;③ 蒸馏评估产出明确三色标记(价值判定中止并留痕同样算完成) |
| Query(任务路径) | ① 开工前有规则集检索记录(🟢 硬约束集+🟡 应读候选集;台账缺失时按 A 段第 1 步恢复/降级分支执行并注明),命中项留「触发条件→命中卡→将改变哪一步决策」三段链(禁以任务标题/主题词匹配卡名,须回溯整卡);② 交付记录含 **命中:** 终值(库内操作入操作日志,库外任务入该任务交付记录);③ 若回填新页面,页面须过治具校验。缺 ①② 即本库在该任务上未生效,不因"用户未要求查询"而豁免 |
| Lint | 结构层十六维全过(治具报告 0 ERROR;采用门控下含维度 8 落地台账一致性、维度 9 目录台账一致性;维度 10 🟢 回测到期、维度 11 归因命中字段不受该门控豁免;维度 12-16 按实例声明生效,SKIP 计入覆盖率、不得读成通过)+ 判断层完成 2 条回测抽样并写入蒸馏卡 + 台账 🟢 回测到期未更新数 归零(补合格回测或诚实降级,两出口等价;不可核数记 WARN 不放行)。该计数须由治具机算给出;治具不提供此计数时记 [UNCOVERED] 并判本项未过,不得以"实例没这一维"当作通过(散文自报的「待回测数」不作数——它正是被实测证伪的那类豁免) |
期望校准:单次 Ingest 首轮返工 1–2 次(元数据补全、编码修复)属正常区间;治具裁定通过即止,禁止对摘要与元数据无限打磨——门禁既防坏产物放行,也防完美主义空转。
反 Goodhart:蒸馏产出率(🟢 占比)仅作观察指标,不得设为目标——为提高产出率而抬高三色标记属典型古德哈特反模式,由 Lint 回测审视。归因率(命中 : 未命中)是健康度主指标,同样不得设数值目标:堆卡名即可虚增,其真伪由判断层回测抽查("说不出被改变的具体决策 = 未命中"),且 无命中 是合法值——一个只能填"命中"的字段没有信息量。
采集引擎抽象(跨平台适配)
核心流程不绑定任何采集工具,采集引擎按平台可用性选择:
| 平台环境 | 采集方式 |
| Windows + Edge 浏览器 | AutoCLI:autocli read "URL" -f markdown -o "输出路径",自动提取 By/Site/URL;注意 PowerShell 下 stderr 进度信息会误报 ExitCode=1,输出含 "Saved to ..." 即成功 |
| 具备网页读取能力的智能体平台 | 网页读取工具(WebFetch 等)直接抓取并转 Markdown |
| 公开 API 来源 | Hacker News、Lobsters 等无需浏览器,直接 API 请求 |
| 无网络工具 | 用户粘贴原文,手动落盘并如实记录 采集命令 为"手动粘贴" |
无论何种引擎,入库后的元数据、校验、蒸馏要求完全一致。采集命令 字段如实记录实际使用的引擎与命令(含降级切换),保证可复现。
采集前三段常驻规则
上表是候选清单,不是可用清单:某行所记引擎在任何时点都可能已停摆,而失效的工具不会自报,所以推定可用与推定不可用同样危险,一律以实测为准。
- 动手前先体检:选定引擎前实测其在位与可执行,三态分判——未安装/在位但执行不了(解释器或依赖丢失,命令名仍在 PATH 上亦属此类)/跑起来了但返回非零。判据只取本机可观测信号:POSIX 退出码 126/127 一类在 Windows 上不可观测,且那里「内部解释器路径丢失」与「应用自身返回同一退出码」不可区分,故不得照搬其他平台的判据。
- 声明在用什么:动手前说一句「本轮用 X 引擎 / Y 通道」。本条是事前声明(供当轮纠偏与归因),
采集命令字段是事后终值(供复现)——两者对象不同,不构成重复登记。 - 失败走成文链,不在无效通道上重试:命令失败时按实例自成的通道清单/坑位台账(本方法论不规定其文件名与格式)顺序降级,并在同轮记下切换原因。兜底成功不得把断链通道读成正常——失效通道须在报告里带出修复方向,否则「反正还有别的通道」会长期掩盖规范与实况的漂移。无成文链时先实测再定性,把结论回报 Planner 更新 Schema,不私改规范。
GitHub 一手逐字件配方
采集对象为 GitHub 仓库(尤其社媒/视频热推仓库)时,上表的常规抓取不足以支撑逐字引用,须过四关:
- 身份先核:请求
api.github.com/repos/{owner}/{repo}取default_branch/created_at/pushed_at/stargazers_count当场读数并记入操作日志;★数、排名类是开放全集上的浮动读数,只作本轮封闭子集凭据,不得钉为永久常量。 - 通道降级链:
raw.githubusercontent.com直连 →api.github.comcontents 端点 base64 解码 → WebFetch 摘要(仅作存在性证据,弃用为逐字源)。实际走的通道写入采集命令字段。 - 字节级对账:LF 二进制写盘,同轮计算
sha1("blob " + 字节数 + "\0" + bytes)与 API 返回 sha 对账;引用区间由脚本现算定界。引用上游行号前先在落盘 raw 上 grep 复核行号偏移换算——凭记忆转写行号,错一行即整段引用系统性错位。 - 宣称逐项裁定表:热推源每项宣称(榜单位次/蝉联天数/案例数)逐条裁
属实 / 不可核 / 系引流 / 未实跑无从判定,证据引用本轮当场读数;「仓库存在」不得充当「宣称属实」的替身。
本配方只解决「采到的字是不是真的」;工具本体要不要引入本工作区,由宿主层的落地试用存在性判据裁定,技能层不重复该判据。
携带包身份(跨宿主校验的对撞对象)
同一实例可由多个宿主/多份副本交替写入,故须成文校验器的对撞对象,否则「门禁跑过了」会被读成「被检方合格」:
- 判据形状:
scripts/validate_release_lock.py的比对对象是脚本自身所在的那份副本(PACKAGE_ROOT = Path(__file__).resolve().parents[1]),当前无「被检方」入口(不接受包路径参数)。 - 推论:要校验宿主 B 的携带包,必须运行 B 自带的那份校验器;用 A 的脚本检 B,得到的是 A 的读数(对本例即恒
PASS,属假绿)。宿主副本未自带该脚本时校验无从运行,「跑不到」按失败处理、不得读成「通过」,差异由写入方登记进实例侧未决账后停笔,不带不合格携带包继续写内容面。 - 边界:本判据只裁「携带包 == 实例锁
release_id」这一条身份形状;实例内容与包是否一致由scripts/validate.py裁,两者不互为替身。--instance传实例清单(agent-wiki-instance.json)而非锁文件,且须在该实例根目录运行(相对路径按此解析)。
约定速查
- 文件名:
{source}_{topic}_{date}.{ext},source 小写 - 操作日志:append-only,格式
## [日期] {ingest|query|lint} | 简述;ingest/lint 条目内必含**命中:**字段(取值三型见「Query」节 B 段) - commit message:
{ingest|query|lint}: {简述};初始化:init: 知识库基线 - 踩坑教训结构化记入
采集经验.md,不混入操作日志 - 蒸馏卡:
蒸馏卡_{topic}_{date}.md,格式见references/rule-template.md,适用边界/来源指针必填;生效日后的新卡另填否决分支/失效扳机 - 包内目录(出生即声明):
policies/=实例治理策略 JSON(能力声明、路径与跨文件维度清单,供适配器与审计读取;当前不驱动执行,治具执行口径以scripts/validate.py的DIMENSIONS注册表为唯一机器源,改维须改代码并换包);templates/=实例清单与注入面模板 JSON(instance-manifest / injection-surface),供 adapters 渲染。回归测试(治具行为、便携实例)属仓内侧,不进发行清单
常见卡点与出口
本表只指路、不复述判据:判据的单一来源是各节正文与治具源码,此处任何一行都不得当作判据原文。表内指针的有效性由仓内回归测试机检——改了标题不改指针,守卫即变红,不靠记得同步。
| 症状(现读得到) | 真因 | 合法出口 |
在实例工作区敲治具报找不到文件,或照抄 --target inbox 报错 | 治具随包分发、不自动出现在实例工作区;且它只认位置参数 root,无 --target 这一档 | 用技能安装处(生效副本)的绝对路径调用,见「Lint」 |
| examples 自检出 PASS_WITH_SKIP,被读成全维通过 | 其余维度按实例声明门控 SKIP,SKIP 计入覆盖率 | 读末三行读数(总问题数/覆盖率/结果)再定性,见「采用门控」 |
| 台账里 🟢 卡一律判 UNVERIFIED | 注入面占位符未替换,载体不可达 | 替换占位符,或接受封顶温层——两者都是合法态,见「降级语义」 |
| 新实例 Query 第 1 步读不到落地台账 | 台账尚未生成;该存在义务不受采用门控 | 用 refresh 动作自救;只读实例降级读目录并显式标注未经机器核验,见「采用门控」 |
| 手工改过落地台账,下次刷新读数又变回去 | 该文件机器生成,手编即制造第二份漂移副本 | 重跑 refresh,见「落地台账」 |
| 🟢 卡判回测到期 ERROR | 距最近合格回测超阈值,由治具按日期锚点机算,卡内散文自报不作数 | 补一条合格回测或降级为 🟡/🔵,两出口等价,见「Lint」 |
| 回测写了几行仍判从未回测 | 登记形态没落在机器认的位置,或援引的是 t0 落地自查行 | 见「Lint」维度 10 的形态判据 |
| 热层超限,第一反应是批量删条目 | 闸门语义=冻结该 scope 的新增常驻写入,不是删除 | 三条合法出口(落温层/标 none/同题就地扩写),见「热层超限冻结时的落地路线」 |
| 改包内任一文件后锁门禁 rc=1,连无关内容提交也被拒 | 那是身份门(比对校验器自身所在副本的发行身份),不回答好不好 | 走换包顺序:重建包→部署→先不改锁应 FAIL→重钉锁应 PASS,见「携带包身份」 |
| 用 A 宿主的脚本检 B 宿主的携带包,恒 PASS | 判据对象是脚本自身所在副本,得到的是 A 的读数 | 各宿主跑自己那份;宿主没自带副本时跑不到按失败处理,见「携带包身份」 |
| 归因率上涨但库没让任何决策变好 | 挂卡名充数属 Goodhart;治具只裁字段有无与非空,不裁真伪 | 说不出被改变的具体决策就改判未命中,真伪交判断层抽查,见「Query」 |
| 存量老卡被要求补否决分支与失效扳机 | 该义务自生效日起只裁新卡,存量不追改(追改即重新解释当初的规则) | 见「Lint」维度 7 |
| 一轮提交里混进与本任务无关的修改 | 用了全量暂存;且命中一条规则不构成对本次范围、提交或改文件的执行授权 | 逐路径暂存,见「Ingest」第 8 步与「Query」A 段第 3 步 |
| 采集命令在 PowerShell 下 ExitCode=1,但文件已写出 | stderr 进度信息误报退出码,输出含 Saved to 即成功 | 按引擎各自的判据读,见「采集引擎抽象」 |
| Windows 终端里治具中文输出乱码,读不到真因 | 控制台编码问题,不是治具缺陷 | 设 PYTHONUTF8=1 复跑取读数,不据乱码改判据 |
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

