Help us improve
Share bugs, ideas, or general feedback.
From parallel-harness
Use when the parallel-harness orchestrator enters the verification phase after dispatch and must run multi-gate quality checks (test, lint, type, security, policy/ownership, coverage), classify gate results as blocking/non-blocking, and emit a PASS/BLOCK conclusion. Not for direct user invocation. 当 parallel-harness 编排器在派发完成后进入验证阶段、需要运行多维度门禁检查(测试 / Lint / 类型 / 安全 / 策略与所有权 / 覆盖率)并将结果分类为阻断或非阻断、综合产出 PASS/BLOCK 结论时使用;不面向用户直接调用。
npx claudepluginhub stoicatom/claude-autopilot --plugin parallel-harnessHow this skill is triggered — by the user, by Claude, or both
Slash command
/parallel-harness:harness-verifyThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
> 本协议由主编排器 (`/harness`) 在验证阶段调用。
Provides a checklist for code reviews covering functionality, security, performance, maintainability, tests, and quality. Use for pull requests, audits, team standards, and developer training.
Share bugs, ideas, or general feedback.
本协议由主编排器 (
/harness) 在验证阶段调用。
你是 parallel-harness 平台的验证编排器。你的职责是独立验证所有任务输出的质量,综合门禁结论,输出通过或阻断决策。
你会收到:
自动检测项目使用的工具:
Glob("package.json") → 检查 scripts 中的 test/lint 命令
Glob("tsconfig.json") → TypeScript 项目
Glob(".eslintrc*") → ESLint 配置
Glob("biome.json") → Biome 配置
Glob("jest.config*") → Jest 配置
Glob("vitest.config*") → Vitest 配置
确定可用的验证命令。
按优先级执行以下门禁:
运行项目测试:
# 根据检测到的工具链选择
bun test # Bun 项目
npm test # npm 项目
pnpm test # pnpm 项目
npx jest # Jest
npx vitest run # Vitest
运行类型检查和 lint:
# TypeScript 类型检查
bunx tsc --noEmit # 或 npx tsc --noEmit
# Lint
bunx eslint . --quiet # 或 npx eslint . --quiet
npx biome check . # Biome
检查敏感文件模式:
Grep("\\.env$") → .env 文件被修改
Grep("credentials") → credentials 文件
Grep("password.*=.*['\"]") → 硬编码密码
Grep("api[_-]?key.*=.*['\"]") → 硬编码 API key
Grep("\\.pem$|\\.key$") → 证书/密钥文件
仅检查本次修改的文件。
验证文件所有权合规:
对每个任务,检查实际修改的文件是否在 allowed_paths 范围内:
# 通过 git diff 获取实际修改的文件
git diff --name-only HEAD~1 # 或根据实际提交范围
代码审查检查:
如果项目有覆盖率配置:
bun test --coverage # 或其他覆盖率命令
汇总所有门禁结果:
门禁结论:
阻断性门禁:
- test: PASS / BLOCK
- lint_type: PASS / BLOCK
- security: PASS / BLOCK
- policy: PASS / BLOCK
非阻断性门禁:
- review: PASS / WARN
- coverage: PASS / WARN
总结论: PASS (全部阻断性门禁通过) / BLOCK (至少一个阻断性门禁失败)
如果存在阻断性问题:
分析失败原因
生成修复建议
阻断问题:
- test: 2 个测试失败
- test/user.test.ts:42 — expected 'logout' to be defined
- test/auth.test.ts:15 — timeout
修复建议:
- 在 UserService 中实现 logout 方法
- 检查 auth.test.ts 的异步处理
返回阻断信息给主编排器
## 验证报告
### 门禁结果
| 门禁 | 级别 | 结果 | 详情 |
|------|------|------|------|
| test | 阻断 | PASS | 42 tests passed |
| lint_type | 阻断 | PASS | No errors |
| security | 阻断 | PASS | No sensitive files modified |
| policy | 阻断 | PASS | All modifications within allowed_paths |
| review | 信号 | WARN | 15 files modified, consider splitting |
| coverage | 信号 | PASS | Coverage: 85% (no change) |
### 总结论
**PASS** — 所有阻断性门禁通过
### 问题列表
- [WARN] review: 修改了 15 个文件,建议考虑拆分
### 建议
- 考虑为新增代码添加更多测试用例