从需求→PRD 设计→技术方案→API 开发→AI Coding→测试→CI/CD→K8S 部署→UI 自动化验收全流程自动化研发系统
面向产品 · 研发 · 测试 · 运维四大角色的岗位 Agents 专项培训
本系统基于OpenClaw 编排层 + Claude Code 执行层的双层 Agent 架构,实现从需求到部署的全流程自动化。通过为 AI 设计工具和流程,而非为人设计工具,让 AI 真正像专业开发者一样参与研发全流程。
在 AI 驱动的研发模式下,产品经理从执行层转向决策层、校验层与优化层,专注于需求治理、业务规则定义和 AI 内容优化。
| 传统模式 | AI 驱动模式 |
|---|---|
| 手动撰写 PRD 文档(耗时数天) | 自然语言描述需求,AI 自动生成 PRD 初稿(10 分钟) |
| 绘制原型图和信息结构图 | 审核 AI 生成的原型,聚焦交互体验优化 |
| 组织需求评审会议 | 定义业务规则和验收标准,AI 自动执行评审检查 |
| 跟踪开发进度 | 通过 Dashboard 实时监控 AI Agent 任务执行状态 |
使用自然语言描述业务场景:"我们需要一个模板系统,让用户可以保存和编辑现有配置,并在团队内共享。"
AI 能力:OpenClaw 自动扫描会议记录、客户沟通记录,提取需求上下文
与 OpenClaw 对话,将需求拆解为可执行任务:
OpenClaw 调用 Planner Agent 生成 PRD 文档,包含:
产品经理审核 AI 生成的 PRD,重点关注:
确认 PRD 后,OpenClaw 自动:
某 B2B SaaS 产品的产品经理接到客户需求:"希望复用已配置好的设置,在团队内共享。"传统流程需要 1-2 周完成需求分析、PRD 撰写、评审、开发。使用本系统后:
研发工程师从代码编写者转变为架构设计者、代码审核者和复杂问题解决者,负责系统安全、核心架构设计和 AI 生成代码的质量把控。
| 传统模式 | AI 驱动模式 |
|---|---|
| 手动编写业务代码(80% 时间) | 审核 AI 生成代码,聚焦核心架构和复杂逻辑(20% 时间) |
| 手动设计 API 接口 | 审核 AI 生成的 API 设计,确保符合 RESTful 规范 |
| 手动编写单元测试 | 定义测试策略,AI 自动生成测试用例并执行 |
| 手动 Code Review | 处理 AI Reviewer 标记的关键问题,常规审查由 AI 完成 |
Architect Agent 根据 PRD 生成技术方案:
人工介入点:架构师审核技术方案的合理性、扩展性和安全性
Frontend Architect Agent 生成前端方案:
API Design Agent 生成接口协议:
// 示例:AI 生成的 API 接口定义
interface TemplateAPI {
GET /api/templates: ListTemplatesRequest → ListTemplatesResponse
POST /api/templates: CreateTemplateRequest → CreateTemplateResponse
PUT /api/templates/:id: UpdateTemplateRequest → UpdateTemplateResponse
DELETE /api/templates/:id: DeleteTemplateRequest → DeleteTemplateResponse
}
OpenClaw 根据任务类型自动分配 Agent:
执行环境:每个 Agent 运行在独立的 git worktree + tmux 会话中
每个 PR 自动触发三个 Reviewer Agent:
当收到通知时,以下工作已完成:
人工审核时间:5-10 分钟,很多 PR 只看截图即可合并
| Agent | 适用场景 | 特点 |
|---|---|---|
| Codex (gpt-5.3-codex) | 后端逻辑、复杂 Bug、多文件重构、跨代码库推理 | 慢但彻底,占 90% 的任务 |
| Claude Code (claude-opus-4.5) | 前端开发、Git 操作、快速迭代 | 速度快,权限问题少 |
| Gemini | UI 设计、视觉规范 | 有设计审美,负责"设计",Claude 负责"建造" |
当 Agent 执行方向错误时,无需杀掉重来,直接在 tmux 中发送指令:
# 代理方向错了
tmux send-keys -t codex-templates "停一下。先做 API 层,别管 UI。" Enter
# 代理需要更多上下文
tmux send-keys -t codex-templates "类型定义在 src/types/template.ts,用那个。" Enter
# 查看 Agent 当前状态
tmux capture-pane -t codex-templates -p
测试工程师从手动编写测试用例转向测试策略设计、自动化测试框架搭建和异常兜底,确保 AI 生成代码的质量符合生产标准。
| 传统模式 | AI 驱动模式 |
|---|---|
| 手动编写测试用例(耗时数天) | 定义测试策略,AI 自动生成测试用例(10 分钟) |
| 手动执行回归测试 | 设计自动化测试流水线,AI 自动执行并报告 |
| 手动探索性测试 | 设计探索性测试场景,AI Agent 模拟用户行为执行 |
| 手动验证 Bug 修复 | 定义验收标准,AI 自动验证并生成测试报告 |
TDD-Guide Agent 根据代码自动生成单元测试:
// 示例:AI 生成的单元测试
describe('TemplateService', () => {
describe('createTemplate', () => {
it('should create template successfully', async () => {
const template = await service.createTemplate(validData);
expect(template.id).toBeDefined();
expect(template.name).toBe(validData.name);
});
it('should throw error when name is empty', async () => {
await expect(service.createTemplate({name: ''}))
.rejects.toThrow('Template name is required');
});
it('should prevent duplicate template names', async () => {
await service.createTemplate(validData);
await expect(service.createTemplate(validData))
.rejects.toThrow('Template already exists');
});
});
});
Integration Test Agent 生成集成测试:
测试环境:Docker Compose 启动完整依赖栈(数据库、缓存、消息队列)
E2E-Runner Agent 生成端到端测试:
// 示例:AI 生成的 Playwright E2E 测试
test('user can create and share template', async ({ page }) => {
// 登录
await page.goto('/login');
await page.fill('[data-testid="email"]', 'user@example.com');
await page.fill('[data-testid="password"]', 'password123');
await page.click('[data-testid="login-btn"]');
// 创建模板
await page.click('[data-testid="new-template-btn"]');
await page.fill('[data-testid="template-name"]', 'My Template');
await page.click('[data-testid="save-template-btn"]');
await expect(page.locator('[data-testid="success-toast"]')).toBeVisible();
// 共享模板
await page.click('[data-testid="share-btn"]');
await page.fill('[data-testid="share-email"]', 'team@example.com');
await page.click('[data-testid="confirm-share-btn"]');
await expect(page.locator('[data-testid="share-success"]')).toBeVisible();
});
Jenkins Pipeline 自动执行:
强制规则:UI 改动必须附带截图,否则 CI 失败
UI Test Agent 执行最终验收:
验收标准:所有测试通过 + 视觉差异<2% + 无障碍评分>90
当测试失败时,系统不会用同样的 prompt 重启,而是:
时间越长,AI 生成的测试质量越高,因为它记得什么能成功。
运维工程师从手动部署转向基础设施即代码(IaC)、自动化巡检和异常兜底,确保系统高可用、高性能、高安全。
| 传统模式 | AI 驱动模式 |
|---|---|
| 手动部署应用(耗时数小时) | 定义部署策略,AI 自动执行 CI/CD 流水线(10 分钟) |
| 手动监控告警响应 | 设计监控规则,AI 主动感知并自动修复常见问题 |
| 手动扩容缩容 | 定义 HPA 策略,K8S 自动弹性伸缩 |
| 手动安全补丁更新 | AI 自动扫描漏洞并生成修复 PR |
Deploy Agent 自动生成 Jenkins Pipeline:
pipeline {
agent any
environment {
DOCKER_REGISTRY = 'registry.example.com'
K8S_NAMESPACE = 'production'
IMAGE_TAG = "${BUILD_NUMBER}"
}
stages {
stage('Checkout') {
steps {
git branch: 'main', url: 'https://github.com/org/repo.git'
}
}
stage('Build & Test') {
parallel {
stage('Unit Test') {
steps { sh 'npm test -- --coverage' }
}
stage('Integration Test') {
steps {
sh 'docker-compose up -d db redis'
sh 'npm run test:integration'
}
}
stage('E2E Test') {
steps { sh 'npm run test:e2e' }
}
}
}
stage('Build Docker Image') {
steps {
sh "docker build -t ${DOCKER_REGISTRY}/app:${IMAGE_TAG} ."
sh "docker push ${DOCKER_REGISTRY}/app:${IMAGE_TAG}"
}
}
stage('Deploy to K8S') {
steps {
sh "kubectl set image deployment/app app=${DOCKER_REGISTRY}/app:${IMAGE_TAG} -n ${K8S_NAMESPACE}"
sh "kubectl rollout status deployment/app -n ${K8S_NAMESPACE}"
}
}
stage('Smoke Test') {
steps {
sh 'npm run test:smoke -- --env=production'
}
}
}
post {
always {
junit 'reports/*.xml'
archiveArtifacts artifacts: 'reports/**/*'
}
failure {
script {
// 自动回滚
sh "kubectl rollout undo deployment/app -n ${K8S_NAMESPACE}"
// 发送告警
emailext subject: "Deploy Failed: ${JOB_NAME}", body: "Check: ${BUILD_URL}"
}
}
}
}
Container Agent 生成优化的 Dockerfile:
# 多阶段构建,减小镜像体积
FROM node:20-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
RUN npm run build
FROM node:20-alpine AS production
WORKDIR /app
COPY --from=builder /app/node_modules ./node_modules
COPY --from=builder /app/dist ./dist
COPY --from=builder /app/package.json ./
ENV NODE_ENV=production
EXPOSE 3000
# 非 root 用户运行
RUN addgroup -g 1001 -S nodejs && adduser -S nodejs -u 1001
USER nodejs
HEALTHCHECK --interval=30s --timeout=3s --start-period=5s --retries=3 \\
CMD wget --quiet --tries=1 --spider http://localhost:3000/health || exit 1
CMD ["node", "dist/main.js"]
K8S Agent 生成部署清单:
apiVersion: apps/v1
kind: Deployment
metadata:
name: app
namespace: production
spec:
replicas: 3
selector:
matchLabels:
app: myapp
template:
metadata:
labels:
app: myapp
spec:
containers:
- name: app
image: registry.example.com/app:latest
ports:
- containerPort: 3000
resources:
requests:
memory: "256Mi"
cpu: "250m"
limits:
memory: "512Mi"
cpu: "500m"
livenessProbe:
httpGet:
path: /health
port: 3000
initialDelaySeconds: 30
periodSeconds: 10
readinessProbe:
httpGet:
path: /ready
port: 3000
initialDelaySeconds: 5
periodSeconds: 5
---
apiVersion: v1
kind: Service
metadata:
name: app-service
namespace: production
spec:
selector:
app: myapp
ports:
- port: 80
targetPort: 3000
type: LoadBalancer
---
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
name: app-hpa
namespace: production
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: app
minReplicas: 3
maxReplicas: 10
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 70
PR 合并后,自动触发:
Watch/Sensor 系统主动感知:
# 示例:AI 自动执行的巡检任务
# 场景:磁盘使用率超过 80%
1. SSH 连接服务器
2. 执行 df -h 检查磁盘
3. 发现 /var/log 占用 85%
4. 自动清理 7 天前的日志
5. 发送告警邮件:"已自动清理日志,释放 10GB 空间"
6. 创建工单记录操作
国元证券自主研发的类 OpenClaw 应用"旗鱼"实现了:
效果:一个 IT 工程师以前需要花费数小时的任务,现在用自然语言说一句话,Agent 十几分钟就能自主完成,效率提升了一个数量级。
本系统不是要替代人类,而是要放大人类的能力。通过将重复性、机械性的工作交给 AI,人类可以专注于创造性、战略性的决策。
| 层次 | 人类角色 | AI 角色 | 典型场景 |
|---|---|---|---|
| L1: 指令驱动 | 发出明确指令 | 执行指令并反馈结果 | "创建一个用户登录 API" |
| L2: 目标驱动 | 定义目标和约束 | 自主规划路径并执行 | "实现用户系统,支持 OAuth2 登录" |
| L3: 主动感知 | 审核和批准 | 主动发现问题并解决 | AI 发现 Sentry 错误,自动调查并修复 |
人类:用自然语言描述需求
AI:拆解需求、生成 PRD、提出澄清问题
协同:人类审核 PRD,确认业务规则
AI:生成技术方案(架构设计、API 设计、数据库设计)
人类:审核技术方案的合理性、扩展性、安全性
协同:人类提出修改意见,AI 迭代优化方案
AI:三个 Reviewer Agent 自动审查,标记问题
人类:处理 AI 标记的关键问题,常规问题由 AI 自行修复
协同:人类关注架构和安全,AI 关注细节和规范
AI:执行 CI/CD 流水线,报告测试结果
人类:审核测试报告和变更影响,批准部署
协同:高风险变更需人类批准,常规变更自动部署
AI:监控告警,尝试自动修复
人类:接收升级告警,处理 AI 无法解决的复杂问题
协同:AI 提供诊断信息和建议,人类做最终决策
趋势:越往后人越轻松,但需要的信任也越多。本系统的目标是达到 L3 级别的主动感知协同。
通话/会议结束后,OpenClaw 已自动同步会议记录到 Obsidian,理解:
人工投入:10 分钟与 OpenClaw 对话,确认需求边界
OpenClaw 自动:
# 示例:创建 worktree + 启动代理
git worktree add ../feat-custom-templates -b feat/custom-templates origin/main
cd ../feat-custom-templates && pnpm install
tmux new-session -d -s "codex-templates" \
-c "/path/to/worktree" \
"$HOME/.codex-agent/run-agent.sh templates gpt-5.3-codex high"
Cron 任务每 10 分钟检查:
人工干预:如果 Agent 走偏,在 tmux 中发送指令纠正
Agent 完成代码后:
gh pr create --fill 创建 PR注意:此时不会通知人类,因为 PR 创建不代表完成
三个 Reviewer Agent 独立审查:
所有评论直接添加到 PR 中
CI Pipeline 执行:
收到 Telegram 通知时,以下已完成:
人工投入:5-10 分钟,很多 PR 只看截图就直接合并
PR 合并后自动触发:
总耗时:从客户需求到代码上线,1-2 小时
人工投入:累计 10-20 分钟
正如本系统实践者所说:
"我们会看到大量一个人的百万美元公司从 2026 年开始出现。杠杆是巨大的,属于那些理解如何构建递归自我改进 AI 系统的人。下一代创业者不会雇 10 个人去做一个人加一套系统就能做的事。他们会这样构建——保持小规模,快速行动,每天发布。"