轻量级 Vibe Coding 规范驱动开发框架
不侵入业务 · 单二进制 · 按需组合 · 多 Agent 适配
VibeSpec 是一套轻量的、可扩展的 Vibe Coding 规范管理方案。它通过 spec(约束)+ skill(技能)+ knowledge(知识) 三层规范体系,让 AI 编码助手从"凭感觉写代码"进化到"按规范生成代码"。
┌──────────────────────────────────────────────────────────┐ │ VibeSpec 三层体系 │ │ │ │ Spec(约束) Skill(技能) Knowledge(知识) │ │ MUST / SHALL HOW-TO / PATTERN CONTEXT / REFERENCE │ │ 编码规范 设计模式 业务术语表 │ │ 架构约束 代码模板 API 参考 │ │ 安全规则 工作流程 架构决策记录 │ │ │ │ └──── 按 技术栈 + 业务域 按需组合安装 ────┘ │ └──────────────────────────────────────────────────────────┘
| 特性 | VibeSpec | OpenSpec | SpecKit | Rules Files |
|---|---|---|---|---|
| 三层规范体系 | ✅ spec+skill+knowledge | ❌ 仅 spec | ❌ 仅 spec | ❌ 扁平规则 |
| 按需安装 | ✅ 按技术栈/业务域匹配 | ❌ | ❌ | ❌ |
| 零侵入 | ✅ .vibespec/ 目录 | ✅ | ⚠️ 较多文件 | ⚠️ 根目录文件 |
| 无运行时依赖 | ✅ Go 单二进制 | ⚠️ Node.js | ❌ Python/uv | ✅ 纯文件 |
| 多 Agent 支持 | ✅ 自动生成各IDE规则 | ✅ | ✅ | ❌ 每个IDE单独 |
| 版本管理 | ✅ semver + lock 文件 | ❌ | ❌ | ❌ |
| 可组合/可依赖 | ✅ 包之间可声明依赖 | ❌ | ❌ | ❌ |
# macOS / Linux
curl -fsSL https://get.vibespec.dev | sh
# Go install
go install github.com/vibespec/cli/cmd/vibespec@latest
# Homebrew
brew install vibespec/tap/vibespec
cd my-project
vibespec init
VibeSpec 会自动检测技术栈(Go/Node/Python/Rust...)、框架、数据库,并推荐安装匹配的规范包。
# 自动匹配
vibespec install --auto
# 手动安装
vibespec install @vibespec/go-api
vibespec install @mycompany/security-baseline --registry company
# 仅安装某层
vibespec install @vibespec/go-api --only specs
vibespec compose --link
自动在 .vibespec/compose/ 下生成 .cursorrules、CLAUDE.md、copilot-instructions.md 等,并可选符号链接到项目根目录。
AI 助手现在会遵循你安装的规范来生成代码。
.vibespec/ # 所有规范文件(零侵入) ├── vibespec.yaml # 项目配置 ├── vibespec.lock # 锁文件 ├── specs/ # 约束规范(MUST/SHALL) ├── skills/ # 技能模式(SHOULD/RECOMMEND) ├── knowledge/ # 领域知识(CONTEXT) └── compose/ # 自动生成的 Agent 规则文件
| 命令 | 说明 |
|---|---|
vibespec init | 初始化(自动检测+推荐) |
vibespec install | 安装规范包 |
vibespec update | 更新规范包 |
vibespec compose | 组合生成 Agent 规则 |
vibespec list | 查看已安装规范 |
vibespec search | 搜索可用规范包 |
vibespec create | 创建自定义规范 |
vibespec validate | 校验规范格式 |
vibespec doctor | 诊断环境问题 |
vibespec create spec my-coding-style vibespec create skill my-logging-pattern vibespec create knowledge my-domain-glossary
每个规范文件都是带 YAML frontmatter 的 Markdown:
---
id: my-coding-style
type: spec
tags: [go, style]
version: 1.0.0
---
# My Coding Style
- 函数 MUST 不超过 50 行
- MUST NOT 使用全局变量
vibespec pack ./my-specs # 打包
vibespec publish ./my-specs.tar.gz # 发布到注册表
vibespec/ ├── DESIGN.md # 完整设计文档 ├── README.md # 本文件 ├── cli/ # Go CLI 源码 │ ├── go.mod │ ├── cmd/vibespec/ │ │ ├── main.go # 入口 │ │ └── cmd/ │ │ ├── root.go # cobra root │ │ ├── init.go # init 命令 │ │ └── commands.go # 其余命令 │ └── internal/ │ ├── config/config.go # 配置解析 │ ├── detector/detector.go # 技术栈检测 │ ├── registry/registry.go # 注册表客户端 │ ├── package/installer.go # 包安装器 │ ├── compose/composer.go # 组合引擎 + Agent 适配 │ └── spec/parser.go # 规范文件解析器 ├── examples/ │ ├── go-api-package/ # 示例规范包 │ │ ├── package.yaml │ │ ├── specs/ │ │ ├── skills/ │ │ └── knowledge/ │ └── project-demo/ # 示例项目集成 │ └── .vibespec/ │ ├── vibespec.yaml │ ├── knowledge/ │ └── compose/AGENTS.md └── LICENSE
MIT