Spec-Kit + Claude Code:规格驱动AI编程工程化实战

一、问题与解决方案

1.1 氛围编码的典型缺陷

  • 代码表面无错,运行存在逻辑漏洞

  • 无统一开发规范,协作与迭代困难

  • 缺乏测试与质量校验,无法交付

  • 需求模糊,实现与预期偏离

1.2 Spec-Kit 概述

Spec-Kit是GitHub官方开源的一套规格驱动开发工具包,旨在将AI编码行为从不可控的"自由发挥"转变为可预期、可验证的工程流程。其核心理念是:在与AI交互之前,首先以结构化文档形式明确定义项目的开发规范、功能需求、技术方案和任务清单,然后将这些规格作为唯一输入交付给AI,由AI按规格生成代码。这种方式避免了自然语言提示词的歧义性和AI的随意性,确保每次生成的代码都能保持一致的风格、完备的逻辑和可测试性。Spec-Kit兼容Claude Code、GitHub Copilot、Gemini CLI等主流AI编码工具,能够在无需改变现有开发习惯的前提下,引入规范的规格驱动流水线。

二、环境安装

2.1 前置依赖

  • Git

  • PowerShell(Windows)或终端(macOS/Linux)

2.2 在线安装步骤

  1. 安装 uv 工具

    复制代码
    powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

    (macOS/Linux可使用 curl -LsSf https://astral.sh/uv/install.sh | sh

  2. 验证 uv 安装

    复制代码
    uv --version
  3. 在线安装 Spec-Kit CLI

    复制代码
    uv tool install specify-cli --from git+https://github.com/github/spec-kit.git

    该命令会直接从GitHub仓库拉取最新版本并安装。

  4. 验证安装

    复制代码
    specify --help

三、项目初始化

3.1 新项目

复制代码
specify init my-project --ai claude

3.2 现有项目

复制代码
specify init . --ai claude

3.3 核心目录结构

  • .specify/memory:全局规范与开发原则

  • .specify/scripts:核心执行脚本

  • .specify/templates:规格、计划、任务模板

四、核心命令与提示词

以下命令需在 Claude Code 环境中执行,所有提示词均为全新示例,覆盖不同业务场景。

4.1 /speckit.constitution -- 项目宪章生成

生成项目全局开发规范,统一技术栈、代码风格、命名、测试、安全及Git协作标准。

通用型提示词(适用于全栈项目)

复制代码
/speckit.constitution 分析当前项目已存在的代码和技术栈,生成一份适用于全栈应用的开发宪章。宪章需包含以下维度,每条规则标注 MUST / SHOULD / MAY:
​
1. 技术栈统一:明确前端框架(React/Vue/Angular)、后端框架(Node.js/Go/Spring)、数据库类型、ORM/ODM、构建工具、包管理器的当前版本及升级策略。
2. 目录结构规范:规定前端组件、页面、服务、工具函数的组织方式;后端按模块或领域划分的文件夹结构。
3. 命名约定:文件命名(kebab-case / PascalCase)、变量/函数(camelCase)、常量(UPPER_SNAKE_CASE)、CSS类名(BEM或utility-first)。
4. API设计规范:RESTful或GraphQL风格,URL命名、HTTP方法使用、请求/响应统一结构、错误码标准。
5. 状态管理策略:全域状态与局部状态的划分原则,禁止直接修改状态的规则。
6. 代码风格:缩进(2或4空格)、分号使用、引号风格、最大行长度、注释要求(JSDoc/TSDoc)。
7. 错误处理:同步/异步错误捕获的统一方式,用户级错误与系统级错误的区分,日志记录级别。
8. 测试标准:单元测试覆盖率门槛(如≥80%),集成测试范围,E2E关键路径覆盖。
9. 安全基线:输入校验(XSS/注入防护)、身份认证机制、敏感信息存储(环境变量)、CORS策略。
10. Git协作:分支命名(feature/xxx, fix/xxx)、commit message格式(Conventional Commits)、PR审核最少人数。
11. 文档要求:README内容模板、API文档生成工具、组件使用示例。

4.2 /speckit.specify -- 需求规格定义

将自然语言需求转化为结构化规格文档,包含用户故事、功能需求、验收标准、边界条件。

示例提示词(电商商品筛选与排序功能)

复制代码
/speckit.specify 开发一个电商商品列表页功能。需求如下:
- 页面展示商品卡片,每个卡片包含图片、名称、价格、销量、评分(5星制)。
- 支持按商品类目(三级联动下拉)筛选、按价格区间(0-99, 100-499, 500以上)筛选。
- 支持按价格(升序/降序)、按销量(降序)排序。
- 支持关键字搜索(商品名称模糊匹配)。
- 列表默认分页加载,每页20条,支持跳页。
- 筛选、排序、搜索条件变化时,自动重置页码并刷新列表。
- 后端数据量预计10万级别,前端需保证筛选排序响应时间不超过500ms。
​
要求输出完整规格文档:用户角色、用户故事优先级、核心实体(Product, Category)、功能需求清单(包含边界逻辑)、非功能需求(性能、兼容性)、验收标准(可量化的测试点)、异常场景处理(无数据、加载失败、网络超时)。

4.3 /speckit.plan -- 技术方案规划

基于规格文档生成技术方案,含数据模型、页面结构、依赖、性能约束。

示例提示词(React + Tailwind方案)

复制代码
/speckit.plan 根据上述商品筛选排序规格文档,制定前端技术实现方案。要求:
- 前端框架:React 18 + TypeScript,使用函数组件与Hooks。
- 状态管理:使用 useReducer 或 Zustand 管理筛选条件与商品列表状态。
- UI组件:自研组件,基于Tailwind CSS实现响应式布局。
- API交互:封装fetch拦截器,处理loading与错误态,请求防抖(搜索输入延迟300ms)。
- 性能优化:商品图片懒加载,列表虚拟滚动(可选,若数据量超过200条时启用)。
- 分页实现:后端游标分页或传统offset/limit,前端维护页码参数。
- 路由:React Router v6,列表页支持URL参数同步(便于分享筛选条件)。
输出内容:数据模型定义(TypeScript接口)、组件树结构、API端点设计、关键算法(筛选条件组合、排序比较)、性能目标及验证方法、依赖包清单、开发顺序建议。

4.4 /speckit.tasks -- 任务拆解

自动拆解为可并行、有依赖的细分开发任务,标注优先级与阶段。

直接执行

复制代码
/speckit.tasks

4.5 /speckit.implement -- 自动编码

按任务清单自动创建文件、编写逻辑、适配规范、执行基础校验。

直接执行

复制代码
/speckit.implement

4.6 辅助命令

  • 需求澄清/speckit.clarify -- 用于模糊需求或边界缺失时补充逻辑。

  • 质量校验/speckit.checklist -- 生成功能检查清单,用于上线前验收。

五、标准开发流程

推荐按以下顺序执行命令,确保从规范到落地的完整闭环:

  1. /speckit.constitution -- 初始化项目规范

  2. /speckit.specify -- 需求规格化

  3. /speckit.clarify -- (按需)澄清模糊点

  4. /speckit.plan -- 技术方案设计

  5. /speckit.tasks -- 任务拆解

  6. /speckit.implement -- 自动编码实现

  7. /speckit.checklist -- 质量验收

六、总结

Spec-Kit将AI编程从随性的"氛围编码"提升为规格驱动的工程化开发。通过标准化的命令流程与精细化的提示词,AI能够生成规范、可测试、可迭代的企业级代码,适用于个人开发与团队协作。本文提供的全新提示词示例覆盖了典型电商场景,可直接用于Claude Code,用户也可按需调整业务描述,实现同样严谨的AI工程化流程。

附:核心命令速查表

命令 作用 使用阶段
/speckit.constitution 生成项目开发宪章与全局规范 项目初始化
/speckit.specify 需求结构化,生成验收标准 功能启动
/speckit.plan 输出技术方案与数据模型 需求定稿后
/speckit.tasks 拆解精细化开发任务 方案确定后
/speckit.implement 全自动编码实现功能 任务拆解后
/speckit.clarify 澄清模糊需求与边界 全程按需
/speckit.checklist 生成质量验收清单 功能收尾验收
相关推荐
花千树-0102 小时前
ReAct 思考-行动-观察循环的底层实现机制
langchain·agent·react·ai编程·ai agent·langgraph·mcp
JaydenAI2 小时前
[FastMCP设计、原理与应用-17]从服务器向客户端的反向通知
python·ai编程·ai agent·mcp·fastmcp
灵机一物2 小时前
灵机一物AI原生电商小程序、PC端(已上线)-GPT-5.5 深度技术实测评测:Agent能力全面爆发,Codex重构开发范式,实测碾压Opus 4.7
openai·ai编程·gpt5.5·大模型技术评测
easyllm3 小时前
GPT-5.5 全系上架 NoneLinear
gpt·openai·ai编程·智能体·大模型api·新模型上架·gpt5.5
前端工作日常11 小时前
我学习到的结构化提示词三技巧
ai编程
lulu121654407811 小时前
Claude Code项目大了响应慢怎么办?Subagents、Agent Teams、Git Worktree、工作流编排四种方案深度解析
java·人工智能·python·ai编程
程序员老赵16 小时前
Docker 部署 Open WebUI + Ollama 完整教程(Windows / Linux 通用)—— 打造自己的本地OpenAI
aigc·openai·ai编程
团子云技术16 小时前
从 HTTPS 到 LLM Agent:我们重回数字安全的黑暗时代了吗?
安全·ai编程
好运的阿财18 小时前
OpenClaw工具拆解之tts+web_search
前端·javascript·python·ai·ai编程·openclaw·openclaw工具