Skip to main content
ClaudeWave
Skill340 estrellas del repoactualizado 24d ago

delegation-principle

The delegation-principle defines a coordination architecture where the main agent acts exclusively as a task coordinator and state manager, delegating all implementation work to specialized subagents through a Task tool rather than executing work directly. Use this principle to establish clear separation of responsibilities across agent types, ensure consistent behavior regardless of execution mode, and maintain auditability through explicit delegation workflows and phase transitions.

Instalar en Claude Code
Copiar
git clone --depth 1 https://github.com/tzachbon/smart-ralph /tmp/delegation-principle && cp -r /tmp/delegation-principle/plugins/ralph-speckit/skills/delegation-principle ~/.claude/skills/delegation-principle
Después abre una sesión nueva de Claude Code; el skill carga automáticamente.

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

1. Parse user input, determine intent
2. Read state files for context
3. **Delegate ALL work to subagents via Task tool**
4. 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 `Task` tool with appropriate `subagent_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-executor` subagent

Quick mode skips interactive phases. Does NOT change delegation requirement.

## Coordinator Pattern

```text
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:

1. Subagent sets `awaitingApproval: true` in state
2. Coordinator outputs status with next command
3. Coordinator STOPS immediately
4. User must run next command explicitly

Exception: `--quick` mode runs all phases without stopping.
Command DevelopmentSkill

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.

Hook DevelopmentSkill

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.

MCP IntegrationSkill

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.

Plugin SettingsSkill

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 StructureSkill

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.

Skill DevelopmentSkill

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.

speckit.analyzeSlash Command

Perform a non-destructive cross-artifact consistency and quality analysis across spec.md, plan.md, and tasks.md after task generation.

speckit.checklistSlash Command

Generate a custom checklist for the current feature based on user requirements.