diff --git a/.claude/skills/review-pr/SKILL.md b/.claude/skills/review-pr/SKILL.md index c9c23daf0..b4aaec879 100644 --- a/.claude/skills/review-pr/SKILL.md +++ b/.claude/skills/review-pr/SKILL.md @@ -46,7 +46,7 @@ or `-` suffix) to classify: If the branch name doesn't match any known type, default to **code** reviewers. -### 3. Generate the diff +### 3. Generate the diff and read source files ```bash git log --oneline main.. @@ -63,13 +63,24 @@ If the diff is empty, report "No changes to review" and stop. Three-dot diff with pathspec exclusions is unreliable. Instead, either: 1. Use `git diff main...` (full diff) and filter in the prompt, or -2. Have Tyre read source files directly from the branch: +2. Read source files directly from the branch: `git show origin/:` For large diffs (>1000 lines of source), provide **source files** rather than raw diff to reviewers — cleaner context, better reviews. Read files with `git show origin/:` and include them in the prompt. +**IMPORTANT — agent tool access:** Not all reviewer agents have Bash access. +Agents that CAN read from branches themselves: **Hoshe, Tyre, Araminta**. +Agents that CANNOT (no Bash tool): **Paula, Miri, Ozzie, Gestalt, Gore, Nigel**. + +For agents without Bash, you MUST read the source files yourself (via +`git show origin/:`) and **paste the file contents directly +into the agent prompt**. Do not tell these agents to read files — they can't. +For very large PRs, read the key files (new/heavily modified) and include +summaries or excerpts of minor changes. Also read and include the relevant +`decisions/*.md` files these agents need for context. + ### 4. Spawn reviewers in parallel Use the Task tool to spawn **all reviewers simultaneously** in a single message. @@ -113,20 +124,24 @@ Use `model: sonnet` for all — sufficient for review, saves cost. - File organization and structure - Missing or orphaned files -**Paula (Narrative Depth)** +**Paula (Narrative Depth)** — NO BASH ACCESS - `subagent_type`: `paula`, `model`: `sonnet` -- Prompt: Include the changed files and commit log. Tell Paula to read the - relevant `decisions/*.md` files first, then review for: +- Paula cannot read from branches. You must paste file contents and decision + files directly into the prompt. +- Prompt: Include full text of changed files, commit log, and relevant + `decisions/*.md` content. Ask Paula to review for: - Narrative quality and character voice consistency - Whether dialogue and monologue feel authentic to the characters - Consequences and stakes — do choices carry weight? - Political and interpersonal depth - Emotional resonance — does the text make you feel something? -**Miri (World Consistency)** +**Miri (World Consistency)** — NO BASH ACCESS - `subagent_type`: `miri`, `model`: `sonnet` -- Prompt: Include the changed files and commit log. Tell Miri to read the - relevant `decisions/*.md` files first, then review for: +- Miri cannot read from branches. You must paste file contents and decision + files directly into the prompt. +- Prompt: Include full text of changed files, commit log, and relevant + `decisions/*.md` content. Ask Miri to review for: - Lore accuracy — do facts match established setting? - Internal consistency across files - IP originality — nothing should read as a copy from another franchise @@ -145,10 +160,11 @@ Use `model: sonnet` for all — sufficient for review, saves cost. - Missing or broken references in scene/resource files - Import settings consistency -**Araminta (Art Direction)** +**Araminta (Art Direction)** — HAS BASH ACCESS - `subagent_type`: `araminta`, `model`: `sonnet` -- Prompt: Include the changed files and commit log. Tell Araminta to read - the style guide and relevant design docs first, then review for: +- Araminta can read files from branches via `git show`. Prompt: Include commit + log and diff stats. Tell Araminta to read the style guide and relevant + design docs first, then review for: - Visual consistency with the established style guide - Color palette adherence - UI pattern consistency (diegetic-first, clarity over beauty) @@ -167,9 +183,12 @@ Use `model: sonnet` for all — sufficient for review, saves cost. - Missing or broken references - Import/bus configuration consistency -**Ozzie (Player Experience)** +**Ozzie (Player Experience)** — NO BASH ACCESS - `subagent_type`: `ozzie`, `model`: `sonnet` -- Prompt: Include the changed files and commit log. Ask Ozzie to review for: +- Ozzie cannot read from branches. You must paste file contents directly + into the prompt. +- Prompt: Include full text of changed files and commit log. Ask Ozzie to + review for: - Emotional impact — does the audio enhance the moment? - Atmosphere and tone — does it feel like the Commonwealth? - Player feedback clarity — can the player tell what just happened?