SuperAPI AI 工具集

recursive-boil-down

编程与开发

查看项目

更新于 10-15 09:42

技能介绍

用途

递归分解协议用于在决定“构建新系统”之前,将目标系统、仓库或架构逐层拆解,并与已有基座进行诚实对比,使“构建新”这一结论是被论证出来的,而非默认假设。它主要解决代理或开发者因只接触系统表层(Macro 层)而误以为一切独特、进而重复实现已有工具的问题。

四个层级

协议将系统分为四层,每层对应一个核心问题与粒度:

  • Macro(整体系统):整个东西是做什么用的?粒度为一个系统。例如“跨会话持久化记录所有提示词的注册表”。
  • Bricks(组件):由哪些组件构成?粒度为 3–12 个组件。例如捕获钩子、会话解析器、索引生成器、归档存储。
  • Elements(概念原语):组件操作哪些概念?粒度为 5–20 个概念。例如会话、提示词原子、捕获事件、索引条目、归档路径。
  • Primitives(基础操作):概念之下反复出现哪些基础操作?粒度为一个小型封闭集合。例如仅追加写入、内容哈希去重、frontmatter 解析、glob 遍历、ID 生成。

分解是递归的:任何无法用一句话说清的 Brick,都需要单独进行四层分解。

工作流程

  1. 读取声明意图:只读方式读取 seed.yaml(或仓库的清单/章程等价物),它声明系统自认为是什么。若无 seed,则记录为治理发现(未声明系统),并从 README 与入口点重建意图。在形成自己的判断前,逐字记录声明的 Macro 陈述。

  2. 自顶向下遍历源码:从入口点 → 主要模块 → 数据文件。每一层问层级问题,不是“这段代码做什么”,而是“它由什么构成”。Bricks 列表应来自实际结构(目录、服务、脚本),而非文档声明;与 seed 的声明做差异对比并记录分歧。

  3. 自底向上提取 Elements 与 Primitives:Elements 是跨多个 Brick 存活的共享概念词汇;若一个名词只出现在一个 Brick 中,则属于内部细节而非 Element。Primitives 是 Elements 之下反复出现的动词/操作。判断原语性的测试:该操作能否被提升为无领域知识的库?若能,则为 Primitive。保持 Primitive 集合小而封闭;原语列表过于庞杂意味着你停在了高一层。

  4. 构建基座对比表:对范围内每个已有基座(兄弟仓库、平台服务、先前系统),按层对比。表格列包括层级、新系统、基座 A、基座 B、裁决。单元格词汇:✅ 相同 / ≈ 重叠(指出差异)/ ❌ 缺失。

  5. 发布复用裁决:真正新颖的最高层级决定构建姿态:

    • 新颖 Macro、下层共享 → 在已有基座上做薄组合,只构建组合部分。
    • 新颖 Bricks → 在已有系统内新增组件;扩展而非分叉。
    • 仅新颖 Elements/Primitives → 几乎总是误读,需重新审视。
    • 无新颖 → 吸收:所谓“新系统”只是已有系统的一个视图,将需求路由到那里。 明确陈述裁决及支撑它的层级。将分解与表格作为工件提交,它是构建决策引用的证据。

反模式

  • 仅从文档分解:README 描述的是愿景,应遍历源码。
  • 停在 Bricks:组件级对比会掩盖复用——多数“窃取”发生在 Elements 与 Primitives 层。
  • 与零个基座对比:没有对比表的 boil-down 只是图,不是协议;表格才是交付物。
  • 将 seed 视为绝对真理:它是系统的自我形象;seed 与源码的分歧本身就是顶级发现。
  • 开放式原语列表:若 Primitives 超过约 12 个,说明层级混淆;应将领域特定的提升回 Elements。

适用场景与限制

该协议适用于评估是否应新建系统、仓库或架构,尤其适合代理委派场景中避免重复造轮子。其限制在于:需要可访问的源码与已有基座信息;若缺乏对比基座,协议效果受限。资料未提供具体平台、收费、价格或效果数据。