Dev Pipeline - 版本化开发流水线
概述
与 version-manager 和 project-manager 深度集成,提供标准化的开发流程。
集成关系
CODEBLOCK0
工作流程
CODEBLOCK1
📋 命令规范
init [--from ]
初始化新版本开发任务。
CODEBLOCK2
执行:
- 1.
version-check <project> - 检查当前状态 - INLINECODE1 - 准备代码
- INLINECODE2 - 更新看板
- 创建版本目录结构和文档
analyze
执行架构分析。
CODEBLOCK3
功能:
- - 读取 REQUIREMENTS.md
- 调用 Claude Opus 4.6 生成 DEVPLAN.md
- 状态: pendingconfirm(等待用户确认)
Opus Prompt 规范:
你是一个资深全栈架构师。请基于需求文档,生成详细的开发执行方案。
【输出格式要求】
必须按以下结构输出 Markdown:
# 项目开发方案
## 1. 需求理解
- 业务目标
- 核心业务流程
- 关键技术特性
## 2. 技术架构
- 整体架构图(ASCII)
- 技术选型表格
- 目录结构设计
## 3. 数据库设计
- 完整的 SQL 建表语句
- 索引设计
- 外键约束
## 4. API 接口设计
- 每个接口的 Method/Path
- Request/Response 格式(JSON Schema)
- 错误码定义
## 5. 任务清单(关键!必须可被解析)
### 阶段一:基础设施(P0)
| 任务ID | 任务名称 | 优先级 | 依赖 | 预估工时 | 输出文件 |
|--------|---------|--------|------|---------|----------|
| T001 | 项目初始化 | P0 | 无 | 2h | package.json, .gitignore |
| T002 | 数据库模块 | P0 | T001 | 3h | shared/db.js |
### 阶段二:xxx(P0)
...
## 6. 风险评估
- 技术风险表格
- 缓解措施
【要求】
1. 所有 SQL 语句必须完整可执行
2. API 设计必须包含完整的请求/响应示例
3. 任务清单必须包含具体的输出文件列表
4. 任务ID格式:T001, T002, ...
confirm / revise
CODEBLOCK5
write [--task-id ]
编写代码 - 核心功能,必须严格规范返回格式。
CODEBLOCK6
🎯 Opus Prompt 规范(关键!)
CODEBLOCK7 [语言]
[完整的文件代码内容]
---
### 示例输出:
### FILE: package.json
**操作类型**: create
**描述**: Node.js 项目配置文件
json
{
"name": "my-project",
"version": "1.0.0",
"dependencies": {
"express": "^4.18.0"
}
}
---
### FILE: src/server.js
**操作类型**: create
**描述**: Express 服务器入口
javascript
const express = require('express');
const app = express();
app.listen(3000, () => {
console.log('Server running on port 3000');
});
CODEBLOCK10
📥 解析逻辑
INLINECODE3 命令的解析器会:
- 1. 读取 Opus 返回的文本
- 使用正则匹配
### FILE: (.*) 提取文件路径 - 提取操作类型(create/overwrite/append)
- 提取代码块内容(``
之间的内容)
5. 根据操作类型写入文件:
- create: 检查文件不存在,创建新文件
- overwrite: 直接覆盖现有文件
- append: 在文件末尾追加内容
6. 更新 .state.json 中的任务状态
---
### review
执行代码审查。
CODEBLOCK11
#### 🎯 Opus Prompt 规范
CODEBLOCK12 markdown
# 代码审查报告
## 基本信息
| 项目 | 内容 |
|------|------|
| 任务编号 | [TASK_ID] |
| 任务名称 | [TASK_NAME] |
| 审查日期 | [日期] |
## 审查发现
### 🔴 严重问题(必须修复)
1. **[问题类型]** [问题描述]
- **位置**: [文件路径]:[行号]
- **影响**: [影响描述]
- **修复建议**: [具体建议]
### 🟡 警告(建议修复)
1. **[问题类型]** [问题描述]
- **位置**: [文件路径]:[行号]
- **建议**: [改进建议]
### 🟢 建议(可选优化)
1. **[问题类型]** [问题描述]
- **建议**: [优化建议]
## 代码质量评分
| 维度 | 评分 | 说明 |
|------|------|------|
| 功能完整性 | [0-10] | |
| 代码规范 | [0-10] | |
| 安全性 | [0-10] | |
| 性能 | [0-10] | |
| 可维护性 | [0-10] | |
| **总分** | **[0-10]** | |
## 审查结论
[✅ 通过 / ❌ 不通过]
**原因**:
[详细说明]
**下一步行动**:
- 如果通过:进入下一阶段
- 如果不通过:执行 dev-pipeline fix 修复问题
CODEBLOCK13
#### 📥 解析逻辑
1. 提取评分表格,计算总分
2. 检查是否有 🔴 严重问题
3. 生成审查报告文件:versions/vX.X.X/docs/REVIEWTASK[ID].md
4. 更新任务状态:
- 通过:reviewpassed
- 不通过:needsfix
---
### fix
修复代码问题。
CODEBLOCK14
#### 🎯 Opus Prompt 规范
CODEBLOCK15 [语言]
[修复后的代码]
CODEBLOCK16
---
### deploy [--force]
部署到生产环境。
CODEBLOCK17
执行:
1. version-validate - 验证代码完整性
2. 红线检查(文件大小差异>20%停止)
3. 备份线上代码
4. 部署
5. project-update --status "🟢 已部署"
---
### seal
封版归档。
CODEBLOCK18
执行:
1. version-archive - 归档全量代码
2. project-update --version --status "🟢 已封版" - 更新看板
3. project-changelog release --version - 标记发布
4. 更新 .state.json
---
## 📊 状态机
CODEBLOCK19
| 状态 | 说明 | 可执行命令 |
|------|------|-----------|
| initialized | 刚初始化 | analyze |
| pendingconfirm | 分析完成,等待确认 | confirm, revise |
| confirmed | 已确认 | write |
| writing | 编码中 | - |
| written | 编码完成 | review |
| reviewpassed | 审查通过 | write(下一任务) / deploy |
| needsfix | 需要修复 | fix |
| alldone | 所有任务完成 | deploy |
| deployed | 已部署 | seal |
| sealed | 已封版 | - |
---
## ⚙️ 配置
.dev-pipeline/config.json:
CODEBLOCK20
---
## 🔒 安全规则
1. **init 时必须 version-prepare** - 确保代码来源正确
2. **deploy 时必须 version-validate** - 确保代码完整性
3. **seal 时必须 version-archive** - 确保全量归档
4. **所有状态变更必须通过 project-update** - 确保看板同步
---
## 🤖 Sub-agent 协作模式(推荐)
为解决 main session token 累积问题,dev-pipeline 支持通过 sessions_spawn` 在子 agent 中执行,main session 仅作为调度者。
架构
CODEBLOCK21
优势
- - Main session 上下文干净:只接收结构化结果,不收代码原文
- 子 agent 即抛即用:执行完即销毁,token 不累积
- 长时间保持高效:避免 9w+ token 后的幻觉问题
- 并行潜力:可同时启动多个子 agent 处理不同任务
Main Session 调用示例
CODEBLOCK22
子 agent 返回格式
子 agent 必须返回 JSON 格式的执行结果:
CODEBLOCK23
任务分类建议
| 任务类型 | 推荐执行方式 | 原因 |
|---|
| init | Main session | 轻量,需要确认项目根目录 |
| analyze |
Sub-agent | 调用 Opus,返回大量内容 |
| confirm | Main session | 只是状态变更 |
| write |
Sub-agent | 调用 Opus,生成大量代码 |
| review |
Sub-agent | 调用 Opus,分析大量代码 |
| fix |
Sub-agent | 调用 Opus,修复代码 |
| deploy | Main session | 需要 SSH 权限,可能需确认 |
| seal | Main session | 轻量状态变更 |
配置 Sub-agent 环境
子 agent 需要预装:
- - Python 3 + dev-pipeline CLI
- Node.js + npm(用于 Node 项目)
- 访问 project root 的权限
- Claude API 环境变量
进阶:Persistent Sub-agent
对于需要连续迭代的开发流程,可启动持久化子 agent:
CODEBLOCK24
📝 完整开发流程示例
传统模式(Main session 执行)
CODEBLOCK25
Sub-agent 协作模式(推荐)
CODEBLOCK26
Dev Pipeline - 版本化开发流水线
概述
与 version-manager 和 project-manager 深度集成,提供标准化的开发流程。
集成关系
dev-pipeline
│
├── calls ──► version-manager
│ - version-check
│ - version-prepare
│ - version-validate
│ - version-archive
│
├── calls ──► project-manager
│ - project-update
│ - project-changelog
│
└── calls ──► Claude Opus 4.6 (via oracle)
- analyze
- write
- review
- fix
工作流程
init → analyze → [pending_confirm] → confirm → write → review → (fix → review) → deploy → seal
│ ↑ │
└──── version-prepare ──────┘ └──── version-archive
project-update
project-changelog
📋 命令规范
init [--from ]
初始化新版本开发任务。
bash
自动检测最新版本作为基础
dev-pipeline init v1.3.5
指定基础版本
dev-pipeline init v1.3.5 --from v1.3.4
执行:
- 1. version-check - 检查当前状态
- version-prepare - 准备代码
- project-update --version --status 🟢 迭代中 - 更新看板
- 创建版本目录结构和文档
analyze
执行架构分析。
bash
dev-pipeline analyze
功能:
- - 读取 REQUIREMENTS.md
- 调用 Claude Opus 4.6 生成 DEVPLAN.md
- 状态: pendingconfirm(等待用户确认)
Opus Prompt 规范:
你是一个资深全栈架构师。请基于需求文档,生成详细的开发执行方案。
【输出格式要求】
必须按以下结构输出 Markdown:
项目开发方案
1. 需求理解
2. 技术架构
- - 整体架构图(ASCII)
- 技术选型表格
- 目录结构设计
3. 数据库设计
4. API 接口设计
- - 每个接口的 Method/Path
- Request/Response 格式(JSON Schema)
- 错误码定义
5. 任务清单(关键!必须可被解析)
阶段一:基础设施(P0)
| 任务ID | 任务名称 | 优先级 | 依赖 | 预估工时 | 输出文件 |
|---|
| T001 | 项目初始化 | P0 | 无 | 2h | package.json, .gitignore |
| T002 |
数据库模块 | P0 | T001 | 3h | shared/db.js |
阶段二:xxx(P0)
...
6. 风险评估
【要求】
- 1. 所有 SQL 语句必须完整可执行
- API 设计必须包含完整的请求/响应示例
- 任务清单必须包含具体的输出文件列表
- 任务ID格式:T001, T002, ...
confirm / revise
bash
dev-pipeline confirm # 确认方案,进入编码阶段
dev-pipeline revise 修改意见 # 根据反馈重新分析
write [--task-id ]
编写代码 - 核心功能,必须严格规范返回格式。
bash
dev-pipeline write # 写入当前任务
dev-pipeline write --task-id T001 # 写入指定任务
🎯 Opus Prompt 规范(关键!)
你是一个专业的高级软件工程师。请基于开发计划,编写高质量的代码。
当前任务:[TASKID] [TASKNAME]
📁 文件输出格式(必须严格遵守)
对于每个需要创建的文件,必须按以下格式输出:
FILE: [相对路径]
操作类型: [create | overwrite | append]
描述: [该文件的用途说明]
[语言]
[完整的文件代码内容]
示例输出:
FILE: package.json
操作类型: create
描述: Node.js 项目配置文件
json
{
name: my-project,
version: 1.0.0,
dependencies: {
express: ^4.18.0
}
}
FILE: src/server.js
操作类型: create
描述: Express 服务器入口
javascript
const express = require(express);
const app = express();
app.listen(3000, () => {
console.log(Server running on port 3000);
});
⚠️ 格式规则
- 1. 每个文件必须以 ### FILE: 路径 开头
- 操作类型必须明确:
- create - 新建文件(文件不存在)
- overwrite - 覆盖文件(文件已存在,需要替换)
- append - 追加内容(在文件末尾添加)
- 3. 代码块必须完整:包含所有必要的导入、配置、实现
- 路径使用相对路径:相对于项目根目录
- 不要省略任何文件:任务要求的所有文件都必须输出
📋 任务要求
基于以下开发计划生成代码:
[DEV_PLAN.md 内容]
当前任务详情:
- - 任务ID: [TASKID]
- 任务名称: [TASKNAME]
- 输出文件: [FILE_LIST]
- 依赖任务: [DEPENDENCIES]
请生成完整可运行的代码。
📥 解析逻辑
write 命令的解析器会:
- 1. 读取 Opus 返回的文本
- 使用正则匹配 ### FILE: (.*) 提取文件路径
- 提取操作类型(create/overwrite/append)
- 提取代码块内容( 之间的内容)
- 根据操作类型写入文件:
- create: 检查文件不存在,创建新文件
- overwrite: 直接覆盖现有文件
- append: 在文件末尾追加内容
- 6. 更新 .state.json 中的任务状态
review
执行代码审查。
bash
dev-pipeline review
🎯 Opus Prompt 规范
你是一个严格的代码审查员。请对以下代码进行全面审查。
📋 审查报告格式(必须严格遵守)
markdown
代码审查报告
基本信息
[TASKNAME] |
| 审查日期 | [日期] |
审查发现
🔴 严重问题(必须修复)
- 1. [问题类型] [问题描述]
-
位置: [文件路径]:[行号]
-
影响: [影响描述]
-
修复建议: [具体建议]
🟡 警告(建议修复)
- 1. [问题类型] [问题描述]
-
位置: [文件路径]:[行号]
-
建议: [改进建议]
🟢 建议(可选优化)
- 1. [问题类型] [问题描述]
-
建议: [优化建议]
代码质量评分
[0-10] | |
| 安全性 | [0-10] | |
| 性能 | [0-10] | |
| 可维护性 | [0-10] | |
|
总分 |
[0-10] | |
审查结论
[✅ 通过 / ❌ 不通过]
原因:
[详细说明]
下一步行动:
- - 如果通过:进入下一阶段
- 如果不通过:执行 dev-pipeline fix 修复问题
⚠️ 评分规则
- - 总分 >= 7.0:✅ 通过
- 总分 < 7.0 或有 🔴 严重问题:❌ 不通过
📁 审查文件列表
[列出需要审查的文件路径和内容]
📥 解析逻辑
- 1. 提取评分表格,计算总分
- 检查是否有 🔴 严重问题
- 生成审查报告文件:versions/vX.X.X/docs/REVIEWTASK[ID].md
- 更新任务状态:
- 通过:review_passed
- 不通过:needs_fix
fix