四、跨编辑器通用工具
接下来聊聊跨编辑器通用的工具。这些工具不依赖特定的编辑器,适用于 Cursor、VS Code、Claude Code、GitHub Copilot 等几乎所有主流的 AI 编程工具。
Spec-kit 规范驱动开发
Spec-kit 是 GitHub 推出的规范驱动开发(SDD)框架。
什么是 SDD 呢?
传统开发流程是:想到什么写什么,边写边改,最后再补文档。这样容易导致需求不清晰、代码和文档对不上。
而规范驱动开发的思路正好相反:先把需求写成规范文档,并且把规范文档当作代码的 唯一真相来源。你可以把规范文档理解为 法律条文,它包含了详细的需求描述、系统设计和接口定义。AI 必须严格遵守这些条文来生成代码,确保产出完全符合预期。

听起来有些抽象,我们可以跟着 Spec-kit GitHub 仓库 的官方文档来实战一下。
首先打开终端,利用 uvx 命令直接安装运行 Specify 工具,并初始化一个项目:
uvx --from git+https://github.com/github/spec-kit.git specify init my-project
选择你使用的 AI 编程工具,Spec-kit 支持 Claude Code、GitHub Copilot 等几乎所有主流编程工具。这里我选 Claude Code:

根据操作系统选择脚本类型,Windows 选下面的,其他选上面的:

执行完这个命令后,会在当前目录下创建一个 my-project 文件夹:

文件夹里面包含了这些核心文件:
.specify/memory/constitution.md:项目的基本准则和约定.specify/scripts/:一些可执行脚本.specify/templates/:模板文件.claude/commands/:定义了一套内置的斜杠命令,让你在 AI 编程工具中可以直接调用

初始化程序还给了我们一些指引,告诉我们接下来如何运用这些命令来开发项目。

用 Claude Code 打开这个项目文件夹,就可以在对话中使用定义好的命令了。

接下来就是标准化的开发流程,参考 官方文档,主要分为 7 个步骤:
1)Constitution 制定项目准则
运行 /speckit.constitution 命令,定义项目的基本原则、代码规范、性能标准等。这是项目的 “宪法”,后续所有开发都要遵守。
比如:
/speckit.constitution 禁止使用蓝紫渐变色风格的 UI💡 如果你要做中文项目,最好在制定项目准则时就明确告诉 AI “整个网站使用中文”。

AI 更新了项目准则文档:

建议每一步我们都用 Git 提交一个版本,这样出了问题后能及时回滚,也便于我们看到每一步改动的文件。

2)Specify 编写功能规范
运行 /speckit.specify 命令,描述要做什么功能、为什么做、用户需求是什么。比如:
/speckit.specify 我想做个【自动提醒我喝水的网站】
AI 为这次的需求创建了一个新的 Git 分支,防止污染现有项目。在这个分支下创建了一个需求规格文档(spec.md) + 一个需求检查文档(requirements.md)。

需求规格文档非常详细,还包含了边缘测试用例,针对用户各种可能的操作进行处理。

需求检查文档中记录了 AI 对于需求的理解,打钩表示 AI 理解并确认了:

3)Clarify 澄清不明确的地方(可选)
如果你发现需求检查文档中有的条目没有打钩,那你需要通过 Clarify 命令来让 AI 引导你进一步明确需求,直到所有的条目都打上勾。
运行 /speckit.clarify 命令,AI 会提出结构化的问题,让你来回答。从而帮你填补需求中的空白,比如边界情况、错误处理等。

我运气不错,不需要这一步 AI 就已经理解了所有条目,接下来可以进入制定技术方案阶段。

4)Plan 制定技术方案
运行 /speckit.plan 命令,让 AI 决定用什么技术栈、系统架构、数据模型、API 接口等。

制定技术方案完成,这次生成了一大堆文档,简单了解一下:
- CLAUDE.md 项目开发指南,记录技术栈和项目结构,用于指导 Claude Code 接下来如何开发
- quickstart.md 快速入门指南,包含 6 个实施阶段和部署方案
- plan.md 实施方案,定义了纯客户端架构、存储策略、宪法合规性检查等
- data-model.md 数据模型设计,定义了 4 个核心实体(提醒设置、水量日志、每日进度、历史记录)和存储结构
- research.md 技术研究文档,记录了 8 项关键技术决策
- contracts/api-contract.md API 接口文档

接下来,我们就可以准备开发实现了。

5)Tasks 拆解任务
运行 /speckit.tasks 命令,把计划拆解成可执行的任务列表,并标注依赖关系和优先级。

生成了一个任务列表文档,每一步要做什么都非常清晰:

6)Analyze 分析检查(可选)
运行 /speckit.analyze 命令,检查规范、计划、任务是否完整一致,提前发现设计缺陷。

可以看到,AI 没有检查出问题,还让我自信地进行下一步,真爽死了!
7)Implement 执行实现
最后,运行 /speckit.implement 命令,让 AI 按照任务列表生成代码。

大功告成,看一下效果~

因为我这里始终没有提到使用中文输出,所以网站内容都是英文的,不过我感觉效果还可以。
到这里,我们已经学会了如何用 Spec-kit 开发完整项目,再复习一下完整流程:

