对象:EveryInc/compound-engineering-plugin 版本:ships 30 skills / 0 standalone agents,专家 review、research 逻辑都内嵌在各 skill 的本地 prompt 资产里。

一句话哲学

每一次工程工作,都应该让下一次更容易,而不是更难。80% 在规划和评审,20% 在执行。

传统开发不断累积技术债;复利工程(compound engineering)把它反转过来。关键在最后一步 ce-compound——把每次的学习沉淀进 docs/solutions/,让下一轮的 ce-brainstorm / ce-plan 把它当 grounding 读回去。那根"回头箭头"就是整件事的意义。


核心循环(6 步,每个 feature 都走一遍)

这是插件的主干,README 里明确定义的 “the core loop”:

顺序技能用途
1ce-brainstorm交互式问答,把模糊/宏大的想法收敛成"只讲需求"的统一计划文档。只定义做什么,不涉及怎么做。
2ce-plan把需求文档充实成"可实现"的实现计划(拆步骤、定关键文件、权衡架构)。
3ce-work按计划逐步执行,配合 worktree + 任务跟踪。独立用时负责到提交;被上层编排时只做实现 + 本地验证。
4ce-simplify-code评审先自我收拾:对刚写的代码做清晰度/复用/效率整理(不找 bug)。
5ce-code-review多 agent 角色化评审,对照计划找 bug、回归、测试缺口、规范问题。
6ce-compound把解决的问题/项目词汇沉淀到 docs/solutions/CONCEPTS.md产物被下一轮第 1、2 步读取——闭环关键。

标准调用:

/ce-brainstorm 让后台任务重试更安全
/ce-plan
/ce-work
/ce-simplify-code
/ce-code-review
/ce-compound

循环之外的技能,分七类

① 上游选题 / 战略(还不知道做什么时)

技能位置用途
ce-strategy最上游锚点建/维护 STRATEGY.md,被 ideate/brainstorm/plan 当 grounding 读取。
ce-ideate循环之前先做功课(代码库、过往学习、web 先例、可选 issue),产出排好序的候选点子,把最强的送进 ce-brainstorm
ce-pov承诺之前(按需)外部输入给出落到本项目的决断性判断:该不该采用/切换某技术、库、模式、平台;某 CVE/弃用是否真影响本项目。给分级裁决,不做中立科普。
ce-product-pulse外层循环时间窗口的"产品脉搏"报告(用量、性能、错误),存 docs/pulse-reports/,follow-up 反哺 ideate/brainstorm。

② 调试分叉(遇到 bug 而非 feature)

技能用途
ce-debug替代 brainstorm→plan→work 的入口。复现失败、追根因、修复,必要时再走 polish/review 后交 PR。

③ 交付 / PR

技能用途
ce-worktree确保工作在独立 git worktree 里进行(通常在 work 之前)。
ce-commit生成一条"讲清价值"的 commit message 的提交。
ce-commit-push-prcommit + push + 开 PR 一条龙(也支持只写/重写 PR 描述)。
ce-resolve-pr-feedback处理 PR 评审意见、解决 review threads(一次性)。
ce-babysit-pr持续盯一个开着的 PR,不断响应新评审意见(转 ce-resolve-pr-feedback)和 CI 失败(转 ce-debug)直到可合并。仅 GitHub。

④ 测试 / 打磨

技能用途
ce-test-browser对当前分支/PR 影响到的页面跑浏览器测试。
ce-test-xcode用 XcodeBuildMCP 在模拟器上构建 + 测试 iOS app。
ce-polish起 dev server、在浏览器里看功能、迭代打磨 UX。
ce-dogfood无人值守、限定 diff 范围的浏览器 QA:映射用户流程、真实浏览器驱动、自动修小故障 + 加回归测试 + 提交、按 persona 评判体验、写报告。仅手动触发。
ce-optimize指标驱动的优化循环(搜索相关性、聚类质量、构建性能、prompt 质量等),靠实验迭代。

⑤ 知识 / 文档(复利的载体)

技能用途
ce-compound(核心第 6 步)记录解决方案/项目词汇。
ce-compound-refresh审计 docs/solutions 里过时、重叠、被取代、漂移的学习条目并刷新。
ce-doc-review用角色化视角评审需求/计划/spec 文档(改进规划文档,不评审代码)。
ce-explain把概念/diff/想法/“我这周做了啥"变成为你个人写的、密集可视化的讲解,可选 check-in 帮记忆。用于学习,不是仓库文档。
ce-proof在 Proof 里发布/读/评论/编辑 markdown,把 spec/plan/draft 一键发成可分享链接。
ce-promote为已上线功能起草发布/推广文案。

