smart-ralph
Smart Ralph is the core skill for Ralph Spectrum plugins that defines common command arguments, execution modes, and coordinator delegation patterns. Use this skill when users ask about Ralph plugin arguments like quick mode and commit behavior, execution modes and loops, state file management, delegation to subagents, or general guidance on Ralph operational behavior and phase transitions.
git clone --depth 1 https://github.com/tzachbon/smart-ralph /tmp/smart-ralph && cp -r /tmp/smart-ralph/plugins/ralph-specum/skills/smart-ralph ~/.claude/skills/smart-ralphSKILL.md
# Smart Ralph Core skill for all Ralph plugins. Defines common arguments, execution modes, shared behaviors, and coordinator delegation rules. ## Common Arguments All Ralph commands support these standard arguments: | Argument | Short | Description | Default | |----------|-------|-------------|---------| | `--quick` | `-q` | Skip interactive phases, auto-generate artifacts, start execution immediately | false | | `--commit` | `-c` | Commit and push spec/feature files after generation | true (normal), false (quick) | | `--no-commit` | | Explicitly disable committing files | - | | `--max-task-iterations` | `-m` | Max retries per failed task before stopping | 5 | | `--fresh` | `-f` | Force new spec/feature, overwrite if exists | false | Argument precedence: `--no-commit` > `--commit` > mode default. ## Execution Modes ### Normal Mode (Interactive) - User reviews artifacts between phases - Phase transitions require explicit commands - Each phase sets `awaitingApproval: true` - Commits spec files by default ### Quick Mode (`--quick`) - Skip all interactive prompts, interviews, and approval pauses - Run the same phase agents (research, requirements, design, tasks) sequentially - Agents receive a "be more opinionated" directive since there is no user feedback - spec-reviewer validates each artifact (max 3 iterations) - Immediately start execution after all phases complete - Do NOT commit by default (use `--commit` to override) - Still delegate to subagents (delegation is mandatory) ## State File All Ralph plugins use `.ralph-state.json` for execution state. See `references/state-file-schema.md` for full schema. Key fields: `phase`, `taskIndex`, `totalTasks`, `taskIteration`, `maxTaskIterations`, `awaitingApproval`. ## Commit Behavior When `commitSpec` is true: 1. Stage spec/feature files after generation 2. Commit with message: `chore(<plugin>): commit spec files before implementation` 3. Push to current branch When `commitSpec` is false: - Files remain uncommitted - User can manually commit later ## Task Execution Loop Ralph Specum v3.0.0+ has a self-contained execution loop via the stop-hook. No external dependencies required. Key signals: - `TASK_COMPLETE` - executor finished task - `ALL_TASKS_COMPLETE` - coordinator ends loop ## Error Handling When `taskIteration > maxTaskIterations`: block task, suggest manual intervention. If state file missing/invalid: output error, suggest re-running implement command. ## Branch Management All Ralph plugins follow consistent branch strategy: 1. Check current branch before starting 2. If on default branch (main/master): prompt for branch strategy 3. If on feature branch: offer to continue or create new 4. Quick mode: auto-create branch, no prompts ## Coordinator Behavior The main agent is a coordinator, not an implementer. Delegate all work to subagents. ### Coordinator Responsibilities 1. Parse user input and determine intent 2. Read state files for context 3. Delegate work to subagents via Task tool 4. Report results to user ### Do Not - Write code, create files, or modify source directly - Run implementation commands (npm, git commit, file edits) - Perform research, analysis, or design directly - Execute task steps from tasks.md ### Delegation Mapping | Work Type | Delegate To | |-----------|-------------| | Research | Research Team (parallel teammates) | | Requirements | product-manager subagent | | Design | architect-reviewer subagent | | Task planning | task-planner subagent | | Task execution | spec-executor subagent | Quick mode still requires delegation.
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.
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.
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.
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.
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.
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.
Perform a non-destructive cross-artifact consistency and quality analysis across spec.md, plan.md, and tasks.md after task generation.
Generate a custom checklist for the current feature based on user requirements.