Skip to content

📄 本页由源文件 skills/knowledge-loop/SKILL.md 自动投影生成(单一权威源)。请勿直接编辑本页。

knowledge-loop

<!-- ┌──────────────────────────────────────────────────────────────┐ --> <!-- │ ❄️ 冻结横幅 / FROZEN BANNER(Phase 1 重构,2026-05-15) │ --> <!-- ├──────────────────────────────────────────────────────────────┤ --> <!-- │ 本文件是 AI 运行时入口(提示词层),不是规则真相来源。 │ --> <!-- │ │ --> <!-- │ 单一权威源(Single Source of Truth): │ --> <!-- │ • 前置物 schema → config/frontmatter.schema.json │ --> <!-- │ • 状态机定义 → config/state-machine.yaml │ --> <!-- │ • 阈值/健康度 → config/thresholds.yaml │ --> <!-- │ • 依赖/lint/校验脚本 → scripts/{precheck,lints,lib}/ │ --> <!-- │ • 设计哲学/重构决策 → references/refactor-plan.md │ --> <!-- │ │ --> <!-- │ 修改规则: │ --> <!-- │ 1. 任何「确定性规则」改动必须先动 config/scripts,再回引 │ --> <!-- │ 到本文件;禁止只在提示词里描述硬规则。 │ --> <!-- │ 2. 本文件章节如与 config/scripts 冲突,以 config/scripts 为 │ --> <!-- │ 准;冲突即视为本文件失效,需立即修订。 │ --> <!-- │ 3. 跨文件协作必须双向引用(参考 AI 行为规范.mdc §跨文件 │ --> <!-- │ 协作设计模式)。 │ --> <!-- └──────────────────────────────────────────────────────────────┘ -->

定位:dev-flow 的唯一本地代码知识存储与检索层,让 AI 越用越聪明。 与 远程知识库 MCP(remote_kb) 远程知识库互补——本 skill 是 AI 的「肌肉记忆」(本地、可写、AI 沉淀),知识库平台 是项目的「全景地图」(远程、只读、源码语义检索)。 可被 dev-flow 步骤 1/5/7/10/收尾按需调用,也可独立使用。

与 知识库平台 的边界(重要)

维度本 skill(knowledge-loop)知识库平台 / remote_kb MCP
存储位置本地 ~/.codebuddy/knowledge/{project}/远程 knowledge_uuid
可写性✅ 可写(强制沉淀)❌ 只读(被动检索)
内容形态Markdown + YAML(5 主题文件)git/git_doc_platform/commit/MR 索引
数据来源AI 沉淀 + 用户验证项目源码 + doc_platform + commit + MR
调用方式use_skill('knowledge-loop')use_mcp_tool(server=remote_kb, tool=knowledgebase_search)
触发词归属「代码知识」「本地知识库」「沉淀知识」「MCP 知识库」「knowledge_uuid」「remote_kb」「git_doc_platform」

⚠️ 用户说「MCP 知识库」「knowledge_uuid」「remote_kb」「doc_platform」时不要触发本 skill——那是 知识库平台 的范畴,应使用 dev-flow 的 知识库平台 MCP 调用机制。

路由规则

模式触发方式加载文件
检索模式dev-flow 步骤 1/5 调用read_file("modes/retrieve.md")
沉淀模式dev-flow 步骤 7/10/收尾调用read_file("modes/deposit.md")
管理模式dev:kb 命令 / 用户主动操作read_file("modes/manage.md")
自动捕获非 dev-flow 对话中发现有价值知识read_file("modes/auto-capture.md")

💡 检索模式自带「sync 滞后检测」:dev-flow 步骤 1 触发检索时,自动比对 _index.md.last_synced_shaorigin/{base_branch},若已偏离/超 7 天/从未 sync 则提示用户先跑 dev:kb sync,避免引用过期 verified 知识。完整规则见 modes/retrieve.md § sync 滞后检测。

加载策略

  • 单一模式:识别到明确模式后只加载对应文件,不加载其余
  • dev-flow 调用时:dev-flow 步骤说明中会指定模式(如「检索模式」「沉淀模式」),直接加载对应文件
  • 自动捕获:非 dev-flow 对话中,AI 检测到有价值的项目知识时,加载 auto-capture.md 执行轻量沉淀
  • 不确定时:默认进入管理模式(展示概览+选项)

dev-flow 集成映射

dev-flow 步骤模式行为
步骤 1(研究定位)检索自动检索项目知识,输出匹配结果;附带 sync 滞后检测last_synced_sha 落后远端 base / 超 7 天未 sync / 从未 sync)
步骤 5(编码)检索按改动文件类型动态加载对应主题知识
步骤 7(清理+Commit)沉淀标准执行/批次最后一批:强制沉淀(禁止跳过)
步骤 10(归档交付)沉淀完整执行:强制沉淀(禁止跳过)
收尾环节 H.3沉淀收尾模式:强制沉淀(禁止跳过)
dev:kb / dev:k管理查看/扫描/搜索/健康检查/验证/可视化

