24万星开源AI项目,改软件开发文档效率翻倍
24万星开源AI项目,改软件开发文档效率翻倍
用 AI Agent 写代码,通常先让它生成一份计划文档,再照着文档写代码。计划很少一步到位,总要反复改。有没有过这样的经历,打开那份 AI 生成的计划,定位到要改的一行,复制一大段过去让它改。一来一回,极其低效。
今天要介绍一个改文档的工具,它来自一个 24 万星的开源项目,出自 Anthropic 黑客马拉松获胜者之手。它把文档变成一块 HTML 画布,指哪里,就在画布上跟文档对话修改,改完即时刷新。
效率的提升,不止一点点。

现在我是这样改文档的。想给文档加一点点内容,就把鼠标悬停在画布上,画布会定位到具体的文本节点。

点击一下画布,画布会弹出一个聊天窗口,输入想让 AI 帮忙修改的想法,再点 Queue 按钮。

随后在右侧点 Send to Agent,修改就发送给 AI,AI 改完文档,画布随即更新。
也可以在 Send to Agent 上面的文本框里直接对着文档修改,同样方便。
一、ECC:给 Claude Code 装的一层引擎
ECC 全称 Everything Claude Code,是一套 Agent-harness 性能优化系统。它给 Claude Code 补上技能、本能行为、记忆、安全,外加 research-first 的开发方式,也让 Codex、OpenCode、Cursor 这些工具能共用同一套配置。
|
字段 |
内容 |
|---|---|
|
项目名称 |
Everything Claude Code(ECC) |
|
GitHub 仓库 |
affaan-m/ECC |
|
Stars |
24.4 万+ |
|
Forks |
3.7 万 |
|
开源日期 |
2026-01-18 |
|
开源人 |
affaan-m |
项目仓库在 GitHub 上,路径 affaan-m/ECC,当前已积累 24 万+ 颗星,今年年初起步,一度三周冲到 4 万星。官方文档把家底列得很清楚,有 68 个代理、286 个技能、94 条命令,另有 hooks、memory、rules 一整套。


规模一大,选择就多。286 个技能、一堆代理,我不打算全讲一遍,只挑一个功能展开,就是 Plan Canvas,一套计划文档维护工具。它的定位一句话就能说清,计划靠「指向」来改,不靠「重打」。


二、计划文档:ECC 里值得单独维护的一环
通常让编码 Agent 工作,第一步是让它做个计划。等计划出来,想改一处就麻烦。对话里说要改哪里,指代容易模糊,Agent 常常搞不清要动哪一段,来回问几轮才把计划说清楚。
ECC 的处理方式不同。它把计划文档搬进浏览器里的一块 HTML 画布来审阅,文件本身仍是一份 markdown,默认落在 .claude/plans/ 目录。这份文件既是给人看的计划书,也是给 Agent 执行的说明书。改完直接复制粘贴给编码 Agent 开工,不需要任何格式转换。
后续所有讨论都围绕这份文档展开,而计划本身是单一事实来源,不散落在聊天记录里。


三、痛点:改计划为什么总在反复拉扯
没有 Canvas 之前,维护计划文档有四个具体麻烦:
- 说不清改哪句
。想改一处,只能在聊天里整段说「改一下 Task 2」,Agent 拿不准动哪一句。
- 来回改太费劲
。靠打字来回沟通,格式容易乱,上下文容易断,改一处常常要确认好几次。
- 改完不留底
。确认只存在于聊天记录里,会话一重启就没了,文档和最新决定对不上。
- 点头不算数
。计划做完,口头问一句行不行,同意没有正式记录,后面接不上写代码的流程。
这四个问题指向同一个根子,计划和讨论没有绑定在一起。文档是文档,对话是对话,改来改去两边对不上。

四、Plan Canvas 的机制:文档摊开在画布,点哪句批哪句
Plan Canvas 的做法,是给计划文档套一层浏览器审阅界面。计划文档摊开在画布里,哪句要改,批注就点在哪句上,Agent 收到结构化反馈照着改。它把改计划的动作,从聊天里打一段话,换成在文档上指一下。
交互走的是结构化信号,不再靠聊天来回反复,流程图如下。