⑥ 反馈 / 运营

技能用途
ce-sweep扫描配置好的反馈源(Slack、GitHub Issues,email 实验性):源头 ack、分析录屏、验证修复已合入 main,产出 /lfg-ready 计划。支持 mode:headless 定时跑。
ce-riffrec-feedback-analysis把 Riffrec 录制/bundle(zip、webm、mp4、音频等)转成结构化反馈,handoff 给 ce-brainstorm

⑦ 编排 / 运维

技能用途
ce-setup装完后在任意项目里跑,检查 CE 健康度、repo-local 配置、可选工具能力。建议最先跑一次。
lfg全自动流水线:plan→work→simplify→code-review 并应用修复→browser 测试→commit→push→开 PR→盯 CI 修到绿。全程无 check-in。建议先 ce-brainstormlfg

ce-povce-proof 详解

这两个最容易被误解,单独展开。

缩写说明:pov = Point of View(观点/立场)——ce-povSKILL.md 正文标题就是 “Form a Point of View”,语义即"对某外部技术形成一个有立场的判断,而非中立罗列”。

ce-pov — 形成一个"观点"

对外部世界的东西(框架、库、模式、平台、CVE、弃用、生态变化)给出落到本项目的决断性判断。

  • 不做中立科普,只回答"就我们这个项目而言,要不要采用/切换/重估它"。
  • 护城河 = 两条硬底线:必须同时踩到项目底线(一个已核实的项目事实:现有选型 + 它用在哪)和外部底线(至少一个已核实外部来源)。两条独立,外部证据再强补不了项目那条腿。
  • 可逆性三档(两向门 / 单向有界 / 单向高风险)决定调查深度。
  • 产出分级裁决:Adopt / Trial / Hold / Reject / Not-our-problem,并路由下一步(ce-plance-brainstorm 或 spike)。字段无法界定时 Hold 并转 ce-ideate/ce-brainstorm
  • 支持 cold(冷启)warm(会话中要第二意见) 两种触发。

ce-proof — 发布到 Proof

Proof 是 Every 家的协作式 markdown 编辑器(hosted,proofeditor.ai),此 skill 是它的发布/协作客户端。

  • 主用途是单向发布:把本地 brainstorm/plan/learning/draft 读出来发成 Proof 文档,返回可分享链接。本地文件仍权威,不回写。
  • 两个入口:用户直接说 “share this to proof”;或 ce-brainstorm/ce-ideate/ce-plan 完成草稿后 handoff。
  • 只发 markdown;凭据分 accessToken(日常)和 ownerSecret(owner 操作),都不入库;给人的永远是带 token 的链接。
  • 反向触发词:不是 proofread、不是数学证明、不是 proof-of-concept。

lfg 详解 — 唯一的全自动编排器

缩写说明:lfg = “Let’s F***ing Go”(网络俚语,“冲/出发”)。SKILL.md 未逐字展开缩写(命令名直接叫 lfg),这是社区通用俚语,Every 团队用它命名全自动 “autopilot” 命令——语义即"甩手交给它,冲到底"。

它是插件里唯一全自动、无 check-in 的端到端编排器:把核心循环的多个 skill 串成一条严格有序、带闸门(GATE) 的流水线跑到绿 PR,人不介入。各步与关键契约(据 lfg/SKILL.md):

调用的 skill关键闸门 / 契约
1ce-plan传入 “settled-decisions brief”;必须产出 docs/plans/ 计划文件且 implementation-ready 才继续;非软件任务直接停
2ce-workmode:return-to-caller;要求返回 status: complete,有行为变更时必须带 verification_evidence,否则最多重试一次再阻塞
3ce-simplify-code在 review 前跑;docs-only 或 <10 行改动跳过;不提交
4ce-code-reviewmode:agent(只报告不改);settled_conflict 里"无效化"级发现会停管线
5(LFG 自身)应用第 4 步的 review 发现——review 报告 → 这里落地
6自主残留 handoff仅当存在未应用的 downstream-resolver 发现时
8ce-commit-push-prcommit + push + 开 PR;记录 New concepts: trailer(可跟 ce-explain)
9盯 CIwatch CI 修到绿

Shipping precondition(第 5–9 步):先跑一次 git remote;若没有 remote,则退化为"只本地提交",跳过所有 push / 开 PR / 盯 CI——这是终态,不报错、不重试。

