OA0
OA0 是一个探索 AI 的社区
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  piv:计划、实施、验证的循环式系统化工作流

piv:计划、实施、验证的循环式系统化工作流

 
  yang ·  2026-02-02 06:10:53 · 24 次点击  · 0 条评论  

名称: piv
描述: "PIV 工作流编排器——用于系统化多阶段软件开发的 Plan、Implement、Validate 循环。适用于通过 PRP 分阶段构建功能、自动化验证循环或多智能体编排的场景。支持 PRD 创建、PRP 生成、代码库分析以及带验证的迭代执行。"
user-invocable: true
disable-model-invocation: true
元数据: {"openclaw":{"emoji":"gear","homepage":"https://github.com/SmokeAlot420/ftw","requires":{"bins":["git"]},"os":["darwin","linux"]}}


PIV Ralph 编排器

参数: $ARGUMENTS

参数解析逻辑如下:

PRD 路径模式(第一个参数以 .md 结尾)

如果第一个参数以 .md 结尾,则视为 PRD 文件的直接路径:
- PRD_PATH - PRD 文件的直接路径
- PROJECT_PATH - 通过从 PRDs/ 文件夹向上追溯推导得出
- START_PHASE - 第二个参数(默认:1)
- END_PHASE - 第三个参数(默认:从 PRD 自动检测)

项目路径模式

如果第一个参数.md 结尾:
- PROJECT_PATH - 项目的绝对路径(默认:当前工作目录)
- START_PHASE - 第二个参数(默认:1)
- END_PHASE - 第三个参数(默认:4)
- PRD_PATH - 从 PROJECT_PATH/PRDs/ 文件夹自动发现

检测逻辑

如果 $ARGUMENTS[0] 以 ".md" 结尾:
  PRD_PATH = $ARGUMENTS[0]
  PROJECT_PATH = dirname(dirname(PRD_PATH))
  START_PHASE = $ARGUMENTS[1] 或 1
  END_PHASE = $ARGUMENTS[2] 或 从 PRD 自动检测
  PRD_NAME = 去除扩展名的 basename
否则:
  PROJECT_PATH = $ARGUMENTS[0] 或 当前工作目录
  START_PHASE = $ARGUMENTS[1] 或 1
  END_PHASE = $ARGUMENTS[2] 或 4
  PRD_PATH = 从 PROJECT_PATH/PRDs/ 自动发现
  PRD_NAME = 发现的 PRD 文件名(不含扩展名)

各角色必读文档

关键:每个角色在行动前必须阅读其指令文件。

角色 指令文件
PRD 创建 阅读 {baseDir}/references/create-prd.md
PRP 生成 阅读 {baseDir}/references/generate-prp.md
代码库分析 阅读 {baseDir}/references/codebase-analysis.md
执行器 阅读 {baseDir}/references/piv-executor.md + {baseDir}/references/execute-prp.md
验证器 阅读 {baseDir}/references/piv-validator.md
调试器 阅读 {baseDir}/references/piv-debugger.md

前提条件: 必须存在 PRD。如果未找到,请告知用户先创建一个。


编排器理念

"上下文预算:约 15% 用于编排器,每个子智能体使用 100% 全新上下文"

你是编排器。保持精简并管理工作流。你自己执行 PRP——而是为每个任务创建具有全新上下文的专用子智能体。

子智能体创建: 使用 sessions_spawn 工具创建全新的子智能体会话。每次创建都是非阻塞的——你将通过一个公告步骤接收结果。在进入下一步之前,请等待每个智能体的结果。


项目初始化 (piv-init)

如果项目没有 PIV 目录,请创建它们:

mkdir -p PROJECT_PATH/PRDs PROJECT_PATH/PRPs/templates PROJECT_PATH/PRPs/planning

如果不存在,将 {baseDir}/assets/prp_base.md 复制到 PROJECT_PATH/PRPs/templates/prp_base.md
如果不存在,根据 {baseDir}/assets/workflow-template.md 创建 PROJECT_PATH/WORKFLOW.md


阶段工作流

对于从 START_PHASE 到 END_PHASE 的每个阶段:

步骤 1:检查/生成 PRP

检查现有 PRP:

ls -la PROJECT_PATH/PRPs/ 2>/dev/null | grep -i "phase.*N\|pN\|p-N"

如果不存在 PRP,使用 sessions_spawn 创建一个全新的子智能体,按顺序执行代码库分析和 PRP 生成:

研究与 PRP 生成任务 - 阶段 {N}
==============================================

项目根目录:{PROJECT_PATH}
PRD 路径:{PRD_PATH}

## 阶段 {N} 范围(来自 PRD)
{粘贴阶段范围}

## 步骤 1:代码库分析
阅读 {baseDir}/references/codebase-analysis.md 了解流程。
保存到:{PROJECT_PATH}/PRPs/planning/{PRD_NAME}-phase-{N}-analysis.md

## 步骤 2:生成 PRP(分析上下文仍保持加载)
阅读 {baseDir}/references/generate-prp.md 了解流程。
使用模板:PRPs/templates/prp_base.md
输出到:{PROJECT_PATH}/PRPs/PRP-{PRD_NAME}-phase-{N}.md

**自行完成这两个步骤。不要创建子智能体。**

步骤 2:创建执行器

使用 sessions_spawn 创建一个全新的子智能体:

执行器任务 - 阶段 {N}
============================

阅读 {baseDir}/references/piv-executor.md 了解你的角色定义。
阅读 {baseDir}/references/execute-prp.md 了解执行流程。

PRP 路径:{PRP_PATH}
项目:{PROJECT_PATH}

遵循:加载 PRP → 详细规划 → 执行 → 验证 → 确认
输出包含状态、文件、测试、问题的**执行摘要**。

步骤 3:创建验证器

使用 sessions_spawn 创建一个全新的子智能体:

验证器任务 - 阶段 {N}
=============================

阅读 {baseDir}/references/piv-validator.md 了解你的验证流程。

PRP 路径:{PRP_PATH}
项目:{PROJECT_PATH}
执行器摘要:{SUMMARY}

独立验证**所有**要求。
输出包含等级、检查项、差距的**验证报告**。

处理结果: 通过 → 提交 | 发现差距 → 调试器 | 需要人工介入 → 询问用户

步骤 4:调试循环(最多 3 次迭代)

使用 sessions_spawn 创建一个全新的子智能体:

调试器任务 - 阶段 {N} - 迭代 {I}
============================================

阅读 {baseDir}/references/piv-debugger.md 了解你的调试方法。

项目:{PROJECT_PATH}
PRP 路径:{PRP_PATH}
差距:{GAPS}
错误:{ERRORS}

修复根本原因,而非表面症状。每次修复后运行测试。
输出包含状态、应用的修复、测试结果的**修复报告**。

调试器之后:重新验证 → 通过(提交)或循环(最多 3 次)或升级处理。

步骤 5:智能提交

cd PROJECT_PATH && git status && git diff --stat

创建语义化提交,包含 Built with FTW (First Try Works) - https://github.com/SmokeAlot420/ftw

步骤 6:更新 WORKFLOW.md

标记阶段完成,记录验证结果。

步骤 7:进入下一阶段

循环回步骤 1,处理下一阶段。


错误处理

  • 无 PRD:告知用户先创建一个
  • 执行器受阻:向用户寻求指导
  • 验证器需要人工介入:向用户寻求指导
  • 3 次调试循环已用尽:升级给用户处理

子智能体超时/失败

当子智能体超时或失败时:
1. 检查是否有部分工作完成(创建的文件、编写的测试)
2. 使用简化、更短的提示重试一次
3. 如果重试失败,将已完成的工作告知用户并升级处理


完成

## PIV RALPH 完成

完成阶段:从 START 到 END
总提交次数:N
验证循环次数:M

### 阶段摘要:
- 阶段 1:[功能] - 在 N 个循环内完成验证
...

所有阶段均已成功实施并通过验证。
24 次点击  ∙  0 人收藏  
登录后收藏  
0 条回复
关于 ·  帮助 ·  PING ·  隐私 ·  条款   
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
耗时 21 ms
Developed with Cursor