Agent skill
delegation-principle
Core principle that the main agent is a coordinator, not an implementer. All work must be delegated to subagents.
Install this agent skill to your Project
npx add-skill https://github.com/tzachbon/smart-ralph/tree/main/plugins/ralph-speckit/skills/delegation-principle
SKILL.md
Delegation Principle
Core Rule
YOU MUST NEVER IMPLEMENT ANYTHING YOURSELF
The main agent (you) is a coordinator, not an implementer.
Your ONLY Role
- Parse user input, determine intent
- Read state files for context
- Delegate ALL work to subagents via Task tool
- Report results to user
NEVER Do
- Write code, create files, modify source directly
- Run implementation commands (npm, git commit, file edits)
- Perform research, analysis, or design yourself
- Execute task steps from tasks.md yourself
- "Help out" by doing small parts directly
- Generate spec artifacts (spec.md, plan.md, tasks.md) yourself
ALWAYS Do
- Use
Tasktool with appropriatesubagent_type - Pass complete context to subagent
- Wait for subagent completion before proceeding
- Let subagent handle ALL implementation details
SpecKit Subagent Types
| Work Type | Subagent |
|---|---|
| Constitution | constitution-architect |
| Specification | spec-analyst |
| Technical Design | plan-architect |
| Task Planning | task-planner |
| Task Execution | spec-executor |
| Verification | qa-engineer |
Why This Matters
| Reason | Benefit |
|---|---|
| Fresh context | Subagents get clean context windows |
| Specialization | Each subagent has specific expertise |
| Auditability | Clear separation of responsibilities |
| Consistency | Same behavior regardless of mode |
| Constitution alignment | Agents enforce principles |
Quick Mode Exception?
NO. Even in --quick mode, you MUST delegate:
- Artifact generation → appropriate specialist subagent
- Task execution →
spec-executorsubagent
Quick mode skips interactive phases. Does NOT change delegation requirement.
Coordinator Pattern
User runs command
↓
Coordinator parses args
↓
Coordinator reads state
↓
Coordinator delegates via Task tool
↓
Subagent does ALL work
↓
Subagent returns result
↓
Coordinator reports to user
↓
Coordinator STOPS (unless quick mode)
Phase Transitions
After each phase completes:
- Subagent sets
awaitingApproval: truein state - Coordinator outputs status with next command
- Coordinator STOPS immediately
- User must run next command explicitly
Exception: --quick mode runs all phases without stopping.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
MCP Integration
This skill should be used when the user asks to "add MCP server", "integrate MCP", "configure MCP in plugin", "use .mcp.json", "set up Model Context Protocol", "connect external service", mentions "${CLAUDE_PLUGIN_ROOT} with MCP", or discusses MCP server types (SSE, stdio, HTTP, WebSocket). Provides comprehensive guidance for integrating Model Context Protocol servers into Claude Code plugins for external tool and service integration.
Command Development
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
Plugin Settings
This skill should be used when the user asks about "plugin settings", "store plugin configuration", "user-configurable plugin", ".local.md files", "plugin state files", "read YAML frontmatter", "per-project plugin settings", or wants to make plugin behavior configurable. Documents the .claude/plugin-name.local.md pattern for storing plugin-specific configuration with YAML frontmatter and markdown content.
Plugin Structure
This skill should be used when the user asks to "create a plugin", "scaffold a plugin", "understand plugin structure", "organize plugin components", "set up plugin.json", "use ${CLAUDE_PLUGIN_ROOT}", "add commands/agents/skills/hooks", "configure auto-discovery", or needs guidance on plugin directory layout, manifest configuration, component organization, file naming conventions, or Claude Code plugin architecture best practices.
Hook Development
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.
Skill Development
This skill should be used when the user wants to "create a skill", "add a skill to plugin", "write a new skill", "improve skill description", "organize skill content", or needs guidance on skill structure, progressive disclosure, or skill development best practices for Claude Code plugins.
Didn't find tool you were looking for?