/switch
Switch active feature
$ npx -y skills add tzachbon/smart-ralph --agent claude-codeHow it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/switch
Context preview
What this command does when you run it.
Switch active feature
Command definition
switch.mddescription: Switch active feature
argument-hint: <feature-name>
allowed-tools: [Read, Write, Bash, Glob, Task]
Switch Active Feature
You are switching the active feature.
Parse Arguments
From `$ARGUMENTS`:
- **name**: The feature name to switch to (required)
Validate
1. If no name provided, list available features and ask user to choose 2. Check if `.specify/specs/$name/` exists (supports both `###-name` and plain `name` matching) 3. If not, error: "Feature '$name' not found. Available features: <list>"
List Available (if no argument)
If `$ARGUMENTS` is empty:
1. List all directories in `.specify/specs/` 2. Read current active feature from `.specify/.current-feature` 3. Show list with current marked
Available features:
- 001-user-auth [ACTIVE]
- 002-payment-flow
- 003-dashboard
Run: /speckit:switch <feature-name>
Execute Switch
1. Find matching feature directory (exact match or partial match on name portion):
# Check for exact match first
if [ -d ".specify/specs/$name" ]; then
FEATURE="$name"
else
# Try matching by name suffix (e.g., "user-auth" matches "001-user-auth")
FEATURE=$(ls -1 .specify/specs/ 2>/dev/null | grep -E "^[0-9]{3}-$name$" | head -1)
fi2. Update `.specify/.current-feature`:
echo "$FEATURE" > .specify/.current-feature
3. Read the feature's state:
- `.speckit-state.json` for phase and progress
- `.progress.md` for context
Output
Switched to feature: $FEATURE
Current phase: <phase>
Progress: <taskIndex>/<totalTasks> tasks
Files present:
- [x/blank] spec.md
- [x/blank] plan.md
- [x/blank] tasks.md
- [x/blank] .progress.md
Next: Run /speckit:<appropriate-phase> to continue
Read more
description: Switch active feature argument-hint: <feature-name> allowed-tools: [Read, Write, Bash, Glob, Task]
Switch Active Feature
You are switching the active feature.
Parse Arguments
From `$ARGUMENTS`:
- **name**: The feature name to switch to (required)
Validate
1. If no name provided, list available features and ask user to choose 2. Check if `.specify/specs/$name/` exists (supports both `###-name` and plain `name` matching) 3. If not, error: "Feature '$name' not found. Available features: <list>"
List Available (if no argument)
If `$ARGUMENTS` is empty:
1. List all directories in `.specify/specs/` 2. Read current active feature from `.specify/.current-feature` 3. Show list with current marked
Available features: - 001-user-auth [ACTIVE] - 002-payment-flow - 003-dashboard Run: /speckit:switch <feature-name>
Execute Switch
1. Find matching feature directory (exact match or partial match on name portion):
# Check for exact match first
if [ -d ".specify/specs/$name" ]; then
FEATURE="$name"
else
# Try matching by name suffix (e.g., "user-auth" matches "001-user-auth")
FEATURE=$(ls -1 .specify/specs/ 2>/dev/null | grep -E "^[0-9]{3}-$name$" | head -1)
fi2. Update `.specify/.current-feature`:
echo "$FEATURE" > .specify/.current-feature
3. Read the feature's state:
- `.speckit-state.json` for phase and progress
- `.progress.md` for context
Output
Switched to feature: $FEATURE Current phase: <phase> Progress: <taskIndex>/<totalTasks> tasks Files present: - [x/blank] spec.md - [x/blank] plan.md - [x/blank] tasks.md - [x/blank] .progress.md Next: Run /speckit:<appropriate-phase> to continue
Spec-driven development with smart compaction. Claude Code plugin combining Ralph Wiggum loop with structured specification workflow.
Repo: tzachbon/smart-ralph
Other commands on smart-ralph.
- /speckit.analyze
Perform a non-destructive cross-artifact consistency and quality analysis across spec.md, plan.md, and tasks.md after task generation.
Open command - /speckit.checklist
Generate a custom checklist for the current feature based on user requirements.
Open command - /speckit.clarify
Identify underspecified areas in the current feature spec by asking up to 5 highly targeted clarification questions and encoding answers back into the spec.
Open command - /speckit.constitution
Create or update the project constitution from interactive or provided principle inputs, ensuring all dependent templates stay in sync.
Open command - /speckit.implement
Execute the implementation plan by processing and executing all tasks defined in tasks.md
Open command - /speckit.plan
Execute the implementation planning workflow using the plan template to generate design artifacts.
Open command

