惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
Threat Research - Cisco Blogs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
V
Vulnerabilities – Threatpost
GbyAI
GbyAI
P
Proofpoint News Feed
L
LINUX DO - 热门话题
P
Palo Alto Networks Blog
A
About on SuperTechFans
T
Tenable Blog
M
MIT News - Artificial intelligence
IT之家
IT之家
I
Intezer
D
DataBreaches.Net
爱范儿
爱范儿
T
Threatpost
C
CERT Recently Published Vulnerability Notes
云风的 BLOG
云风的 BLOG
博客园 - 三生石上(FineUI控件)
WordPress大学
WordPress大学
K
Kaspersky official blog
大猫的无限游戏
大猫的无限游戏
A
Arctic Wolf
Y
Y Combinator Blog
Cyberwarzone
Cyberwarzone
酷 壳 – CoolShell
酷 壳 – CoolShell
D
Darknet – Hacking Tools, Hacker News & Cyber Security
H
Help Net Security
Microsoft Security Blog
Microsoft Security Blog
Spread Privacy
Spread Privacy
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
AWS News Blog
AWS News Blog
博客园 - 聂微东
C
Check Point Blog
S
Securelist
有赞技术团队
有赞技术团队
雷峰网
雷峰网
aimingoo的专栏
aimingoo的专栏
Last Week in AI
Last Week in AI
Stack Overflow Blog
Stack Overflow Blog
MongoDB | Blog
MongoDB | Blog
D
Docker
G
GRAHAM CLULEY
T
The Exploit Database - CXSecurity.com
C
Cybersecurity and Infrastructure Security Agency CISA
T
Tailwind CSS Blog
L
Lohrmann on Cybersecurity
G
Google Developers Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
L
LangChain Blog

博客园 - SHENHUANJIE

Marvis 使用进阶:联动与外部资源整合 这是一篇用 Marvis发布的文章,让大家都去用 Marvis 程序员保持高效的5个习惯 Kimi WebBridge:让 AI 真正操控你的浏览器 腾讯突然扔出王炸!马维斯一夜刷屏,打工人终于有救了? AIGC-测试库账号密码 # Hello World 的传奇起源 Please Start Here AI助手记忆系统:从金鱼到大象的进化之路 mac 快速切换 python 版本 卢曼卡片盒笔记法介绍 Introduction to the Zettelkasten Method Uni-app页面信息与元素影响解析 DevOps 入门指南:基础知识解读 「读书计划」《啊哈!算法》7日结构化学习规划 Java RestTemplate 发送 POST 请求设置请求体示例 跨平台开发方案:优缺点对比及选择指南 Java实现简单多层感知器神经网络 Google开发者账号注册步骤详解 ipify.org:免费IP查询服务详解 Google开发者利器:云平台与Firebase服务解析 Google Fonts字体库使用指南 UNI-APP + Spring Boot 实现小程序手机号登录 UNI-APP 获取用户手机号授权与服务器端处理指南 MySQL 8.0 如何禁用 ONLY_FULL_GROUP_BY 平衡工作与生活的10个实用方法 Linux安装Ollama并启用服务教程 如何在 LobeChat 中使用 Ollama Deprecation Warning: The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0.
openspec 是什么?怎么正确使用?
SHENHUANJIE · 2026-05-18 · via 博客园 - SHENHUANJIE

openspec 是什么?怎么正确使用?

OpenSpec 是什么?

OpenSpecFission-AI/OpenSpec 开源项目的中文名称,是一个专为 AI 编码助手设计的规范驱动开发框架(Spec-driven Development,简称 SDD)。它能帮助开发者和 AI 在写代码之前先就"要构建什么"达成一致。

核心价值

AI 编码助手很强大,但当需求只存在于聊天记录中时,结果往往不可预测。OpenSpec 添加了一个轻量级的规范层。

关键特点

特点 说明
** 构建前先对齐** 人类和 AI 在写代码之前先在规范上达成一致
** 保持井然有序** 每个变更都有独立的文件夹,包含提案、规范、设计和任务
** 流畅迭代** 可随时更新任何产物,没有僵化的阶段门控
** 兼容多工具** 支持 25+ 种 AI 编码助手(Claude Code、Cursor、Windsurf 等)

正确使用 OpenSpec

1. 安装

前置要求: Node.js 20.19.0 或更高版本

# 全局安装
npm install -g @fission-ai/openspec@latest

# 或使用 pnpm/yarn/bun
pnpm add -g @fission-ai/openspec@latest

