公司这边要做一个分享会,我这边打算分享一下怎么约束代码按自己的习惯来,一开始选定是讲 Trellis 的,但是写着写着发现,只讲 Trellis 好像内容太少了,所以打算把 openSpec 和 Superpower 也加进来
但是 Superpower 还算是稍微了解过,openSpec 就一头雾水了,查了一些内容,但是感觉不太清晰目前个人感觉如下,还请佬友帮忙看看理解的对不对
openspec
优点
- 把项目规范写成结构化文档,让 AI 在编码前先读规范。
- 很多原本只存在于老成员经验里的约定,可以被整理成显式规则,例如目录结构、分层边界、命名方式、错误处理原则。
- 更容易让 AI 输出接近团队既有风格的代码。
缺点
- 文档写出来之后,AI 是否每次都读、是否读对、是否真正遵守,仍然不一定。
- 对于任务拆解、执行控制之类的效果不是很好,并且上下文长了之后,容易被遗忘
- 只关心文档而不太关心开发过程
SuperPower
优点
- “头脑风暴”对于完善想法和探索方案非常有用,能帮忙找出很多不成熟的问题
- 独立工作区,减少 AI 误操作导致不可恢复的后果
- 合并了“探索、提需求草案、设计实现方案、具化todo列表”,直接给到方案
缺点
- 哪怕是小任务,也会问很多问题,不够快捷,在 codex 中会不停的去确认思考,方案设计
- 在 codex 中,独立工作区功能兼容不是很好,和 worktree 会冲突?
- 没有持久化记忆,需要重复说明一些习惯问题
Trellis
优点
-
集合了 OpenSpec 和 SuperPower 的优点
-
预设会帮忙生成一部分规范内容,后续需要时也可以直接调用 /updateSpec 更新规则
-
在 Claudecode 中可以做到无感使用,会根据 hooks 进行 spec 注入
-
持久化记忆,跨会话也不会忘记
缺点
-
预生成的内容会有不少空白,需要自己补全
-
在 claudecode 以外使用都需要自己手动调用 Skills,不是很方便
-
小任务也要先读spec,会额外消耗不少的token
-
skills比较多,需要先理解如何使用各种skills