Use when routing user requests to appropriate specialist roles (Architect, Orchestrator, or Integrator). Trigger with role routing requests.
This skill provides the Assistant Manager (EAMA) with decision logic for routing user requests to the appropriate specialist role:
docs_dev/handoffs/ directory must exist and be writabledocs_dev/handoffs/| Routing Decision | Action Taken | Handoff File | Message Sent |
|---|---|---|---|
| Route to ECOS | Create handoff document | handoff-{uuid}-eama-to-ecos.md | AI Maestro message to Chief of Staff |
| Route to EAA | Create handoff document | handoff-{uuid}-eama-to-eaa.md | AI Maestro message to Architect |
| Route to EOA | Create handoff document | handoff-{uuid}-eama-to-eoa.md | AI Maestro message to Orchestrator |
| Route to EIA | Create handoff document | handoff-{uuid}-eama-to-eia.md | AI Maestro message to Integrator |
| Handle Directly | Respond to user | None | None |
| Ambiguous Intent | Request clarification | None | None |
| Role | Prefix | Plugin Name |
|---|---|---|
| Assistant Manager | eama- | Emasoft Assistant Manager Agent |
| Chief of Staff | ecos- | Emasoft Chief of Staff |
| Architect | eaa- | Emasoft Architect Agent |
| Orchestrator | eoa- | Emasoft Orchestrator Agent |
| Integrator | eia- | Emasoft Integrator Agent |
| User Intent Pattern | Route To | Handoff Type |
|---|---|---|
| "design", "plan", "architect", "spec", "requirements" | EAA (Architect) | task_assignment |
| "build", "implement", "create", "develop", "code" | EOA (Orchestrator) | task_assignment |
| "review", "test", "merge", "release", "deploy", "quality" | EIA (Integrator) | task_assignment |
| "spawn agent", "terminate agent", "restart session", "agent health" | ECOS (Chief of Staff) | agent_lifecycle |
| "status", "progress", "update" | Handle directly | none |
| "approve", "reject", "confirm" | Handle directly | approval_response |
New project/feature design needed
Requirements analysis required
Technical specification needed
Module planning required
Implementation ready to start
Task coordination needed
Multi-agent work coordination
Progress monitoring required
Work ready for integration
Code review requested
Quality gates needed
Release preparation
Agent lifecycle operations needed
Agent termination required
Session management needed
Permission management required
Failure recovery needed
Approval requests from ECOS
Status requests
Approval decisions
Clarification requests
Configuration/settings
USER <-> EAMA (Assistant Manager) <-> ECOS (Chief of Staff) <-> EAA (Architect)
<-> EOA (Orchestrator)
<-> EIA (Integrator)
CRITICAL:
Parse user message -> Identify primary intent -> Match to routing rule
Before creating and sending any handoff, complete this validation checklist:
Before sending handoff to ECOS or specialists:
docs_dev/handoffs/ to prevent collisions
# Verify UUID uniqueness
! grep -r "UUID: <new-uuid>" docs_dev/handoffs/ && echo "UUID is unique"
agent-messaging skill# Check for placeholder text
! grep -E "\[TBD\]|\[TODO\]|\[PLACEHOLDER\]|<fill-in>" handoff-file.md && echo "No placeholders found"
If any validation check fails:
| Failure | Resolution |
|---|---|
| Missing required field | Add missing field before proceeding |
| UUID collision | Generate new UUID |
| Target agent unavailable | Queue handoff, notify user, retry in 5 minutes |
| Invalid markdown | Fix syntax errors |
| Contains placeholders | Replace all [TBD] with actual values |
| Unclear task | Request clarification from user |
NEVER send an invalid handoff. An invalid handoff wastes agent resources and delays work.
Generate UUID -> Create handoff-{uuid}-eama-to-{role}.md -> Save to docs_dev/handoffs/
Compose message -> Set appropriate priority -> Send to role session
Log handoff in state -> Set status to "pending" -> Monitor for acknowledgment
Confirm routing -> Provide tracking info -> Set expectation for response
handoff-{uuid}-{from}-to-{to}.md
Examples:
- handoff-a1b2c3d4-eama-to-eaa.md # AM assigns to Architect
- handoff-e5f6g7h8-eaa-to-eama.md # Architect reports to AM
- handoff-i9j0k1l2-eama-to-eoa.md # AM assigns to Orchestrator
- handoff-m3n4o5p6-eoa-to-eama.md # Orchestrator reports to AM
- handoff-q7r8s9t0-eama-to-eia.md # AM assigns to Integrator
All handoff files are stored in: docs_dev/handoffs/
For GitHub operations routing, see the eama-github-routing skill.
| Operation | Tool | Details |
|---|---|---|
| Search designs by UUID | eama_design_search.py --uuid | Returns matching design docs |
| Search designs by keyword | eama_design_search.py --keyword | Full-text search in design/* |
| Search designs by status | eama_design_search.py --status | Filter by draft/approved/deprecated |
| List all designs | eama_design_search.py --list | Catalog of all design documents |
| Operation | User Intent Pattern | Handoff Content |
|---|---|---|
| Create new design | "design", "create spec", "architect solution" | Requirements, constraints |
| Update design | "modify design", "update spec", "revise architecture" | Design UUID, changes |
| Review design | "review design", "validate architecture" | Design UUID, review criteria |
User mentions design/spec/architecture
│
▼
┌─────────────────┐
│ Does user give │
│ UUID or path? │
└────────┬────────┘
│
┌───────┴───────┐
│ YES │ NO
▼ ▼
┌────────────┐ ┌─────────────────┐
│ Search by │ │ Search by │
│ UUID/path │ │ keyword/context │
└─────┬──────┘ └────────┬────────┘
│ │
▼ ▼
┌───────────────────────────────────┐
│ Design found? │
└────────────────┬──────────────────┘
┌───────┴───────┐
│ YES │ NO
▼ ▼
┌────────────────┐ ┌─────────────────┐
│ Include design │ │ Route to EAA to │
│ context in │ │ create new │
│ routing │ │ design │
└────────────────┘ └─────────────────┘
| Operation | User Intent Pattern | Handoff Content |
|---|---|---|
| Start module implementation | "implement module", "build component" | Module UUID from design |
| Coordinate parallel work | "parallelize", "split tasks" | Task breakdown, dependencies |
| Resume orchestration | "continue building", "resume work" | Orchestration state, progress |
| Replan modules | "reorganize tasks", "reprioritize" | Current state, new priorities |
When routing to EOA, handoff MUST include:
Copy this checklist and track your progress:
docs_dev/handoffs/# User says: "Design a user authentication system"
# EAMA identifies intent: "design" -> Route to EAA
# Creates handoff
## Handoff: handoff-a1b2c3d4-eama-to-eaa.md
**From**: EAMA (Assistant Manager)
**To**: EAA (Architect)
**Type**: task_assignment
### Request
Design a user authentication system
### Requirements
- Support OAuth2 and password-based auth
- Include role-based access control
- Must integrate with existing user database
### Expected Deliverable
- Design document in design/auth-system/DESIGN.md
- Module breakdown with dependencies
# User says: "What's the status of the project?"
# EAMA identifies intent: "status" -> Handle directly
# EAMA queries all roles, compiles report, presents to user
# No handoff created - direct response
| Error | Cause | Resolution |
|---|---|---|
| Ambiguous intent | Multiple possible routes | Ask user for clarification |
| Target agent unavailable | Session not running | Queue handoff, notify user, retry |
| Handoff directory missing | Not initialized | Create docs_dev/handoffs/ automatically |
| UUID collision | Extremely rare | Generate new UUID and retry |