2. 初始化项目

cd your-project
openspec init

这会在项目中创建 OpenSpec 目录结构:

openspec/
├── specs/              # 真实来源(系统当前行为)
│   └── <domain>/
│       └── spec.md
├── changes/           # 提案的变更(每个变更一个文件夹)
│   └── <change-name>/
│       ├── proposal.md   # 为什么做,做什么
│       ├── design.md     # 怎么做(技术方案)
│       ├── tasks.md      # 实现检查清单
│       └── specs/        # 增量规范
└── config.yaml        # 项目配置

3. 核心工作流

默认快速路径(coreprofile):

/opsx:propose ──► /opsx:apply ──► /opsx:archive

扩展工作流(需要手动启用):

/opsx:new ──► /opsx:ff ──► /opsx:apply ──► /opsx:verify ──► /opsx:archive

4. 使用示例

Step 1:提出变更

你: /opsx:propose add-dark-mode

AI:  Created openspec/changes/add-dark-mode/
     ✓ proposal.md — 为什么做,变更什么
     ✓ specs/       — 需求和场景
     ✓ design.md    — 技术方案
     ✓ tasks.md     — 实现检查清单
     Ready for implementation!

Step 2:执行实现

你: /opsx:apply

AI:  Working through tasks...
     ✓ 1.1 Created ThemeContext with light/dark state
     ✓ 1.2 Added CSS custom properties
     ✓ 1.3 Implemented localStorage persistence
     ✓ 2.1 Created ThemeToggle component
     All tasks complete!

Step 3:归档变更

你: /opsx:archive

AI:  ✓ Merged specs into openspec/specs/ui/spec.md
     ✓ Moved to openspec/changes/archive/2025-01-24-add-dark-mode/
     Done! Ready for the next feature.

5. 增量规范(Delta Specs)格式

规范使用 ADDED​/MODIFIED​/REMOVED 标记变更类型:

# Delta for Auth

## ADDED Requirements

### Requirement: Two-Factor Authentication
The system MUST require a second factor during login.

#### Scenario: OTP required
- GIVEN a user with 2FA enabled
- WHEN the user submits valid credentials
- THEN an OTP challenge is presented

## MODIFIED Requirements

### Requirement: Session Timeout
The system SHALL expire sessions after 30 minutes of inactivity.
(Previously: 60 minutes)

归档时发生的事:

  • ADDED → 追加到主规范
  • MODIFIED → 替换现有版本
  • REMOVED → 从主规范中删除

6. 常用命令参考

命令 用途 何时使用
/opsx:propose 创建变更 + 规划产物 默认快速路径
/opsx:explore 思考想法,调查问题 需求不明确时
/opsx:new 开始变更脚手架 扩展模式,显式控制
/opsx:ff 一次性创建所有规划产物 需求清晰,快速执行
/opsx:apply 实现任务 准备写代码时
/opsx:verify 验证实现是否符合规范 归档前检查
/opsx:archive 完成变更并归档 所有工作完成时

7. CLI 工具

# 查看活跃变更
openspec list

# 查看变更详情
openspec show add-dark-mode

# 验证规范格式
openspec validate add-dark-mode

# 交互式仪表板
openspec view

# 更新 AI 指导
openspec update

# 启用扩展工作流
openspec config profile

工作流模式选择

场景 推荐命令
需求清晰,直接开干 /opsx:propose​ → /opsx:apply​ → /opsx:archive
需求不明确,需要调研 /opsx:explore​ → /opsx:new​ → /opsx:continue
多个变更并行进行 /opsx:bulk-archive 批量归档

与其他工具对比

对比项 OpenSpec Spec Kit (GitHub) 不用工具
复杂度 轻量 重量级 无规范
灵活性 高,可迭代 低,有阶段门控 结果不可预测
适用场景 兼顾新旧项目 主要新项目 -

注意事项

  1. 模型选择:OpenSpec 在高推理模型上效果最佳,推荐 Opus 4.5 和 GPT 5.2
  2. 上下文卫生:保持上下文窗口干净,开始实现前清除上下文
  3. 变更命名:清晰的命名让 openspec list​ 更有用(如 add-dark-mode​ 而非 feature-1
  4. 保持聚焦:一个逻辑工作单元一个变更,避免 scope 蔓延

官网https://openspec.dev/
Discordhttps://discord.gg/YctCnvvshC
GitHubhttps://github.com/Fission-AI/OpenSpec ⭐ 48.6k