与相邻 skill 的边界:想每步自己 review → 用单个 ce-plan/ce-work/ce-debug/ce-commit-push-pr;想甩手到绿 PRce-brainstorm 后直接 /lfg。它就是标准 6 步循环的"自动驾驶版"。


完整依赖关系图

实线 = 主流程步进;虚线 = grounding / 反哺 / 路由 / 编排等跨阶段依赖。八个子图对应上面的分类。

  flowchart TD
    subgraph UP["① 上游选题 / 战略"]
        strategy["ce-strategy<br/>STRATEGY.md"]
        ideate["ce-ideate<br/>排序点子"]
        pov["ce-pov<br/>外部技术裁决"]
        pulse["ce-product-pulse<br/>产品脉搏"]
    end

    subgraph LOOP["② 核心循环(每个 feature)"]
        direction TB
        brainstorm["ce-brainstorm<br/>需求文档"]
        plan["ce-plan<br/>实现计划"]
        work["ce-work<br/>执行"]
        simplify["ce-simplify-code<br/>整理"]
        review["ce-code-review<br/>评审"]
        compound["ce-compound<br/>沉淀 docs/solutions"]
        brainstorm --> plan --> work --> simplify --> review --> compound
    end

    subgraph BUG["③ 调试分叉"]
        debug["ce-debug<br/>复现·根因·修复"]
    end

    subgraph SHIP["④ 交付 / PR"]
        worktree["ce-worktree"]
        commit["ce-commit"]
        cpp["ce-commit-push-pr"]
        resolve["ce-resolve-pr-feedback"]
        babysit["ce-babysit-pr"]
    end

    subgraph TEST["⑤ 测试 / 打磨"]
        tbrowser["ce-test-browser"]
        txcode["ce-test-xcode"]
        polish["ce-polish"]
        dogfood["ce-dogfood"]
        optimize["ce-optimize"]
    end

    subgraph DOC["⑥ 知识 / 文档"]
        crefresh["ce-compound-refresh"]
        docreview["ce-doc-review"]
        explain["ce-explain"]
        proof["ce-proof"]
        promote["ce-promote"]
    end

    subgraph FB["⑦ 反馈 / 运营"]
        sweep["ce-sweep"]
        riffrec["ce-riffrec-feedback-analysis"]
    end

    subgraph OPS["⑧ 编排 / 运维"]
        setup["ce-setup"]
        lfg["lfg 全自动流水线"]
    end

    %% 上游 → 循环
    strategy -.grounding.-> ideate
    strategy -.grounding.-> brainstorm
    strategy -.grounding.-> plan
    ideate --> brainstorm
    pov -.裁决路由.-> plan
    pov -.裁决路由.-> brainstorm
    pulse -.反哺.-> ideate
    pulse -.反哺.-> sweep

    %% 复利回头箭头
    compound -.复利·喂回.-> brainstorm
    compound -.复利·喂回.-> plan
    crefresh -.维护.-> compound
    compound -.-> explain

    %% 调试分叉
    debug -.替代入口.-> brainstorm
    debug --> review
    dogfood -.自动修复.-> debug

    %% 文档评审
    docreview -.审计.-> brainstorm
    docreview -.审计.-> plan

    %% 交付链
    worktree --> work
    review --> commit --> cpp
    cpp --> babysit
    babysit --> resolve
    babysit --> debug
    cpp --> promote

    %% 测试
    review --> tbrowser
    work --> polish

    %% 发布
    plan -.publish.-> proof
    compound -.publish.-> proof

    %% 反馈
    riffrec --> brainstorm
    sweep --> lfg

    %% 编排
    setup -.前置检查.-> brainstorm
    lfg -.编排.-> plan
    lfg -.编排.-> work
    lfg -.编排.-> simplify
    lfg -.编排.-> review
    lfg -.编排.-> tbrowser
    lfg -.编排.-> cpp

推荐上手顺序

  1. /ce-setup —— 一次性,检查环境。
  2. 不知道做什么 → /ce-ideate;要立规矩 → /ce-strategy;判断某外部技术 → /ce-pov
  3. 进主循环:brainstorm → plan → work → simplify-code → code-review → compound
  4. bug 场景走 /ce-debug 代替前三步。
  5. 想全自动:brainstorm 后直接 /lfg
  6. 其余(commit/PR/test/promote/proof/sweep 等)按需在对应节点插入。

一句话记忆:核心是 6 步循环,ce-compound 把学习喂回起点形成复利;其余 24 个技能是围着循环的"上游选题、调试分叉、交付 PR、测试打磨、知识沉淀、反馈运营、编排自动化"七类附件。