feat(skills): /pr-review skill + migrate slash-commands to skills (#206) - #236
Conversation
Add a single deep-review skill and fold in the full command->skill migration. /pr-review (context: fork) replaces the partial /review and /security-review commands with one orchestrator driven by a standalone rubric.md: - rubric.md enumerates every review dimension (correctness, dead code, SOLID/clean-arch, comment-policy per local/no-comments, no-workaround, type safety, no console.log, DESIGN.md/AI-slop, parity, i18n, contract drift + backward-compat, security, backend hard rules) with one severity ladder, the "breaks old mobile clients" marker, and a finding template. Command-agnostic so /audit-code-quality (#228) can reuse it verbatim. - SKILL.md resolves scope (PR / api#N / URL / file / folder / staged), loads context + rubric, walks the rubric, orchestrates parity-checker / i18n-syncer / contract-aligner / security-reviewer (gated, 3-concurrency cap), runs the backward-compat guard, delegates validation to /validate, and writes/posts a report. Self-contained: no runtime fetch (provenance is a single WHY+URL note). Migrate the 7 surviving commands to skills via git mv (history preserved): prime, plan, implement, create-prd, prd-interactive, create-stories, validate. Frontmatter reshaped to skill form (add name = folder, keep description + argument-hint); bodies and $ARGUMENTS preserved verbatim; "subsequent commands" / "this command" wording corrected to "skill" where now inaccurate. Delete the 2 subsumed commands (review, security-review); .claude/commands/ is now empty. Repoint stale /review references: WORKFLOW.md and contract-aligner.md -> /pr-review. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub. 1 Skipped Deployment
|
There was a problem hiding this comment.
This is a clean, well-scoped harness migration. The new /pr-review skill correctly supersedes both /review and /security-review: scope resolution, per-file rubric walk, four gated subagents (parity-checker, i18n-syncer, contract-aligner, security-reviewer) with the documented 3-concurrency cap, a backward-compat guard for frozen Android snapshots, and a /validate delegation round out the orchestration. The standalone rubric.md is command-agnostic and ready for /audit-code-quality (#228) to reuse verbatim. The 7 command→skill renames preserve git history, frontmatter is correctly reshaped, prose references updated ("this command" → "skill"), and all dangling /review pointers in WORKFLOW.md and contract-aligner.md have been repointed.
|



What
Two folded-together deliverables under
.claude/, all harness tooling (no app/runtime code, no parity mirror).1.
/pr-reviewskill (replaces/review+/security-review)A single deep, fork-context review skill driven by one standalone rubric.
.claude/skills/pr-review/rubric.md— the shared source of truth. Severity-tagged checklist for every dimension from the issue: Correctness, Dead/stale code, SOLID/clean-arch, Comment policy (local/no-commentspredicate fromno-comments.cjs:17-24), No-workaround/root-cause, Type safety, Noconsole.log, DESIGN.md/AI-slop (gated toapps/*), Parity, i18n, Contract drift + backward-compat guard, Security (full folded-in/security-reviewbody), and Backend hard rules (gated toorbit-api). One severity ladder, the⚠️ breaks old mobile clientsCritical marker, and a finding template. Command-agnostic on purpose so/audit-code-quality(Build/audit-code-qualityskill #228) canReadit verbatim..claude/skills/pr-review/SKILL.md— the orchestrator (context: fork). Phases: provenance/self-containment (0) → resolve scope (1) → load context + rubric (2) → walk the rubric (3) → orchestrate the four subagents gated + 3-concurrency cap (4) → backward-compat guard (5) → delegate validation to/validate(6) → write.claude/reviews/{scope}-review.mdand post to the PR viagh pr review --comment(7).Strict superset: every
/reviewcapability (scope resolution, per-file categories, parity/i18n/contract checks, validation, report+GitHub post) and every/security-reviewcapability (7 categories + severity ladder) is rehomed before the two command files were deleted. The report-template was inlined (compact enough; no separate file needed).Self-contained (AC4): no runtime network call. Provenance (claudeskills.info code-review base, adapted to Orbit's standards) is recorded as the single WHY-with-URL note the standard allows.
2. Command → skill migration (folded into #206)
The 7 surviving commands moved via
git mv(history preserved, 97-99% similarity):prime.claude/skills/prime/SKILL.md[issue-number ...] [--quick]plan.claude/skills/plan/SKILL.md<issue | description | prd.md> [...]implement.claude/skills/implement/SKILL.md<plan.md | issue> [...]create-prd.claude/skills/create-prd/SKILL.md[output-filename]prd-interactive.claude/skills/prd-interactive/SKILL.md[feature idea]create-stories.claude/skills/create-stories/SKILL.md<prd> [--milestone] [--no-create]validate.claude/skills/validate/SKILL.md[frontend|backend|both]Frontmatter reshaped command→skill (added
name:= folder, keptdescription:+argument-hint:); bodies and$ARGUMENTSsemantics preserved verbatim. Only prose change: "subsequent commands" / "this command" → "skill" where now inaccurate (prime, plan, implement).review.md+security-review.mddeleted..claude/commands/is now empty.Reference fixes (no dangling pointers)
WORKFLOW.md— both/reviewand/security-reviewpointers →/pr-review..claude/agents/contract-aligner.md— two stale/reviewreferences (frontmatter + "When invoked") →/pr-review. (The agent is now orchestrated by/pr-reviewPhase 4.)Verification
grep -rn "\.claude/commands/"across.claude+WORKFLOW.md→ zero hits.grepfor/review//security-review→ only intentional references remain: the three lines inpr-review/SKILL.mddocumenting what it supersedes. The.agents/plans/issue-103hit is an app "review reminder card", not the command.name:matches its folder (verified for all 8)..claude/commands/directory no longer exists.Deviations
SKILL.mdrather than extractingreport-template.md(the plan's optional file) — the block is compact andSKILL.mdreads top-to-bottom.contract-aligner.md's/reviewreferences. The plan said agents needed no edits, but these were literal dangling pointers to a deleted command, so repointing them is in-scope ("don't leave dangling references").Manual dry-run recommendation
Skills have no unit-test harness. Before relying on the migrated workflow, manually dry-run
/planand/implementfirst (they are the harness's own pipeline and the dependency for #207/#208), then a/pr-reviewpass against a sample diff in each repo — including a crafted Zod-field-removal diff to confirm the⚠️ breaks old mobile clientsfinding fires. The migration takes effect on merge, so it does not disturb the currently-running harness.Closes #206
🤖 Generated with Claude Code