Ralph Skill Router
"Right skill for the right agent at the right time."
When to Use This Skill
Use at:
- Agent startup to load appropriate skills
- Task assignment to determine required skills
- Retrospective to identify skill gaps
Quick Route
By Agent Role
| Agent |
Core Skills |
Checklists |
| PM |
task-selection, retrospective, skill-improvement, scale-adaptive |
prd-validation, task-handoff |
| Developer |
r3f-fundamentals, feedback-loops, typescript-patterns |
pre-commit, code-quality |
| QA |
validation-workflow, browser-testing, bug-reporting |
validation-checks |
| GameDesigner |
gdd-creation, thermite-integration, mechanic-design, level-design, character-design, weapon-design, game-loop-design, playtest-validation |
gdd-review, design-validation |
| TechArtist |
r3f-fundamentals, r3f-materials, r3f-geometry, shader-sdf, postfx-effects, particles-gpu, feedback-loops, typescript-patterns |
asset-quality, shader-review, visual-consistency |
By Task Category
| Category |
Developer Skills |
QA Focus |
TechArtist Skills |
architectural |
typescript-patterns, r3f-fundamentals |
Full validation suite |
typescript-patterns, r3f-fundamentals |
integration |
Domain-specific (physics, materials) |
Cross-browser testing |
r3f-materials, shader integration |
functional |
r3f-fundamentals, feedback-loops |
Acceptance criteria |
- |
visual |
- |
Visual QA |
r3f-materials, shader-sdf, postfx-effects |
shader |
- |
Shader testing |
shader-sdf, glsl, gpu-cost-optimizer |
effects |
- |
Effects testing |
particles-gpu, postfx-effects |
ui-polish |
- |
UI testing |
r3f-materials, visual-polish |
polish |
r3f-materials, r3f-performance |
Visual + performance |
r3f-materials, postfx-effects |
By Signal Keywords
| Signal in Task |
Route To |
| "physics", "collision", "rigid body" |
r3f-physics |
| "shader", "material", "texture" |
r3f-materials |
| "performance", "fps", "optimization" |
r3f-performance |
| "component", "scene", "canvas" |
r3f-fundamentals |
| "type", "interface", "generic" |
typescript-patterns |
Routing Protocol
Step 1: Identify Agent Role
const role =
state.agents[agentName].terminal === 'coordinator'
? 'pm'
: agentName === 'developer'
? 'developer'
: 'qa';
Step 2: Load Core Skills
## Core Skills for {{ROLE}}
Load these skills for every session:
### PM Core
- agents/pm/skills/task-selection.md
- agents/pm/skills/retrospective.md
- agents/pm/skills/scale-adaptive.md
- agents/pm/checklists/prd-validation.md
- agents/pm/checklists/task-handoff.md
- agents/pm/references/state-files.md
### Developer Core
- agents/developer/skills/feedback-loops.md
- agents/developer/skills/typescript-patterns.md
- agents/developer/checklists/pre-commit.md
- agents/developer/checklists/code-quality.md
### QA Core
- agents/qa/skills/validation-workflow.md
- agents/qa/skills/browser-testing.md
- agents/qa/skills/bug-reporting.md
- agents/qa/checklists/validation-checks.md
Step 3: Load Domain Skills (Developer Only)
Based on task signals:
function getDomainSkills(task) {
const skills = [];
const text = `${task.title} ${task.description}`.toLowerCase();
// R3F/Three.js signals
if (/physics|collision|rapier|rigid/.test(text)) {
skills.push('agents/developer/skills/r3f-physics.md');
}
if (/shader|material|texture|pbr/.test(text)) {
skills.push('agents/developer/skills/r3f-materials.md');
}
if (/performance|fps|optimize|mobile/.test(text)) {
skills.push('agents/developer/skills/r3f-performance.md');
}
if (/scene|component|canvas|drei/.test(text)) {
skills.push('agents/developer/skills/r3f-fundamentals.md');
}
// Always include fundamentals for R3F tasks
if (skills.length > 0 && !skills.includes('r3f-fundamentals.md')) {
skills.unshift('agents/developer/skills/r3f-fundamentals.md');
}
return skills;
}
Common Skill Combinations
Game Feature Development
r3f-fundamentals + r3f-physics + feedback-loops + pre-commit
Visual Polish
r3f-fundamentals + r3f-materials + r3f-performance + pre-commit
Performance Optimization
r3f-performance + r3f-materials + pre-commit
New Component
r3f-fundamentals + typescript-patterns + code-quality + pre-commit
Skill Dependencies
r3f-materials ──────┐
├──▶ r3f-fundamentals
r3f-physics ────────┤
│
r3f-performance ────┘
validation-workflow ──┬──▶ browser-testing
└──▶ bug-reporting
retrospective ────────────▶ skill-improvement
Reference
1---2name: ralph-router3description: Routes to appropriate Ralph skills based on agent role and task signals4---5
6# Ralph Skill Router
7
8> "Right skill for the right agent at the right time."
9
10## When to Use This Skill
11
12Use at:
13
14- Agent startup to load appropriate skills
15- Task assignment to determine required skills
16- Retrospective to identify skill gaps
17
18## Quick Route
19
20### By Agent Role
21
22| Agent | Core Skills | Checklists |
23| ------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------ |
24| PM | `task-selection`, `retrospective`, `skill-improvement`, `scale-adaptive` | `prd-validation`, `task-handoff` |
25| Developer | `r3f-fundamentals`, `feedback-loops`, `typescript-patterns` | `pre-commit`, `code-quality` |
26| QA | `validation-workflow`, `browser-testing`, `bug-reporting` | `validation-checks` |
27| GameDesigner | `gdd-creation`, `thermite-integration`, `mechanic-design`, `level-design`, `character-design`, `weapon-design`, `game-loop-design`, `playtest-validation` | `gdd-review`, `design-validation` |
28| TechArtist | `r3f-fundamentals`, `r3f-materials`, `r3f-geometry`, `shader-sdf`, `postfx-effects`, `particles-gpu`, `feedback-loops`, `typescript-patterns` | `asset-quality`, `shader-review`, `visual-consistency` |
29
30### By Task Category
31
32| Category | Developer Skills | QA Focus | TechArtist Skills |
33| --------------- | ----------------------------------------- | --------------------- | ----------------------------------------------- |
34| `architectural` | `typescript-patterns`, `r3f-fundamentals` | Full validation suite | `typescript-patterns`, `r3f-fundamentals` |
35| `integration` | Domain-specific (physics, materials) | Cross-browser testing | `r3f-materials`, shader integration |
36| `functional` | `r3f-fundamentals`, `feedback-loops` | Acceptance criteria | - |
37| `visual` | - | Visual QA | `r3f-materials`, `shader-sdf`, `postfx-effects` |
38| `shader` | - | Shader testing | `shader-sdf`, `glsl`, `gpu-cost-optimizer` |
39| `effects` | - | Effects testing | `particles-gpu`, `postfx-effects` |
40| `ui-polish` | - | UI testing | `r3f-materials`, `visual-polish` |
41| `polish` | `r3f-materials`, `r3f-performance` | Visual + performance | `r3f-materials`, `postfx-effects` |
42
43### By Signal Keywords
44
45| Signal in Task | Route To |
46| ------------------------------------ | --------------------- |
47| "physics", "collision", "rigid body" | `r3f-physics` |
48| "shader", "material", "texture" | `r3f-materials` |
49| "performance", "fps", "optimization" | `r3f-performance` |
50| "component", "scene", "canvas" | `r3f-fundamentals` |
51| "type", "interface", "generic" | `typescript-patterns` |
52
53## Routing Protocol
54
55### Step 1: Identify Agent Role
56
57```javascript
58const role =
59 state.agents[agentName].terminal === 'coordinator'
60 ? 'pm'
61 : agentName === 'developer'
62 ? 'developer'
63 : 'qa';
64```
65
66### Step 2: Load Core Skills
67
68```markdown
69## Core Skills for {{ROLE}}
70
71Load these skills for every session:
72
73### PM Core
74
75- agents/pm/skills/task-selection.md
76- agents/pm/skills/retrospective.md
77- agents/pm/skills/scale-adaptive.md
78- agents/pm/checklists/prd-validation.md
79- agents/pm/checklists/task-handoff.md
80- agents/pm/references/state-files.md
81
82### Developer Core
83
84- agents/developer/skills/feedback-loops.md
85- agents/developer/skills/typescript-patterns.md
86- agents/developer/checklists/pre-commit.md
87- agents/developer/checklists/code-quality.md
88
89### QA Core
90
91- agents/qa/skills/validation-workflow.md
92- agents/qa/skills/browser-testing.md
93- agents/qa/skills/bug-reporting.md
94- agents/qa/checklists/validation-checks.md
95```
96
97### Step 3: Load Domain Skills (Developer Only)
98
99Based on task signals:
100
101```javascript
102function getDomainSkills(task) {
103 const skills = [];
104 const text = `${task.title} ${task.description}`.toLowerCase();
105
106 // R3F/Three.js signals
107 if (/physics|collision|rapier|rigid/.test(text)) {
108 skills.push('agents/developer/skills/r3f-physics.md');
109 }
110 if (/shader|material|texture|pbr/.test(text)) {
111 skills.push('agents/developer/skills/r3f-materials.md');
112 }
113 if (/performance|fps|optimize|mobile/.test(text)) {
114 skills.push('agents/developer/skills/r3f-performance.md');
115 }
116 if (/scene|component|canvas|drei/.test(text)) {
117 skills.push('agents/developer/skills/r3f-fundamentals.md');
118 }
119
120 // Always include fundamentals for R3F tasks
121 if (skills.length > 0 && !skills.includes('r3f-fundamentals.md')) {
122 skills.unshift('agents/developer/skills/r3f-fundamentals.md');
123 }
124
125 return skills;
126}
127```
128
129## Common Skill Combinations
130
131### Game Feature Development
132
133```
134r3f-fundamentals + r3f-physics + feedback-loops + pre-commit
135```
136
137### Visual Polish
138
139```
140r3f-fundamentals + r3f-materials + r3f-performance + pre-commit
141```
142
143### Performance Optimization
144
145```
146r3f-performance + r3f-materials + pre-commit
147```
148
149### New Component
150
151```
152r3f-fundamentals + typescript-patterns + code-quality + pre-commit
153```
154
155## Skill Dependencies
156
157```
158r3f-materials ──────┐
159 ├──▶ r3f-fundamentals
160r3f-physics ────────┤
161 │
162r3f-performance ────┘
163
164validation-workflow ──┬──▶ browser-testing
165 └──▶ bug-reporting
166
167retrospective ────────────▶ skill-improvement
168```
169
170## Reference
171
172- [agents/pm/AGENT.md](../../pm/AGENT.md) — PM full instructions
173- [agents/developer/AGENT.md](../../developer/AGENT.md) — Developer full instructions
174- [agents/qa/AGENT.md](../../qa/AGENT.md) — QA full instructions
175- [agents/gamedesigner/AGENT.md](../../gamedesigner/AGENT.md) — Game Designer full instructions
176- [agents/techartist/AGENT.md](../../techartist/AGENT.md) — Tech Artist full instructions
177- [.claude/skills/r3f-router.md](../../../.claude/skills/r3f-router.md) — R3F-specific routing