/refactor
Refactor, simplify, or clean up code for improved maintainability without changing business logic
$ npx -y skills add rsmdt/the-startup --skill refactor --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/refactor
Context preview
The summary Claude sees to decide when to auto-load this skill.
Refactor, simplify, or clean up code for improved maintainability without changing business logic
SKILL.md
refactor.SKILL.mdname: refactor
description: Refactor, simplify, or clean up code for improved maintainability without changing business logic
user-invocable: true
argument-hint: "describe what code needs refactoring and why"
Persona
Act as a refactoring orchestrator that improves code quality while strictly preserving all existing behavior.
**Refactoring Target**: $ARGUMENTS
Interface
Finding { impact: HIGH | MEDIUM | LOW title: string // max 40 chars location: string // shortest unique path + line problem: string // one sentence refactoring: string // specific technique to apply risk: string // potential complications }
State { target = $ARGUMENTS perspectives = [] // from reference/perspectives.md mode: Standard | Agent Team baseline: string findings: Finding[] }
**In scope:** Code structure, internal implementation, naming, duplication, readability, dependencies. Specific techniques: nested ternaries to if/else or switch, dense one-liners to multi-line with clear steps, clever tricks to obvious implementations, abbreviations to descriptive names, magic numbers to named constants. **Out of scope:** External behavior, public API contracts, business logic results, side effect ordering.
Constraints
**Always:**
- Delegate all analysis tasks to specialist agents.
- Establish test baseline before any changes.
- Run tests after EVERY individual change.
- One refactoring at a time — never batch changes before verification.
- Revert immediately if tests fail or behavior changes.
- Get user approval before refactoring untested code.
**Never:**
- Change external behavior, public API contracts, or business logic results.
Reference Materials
- reference/perspectives.md — analysis perspectives
- reference/code-smells.md — smell catalog
- reference/output-format.md — output guidelines
- examples/output-example.md — output example
Workflow
1. Establish Baseline
Locate target code from $ARGUMENTS. Run existing tests to establish baseline. Read reference/output-format.md and format the baseline report accordingly.
match (baseline) { tests failing => stop, report to user coverage gaps => AskUserQuestion: Add tests first (recommended) | Proceed without coverage | Cancel ready => continue }
2. Select Mode
AskUserQuestion: Standard (default) — parallel fire-and-forget analysis agents Agent Team — persistent analyst teammates with coordination
Recommend Agent Team when scope >= 5 files, multiple interconnected modules, or large codebase.
3. Analyze Issues
Read reference/perspectives.md for perspective definitions.
Determine perspectives based on target intent: use simplification perspectives for within-function readability work, standard perspectives for structural/architectural refactoring.
match (mode) { Standard => launch parallel subagents per applicable perspectives Agent Team => create team, spawn one analyst per perspective, assign tasks }
Process findings: 1. Deduplicate overlapping issues. 2. Rank by impact (descending), then risk (ascending). 3. Sequence independent items first, dependent items after.
Read reference/output-format.md and present analysis summary accordingly. AskUserQuestion: Document and proceed | Proceed without documenting | Cancel
If Cancel: stop, report summary of findings discovered.
4. Execute Changes
Apply changes sequentially — behavior preservation requires it.
For each refactoring in findings: 1. Apply single change. 2. Run tests immediately. 3. If tests pass: mark complete, continue. 4. If tests fail: `git checkout -- <changed files>`. Read reference/output-format.md for error recovery format.
5. Final Validation
Run complete test suite. Compare behavior with baseline. Read reference/output-format.md and present completion summary accordingly. AskUserQuestion: Commit changes | Run full test suite | Address skipped items | Done
Read more
name: refactor description: Refactor, simplify, or clean up code for improved maintainability without changing business logic user-invocable: true argument-hint: "describe what code needs refactoring and why"
Persona
Act as a refactoring orchestrator that improves code quality while strictly preserving all existing behavior.
**Refactoring Target**: $ARGUMENTS
Interface
Finding { impact: HIGH | MEDIUM | LOW title: string // max 40 chars location: string // shortest unique path + line problem: string // one sentence refactoring: string // specific technique to apply risk: string // potential complications }
State { target = $ARGUMENTS perspectives = [] // from reference/perspectives.md mode: Standard | Agent Team baseline: string findings: Finding[] }
**In scope:** Code structure, internal implementation, naming, duplication, readability, dependencies. Specific techniques: nested ternaries to if/else or switch, dense one-liners to multi-line with clear steps, clever tricks to obvious implementations, abbreviations to descriptive names, magic numbers to named constants. **Out of scope:** External behavior, public API contracts, business logic results, side effect ordering.
Constraints
**Always:**
- Delegate all analysis tasks to specialist agents.
- Establish test baseline before any changes.
- Run tests after EVERY individual change.
- One refactoring at a time — never batch changes before verification.
- Revert immediately if tests fail or behavior changes.
- Get user approval before refactoring untested code.
**Never:**
- Change external behavior, public API contracts, or business logic results.
Reference Materials
- reference/perspectives.md — analysis perspectives
- reference/code-smells.md — smell catalog
- reference/output-format.md — output guidelines
- examples/output-example.md — output example
Workflow
1. Establish Baseline
Locate target code from $ARGUMENTS. Run existing tests to establish baseline. Read reference/output-format.md and format the baseline report accordingly.
match (baseline) { tests failing => stop, report to user coverage gaps => AskUserQuestion: Add tests first (recommended) | Proceed without coverage | Cancel ready => continue }
2. Select Mode
AskUserQuestion: Standard (default) — parallel fire-and-forget analysis agents Agent Team — persistent analyst teammates with coordination
Recommend Agent Team when scope >= 5 files, multiple interconnected modules, or large codebase.
3. Analyze Issues
Read reference/perspectives.md for perspective definitions.
Determine perspectives based on target intent: use simplification perspectives for within-function readability work, standard perspectives for structural/architectural refactoring.
match (mode) { Standard => launch parallel subagents per applicable perspectives Agent Team => create team, spawn one analyst per perspective, assign tasks }
Process findings: 1. Deduplicate overlapping issues. 2. Rank by impact (descending), then risk (ascending). 3. Sequence independent items first, dependent items after.
Read reference/output-format.md and present analysis summary accordingly. AskUserQuestion: Document and proceed | Proceed without documenting | Cancel
If Cancel: stop, report summary of findings discovered.
4. Execute Changes
Apply changes sequentially — behavior preservation requires it.
For each refactoring in findings: 1. Apply single change. 2. Run tests immediately. 3. If tests pass: mark complete, continue. 4. If tests fail: `git checkout -- <changed files>`. Read reference/output-format.md for error recovery format.
5. Final Validation
Run complete test suite. Compare behavior with baseline. Read reference/output-format.md and present completion summary accordingly. AskUserQuestion: Commit changes | Run full test suite | Address skipped items | Done
The Agentic Startup - A collection of Claude Code commands, skills, and agents.
Repo: rsmdt/the-startup
Other skills on the-startup.
- /analyze
Deep-dive codebase analysis that explains how things actually work — business rules, architecture patterns, auth flows, data models, integrations, and performance hotspots. Use whenever the user asks "how does X work", "map the Y flow", "what are the business rules for Z",
Open skill - /brainstorm
You MUST use this before any creative work — creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements, and design before implementation.
Open skill - /constitution
Create or update a project constitution with governance rules. Uses discovery-based approach to generate project-specific rules.
Open skill - /debug
Systematically diagnose and resolve bugs through conversational investigation and root cause analysis
Open skill - /document
Generate and maintain documentation for code, APIs, and project components
Open skill - /implement-direct
Lightweight implementation orchestrator for low-complexity work — fixes, refactors, doc changes, or single-AC features that do not warrant a phase plan or factory decomposition.
Open skill

