From code
Team-based PR review with specialized parallel agents, CI integration, and iterative fix loop. Use when: "review this PR", "PR review", "PRレビュー", "PRをレビューして", "チームでPRレビュー".
npx claudepluginhub signalcompose/claude-tools --plugin codeThis skill uses the workspace's default tool permissions.
**MANDATORY**: This skill runs a complete review-fix-re-review loop using Subagents (NOT Agent Teams).
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
MANDATORY: This skill runs a complete review-fix-re-review loop using Subagents (NOT Agent Teams).
The leader MUST:
🔴 Stop hooks verify workflow completion. Skipping steps will block the stop request.
Run immediately (creates the active-review flag file for Stop hook detection):
bash ${CLAUDE_PLUGIN_ROOT}/scripts/pr-review-state.sh init <PR番号>
gh pr view --json number --jq '.number' 2>/dev/nullgh pr diff <PR番号> --name-onlygit symbolic-ref refs/remotes/origin/HEAD 2>/dev/null | sed 's|refs/remotes/origin/||' (fallback: main)package.json, Makefile, pytest.ini, etc.Note: gh commands may require dangerouslyDisableSandbox: true for TLS issues.
MANDATORY: Launch ALL 4 reviewers in a SINGLE message using parallel Agent tool calls. Do NOT use TeamCreate or Task tool. Use the Agent tool directly.
Launch in parallel (one message, 4 Agent tool calls):
Agent(subagent_type: "pr-review-toolkit:code-reviewer", model: "sonnet", prompt: "...")Agent(subagent_type: "pr-review-toolkit:silent-failure-hunter", model: "sonnet", prompt: "...")Agent(subagent_type: "pr-review-toolkit:pr-test-analyzer", model: "sonnet", prompt: "...")Agent(subagent_type: "pr-review-toolkit:comment-analyzer", model: "haiku", prompt: "...")Results return automatically. No shutdown procedure needed.
Review criteria: include ${CLAUDE_PLUGIN_ROOT}/skills/review-commit/references/review-criteria.md path in each agent prompt — agents read criteria, leader handles integration.
| Agent | Failure Severity | Action |
|---|---|---|
| code-reviewer | CRITICAL | Abort review. Report failure and STOP. |
| silent-failure-hunter | WARNING | Continue with remaining reviewers. Note in report. |
| pr-test-analyzer | WARNING | Continue with remaining reviewers. Note in report. |
| comment-analyzer | WARNING | Continue with remaining reviewers. Note in report. |
bash ${CLAUDE_PLUGIN_ROOT}/scripts/pr-review-state.sh set <PR番号> reviewers_done true
bash ${CLAUDE_PLUGIN_ROOT}/scripts/pr-review-state.sh set <PR番号> phase reviewed
Run the CI wait script (requires dangerouslyDisableSandbox: true):
bash ${CLAUDE_PLUGIN_ROOT}/scripts/wait-ci-checks.sh <PR番号>
Parse the STATUS line from output:
gh run view <run-id> --log-faileddangerouslyDisableSandbox: trueAlso collect review comments:
gh pr view <PR番号> --json comments --jq '.comments[].body'
Avoid sending already-fixed issues to the fixer:
🔴 VIOLATION — Direct Editing Prohibited ALL fixes MUST be delegated to the fixer subagent in Step 5. Using Edit/Write tools directly to apply fixes is a workflow violation. The Stop hook will block completion if the fixer agent was not used.
🔴 MANDATORY — Security Checklist
Read NOW (Stop hook verifies this was read):
${CLAUDE_PLUGIN_ROOT}/skills/pr-review-team/references/security-checklist.md
bash ${CLAUDE_PLUGIN_ROOT}/scripts/pr-review-state.sh set <PR番号> security_done true
Structure ALL findings into one single message (split messages prohibited):
## Critical Issues
- Source: <reviewer-name>
- File: <path>:<line>
- Issue: <description>
## Important Issues
- Source: <reviewer-name>
- File: <path>:<line>
- Issue: <description>
## Security Checklist Failures
- Check: <checklist-item>
- File: <path>:<line>
- Issue: <description>
## Already Addressed (informational — do NOT fix)
- Source: <reviewer-name or CI>
- Reason: Line modified/removed in current HEAD
Security Checklist: ALL PASS (N items checked) / HAS FAILURES (list)
If all pass: "Security Checklist: ALL PASS (N items checked)"
🔴 MANDATORY: If Step 4 produced ANY critical or important issues, or security failures, this step MUST execute.
🔴 VIOLATION — Re-review Required After Fixes After fixer applies fixes, ALL 4 reviewers MUST be re-invoked (same parallel pattern as Step 2). Skipping re-review is a workflow violation.
MAX_ITERATIONS=3
FOR iteration = 1 TO MAX_ITERATIONS:
1. Spawn fixer subagent:
Agent(subagent_type: "general-purpose", model: "sonnet", prompt: "<all findings>")
Send ALL findings in a single prompt (Critical + Important + Security failures)
2. Fixer applies fixes and runs tests
IF tests fail after 2 retries → report to user, do NOT merge, BREAK
3. Re-review: Launch ALL 4 reviewers again (parallel Agent tool calls, same as Step 2)
4. Collect fresh counts: fresh_critical, fresh_important, fresh_security
5. Update state:
bash ${CLAUDE_PLUGIN_ROOT}/scripts/pr-review-state.sh set <PR番号> fixer_done true
bash ${CLAUDE_PLUGIN_ROOT}/scripts/pr-review-state.sh set <PR番号> iterations <N>
bash ${CLAUDE_PLUGIN_ROOT}/scripts/pr-review-state.sh set <PR番号> final_critical <count>
bash ${CLAUDE_PLUGIN_ROOT}/scripts/pr-review-state.sh set <PR番号> final_important <count>
6. IF fresh_critical = 0 AND fresh_important = 0 AND fresh_security = "all_pass" → BREAK
END FOR
If iteration limit reached with remaining issues: report to user, do NOT merge.
Report summary:
Do NOT merge — wait for user's explicit instruction.
bash ${CLAUDE_PLUGIN_ROOT}/scripts/pr-review-state.sh cleanup <PR番号>
No shutdown procedure needed — subagents complete automatically.