dev-flow 调用约定

  • dev-flow 通过 use_skill('knowledge-loop') 调用,附带模式标识(如「检索模式」「沉淀模式」)
  • 加载后按模块内部规则执行,无需回到本入口文件
  • 批次执行非最后一批:跳过沉淀(推迟到最后一批)

存储位置

~/.codebuddy/knowledge/{project-name}/ — 三级结构:项目→模块→主题(_index.md / {module}/_overview.md / {data-model,api,logic,ui,pitfalls}.md / _patterns/ / _recipes/)。

📌 完整目录树 + 命名规范 + frontmatter schema 详见 references/schema.md


执行链路(确定性规则的物理事实层)

重要:本 skill 所有「确定性规则」均由 config/ + scripts/ 兜底。AI 涉及"前置物校验 / 健康度计算 / 状态判定 / 依赖检查"动作时必须调用脚本而非根据本文件提示词推理——脚本/配置才是规则真相。

配置权威源(修改这里即修改规则):

  • config/frontmatter.schema.json · config/state-machine.yaml · config/thresholds.yaml

脚本执行入口(CLI 直接验证 · 退出码语义见 catalog):

  • 库:scripts/lib/{yaml-bridge,score,state}.sh
  • Lint:scripts/lints/check-{frontmatter,state,health,staleness}.sh
  • 守卫:scripts/precheck/check-deps.sh
  • 测试:scripts/tests/run-tests.sh(当前 6 套件 37 用例 · PASS=37 / FAIL=0)

详尽规约(CLI 用法 / 退出码语义 / 调用规约 / 设计哲学回引):见 references/scripts-catalog.md

📌 任何与脚本输出冲突的本文件描述视为本文件失效,需立即修订(与 ❄️ 冻结横幅 §修改规则 第 2 条一致)。设计哲学一句话:确定性用代码(schema/lint/yaml),模糊性用 LLM


核心原则

  • 唯一本地来源:knowledge-loop 是 dev-flow 的唯一本地代码知识检索和沉淀目标(远程语义知识用 知识库平台)
  • 宁多勿少:不仅沉淀本次需求改动,还要全面沉淀开发过程中接触到的所有模块知识
  • 按需加载:知识分主题存储在独立文件中,AI 按需加载而非全量加载,优化 token 效率
  • AI 友好:Markdown 格式,带 YAML frontmatter 元数据,机器可读可写
  • 强制沉淀:每次需求完成都必须沉淀,禁止以任何理由跳过
  • 集中存储:knowledge/ 统一存储在 ~/.codebuddy/knowledge/,禁止在项目目录中创建

独立使用

用户说AI 行为
"帮我沉淀下这个模块的知识"read_file("modes/deposit.md") 进入交互式沉淀
"查看项目知识库" / dev:kbread_file("modes/manage.md") 进入管理模式
"搜索知识库 xxx" / dev:kb search xxx / dev:k s xxxread_file("modes/manage.md") → 搜索
"扫描代码知识" / `dev:kb scan [module--all
"git pull 后对齐知识库" / "拉了最新 master" / dev:kb sync / dev:k syread_file("modes/manage.md") → §「dev:kb sync」(双场景:他人改动漂移检测 + 自己 pending 升级 verified)
"知识库健康度" / dev:kb health / dev:k hread_file("modes/manage.md") → 健康检查
"审计自动升级知识" / dev:kb audit / dev:k a / dev:kb audit --all / dev:kb audit --archived / dev:kb audit --reject <id> / dev:kb audit --confirm <id>read_file("references/confidence.md") → §「scanned 自动升级规则」「异步审计与反悔机制」
"验证知识一致性" / dev:kb verify / dev:k vread_file("modes/manage.md") → 验证
"知识地图" / dev:kb dashboard / dev:k dread_file("modes/manage.md") → 可视化
"导出知识库" / dev:kb export --format=xxx / dev:k e xxxread_file("references/mcp-export.md") → 导出
"提升全局模式" / dev:kb promote <pattern>read_file("references/lifecycle.md") → 跨项目模式提升

References(深度参考,按需加载)

文件用途加载时机
references/schema.md目录结构规范 + 文件格式 + 项目名称映射首次创建项目知识库时
references/confidence.md置信度体系 + 代码漂移检测逻辑检索时发现疑似漂移 / 沉淀时更新置信度
references/lifecycle.md生命周期管理(过期规则/刷新机制/废弃流程/跨项目提升)管理模式的健康检查 / 过期预警 / 模式提升
references/team-sharing.md团队共享方案(Phase 2 扩展)用户询问团队共享时
references/mcp-export.md跨工具导出与 MCP 集成用户要求导出知识库 / 跨工具使用 / MCP 集成
references/scripts-catalog.md§执行链路 详尽规约(脚本 CLI 用法 / 退出码语义 / 调用规约)修改 config 或 scripts / 查脚本输出语义 / 排查与提示词冲突
references/cross-repo-linkage.md跨仓库参数链路联动写入范例(含 B→A 完整示例 + 3 种常见模式 + 自检清单)deposit.md 步骤 5.6 按需加载

基于「单一权威源」哲学构建 —— 文档由源文件投影生成