一键导入
rpiv-loop-validate
根据项目结构自动选择 lint、测试、构建及可选服务检查,并输出摘要
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
根据项目结构自动选择 lint、测试、构建及可选服务检查,并输出摘要
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
归档已完成的过程文件
一键启动全自主 agent 团队,自动完成从 PRD 到验证的完整 RPIV 开发流程。brainstorm 完成后使用此命令,无需人工介入。当用户提到"自动开发"、"团队开发"、"全自主"、"biubiubiu"时触发。
通过访谈对话澄清产品需求
对指定目录/模块/skill 进行全量代码审计(不依赖 git diff)。支持逻辑、安全、性能、架构、集成与环境、可迁移性 6 个维度的审查,特别适合审计 skills 是否绑定 Claude Code、Codex、opencode 或特定机器环境。
修复手动/AI 代码审查中发现的问题的流程
在提交前运行的技术代码审查,用于质量和错误检查
| name | rpiv-loop:validate |
| description | 根据项目结构自动选择 lint、测试、构建及可选服务检查,并输出摘要 |
| allowed-tools | Read, Bash, Edit, Grep, Glob |
| version | 2.17.5 |
<rpiv-loop-root>解析顺序:环境变量RPIV_LOOP_ROOT->CLAUDE_PLUGIN_ROOT-> 当前插件根目录;均不存在时停止并请用户配置RPIV_LOOP_ROOT或CLAUDE_PLUGIN_ROOT。
按项目类型执行验证并报告。优先采用项目自定义的验证方式,否则根据检测到的技术栈自动选择 lint、测试、构建及可选的服务健康检查。
先依次检查,若存在则按该方式执行,并直接进入文末「摘要报告」;否则继续「按类型检测与执行」。
./scripts/validate.sh、./scripts/validate(或 Windows 下 .cmd、.ps1)make validate(若存在 Makefile 且包含 validate 目标)npm run validate、pnpm validate、uv run validate(或 pyproject 的 [project.scripts] 中的 validate)项目/.claude/commands/validation/validate.md 或 docs/validate-commands.md(若存在,按其中步骤执行)pytest -m "not slow"、ruff check .),则按该序列执行若优先级 0 均未命中,先检测项目结构,再按类型执行。
通过 ls、test -f、git ls-files 等查找:
pyproject.toml、requirements.txt、setup.py → 视为含 Pythonpackage.json(根目录或 frontend/、packages/*)→ 视为含 Node/前端go.mod、Cargo.toml → 视为 Go、Rustbackend/、frontend/、src/、packages/ → 用于确定工作目录backend/ 则 backend/,否则 src/(若存在),否则项目根uv.lock 或 pyproject.toml 中 [tool.uv] 等),优先 uv run <cmd>;否则 python -m 或 pip 安装后直接命令Lint(按存在性选择其一,均无则跳过并注明):
[tool.ruff]、ruff.toml 或项目常用 ruff → uv run ruff check . 或 ruff check .[tool.flake8] 或 .flake8 → flake8 . 或 flake8 <常用目录>pylint <目标模块或目录>Test:
pytest 或 [tool.pytest] → 按上方「运行方式」选择 uv run pytest -v 或 pytest -v(若 CLAUDE/README 有约定如 -m "not slow" 则加上);若无 pytest 有 unittest → 按上方「运行方式」选择 uv run python -m unittest discover 或 python -m unittest discover;均无则跳过并注明Coverage:
[tool.coverage] 或项目惯用 --cov,运行 pytest --cov=<包名> --cov-report=term-missing;否则可选跳过frontend/、packages/frontend 或 根(若仅有一个 package.json)pnpm-lock.yaml 用 pnpm,否则 npmLint:若 package.json 的 scripts 中有 lint → npm run lint 或 pnpm lint;否则跳过并注明
Test:若 scripts 中有 test → npm test 或 pnpm test;否则跳过
Build:若 scripts 中有 build → npm run build 或 pnpm build;否则跳过
package.json 仅为 monorepo 根、无实质代码,不重复跑根目录的 lint/test在工作目录(含 go.mod 的目录或根)执行:
go build ./...
go test ./...
在工作目录(含 Cargo.toml 的目录或根)执行:
cargo build
# 或 cargo check
cargo test
若未识别到 Python/Node/Go/Rust 的常见结构,注明:「未自动识别到常见技术栈,请参考 README、CLAUDE.md 或 CI(如 .github/workflows)中的验证步骤」。可仅输出报告,整体标为「未执行自动验证」。
uvicorn xxx:app --port 8765、npm run dev)以及健康或文档 URL(如 /health、/docs、http://localhost:8765/...)taskkill /F /IM <进程名> 或按端口查进程后结束lsof -ti:<端口> | xargs kill -9 或 pkill -f <可识别子串>输入契约:rpiv/validation/<feature>/acceptance.yaml(由 plan-feature 阶段产出骨架,已含 id / given / when / then / verification_method / blocking)。
本阶段职责:对 acceptance.yaml 中的每一条 AC,执行其 verification_method 并逐条填写 evidence 与 status。
Read 工具载入全部 AC 条目verification_method:
uv run pytest ...)→ 运行并捕获输出bash tests/integration/*.sh)→ 运行并记录退出码status:
passed:执行成功且证据充分failed:执行失败或证据与 then 断言不符not_applicable:环境不支持(此时 notes 必须说明理由)evidence(禁止模糊文本):
tests/test_xxx.py::test_name 或 tests/test_xxx.py:123logs/validate-<date>.log 的行号片段docs/screenshots/<feature>-ac-NNN.pngevidence: "已测"、evidence: "OK"、evidence: "通过" — 这类一律视为 failed本阶段只能动 evidence / status / notes 三个字段。以下字段是 plan 阶段产出的契约,validate 阶段禁止改动:
id — 唯一标识given / when / then — Gherkin 三段verification_method — 验证手段blocking — 强/软约束标记如发现 plan 阶段的 AC 本身有问题(措辞模糊、验证方法不可执行),回退到 plan-feature 阶段修订,不要在 validate 阶段绕过。
本阶段结束前必须运行:
uv run --no-project python <rpiv-loop-root>/tools/check_acceptance.py <feature>
0 → 所有 blocking AC 均 passed 或 not_applicable(且 evidence/notes 非空)→ 可进入 delivery-report1 → 有 blocking AC 未过,按输出清单补齐2 → 文件缺失或 YAML 格式错误,修文件后重跑所有验证(及可选的服务检查)完成后,提供包含以下内容的摘要报告:
使用清晰标题和状态符号(如 ✓/✗ 或 通过/失败)格式化。
cd 与命令均在上述「工作目录」下执行;多组件时分别 cd 到 backend 与 frontend。test -f、ls、cat package.json | grep scripts 等可脚本化方式判断,避免主观假定。