Dev Lead Routing
Engineers
| Type |
Agents |
| Language |
lang-golang-expert, lang-python-expert, lang-rust-expert, lang-kotlin-expert, lang-typescript-expert, lang-java21-expert |
| Frontend |
fe-vercel-agent, fe-vuejs-agent, fe-svelte-agent, fe-flutter-agent, fe-design-expert |
| Backend |
be-fastapi-expert, be-springboot-expert, be-go-backend-expert, be-nestjs-expert, be-express-expert, be-django-expert |
| Tooling |
tool-npm-expert, tool-optimizer, tool-bun-expert |
| Database |
db-supabase-expert, db-postgres-expert, db-redis-expert, db-alembic-expert |
| Architect |
arch-documenter, arch-speckit-agent |
| Security |
sec-codeql-expert |
| Infra |
infra-docker-expert, infra-aws-expert |
File Extension Mapping
| Extension |
Agent |
.go |
lang-golang-expert |
.py |
lang-python-expert |
.rs |
lang-rust-expert |
.kt, .kts |
lang-kotlin-expert |
.ts, .tsx |
lang-typescript-expert |
.java |
lang-java21-expert |
.js/.jsx (React) |
fe-vercel-agent |
.vue |
fe-vuejs-agent |
.svelte |
fe-svelte-agent |
.dart, pubspec.yaml |
fe-flutter-agent |
.sql (PG) |
db-postgres-expert |
.sql (Supabase) |
db-supabase-expert |
alembic.ini, alembic/versions/*.py |
db-alembic-expert |
Dockerfile, *.dockerfile |
infra-docker-expert |
*.tf, *.tfvars |
infra-aws-expert |
*.yaml, *.yml (CloudFormation) |
infra-aws-expert |
Keyword Mapping
| Keywords |
Agent |
| go, golang |
lang-golang-expert |
| python, py |
lang-python-expert |
| rust |
lang-rust-expert |
| kotlin |
lang-kotlin-expert |
| typescript, ts |
lang-typescript-expert |
| java |
lang-java21-expert |
| react, next.js, vercel |
fe-vercel-agent |
| vue |
fe-vuejs-agent |
| svelte |
fe-svelte-agent |
| flutter, dart, riverpod, bloc, widget |
fe-flutter-agent |
| design, typography, color, motion, ux writing, ui design, "design system", "design review", impeccable |
fe-design-expert |
| fastapi |
be-fastapi-expert |
| django |
be-django-expert |
| spring, springboot |
be-springboot-expert |
| nestjs |
be-nestjs-expert |
| express |
be-express-expert |
| npm |
tool-npm-expert |
| optimize, bundle |
tool-optimizer |
| bun |
tool-bun-expert |
| postgres, postgresql, psql, pg_stat |
db-postgres-expert |
| redis, cache, pub/sub, sorted set |
db-redis-expert |
| supabase, rls, edge function |
db-supabase-expert |
| alembic, migration, db revision, db upgrade, db downgrade |
db-alembic-expert |
| docker, dockerfile, container, compose |
infra-docker-expert |
| aws, cloudformation, vpc, iam, s3, lambda, cdk, terraform |
infra-aws-expert |
| security, codeql, cve, vulnerability, sarif, sast, security audit |
sec-codeql-expert |
| architecture, adr, openapi, swagger, diagram |
arch-documenter |
| spec, specification, tdd, requirements |
arch-speckit-agent |
Model Selection
| Task |
Model |
| Architecture analysis |
opus |
| Code review/implementation |
sonnet |
| Quick validation/search |
haiku |
Routing Decision (Priority Order)
Before selecting an expert agent, evaluate in this order:
Step 1: Agent Teams Eligibility (R018)
Check if Agent Teams is available (CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 or TeamCreate/SendMessage tools present).
| Scenario |
Preferred |
| Single-language review |
Task Tool |
| Multi-language code review (3+) |
Agent Teams |
| Code review + fix cycle |
Agent Teams |
| Cross-layer debugging (FE + BE + DB) |
Agent Teams |
| Simple file search/validation |
Task Tool |
Step 2: Codex-Exec Hybrid (Implementation Tasks)
For new file creation, boilerplate, or test code generation:
- Check
/tmp/.claude-env-status-* for codex, gemini, and rtk availability
- If codex available AND task involves new file creation → automatically delegate to
/codex-exec for scaffolding:
- Display:
[Codex Hybrid] Delegating to codex-exec...
- codex-exec generates initial code (strength: fast generation)
- Selected Claude expert reviews and refines codex output (strength: reasoning, quality)
- If codex unavailable but gemini available → delegate to
/gemini-exec for scaffolding:
- Display:
[Gemini Hybrid] Delegating to gemini-exec...
- gemini-exec generates initial code
- Selected Claude expert reviews and refines output
- If RTK available (
RTK=available in env status) → optionally wrap Claude expert output through RTK to reduce token consumption by 60-90%:
- Display:
[RTK Proxy] Token optimization active via rtk-exec
- RTK acts as a transparent proxy — no change to expert selection
- If none available → display
[External CLI] Unavailable — proceeding with {expert} directly and use Claude expert directly
Suitable: New file creation, boilerplate, scaffolding, test code
Unsuitable: Existing code modification, architecture decisions, bug fixes
Step 3: Expert Agent Selection
Route to appropriate language/framework expert based on file extension and keyword mapping.
Permission Mode: When spawning agents, pass mode: "bypassPermissions" in the Agent tool call if the session uses bypassPermissions. Without explicit mode, CC defaults to acceptEdits.
Step 4: Ontology-RAG Enrichment (R019)
If get_agent_for_task MCP tool is available, call it with the original query and inject suggested_skills into the agent prompt. Skip silently on failure.
Step 5: Soul Injection (R006)
If the selected agent has soul: true in frontmatter, read and prepend .claude/agents/souls/{agent-name}.soul.md content to the prompt. Skip silently if file doesn't exist.
Routing Rules
Multi-language: detect all languages, route to parallel experts (max 4). Single-language: route to matching expert. Cross-layer (frontend + backend): multiple experts in parallel.
No Match Fallback
When file extension or keyword doesn't match any existing agent:
User Input → No matching development agent
↓
Detect: File extension (.rb, .swift, .php, etc.) or language keyword
↓
Delegate to mgr-creator with context:
domain: detected language/framework
type: sw-engineer
keywords: extracted from user input
file_patterns: detected extensions
skills: auto-discover from .claude/skills/
guides: auto-discover from templates/guides/
Examples of dynamic creation triggers:
- Unrecognized file extension (e.g.,
.rb → Ruby expert, .swift → Swift expert)
- New framework keyword (e.g., "Flutter 앱 리뷰해줘", "Rails API 만들어줘")
- Language detected but no specialist exists
Not user-invocable. Auto-triggered on development intent.
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
1---2name: dev-lead-routing3description: Routes development tasks to the correct language or framework expert agent. Use when user requests code review, implementation, refactoring, or debugging. Use when this capability is needed.4---56# Dev Lead Routing78## Engineers910| Type | Agents |11|------|--------|12| Language | lang-golang-expert, lang-python-expert, lang-rust-expert, lang-kotlin-expert, lang-typescript-expert, lang-java21-expert |13| Frontend | fe-vercel-agent, fe-vuejs-agent, fe-svelte-agent, fe-flutter-agent, fe-design-expert |14| Backend | be-fastapi-expert, be-springboot-expert, be-go-backend-expert, be-nestjs-expert, be-express-expert, be-django-expert |15| Tooling | tool-npm-expert, tool-optimizer, tool-bun-expert |16| Database | db-supabase-expert, db-postgres-expert, db-redis-expert, db-alembic-expert |17| Architect | arch-documenter, arch-speckit-agent |18| Security | sec-codeql-expert |19| Infra | infra-docker-expert, infra-aws-expert |2021## File Extension Mapping2223| Extension | Agent |24|-----------|-------|25| `.go` | lang-golang-expert |26| `.py` | lang-python-expert |27| `.rs` | lang-rust-expert |28| `.kt`, `.kts` | lang-kotlin-expert |29| `.ts`, `.tsx` | lang-typescript-expert |30| `.java` | lang-java21-expert |31| `.js/.jsx` (React) | fe-vercel-agent |32| `.vue` | fe-vuejs-agent |33| `.svelte` | fe-svelte-agent |34| `.dart`, `pubspec.yaml` | fe-flutter-agent |35| `.sql` (PG) | db-postgres-expert |36| `.sql` (Supabase) | db-supabase-expert |37| `alembic.ini`, `alembic/versions/*.py` | db-alembic-expert |38| `Dockerfile`, `*.dockerfile` | infra-docker-expert |39| `*.tf`, `*.tfvars` | infra-aws-expert |40| `*.yaml`, `*.yml` (CloudFormation) | infra-aws-expert |4142## Keyword Mapping4344| Keywords | Agent |45|----------|-------|46| go, golang | lang-golang-expert |47| python, py | lang-python-expert |48| rust | lang-rust-expert |49| kotlin | lang-kotlin-expert |50| typescript, ts | lang-typescript-expert |51| java | lang-java21-expert |52| react, next.js, vercel | fe-vercel-agent |53| vue | fe-vuejs-agent |54| svelte | fe-svelte-agent |55| flutter, dart, riverpod, bloc, widget | fe-flutter-agent |56| design, typography, color, motion, ux writing, ui design, "design system", "design review", impeccable | fe-design-expert |57| fastapi | be-fastapi-expert |58| django | be-django-expert |59| spring, springboot | be-springboot-expert |60| nestjs | be-nestjs-expert |61| express | be-express-expert |62| npm | tool-npm-expert |63| optimize, bundle | tool-optimizer |64| bun | tool-bun-expert |65| postgres, postgresql, psql, pg_stat | db-postgres-expert |66| redis, cache, pub/sub, sorted set | db-redis-expert |67| supabase, rls, edge function | db-supabase-expert |68| alembic, migration, db revision, db upgrade, db downgrade | db-alembic-expert |69| docker, dockerfile, container, compose | infra-docker-expert |70| aws, cloudformation, vpc, iam, s3, lambda, cdk, terraform | infra-aws-expert |71| security, codeql, cve, vulnerability, sarif, sast, security audit | sec-codeql-expert |72| architecture, adr, openapi, swagger, diagram | arch-documenter |73| spec, specification, tdd, requirements | arch-speckit-agent |7475## Model Selection7677| Task | Model |78|------|-------|79| Architecture analysis | opus |80| Code review/implementation | sonnet |81| Quick validation/search | haiku |8283## Routing Decision (Priority Order)8485Before selecting an expert agent, evaluate in this order:8687### Step 1: Agent Teams Eligibility (R018)88Check if Agent Teams is available (`CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` or TeamCreate/SendMessage tools present).8990| Scenario | Preferred |91|----------|-----------|92| Single-language review | Task Tool |93| Multi-language code review (3+) | Agent Teams |94| Code review + fix cycle | Agent Teams |95| Cross-layer debugging (FE + BE + DB) | Agent Teams |96| Simple file search/validation | Task Tool |9798### Step 2: Codex-Exec Hybrid (Implementation Tasks)99For **new file creation**, **boilerplate**, or **test code generation**:1001011. Check `/tmp/.claude-env-status-*` for codex, gemini, and rtk availability1022. If codex available AND task involves new file creation → automatically delegate to `/codex-exec` for scaffolding:103 - Display: `[Codex Hybrid] Delegating to codex-exec...`104 - codex-exec generates initial code (strength: fast generation)105 - Selected Claude expert reviews and refines codex output (strength: reasoning, quality)1063. If codex unavailable but gemini available → delegate to `/gemini-exec` for scaffolding:107 - Display: `[Gemini Hybrid] Delegating to gemini-exec...`108 - gemini-exec generates initial code109 - Selected Claude expert reviews and refines output1104. If RTK available (`RTK=available` in env status) → optionally wrap Claude expert output through RTK to reduce token consumption by 60-90%:111 - Display: `[RTK Proxy] Token optimization active via rtk-exec`112 - RTK acts as a transparent proxy — no change to expert selection1135. If none available → display `[External CLI] Unavailable — proceeding with {expert} directly` and use Claude expert directly114115**Suitable**: New file creation, boilerplate, scaffolding, test code116**Unsuitable**: Existing code modification, architecture decisions, bug fixes117118### Step 3: Expert Agent Selection119Route to appropriate language/framework expert based on file extension and keyword mapping.120121> **Permission Mode**: When spawning agents, pass `mode: "bypassPermissions"` in the Agent tool call if the session uses bypassPermissions. Without explicit mode, CC defaults to `acceptEdits`.122123### Step 4: Ontology-RAG Enrichment (R019)124125If `get_agent_for_task` MCP tool is available, call it with the original query and inject `suggested_skills` into the agent prompt. Skip silently on failure.126127### Step 5: Soul Injection (R006)128129If the selected agent has `soul: true` in frontmatter, read and prepend `.claude/agents/souls/{agent-name}.soul.md` content to the prompt. Skip silently if file doesn't exist.130131## Routing Rules132133Multi-language: detect all languages, route to parallel experts (max 4). Single-language: route to matching expert. Cross-layer (frontend + backend): multiple experts in parallel.134135## No Match Fallback136137When file extension or keyword doesn't match any existing agent:138139```140User Input → No matching development agent141 ↓142Detect: File extension (.rb, .swift, .php, etc.) or language keyword143 ↓144Delegate to mgr-creator with context:145 domain: detected language/framework146 type: sw-engineer147 keywords: extracted from user input148 file_patterns: detected extensions149 skills: auto-discover from .claude/skills/150 guides: auto-discover from templates/guides/151```152153**Examples of dynamic creation triggers:**154- Unrecognized file extension (e.g., `.rb` → Ruby expert, `.swift` → Swift expert)155- New framework keyword (e.g., "Flutter 앱 리뷰해줘", "Rails API 만들어줘")156- Language detected but no specialist exists157158Not user-invocable. Auto-triggered on development intent.159160---161> Converted and distributed by [TomeVault](https://tomevault.io/claim/baekenough) — claim your Tome and manage your conversions.162<!-- tomevault:4.0:skill_md:2026-04-12 -->