当前位置: 首页 > news >正文

Spec-kit 入门

Spec-kit 入门

  • 介绍
  • 安装
  • ai 配置
  • specify init
  • 要做的事情
  • speckit.constitution
  • speckit.specify
  • speckit.clarify
  • speckit.plan
  • speckit.tasks
  • speckit.implement

介绍

Spec-kit 地址:https://github.com/github/spec-kit.git

SDD(Spec-Driven Development) 的介绍:

https://github.com/github/spec-kit/blob/main/spec-driven.md

规范驱动开发是一种在产品开发中优先考虑需求规范的方法,其目标是通过明确的需求和预期结果来引导软件开发。在这一过程中,在开发开始之前编写详细的规范文档至关重要,规范应以易于理解的格式呈现,以便所有开发人员和相关利益方都能清楚理解。在编码过程中,开发者需始终遵循规范,确保功能实现的一致性。文档中应包括背景信息、功能描述和使用示例,以帮助开发团队理解需求。此外,规范的编写与审阅应是团队协作的结果,开发过程中需持续收集反馈并适时调整规范。最佳实践包括保持规范简洁、定期更新和鼓励团队成员提出意见。整体而言,规范驱动开发提高了开发的透明度和一致性,减少了误解,从而优化了最终产品的质量和用户体验。

安装

使用 uv 管理器下载安装

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

如果没有uv ,需要安装

uv 安装手册:https://uv.doczh.com/getting-started/installation/

安装成功

Clipboard_Screenshot_1761790379

ai 配置

安装好后,需要配置ai

Spec-kit 支持的ai列表

Clipboard_Screenshot_1761790461

我用的是 CodeBuddy CLI

https://www.codebuddy.ai/cli

按照指引安装

npm install -g @tencent-ai/codebuddy-code

image-20251030102147809

安装完了需要登录一下

输入 codebuddy进入交互式的界面

image-20251030102528826

选择合适的登录验证即可

specify init

使用 specify init <ProjectName>初始化

image-20251030103033950

会让你选择ai实现,前面章节是保证环境中安装并支持了ai,现在是将ai配置到 spec-kit

image-20251030103048834

会发现有报错

image-20251030103115503

请求 github的api失败了。

需要设置github的token

Clipboard_Screenshot_1761792037

在这个地址创建 github-token https://github.com/settings/tokens

需要能访问 github

Clipboard_Screenshot_1761792383

Clipboard_Screenshot_1761792430

选择永不过期

Clipboard_Screenshot_1761792459

不做任何授权

Clipboard_Screenshot_1761792473

创建好后,记得保存,只能展示一次的

Clipboard_Screenshot_1761792499

重新初始化

image-20251030105020340

就好了

image-20251030105100373

到了这里,重新打开ai,上面的spec-kit的一些约定已经给ai了,就可以直接用了

要做的事情

假设现在有一个项目,需要使用ai给项目生成单元测试

项目是 go语言开发,使用 gomonkey , goconvey 进行mock验证

speckit.constitution

将上面的背景和要做的事情进行整理:

给现有的项目生成单元测试,使用 gomonkey 和 goconvery 进行mock验证.xx

在 test 目录,使用 codebuddy 使用ai

image-20251030110921848

在ai的对话框输入

/speckit.constitution 给现有的项目生成单元测试,使用 gomonkey 和 goconvery 进行mock验证。保证覆盖率为100.

image-20251030111533351

在ai执行命令的时候,会要求授权

image-20251030111621778

ai会按照要求分析现有项目的结构,并进行对生成单元测试这个需求进行优化

image-20251030111809608

到了这里,spec-kit的魅力就出现了,按照之前使用ai的经验,大部分这里ai会尝试做一些事情,但是当需求没有搞明白,ai尝试做的事情往往不尽如人意。

而 spec-kit 指导下,或者说 SDD指导下的ai,会进行确认,明确需求后才会开始干活

生成了相关的需求内容

网上叫做宪章,我个人觉得约定可能更合适点儿~

image-20251030112013915

speckit.specify

因为需要生成的文件很多,我们尝试先给一个包下的文件生成单侧

/speckit.specify 给包 cynosdb_log 生成单元测试

image-20251030112535293

ai会生成计划

Clipboard_Screenshot_1761794929

speckit.clarify

如果你觉得ai理解的有问题,那么可以使用 /speckit.clarify进行明确

speckit.plan

按照计划,拆分任务

image-20251030113051129

image-20251030113108142

ok

image-20251030114625450

speckit.tasks

使用 /speckit.tasks 生成可执行任务

image-20251030114728858

任务已经拆分完毕

image-20251030140342908

speckit.implement

使用 /speckit.implement 实现

image-20251030140512139

生成成功了

image-20251030152752392

http://www.dtcms.com/a/554986.html

相关文章:

  • 做影视网站代理犯法吗外贸做的社交网站
  • 服装工厂做网站的好处电子商务概念
  • 第三篇:不靠毅力靠方法:“小步子原理”启动改变飞轮
  • 网站图片太多做外贸需要浏览外国网站
  • 有什么网站做统计图的win7建网站教程
  • 阿里巴巴指数查询重庆网站营销seo电话
  • 抖音代运营是什么意思长春做网站公司长春seo公司
  • 动易 手机网站云南做网站报价
  • 做网站什么数据库用的多网络营销大师排行榜
  • 基于音乐推荐数据的逻辑回归实验报告:曲风特征与用户收听意愿预测
  • 基于MQTT的智能家居系统的学习
  • 广平企业做网站推广河北软文搜索引擎推广公司
  • 通信的经典知识点和问题(3)
  • 边界扫描测试原理 12 -- BSDL 6 INTEST 描述
  • python图像识别系统 AI多功能图像识别检测系统(11种识别功能)银行卡、植物、动物、通用票据、营业执照、身份证、车牌号、驾驶证、行驶证、车型、Logo✅
  • 数字化转型可以解决传统供应链的哪些问题?
  • 亚马逊海外版网站软文范例500字
  • 长沙找人做企业网站文案南宁网站快速排名提升
  • 慈溪做网站什么价无极网
  • 杭州网站的制作wordpress更换logo
  • 国外网站策划做艺术字的网站
  • 共享空间网站开发公司轻松seo优化排名
  • 【nfs服务搭建题】
  • FOC采样相电流随电流变大而整体发生偏移原因
  • 做网站开发有前途吗wordpress内存慢慢身高
  • seo网站建站做网站做什么类型 比较赚钱
  • 网站型建设模板wordpress 查看文章404
  • 网站优化seo技术佛山网站建设公司排行
  • 做视频网站要什么软件咋样做班级主页网站
  • 旅游推荐网站怎么做广州化妆品网站建设