安装
首先在任意目录下输入以下安装指令。
bash
npm install -g @fission-ai/openspec@latest
进入到目标工程的根目录下,初始化openSpec(这一步比较像给目标工程初始化git)。
bash
openspec init
在初始化的时候会提醒你选择什么工具,这里选择cursor就行。

安装完成后,会发现工程目录下多了一个openspec目录。该目录目前是空的,里面有两个文件夹:
changes:用来记录每一次需求变更的设计和内容。
specs:该工程的档案文件,包含每一次需求变更的文档,和项目整体的文档。
项目整体的文档需要自己通过ai生成一份。放在specs目录下即可。

除了spec相关目录,还会发现cursor目录下多了几个命令文件。这里也可以看出openspec主要帮忙做四个事情:
propose:用户提出需求,ai理解需求。
explore:用户和ai探讨需求,订正需求。
apply:制订好需求的具体方案后,由ai来实现代码。
archive:ai生成的代码由用户验收后,进行归档,实现代码和文档的完全同步。
应用
bash
/openspec-propose 添加功能,模仿已有的开屏广告和banner广告,增加激励视频广告
首先使用propose指令,向ai提出需求。

ai会产出这次需求的变更文档,在changes目录下。

design.md:里面记录需求改动的上下文,目标和决策。这个文档能够体现在设计结构时ai采取的一些思路和理由,通常有一些学习价值。

tasks.md:拆分具体的改动,这个文件可以明确看出需求的具体改动。

proposal.md:这里记录了1、ai对需求的理解,也就是为什么做这个需求。2、增加这个需求,该模块等于是增加了什么能力。3、需求的改动范围。

这些文档都可以编辑和ai再次改动,当认为改动计划没问题时,可以执行apply指令,也就是实现代码。
bash
/opsx-apply add-reward-video-ad
这里的add-reward-video-ad是这次change生成的名字,可以理解为是需求名称。

代码生成并验收无误后,进行归档操作。

可以看到spec目录下新增了该需求的目录,并且增加了该需求的技术文档。在这个文档里可以看到这次需求的完整链路。
