其他
需要捕获、维护或消费 OKF 知识包时,按 OKF…
用 OKF bundle 以人机可读的 Markdown + YAML frontmatter 记录、同步或读取项目知识(服务、API、schema、指标、runbook、决策)时使用。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 35/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 39/100 ×0.15
适用场景
需要捕获、维护或消费 OKF 知识包时,特定
解决思路
- 非平凡工作前先阅读权威规范 `reference/SPEC.md`(OKF v0.2 规范,所有规则的唯一事实来源)。
- 确保 bundle 合规:每个非保留 `.md` 文件都有可解析的 YAML frontmatter 块。
- 确保每个 frontmatter 块都有非空 `type` 字段。
- 消费时容忍缺失的可选字段、未知类型、损坏链接,不要因此拒绝 bundle。
- 遵循一个概念一个文件;文件路径去掉 `.md` 就是概念 ID。
- frontmatter 中 `type` 必填;有助于消费时添加 `title`、`description`、`tags`。
- 仅当概念绑定到真实资产时添加 `resource`(规范 URI);抽象概念省略 `resource`。
- 正文优先使用结构化 markdown(标题、表格、列表、围栏代码块)。
- 使用约定标题:`# Schema`、`# Examples`、`# Computation`。
- 跨链接使用标准 markdown 链接;优先使用 bundle 绝对相对形式,如 `/services/auth-api.md`。
- 链接表示关系;关系类型写在链接周围文字中,不要写在链接里。
- 保留文件名 `index.md`:目录列表,通常无 frontmatter;bundle 根索引可包含 `okf_version` 和本插件的 `upkeep: enforced` opt-in 标志。
- 保留文件名 `log.md`:ISO 日期变更历史,最新在前。
- 绝不要用 `index.md` 或 `log.md` 作为概念文件名。
- Trust 家族:写 `generated: { by, at }`,记录当前内容由谁在何时产生。
- 写 `verified: [{ by, at }]`,记录此后由谁确认;裸 mapping 视为一条记录。
- `by` 使用 actor 约定:agent 用 `<producer>/<version>`,人用 `human:<id>`,自动化任务用 `process:<id>`。
- 只要由人撰写或签核,就用 `human:` 前缀;消费者依赖该前缀划分信任层级。
- Lifecycle:使用 `status: draft|stable|deprecated`;缺省表示 stable。
- 使用 `stale_after`,值为绝对 ISO 8601 日期时间(容忍裸日期),不是 TTL。
- Provenance:使用 `sources: [{ id, resource, title, author, usage_count, last_modified }]`。
- 在 `sources` 同级添加 `usage_window: { from, to }`,为每个 `usage_count` 提供时间窗;条目可自带 `usage_window` 覆盖。
- `usage_count` 没有 window 会产生警告。
- 每个 source 条目的 `resource` 必填,可为 URL、bundle 路径或范围描述符。
- 用 markdown 脚注归因具体声明,脚注标签为 source 的 `id`,如 `…sharded daily.[^ga4-schema]`,并添加 `[^ga4-schema]: …` 定义。
- 脚注标签是连接键,必须匹配 `sources[].id`。
- Attestation:将受认可的计算作为独立概念,`type: Attested Computation`。
- 该概念必须携带 `runtime`(必填),以及 `parameters`、`executor`、`attester`。
- 计算本身放在 `# Computation` 下,或通过 `computation:` 路径引用。
- 需要该值的概念链接到 Attested Computation,绝不要把自己叙述的数字 SQL 内联到概念中。
- 读取 v0.1 bundle:`timestamp` 已由 `generated.at` 取代。
- 读取 v0.1 bundle:正文 `# Citations` 列表已由 `sources` 取代。
- 读 v0.1 和 v0.2,写 v0.2;在 maintain 模式触碰遗留概念时,作为编辑的一部分迁移其 frontmatter。
- 验证器会对 `timestamp` 和正文 `# Citations` 产生警告。
- 复制模板:`templates/concept.md`、`templates/index.md`、`templates/log.md`。
- 默认 bundle 位置为仓库根目录 `.okf/`,除非项目已使用其他位置。
- 将 bundle 与它描述的代码一起提交(知识即代码)。
- produce 模式:新建 bundle 时使用 init 快速路径,而不是手写第一批文件。
- 运行 `uv run "${CLAUDE_SKILL_DIR}/scripts/okf_init.py" <target-dir> [--title "..."]` 来脚手架生成合规的 `index.md`、`log.md` 和带完整推荐 frontmatter 的 `getting-started.md` 概念。
- init 会拒绝触碰已有 `.md` 文件的目录,除非给出 `--force`。
- produce 模式扩展:阅读 `reference/SPEC.md`。
- produce 模式扩展:选择来源:代码(从源码、README、docstring、配置推导概念)、文档/wiki(将页面提炼成概念,在 `sources` 记录原始页面)、手动(决策、playbook、指标)。
- produce 模式扩展:按领域选择目录布局(如 `services/`、`datasets/`、`decisions/`);一个概念一个文件。
- produce 模式扩展:按 `templates/concept.md` 写每个概念:设置有描述性的 `type`,填写推荐字段,记录 `generated` 和实际读过的 `sources`,交叉链接相关概念。
- produce 模式扩展:为每个目录添加/刷新 `index.md`,并在根索引写 `okf_version: "0.2"`。
- produce 模式扩展:向 `log.md` 追加带日期的条目。
- produce 模式扩展:验证;完成前修复每个错误。
- maintain 模式:识别变更影响的概念(按 `resource`、路径或主题搜索)。
- maintain 模式:在一次操作中触碰每个受影响文件(这类簿记正是 agent 擅长的)。
- maintain 模式:更新正文和 `generated.at`,并在 `generated.by` 写自己的 actor。
- maintain 模式:修复或添加交叉链接。
- maintain 模式:为新资产创建新概念。
- maintain 模式:移除的资产标记 `status: deprecated`,并在 `log.md` 记录弃用,不要静默删除上下文。
- maintain 模式:若面对整个 v0.1 bundle,不要手工编辑,运行验证器 `--migrate` 一次。
- maintain 模式:更新相关 `index.md` 文件,并向 `log.md` 追加带日期条目,描述变更。
- maintain 模式:验证。
- consume 模式:先读 bundle 根 `index.md` 进行渐进披露,然后只沿链接进入与任务相关的概念。
- consume 模式:权衡所读内容:`status: draft`/`deprecated`、`stale_after` 已过、或没有 `verified` 条目,都表示依赖前需检查。
- consume 模式:将损坏链接视为尚未写入的知识,而不是错误。
- consume 模式:需要 `Attested Computation` 覆盖的数字时,使用绑定到声明 `parameters` 的值运行它自己的 computation,绝不要自己写查询。
- consume 模式:若工作中获得持久知识,切换到 maintain 并写回。
- 验证:绝不肉眼检查合规性;运行确定性检查器。
- 验证:调用配套 `validate` 技能 `/okf:validate <bundle-dir> --strict`,它自带检查器。
- 若未安装该技能,直接运行 `uv run "${CLAUDE_SKILL_DIR}/../validate/scripts/okf_validate.py" <bundle-dir> --strict`。
- 验证:解决每个 `ERROR`(§11 硬失败)。
- 在 `--strict` 下警告也会导致失败(exit 1),所以也要清除警告;若只想门禁 §11 合规,去掉 `--strict`(或使用 `--max-warnings N`)。
适用边界 · 注意事项
- 项目或团队未采用 OKF 格式时,不要强行引入 `.okf/` bundle;除非先决定采用 OKF v0.2。
- 无法运行 `uv`/OKF 初始化与验证脚本,且不接受手动遵循规范并自行验证时,不适合使用本技能。
- 没有先读 `reference/SPEC.md` 时,不要进行非平凡的 produce、maintain 或 consume 操作。