Declutter Workflow
YOU ARE AN ORCHESTRATOR, NOT AN IMPLEMENTER.
This skill coordinates the entire refactoring workflow through four phases. You delegate work to specialized agents - you never modify code directly.
The Iron Law
NO REFACTORING WITHOUT ASSESSMENT FIRST
NO CODE CHANGE WITHOUT TEST HARNESS FIRST
NO COMPLETION WITHOUT VERIFICATION FIRST
Workflow Overview
digraph declutter_workflow {
rankdir=TB;
node [shape=box];
start [label="User Request" shape=ellipse];
assess [label="Phase 1: Assessment\n→ declutter-analyzer"];
plan [label="Phase 2: Planning\n→ TodoWrite"];
harness [label="Phase 3: Test Harness\n→ declutter-executor"];
refactor [label="Phase 4: Refactoring\n→ declutter-executor"];
verify [label="Phase 5: Verification\n→ declutter-reviewer"];
done [label="Complete" shape=ellipse];
start -> assess;
assess -> plan [label="ASSESSMENT_COMPLETE"];
plan -> harness [label="PLAN_APPROVED"];
harness -> refactor [label="HARNESS_COMPLETE"];
refactor -> verify [label="REFACTORING_COMPLETE"];
verify -> done [label="VERIFICATION_COMPLETE"];
verify -> refactor [label="Issues Found" style=dashed];
}
Delegation Table
| Action | YOU Do | DELEGATE TO |
|---|---|---|
| Read files for context | ✓ | |
| Track progress (TodoWrite) | ✓ | |
| Present options to user | ✓ | |
| Code smell detection | ✗ NEVER | declutter-smell-detector (Haiku) |
| Code analysis | ✗ NEVER | declutter-analyzer (Sonnet) or declutter-analyzer-high (Opus) |
| Code changes | ✗ NEVER | declutter-executor (Sonnet) or declutter-executor-high (Opus) |
| Final review | ✗ NEVER | declutter-reviewer (Opus) |
Phase 1: Assessment
Goal: Understand current state and identify refactoring opportunities.
- Invoke
declutter:assessmentskill - Delegate to
declutter-analyzeragent - Collect findings:
- Code smells detected
- Complexity hotspots
- Test coverage gaps
- Refactoring opportunities
Signal: ASSESSMENT_COMPLETE
Output: Assessment report with prioritized issues
Phase 2: Planning
Goal: Create actionable refactoring plan.
- Invoke
declutter:planningskill - Use TodoWrite to create task list
- Get user approval before proceeding
Signal: PLAN_APPROVED
Output: Approved task list in TodoWrite
Phase 3: Test Harness
Goal: Ensure behavior preservation through tests.
- Invoke
declutter:test-harnessskill - Delegate to
declutter-executor:- Create characterization tests for affected code
- Ensure tests pass before any changes
- Verify test coverage
Signal: HARNESS_COMPLETE
Output: Passing test suite covering affected code
Phase 4: Refactoring
Goal: Apply safe, incremental changes.
- Invoke
declutter:safe-refactoringskill - For each task in plan:
- Delegate to
declutter-executor - Make ONE atomic change
- Run tests immediately
- Commit if tests pass
- Rollback if tests fail
- Delegate to
Signal: REFACTORING_COMPLETE
Output: Refactored code with all tests passing
Phase 5: Verification
Goal: Confirm behavior preservation and quality improvement.
- Invoke
declutter:verificationskill - Delegate to
declutter-reviewer:- Verify all tests still pass
- Check no new smells introduced
- Confirm behavior preserved
- Validate improvements achieved
Signal: VERIFICATION_COMPLETE
Output: Verification report with final assessment
Red Flags - STOP
If you catch yourself thinking any of these, STOP immediately:
| Thought | Reality |
|---|---|
| "I can make this quick change myself" | NO. Delegate to executor. |
| "Skip assessment, the issue is obvious" | Assessment reveals hidden issues. Do it. |
| "Tests aren't necessary for this refactoring" | The Iron Law: NO CHANGE WITHOUT TEST FIRST |
| "I'll verify it myself" | Reviewer agent provides objective verification. |
| "Let me batch multiple changes" | ONE atomic change at a time. Always. |
Checklist
Use TodoWrite to track these items:
- [ ] Phase 1: Assessment complete
- [ ] Smell detection run
- [ ] Complexity analysis done
- [ ] Report generated
- [ ] Phase 2: Planning complete
- [ ] Tasks identified
- [ ] Priority assigned
- [ ] User approved plan
- [ ] Phase 3: Test harness complete
- [ ] Characterization tests written
- [ ] All tests passing
- [ ] Coverage verified
- [ ] Phase 4: Refactoring complete
- [ ] All tasks executed
- [ ] Each change tested
- [ ] All tests passing
- [ ] Phase 5: Verification complete
- [ ] Behavior preserved
- [ ] No new smells
- [ ] Quality improved
Rollback Protocol
If any phase fails:
- STOP all changes immediately
- Run
git statusto assess damage - If uncommitted changes:
git checkout -- . - If bad commits:
git revertto last known good state - Report failure with diagnosis
- Return to previous phase
Example Invocation
User: "This legacy module is a mess, can you clean it up?"
---
> Converted and distributed by [TomeVault](https://tomevault.io/claim/joowankim) — claim your Tome and manage your conversions.
<!-- tomevault:4.0:skill_md:2026-04-14 -->