读者在页面上逐句批注,点 Approve plan 或 Request changes,反馈以结构化 JSON 回传,Agent 改完计划文件,界面即时刷新,直到批准。批准就是确认信号,Agent 随后开始写码。

五、实操:从安装到定稿
先装 ECC。前置要求是 Claude Code 命令行版本不低于 v2.1.0,插件的 hooks 自动加载机制依赖这个版本。安装走两条命令。先把仓库加为市场,再装插件。
/plugin marketplace add https://github.com/affaan-m/ECC
/plugin install ecc@ecc
装完,68 个代理、286 个技能、94 条命令立刻可用,hooks 由 v2.1+ 按约定自动加载。另外要手动补的是一组 rules 规则目录,插件系统不负责分发它,克隆仓库后把对应技术栈的目录复制进 ~/.claude/rules/ 即可。想完全手动装也可以,克隆 everything-claude-code,把 Agents、rules、skills 逐项复制进配置目录。项目支持 Windows、macOS 和 Linux。验证是否装好,运行 /plugin list ecc@ecc。

装好后生成计划。对 ECC 说一句需求,比如加一个健康检查端点 GET /health,返回状态 OK,再配一个单元测试。命令 /ecc:plan 会生成一份 markdown 设计文档,存到 .claude/plans/ 目录。

打开 Canvas 有两种方式:
-
一是在 Claude Code 命令行输入
/plan-canvas,默认打开最近一次生成的那份计划文档。想指定某一份,就在命令后面跟上文档名,比如/plan-canvas .claude/plans/health-check.plan.md。 -
二是直接用 node 跑
plan-canvas.js。装过 ECC Universal 的,还可以把它当二进制直接运行。

界面起来后,文档被整齐地加载进浏览器。接下来的操作是重点,以更新 testing 部分为例:
-
选中 phase 2 testing。
-
粘贴一句指令,让它把 phase 2 拆成两个部分,补上邮件发送的速率限制风险,再重新检查。
-
段落旁弹出小窗,指令粘进去按回车,后台进程读这一段发给 Agent。
-
几秒后 markdown 更新成两部分,界面提示完成。


六、多份计划文档怎么维护
.claude/plans/ 目录里会同时存在好几份计划。命令接受任意路径,/ecc:plan-canvas .claude/plans/另一个.plan.md 打开指定那份;不传路径就默认打开最近修改的一份,一份都没有时再问。

多份文档互不干扰,每份有独立 URL,以 hash 结尾。几个习惯值得养成:
-
一次 await 只盯一份文档,改完 A 再开 B,按顺序来。
-
同一 Canvas 视图不能同时批两份。
-
文档多时默认打开最近修改的那份,容易开错,养成显式传路径的习惯。
第三方工具做的计划,同样能用 Canvas。Canvas 审的是本地 markdown 或 html 文件,不关心它是谁生成的,命令直接给路径就能开,哪怕文件不在 .claude/plans/ 里。
ecc-plan-canvas open 计划.md
ecc-plan-canvas await 计划.md
用 Claude Code 还是 Codex、Cursor,同一套命令都能跑。有三个前提:
- 计划得是 markdown
。第三方工具输出 JSON 或专有格式,先转成 md 再开。
- 结构越清晰批注越准
。Canvas 按标题这类元素锚定,分阶段、分标题的计划才能点哪批哪。
- 批准信号要接得住
。Canvas 的 approve 表示已确认这份计划,编码 Agent 开不开工,取决于下游有没有读这个文件;第三方工具走自己流程的,把改好的 md 交给它即可。

七、小结
把计划文档收进画布维护,最大的收益在确定性。改动全部落在文档上,确认以结构化信号落地,会话重启也还在。文档在画布里摊着,批注点在哪句就改哪句,批准就是开工信号。
这可能是一种很好的设计文档构建方式,尤其是给产品架构做设计文档、要交给 Agent 的时候。

如果读者手头的计划总是反复改不定,我的建议是装上 ECC,跑一遍从生成到定稿的完整流程,感受一次「点哪句、批哪句」的顺畅。

值得收藏,转给同样在跟 Agent 反复拉扯的同事。
项目主页 https://github.com/affaan-m/ECC
#ECC #Claude Code #Plan Canvas #AI 编程 #计划文档 #开源工具 #GitHub #开发效率 #Agent #AI 工作流
更多推荐


所有评论(0)