即使不用 Spec-kit,我们开发完整项目时也可以人工遵循这些步骤。
这种模式最大的好处是 对齐。所有人都基于同一份清晰的规范文档工作,大家对需求的理解高度一致,既减少了沟通中的误解,又能确保代码质量。
不过缺点也很明显,对于小项目,本来直接写代码几分钟就能搞定了,上面这套流程走下来差不多要半个小时!
所以这套流程比较适合团队从 0 开始做完整的新项目,虽然流程比直接写代码慢一些,但能大大降低返工的风险,长远来看反而更高效。
OpenSpec 轻量规范框架
OpenSpec 是一个轻量的规范驱动开发框架,比 Spec-kit 更简单易用。
它的核心理念是把规范文档作为代码库的一部分,每次改功能都 先写变更提案 => 确认后再实现 => 实现完再把变更归档到规范文档中,让文档和代码始终保持同步。

访问 OpenSpec 官方仓库 查看文档。
首先确保你的电脑安装了符合要求的 Node.js 版本(比如我这里要求 Node.js >= 20.19.0),然后全局安装 OpenSpec CLI:
npm install -g @fission-ai/openspec@latest进入你的项目目录,运行初始化命令:
openspec init初始化过程中会让你选择要集成的 AI 工具(比如 Claude Code、Cursor 等),我这里选择 Cursor。

运行命令后,OpenSpec 会自动在你的项目中生成一个 openspec/ 目录,里面包含:
openspec/specs/:存放主规范文档,记录了项目的完整现状openspec/changes/:存放变更提案,记录了每次修改的计划openspec/project.md:当前项目的上下文说明(用来记录项目的信息)

此外,还会根据你选择的 AI 编程工具,生成对应的命令文件,比如 Cursor 的:

有了这些文件,我们就可以开始规范化的开发流程了。参考 官方文档,主要分为 5 个步骤:
1)Draft 起草变更提案
直接在 AI 编程工具中跟 AI 说,让它创建变更提案。比如我想添加用户搜索功能:
创建一个 OpenSpec 的 change,添加功能:根据名称和邮箱搜索用户也可以用 AI 编程工具(比如 Claude Code、Cursor)的斜杠命令:
/openspec:proposal 添加功能:根据名称和邮箱搜索用户
AI 会给这个功能创建一个独立的目录 openspec/changes/add-user-search/,目录下创建一系列文档:
proposal.md:描述要改什么、为什么改tasks.md:实施步骤的任务分解specs/…/spec.md:需求变更的具体内容

2)Verify & Review 验证和审查
可以运行下列命令,查看 AI 创建的变更提案是否正确:
openspec list # 查看所有变更
openspec validate add-user-search # 验证格式是否正确
openspec show add-user-search # 查看详细内容
3)和团队一起审查提案
如果需要完善,可以继续跟 AI 对话,比如:
你能帮我添加更多搜索条件和限制么?AI 会更新规范和任务列表,直到大家达成一致。
4)Implement 实现变更
规范确认后,让 AI 开始实现:
规范已经很完美了,开始生成代码吧也可以用斜杠命令:
/openspec:apply add-user-searchAI 会按照 tasks.md 中的任务列表逐一实现,并标记完成状态。

很快生成完成,AI 的输出非常整齐,所有改动一目了然:

5)Archive 归档变更
所有任务完成后,让 AI 归档这次变更:
请归档这次变更也可以用斜杠命令:
/openspec:archive add-user-search或者在终端运行:
openspec archive add-user-search --yes
这个命令会:
- 将变更文件夹移动到
openspec/changes/archive/归档区 - 将需求变更自动合并到
openspec/specs/主规范中 - 保持文档和代码的同步

这样一来,通过 openspec/changes/ 的历史记录,你可以随时追溯每次变更的来龙去脉。
此外,整个开发过程中,建议大家定期运行 openspec validate 验证命令, 确保规范的完整性。
到这里,相信大家也能感受到 OpenSpec 和 Spec-kit 的区别了。
- Spec-kit 需要完整的 7 步流程:制定准则 → 写需求 → 澄清疑问 → 定方案 → 拆任务 → 检查 → 写代码),适合从 0 开始做大型新项目
- OpenSpec 的流程更简化:起草提案 → 审查 → 实现 → 归档 → 验证,上手更快,适合在现有项目上迭代功能。
AIChat 命令行增强工具
AIChat 是一个功能完善的 AI 命令行助手,集成了 20+ 主流大模型。
现在主流的 AI 编程工具(Cursor、VS Code 等)都内置了终端,有时我们需要敲命令来执行任务,但是命令记不住怎么办?
用了 AIChat 后,你只需要在终端中说人话,它的 Shell 助手 能力就会把你的自然语言自动转换成准确可执行的命令。
使用方法非常简单。打开终端,通过包管理器一行命令就能安装:
# macOS/Linux
brew install aichat
# Windows
scoop install aichat安装完成后,运行 aichat 命令,首次执行会引导你创建配置,选择你要用的大模型并填写 API Key:

然后就可以愉快地跟 AI 对话了:

但是我个人主要用它的 Shell 助手能力(给命令添加 -e 选项),而不是 AI 对话能力。

比如我想批量重命名文件,但不记得命令怎么写,在终端里执行下列命令:
aichat -e 帮我把当前目录下所有 .txt 文件改成 .md它就会生成对应的 shell 命令,我确认后它就自动执行了。

还可以通过快捷键来智能补全命令:

除了 Shell 助手,AIChat 还有一些进阶功能。比如支持 RAG 检索增强生成,可以让 AI 基于你的本地文档回答问题;支持创建 AI 代理,把指令、工具和文档组合成自动化工作流。

此外,如果你想对比不同模型的效果,运行 aichat --serve 可以启动本地网页界面,同时对比多个模型的回答。
