adopt
Bootstrap an existing repo for ForgeDock — triage open issues, apply labels, suggest a starter milestone, and identify first…
Review agent catalog (read by /review-pr; not a user entrypoint)
> /plugin marketplace add RapierCraftStudios/ForgeDock > /plugin install forgedock@forgedock
How it fires
How this command gets triggered: by you, by Claude, or both.
/review-pr-agentsContext preview
What this command does when you run it.
Review agent catalog (read by /review-pr; not a user entrypoint)
description: Review agent catalog (read by /review-pr; not a user entrypoint) user-invocable: false
<!-- SPDX-FileCopyrightText: Copyright (c) RapierCraft Studios --> <!-- SPDX-License-Identifier: AGPL-3.0-or-later -->
This file is the routing index referenced by the `/review-pr` orchestrator during Phase 3C (agent dispatch). Per-persona prompt templates have been split into individual files under `commands/review-pr-agents/` to avoid loading the full catalog on every invocation. Protocols live in `docs/spec/review-protocol.md` (canonical source) and are reproduced in `commands/review-pr-agents/protocols.md`.
Do not modify this file without also updating `review-pr.md`. To update either protocol, edit `docs/spec/review-protocol.md` and sync the copy to `commands/review-pr-agents/protocols.md`.
**Dispatch tool: `Task` preferred, `Agent` is the documented fallback.** The orchestrator (`/review-pr` or `/review-pr-staging`) resolves the dispatch tool once per invocation per its **Sub-Agent Dispatch Tool Resolution** rule: `Task` when available, `Agent` when `Task` is absent from the environment — never inline self-review as a substitute for either. Every agent template in this catalog is intended to be passed as the `prompt` argument to whichever tool the orchestrator resolved (`Task(...)` or `Agent(...)`), with the same per-agent isolation and the same requirement that each agent posts structured findings to the PR directly (`gh pr comment`) rather than relaying them through the orchestrator's own context.
**OpenCode override**: When `FORGE_RUNTIME=opencode` or an equivalent OpenCode marker is present, the orchestrator must set `DISPATCH_TOOL=task` before checking literal Claude tool names. A native task argument is shaped as `{ description: "...", prompt: "...", subagent_type: "general"|"explore", background: false }`: use `general` for implementation/review and `explore` for read-only discovery. The `Neither tool is available` hard stop applies only when lowercase native `task` is genuinely absent; it must not be triggered by the absence of `Task` and `Agent` names in an OpenCode session. If native `task` is absent, post `FORGE:REVIEW_BLOCKED` and never replace the isolated review with inline work.
<!-- FORGE:PROTOCOL_SOURCE — canonical definition lives in docs/spec/review-protocol.md -->
---
Every reviewer agent is read-only with respect to the main checkout (the repo's shared primary working tree). It MUST NOT run `git checkout`, `git switch`, `git reset`, `git stash`, or `git merge` there: those race with the operator and other agents. Read PR code with `git show <sha>:<path>`, `gh pr diff`, `gh api`, or a per-PR worktree (`git worktree add --detach`) that the agent removes afterward. The orchestrator appends this rule to every dispatched prompt (review-pr.md Phase 3C). <!-- Added: forge#3650 -->
---
For each agent selected in Phase 3B, read **only** the files relevant to that agent:
1. **Always read first** (shared protocols, all agents require this):
Read: ${CLAUDE_PLUGIN_ROOT}/commands/review-pr-agents/protocols.md2. **Then read the persona file for each selected agent**:
| Agent | Trigger | Marker domain | File | |-------|---------|---------------|------| | General Security & Quality Scan | ALWAYS RUNS | `security` | `review-pr-agents/security.md` | | Auth Conventions Auditor | Auth/session/trust-filter files changed (path-gated) | `auth` | `review-pr-agents/auth.md` | | Billing Integrity Auditor | BILLING domain | `billing` | `review-pr-agents/billing.md` | | Concurrency & Race Condition Auditor | CONCURRENCY or BILLING domain | `concurrency` | `review-pr-agents/concurrency.md` | | Domain Logic Auditor | SCRAPING domain (requires `review.domains.scraping` in forge.yaml) | `scraper` | `review-pr-agents/scraper.md` | | Frontend Quality Auditor | WEB service touched | `frontend` | `review-pr-agents/frontend.md` | | API Design & Consistency Auditor | New/modified routers or SDK/OpenAPI files | `api` | `review-pr-agents/api.md` | | Database & Migration Auditor | DATABASE domain | `database` | `review-pr-agents/database.md` | | Infrastructure & Deploy Safety Auditor | Docker, CI, deploy or infra files changed (path-gated) | `infra` | `review-pr-agents/infra.md` |
The table is applied by `scripts/review-roster.sh` (Phase 3B Step 4), which tiers the roster by diff size and fix-PR lineage: small and fix PRs run Security only unless a path trigger fires, and Auth and Infra are selected by file path, never by diff-text score. `--thorough` and milestone-to-staging always run the full union. The tier and reason are recorded in `FORGE:REVIEW_TIER`.
| Agent | Prefix | |-------|--------| | General Security | `SEC` | | Auth Conventions | `AUTH` | | Billing Integrity | `BILL` | | Concurrency | `CONC` | | Domain Logic | `SCRP` | | Frontend Quality | `FE` | | API Design | `API` | | Database & Migration | `DB` | | Infrastructure | `INFRA` |
Replace the single `Read: ${CLAUDE_PLUGIN_ROOT}/commands/review-pr-agents.md` call with:
Read: ${CLAUDE_PLUGIN_ROOT}/commands/review-pr-agents/protocols.md
Read: ${CLAUDE_PLUGIN_ROOT}/commands/review-pr-agents/<persona>.md (one per selected agent)Each persona file contains:
The `protocols.md` file contains:
**Spec root (MANDATORY)**: read every file named in this catalog from `${CLAUDE_PLUGIN
ForgeDock — autonomous AI dev pipeline for Claude Code. GitHub as agent memory: issue in, PR out.
Bootstrap an existing repo for ForgeDock — triage open issues, apply labels, suggest a starter milestone, and identify first…
Pull production analytics from GSC, Bing Webmaster, Clarity, Umami, Cloudflare, Stripe, and GA4 — generate insights and create…
Audit agent outputs from an orchestration run — timeline analysis, stall detection, active vs idle time breakdown
Trace a production issue or pipeline failure end-to-end through GitHub artifacts, then file a detailed improvement issue to the…
Autonomous deploy loop — runs until zero open issues remain. Detects pipeline state and resumes from any position. Fully…
Guided idea-to-backlog setup for a brand-new project — interview, defaults, doubts, spike doc, validated orchestrate-ready backlog