Skip to content

feat(skills): /pr-review skill + migrate slash-commands to skills (#206) - #236

Merged
thomasluizon merged 1 commit into
mainfrom
feature/206-pr-review-and-skill-migration
Jun 19, 2026
Merged

feat(skills): /pr-review skill + migrate slash-commands to skills (#206)#236
thomasluizon merged 1 commit into
mainfrom
feature/206-pr-review-and-skill-migration

Conversation

@thomasluizon

Copy link
Copy Markdown
Owner

What

Two folded-together deliverables under .claude/, all harness tooling (no app/runtime code, no parity mirror).

1. /pr-review skill (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-comments predicate from no-comments.cjs:17-24), No-workaround/root-cause, Type safety, No console.log, DESIGN.md/AI-slop (gated to apps/*), Parity, i18n, Contract drift + backward-compat guard, Security (full folded-in /security-review body), and Backend hard rules (gated to orbit-api). One severity ladder, the ⚠️ breaks old mobile clients Critical marker, and a finding template. Command-agnostic on purpose so /audit-code-quality (Build /audit-code-quality skill #228) can Read it 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.md and post to the PR via gh pr review --comment (7).

Strict superset: every /review capability (scope resolution, per-file categories, parity/i18n/contract checks, validation, report+GitHub post) and every /security-review capability (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):

Old command New skill Args preserved
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, kept description: + argument-hint:); bodies and $ARGUMENTS semantics preserved verbatim. Only prose change: "subsequent commands" / "this command" → "skill" where now inaccurate (prime, plan, implement).

review.md + security-review.md deleted. .claude/commands/ is now empty.

Reference fixes (no dangling pointers)

  • WORKFLOW.md — both /review and /security-review pointers → /pr-review.
  • .claude/agents/contract-aligner.md — two stale /review references (frontmatter + "When invoked") → /pr-review. (The agent is now orchestrated by /pr-review Phase 4.)

Verification

  • grep -rn "\.claude/commands/" across .claude + WORKFLOW.mdzero hits.
  • grep for /review / /security-review → only intentional references remain: the three lines in pr-review/SKILL.md documenting what it supersedes. The .agents/plans/issue-103 hit is an app "review reminder card", not the command.
  • Every migrated + new skill's frontmatter name: matches its folder (verified for all 8).
  • .claude/commands/ directory no longer exists.

Deviations

  • Inlined the report template into SKILL.md rather than extracting report-template.md (the plan's optional file) — the block is compact and SKILL.md reads top-to-bottom.
  • Fixed contract-aligner.md's /review references. 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 /plan and /implement first (they are the harness's own pipeline and the dependency for #207/#208), then a /pr-review pass against a sample diff in each repo — including a crafted Zod-field-removal diff to confirm the ⚠️ breaks old mobile clients finding fires. The migration takes effect on merge, so it does not disturb the currently-running harness.

Closes #206

🤖 Generated with Claude Code

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>
@vercel

vercel Bot commented Jun 19, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
orbit-ui-mobile-web Ignored Ignored Jun 19, 2026 6:23pm

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

@sonarqubecloud

Copy link
Copy Markdown

@thomasluizon
thomasluizon merged commit 5d9ec6b into main Jun 19, 2026
8 checks passed
@thomasluizon
thomasluizon deleted the feature/206-pr-review-and-skill-migration branch June 19, 2026 20:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Build /pr-review skill (replaces /review + /security-review)

1 participant