OpenSpec 安装与使用指南 📅 发布时间:2026/7/11 1:39:14 👁️ 浏览次数: OpenSpec 安装与使用指南文档定位OpenSpec 的安装、初始化、需求调整、技术方案调整、任务调整、实现推进和测试 bug 修复流程说明。1. OpenSpec 是什么OpenSpec 是一套面向 AI 编程代理的规格驱动开发工具。它把需求拆成结构化文件让 AI 和开发者围绕同一组文档推进先创建 change。写清楚proposal.md为什么做、做什么、不做什么。写清楚spec.md系统应该怎样表现如何验收。写清楚design.md技术方案、数据结构、兼容和风险。写清楚tasks.md测试、实现和验证步骤。实现时按tasks.md推进。完成前运行 OpenSpec 校验和项目测试。完成后同步规格或归档。与 Superpowers / Spec Kit 的关系OpenSpec 管变更档案proposal/spec/design/tasksSuperpowers 管 AI 执行纪律Spec Kit 管规格驱动项目模板。三者搭配方式见superpowers-guide.md§3。2. 安装与初始化2.1 安装全局安装 OpenSpec CLInpminstall-gfission-ai/openspeclatest openspec--version本次项目验证过的版本1.5.0如需关闭遥测exportOPENSPEC_TELEMETRY02.2 初始化项目在项目根目录执行openspec init.--toolscodex openspec doctor--jsonopenspec context--json初始化后通常会生成.codex/skills/openspec-*Codex 使用的 OpenSpec 工作流技能。openspec/config.yaml项目上下文、约束、验证命令和目录规则。openspec/changes/每个需求变更的工作目录。初始化后建议执行openspec validate--all--jsongitstatus--short--branch3. 目录结构一个标准 change 的目录结构openspec/changes/change-name/ ├── .openspec.yaml ├── proposal.md ├── design.md ├── tasks.md └── specs/ └── capability-name/ └── spec.md文件作用proposal.md变更提案说明背景、范围、非目标和影响design.md技术设计说明方案、数据、兼容、迁移和风险tasks.md任务清单说明测试、实现、验证和收尾specs/capability-name/spec.md能力域规格说明说明系统应该怎样表现spec.md不和design.md、tasks.md放同级是因为一个 change 可能影响多个能力域。OpenSpec 用specs/capability-name/spec.md区分能力域方便后续同步主规格。4. 常用命令openspec--version# 版本openspec init.--toolscodex# 初始化项目openspec doctor--json# 环境检查openspec context--json# 查看项目上下文openspec new changechange-name# 创建 changeopenspec instructions proposal--changechange-name--json# 读取 proposal 指令openspec instructions spec--changechange-name--json# 读取 spec 指令openspec instructions design--changechange-name--json# 读取 design 指令openspec instructions tasks--changechange-name--json# 读取 tasks 指令openspec instructions apply--changechange-name--json# 读取 apply 指令openspec validate--all--json# 全量校验openspec status--changechange-name--json# 查看 change 状态openspec archivechange-name--json# 归档openspec archivechange-name--skip-specs--json# 归档不同步主规格5. 创建 Changeopenspec new changechange-name示例openspec new change evan-openspec-sales-policy-iteration命名建议使用小写英文、数字和短横线。名称表达业务动作。与分支名、任务号、文档前缀保持一致。6. 写 Proposal / Spec / Design / Tasks推荐顺序proposal.md → spec.md → design.md → tasks.md6.1 proposal.md重点回答为什么做。本期做什么。本期不做什么。影响哪些模块、数据、接口、页面、测试。6.2 spec.md重点回答系统应该具备什么能力。用户在什么场景下操作。系统应该给出什么结果。哪些边界、异常、权限、历史数据要覆盖。6.3 design.md重点回答准备怎么实现。数据表和模型如何调整。前后端职责如何划分。历史数据如何兼容。风险和回滚如何处理。6.4 tasks.md重点回答先写哪些失败测试。再改哪些文件。如何验证每一步。完成后跑哪些命令。7. 如何调整需求需求调整指业务范围、验收口径或非目标变化。不要直接改代码先改 OpenSpec。操作顺序收到需求调整 → 判断是新增、删除还是修改需求 → 更新 proposal.md 的 What Changes / Non-Goals / Impact → 更新 specs/capability/spec.md 的 Requirement / Scenario → 判断 design.md 是否需要调整 → 判断 tasks.md 是否需要调整 → 运行 openspec validate --all --json → 再进入实现提示词需求有调整说明调整内容。 请先判断影响 proposal、spec、design、tasks 哪些文件。 然后更新对应 OpenSpec 文件全部使用中文。 更新后列出变更摘要和需要重新执行的验证命令。 不要先改代码。8. 如何调整技术方案技术方案调整指业务验收口径不变但实现方式发生变化。操作顺序发现技术方案需要调整 → 对照 spec.md 判断业务行为是否变化 → 业务行为不变更新 design.md → 业务行为变化先更新 spec.md再更新 design.md → 更新 tasks.md 的实现步骤、测试步骤和验证命令 → 如涉及数据库更新 SQL 和迁移说明 → 运行 openspec validate --all --json提示词技术方案需要调整说明原方案和新方案。 请先判断 spec 是否受影响。 如果业务验收口径不变只更新 design 和 tasks。 如果验收口径变化先更新 spec再更新 design 和 tasks。 更新后给出风险、迁移影响和需要重跑的测试。9. 如何调整 TasksOpenSpec 中的 plan 主要体现在tasks.md。如果只是执行顺序、任务拆分、测试步骤或验证命令变化可以只改tasks.md。操作顺序发现 tasks 不合理 → 判断是否影响 spec → 判断是否影响 design → 只影响执行方式时修改 tasks.md → 新增、删除或重排任务 → 调整测试和验证命令 → 运行 openspec status --change change-name --json提示词tasks 需要调整说明问题。 请先判断是否影响 spec 或 design。 如果不影响只修改 tasks.md。 请把任务拆得更可执行补上 TDD 步骤、验证命令和预期结果。10. 实现阶段进入实现前读取 apply 指令openspec instructions apply--changechange-name--json实现原则先读proposal.md、spec.md、design.md、tasks.md。按tasks.md顺序推进。能写测试的地方先写失败测试。每完成一个阶段就更新任务勾选。不把本期明确不做的内容带进实现。完成前重新运行测试和 OpenSpec 校验。11. 测试提 Bug 处理测试提 bug 后不要直接修代码。先分流11.1 Bug 类型判断Bug 类型判断标准OpenSpec 操作实现缺陷spec.md已写清楚但代码没做到不改 spec在tasks.md增加 bug 修复任务和回归测试任务需求遗漏测试提出的是 spec 没写的新行为先改proposal.md和spec.md再改design.md、tasks.md技术方案偏差业务口径没变但实现方案不合理改design.md和tasks.md如验收口径变化再改spec.md测试用例问题代码符合 spec但测试期望错了不改业务实现修测试并记录依据11.2 未归档 Change 的处理流程收到测试 bug → 复现 bug → 对照 spec.md 判断是否已有验收场景 → 对照 design.md 判断是否是方案问题 → 更新 tasks.md增加测试反馈 bug 修复任务 → 如需求或方案变化同步更新 proposal/spec/design → 先写失败测试 → 修复实现 → 跑回归测试 → 运行 openspec validate --all --json11.3 已归档 Change 的处理流程openspec new changebugfix-change-name然后为 bugfix 单独补proposal.md、spec.md、design.md、tasks.md。11.4 推荐提示词测试提了 bugbug 描述。 请先对照当前 OpenSpec spec 判断它属于实现缺陷、需求遗漏、技术方案偏差还是测试用例问题。 如果是实现缺陷不要改 spec只在 tasks.md 增加 bug 修复和回归测试任务。 如果是需求遗漏或方案变化请先更新对应 OpenSpec 文件再进入实现。12. 归档实现完成后归档openspec archivechange-name--json如果不需要更新主规格openspec archivechange-name--skip-specs--json13. Review 重点文件Review 关注点proposal.md范围、非目标、影响面是否完整spec.md每个场景是否能验收是否覆盖异常和边界design.md数据、接口、权限、兼容、风险和回滚是否清楚tasks.md是否可执行是否有测试验证命令是否真实14. 参考链接OpenSpec npm 包https://www.npmjs.com/package/fission-ai/openspecOpenSpec GitHub CLI 文档https://github.com/Fission-AI/OpenSpec/blob/main/docs/cli.mdSpec Kit GitHubhttps://github.com/github/spec-kitSpec Kit 安装文档https://github.github.com/spec-kit/installation.html
从AGI到ASI:四条技术路径与六大挑战解析 1. 先搞清楚 AGI 和 ASI 到底差在哪如果你关注 AI 领域,最近可能看到不少关于“AGI 到 ASI”的讨论。Google DeepMind 这篇论文最实际的价值,不是预测未来,而是把模糊的概念拆解成了可判断的技术路径。AGI(通用人工智能࿰… 2026/7/11 1:39:14
工程项目管理系统和OA区别:2026项目型企业选型指南 很多市政、公用工程、机电安装、装饰装修类企业在上系统时,都会遇到一个很现实的问题:公司已经有OA了,还要不要再上工程项目管理系统?审批不是已经在线了吗?为什么项目经理、材料员、商务造价、财务还是天天对数&#… 2026/7/11 1:39:14
Python复刻植物大战僵尸:从游戏开发到数学建模的实战解析 1. 项目概述:当数学建模遇上经典塔防 几年前,当我第一次尝试用Python复刻《植物大战僵尸》时,我把它纯粹当作一个游戏开发练习。但后来我发现,这个看似简单的塔防游戏,其内核其实是一个绝佳的数学建模沙盒。从向日葵的… 2026/7/11 1:39:14
Spring Boot 2.x 连接 RabbitMQ 报错排查:5步定位 Failed to check/redeclare auto-delete queue(s) Spring Boot 2.x 连接 RabbitMQ 报错排查:5步定位 Failed to check/redeclare auto-delete queue(s)在微服务架构中,消息队列作为服务间通信的重要组件,其稳定性直接影响系统整体可靠性。当Spring Boot应用与RabbitMQ交互时,开发者… 2026/7/11 3:01:45
熊猫烧香病毒逆向分析:3个核心函数与IDA Pro/OD实战调试流程 熊猫烧香病毒逆向分析:3个核心函数与IDA Pro/OD实战调试流程2006年那个冬天,许多Windows用户的电脑屏幕上突然出现了一群举着三炷香的熊猫图标——这成为了中国互联网安全史上一个标志性时刻。作为安全研究人员,我们不仅要了解病毒的行为特征… 2026/7/11 2:59:45
Unity内嵌浏览器开发指南:从选型到双向通信的完整实践 1. 项目概述:为什么要在Unity里“嵌入”一个浏览器?如果你是一个Unity开发者,最近可能被“Web3D”、“元宇宙”或者“混合现实应用”这些概念刷屏了。无论是做数字孪生、产品三维展示、在线教育还是游戏内的社区系统,一个核心的需… 2026/7/11 2:59:45
串口协议逆向分析:从16字节数据帧解析顶尖OS2电子秤重量 串口协议逆向分析:从16字节数据帧解析顶尖OS2电子秤重量在物联网设备开发中,串口通信是最基础也是最关键的环节之一。当面对没有官方文档的硬件设备时,逆向分析其通信协议成为开发者必须掌握的技能。本文将以顶尖OS2电子秤为例,详… 2026/7/11 2:55:43
最新AI漫剧软件机构排行榜 深度测评结果汇总 测评速览2026年AI漫剧行业正处于高速发展阶段,各类生产工具层出不穷,不同工具在技术实力、落地能力、适配场景上存在明显差异。本次汇总公开可查的机构资质、客户覆盖、落地案例、技术参数等信息,面向漫剧制作机构、影视公司、高校实训、企业… 2026/7/11 2:51:42
BPF应用性能分析:背景、策略与MySQL案例 引言:为什么需要应用级跟踪 传统的资源分析(CPU、内存、磁盘I/O)能解决许多性能问题,但无法提供请求级别的上下文。例如,磁盘I/O很高,但究竟是哪个查询导致的?BPF跟踪可以在应用层提供关键上下文,将内核事件与请求关联起来。通过静态(USDT)和动态(uprobe)探针,我… 2026/7/11 2:51:42
5分钟搞定Kodi字幕难题:智能字幕插件让你追剧无忧 [特殊字符] 5分钟搞定Kodi字幕难题:智能字幕插件让你追剧无忧 🎬 【免费下载链接】zimuku_for_kodi Kodi 插件,用于从「字幕库」网站下载字幕 项目地址: https://gitcode.com/gh_mirrors/zi/zimuku_for_kodi 还记得那个深夜吗?你刚下载… 2026/7/11 0:00:11
工业信号干扰处理与FOD4216光耦应用实战 1. 工业环境中的信号干扰挑战在工业自动化领域,信号采集的准确性直接关系到整个控制系统的可靠性。典型的工业现场充斥着各种干扰源:大功率电机启停产生的电磁干扰、变频器工作产生的高频噪声、继电器触点火花放电,以及长距离传输引入的共模干… 2026/7/11 0:00:11
OpenHarmony 完整项目工程整合规范 + 模块化分层架构(API23+ 标准企业级结构) 摘要前面系列教程覆盖了 ArkUI 组件、路由、生命周期、本地存储、网络请求、Ability 底层全套基础能力,本篇统一梳理标准工程目录分层、模块化拆分、代码复用规范、全局工具统一管理、项目打包权限配置、常见工程报错统一解决方案,形成可直接用于课程设计… 2026/7/11 0:00:11
6个月转型AI工程师:实战路径与核心技能 1. 项目概述:6个月转型AI工程师的可行性路径在2023年大模型技术爆发的背景下,AI工程师岗位需求同比增长217%(LinkedIn数据)。不同于传统算法工程师需要3-5年培养周期,现代AI工程师更侧重工程化落地能力。我在硅谷科技公… 2026/7/7 11:26:57
TPAFE0808与PIC18F87K22的多通道信号采集方案 1. 项目背景与核心需求在工业自动化、医疗设备和科研仪器等领域,多通道信号采集与系统监测是基础且关键的技术需求。传统方案往往面临通道数量不足、信号调理复杂、系统集成度低等问题。TPAFE0808作为一款8通道模拟前端芯片,与PIC18F87K22微控制器的组合… 2026/7/8 20:15:17
STC3115与PIC18LF26K80构建高精度电池管理系统 1. STC3115与PIC18LF26K80在电池管理系统中的核心价值在现代电子设备中,电池管理系统(BMS)的重要性不亚于设备的核心处理器。STC3115作为一款高精度电池电量监测IC,与PIC18LF26K80微控制器的组合,构成了一个既能精确监控又能智能管理的完整解… 2026/7/8 14:25:08