Agent skill
refactor
Multi-target refactoring orchestrator. Use when: cleaning up messy code/docs, simplifying code, restructuring documents, batch cleanup. Not for: new features (use feature-dev), bug fixes (use bug-fix), code understanding (use code-explore). Output: refactored code/docs + review gate.
Install this agent skill to your Project
npx add-skill https://github.com/sd0xdev/sd0x-dev-flow/tree/main/skills/refactor
SKILL.md
Refactor — Multi-Target Refactoring Orchestrator
Trigger
- Keywords: refactor, cleanup, clean up, simplify code, restructure, tidy up, reduce complexity, batch refactor
- zh-TW: 重構, 整理, 清理, 簡化
When NOT to Use
| Scenario | Alternative |
|---|---|
| New feature development | /feature-dev |
| Bug fix | /bug-fix |
| Code understanding | /code-explore |
| Doc review only | /codex-review-doc |
| Single file simplify (known target) | /simplify directly |
| Remove AI artifacts (known doc) | /de-ai-flavor directly |
Prohibited Actions
❌ git add | git commit | git push — per @rules/git-workflow.md
budget:token_budget150000</budget:token_budget>
Arguments
| Flag | Default | Description |
|---|---|---|
--target <path> |
— | Specific file or directory (repo-relative) |
--auto |
— | Auto-detect targets using inline metrics |
--max-targets N |
10 | Maximum targets per run |
Workflow
Phase 0: Target Detection → Phase 2: Incremental Refactor Loop → Phase 3: Report
(Phase 1: reserved for v2 — parallel exploration)
Phase 0: Target Detection & Planning
--target Mode
-
Validate path (per
references/target-detection.md):- Reject absolute paths (starts with
/) - Reject
..traversal - Reject symlink escape (resolved path outside repo root)
- Reject non-existent files
- On rejection:
[REFACTOR_BLOCKED] <path>: <reason>
- Reject absolute paths (starts with
-
Detect file type:
- Use extension mapping from
references/target-detection.md - For
.mdfiles: run AI artifact heuristic (scan for tool names, boilerplate, etc.; 3+ matches →doc-ai, else →doc-structure) - v2 types (config/shell/test): log
[REFACTOR_SKIPPED] {target}: type not yet dispatched (v2)and skip
- Use extension mapping from
-
Classify refactor types from
references/refactor-catalog.md(R01-R09 for v1)
--auto Mode
-
(Optional) Baseline: Run
/project-auditto capture health score -
Scan repo for candidate files (code + doc)
-
Score each candidate:
score = 0.40 × complexity + 0.35 × change_frequency + 0.25 × isolationcomplexity:wc -l <file>normalized 0-1change_frequency:git log --oneline -- <file> | wc -lnormalized 0-1isolation:1 - (import_count / max_import_count)
-
Sort descending, take top
--max-targets(default 10) -
Classify each target's file type and refactor types
Phase 2: Incremental Refactor Loop
Process each target in priority order. Budget: max --max-targets targets per run.
Code Targets
FOR EACH code target:
1. /verify fast → capture baseline exit code
IF baseline exit ≠ 0:
[REFACTOR_SKIPPED] {target}: baseline failing, cannot verify preservation
CONTINUE
2. /simplify {target}
3. /verify fast → capture post-refactor exit code
4. Behavioral gate (per references/behavioral-gate.md):
IF BEHAVIOR_CHANGED (0→non-0):
[REFACTOR_SKIPPED] {target}: behavioral regression detected
CONTINUE
IF NO_TESTS (all steps skipped):
⚠️ NO_TESTS: behavioral preservation not verified (advisory, continue)
5. /codex-review-fast (auto-loop, max 3 rounds)
IF still blocked:
[REFACTOR_BLOCKED] {target}: review not passing after max rounds
CONTINUE
6. /precommit-fast (lint + test gate, per CLAUDE.md required flow)
IF ⛔ FAIL:
[REFACTOR_BLOCKED] {target}: precommit not passing
CONTINUE
7. Mark as committable
Doc Targets
Doc targets bypass the behavioral gate entirely — docs have no executable tests.
FOR EACH doc target:
1. Classify: AI artifact heuristic
IF doc-ai (3+ matches): dispatch /de-ai-flavor {target}
ELSE (doc-structure): dispatch /doc-refactor {target}
2. /codex-review-doc (auto-loop, max 3 rounds)
IF still blocked:
[REFACTOR_BLOCKED] {target}: review not passing after max rounds
CONTINUE
3. Mark as committable
v2 Targets
FOR EACH v2 target (config/shell/test):
[REFACTOR_SKIPPED] {target}: type not yet dispatched (v2)
CONTINUE
Phase 3: Report & Handoff
Per-Target Result Table
Output per references/output-template.md:
| # | Target | Type | Action | Gate | Result |
|---|--------|------|--------|------|--------|
Delta Report (--auto only)
If Phase 0 captured /project-audit baseline:
- Run
/project-auditagain - Compare dimension scores (before vs after)
- Output delta table
User Handoff
List committable files. Suggest /smart-commit --execute (no auto-commit per @rules/git-workflow.md).
Review Loop
⚠️ Per @rules/auto-loop.md: fix → re-review → ... → ✅ Pass
| After editing... | Immediately run |
|---|---|
| Code files | /codex-review-fast |
| Doc files | /codex-review-doc |
Verification Checklist
- All code targets passed behavioral gate (
/verify fastPRESERVED) - All targets reviewed (
/codex-review-fastor/codex-review-doc) - Skip log complete for all skipped/blocked targets
- No
git add/commit/pushexecuted
Examples
/refactor --target src/utils.ts # Refactor single code file
/refactor --target docs/guide.md # Refactor single doc file
/refactor --target src/ # Refactor all code in directory
/refactor --auto # Auto-detect up to 10 targets
/refactor --auto --max-targets 5 # Auto with budget cap
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
runbook
Generate and update feature release runbooks from existing docs and codebase. Use when: creating operational runbook, release handbook, deployment checklist, pre-release preparation. Not for: incident response (v2), code review (use codex-code-review), architecture design (use architecture).
ask
Context-aware Q&A with auto context gathering. Use when: user has a quick question about codebase, git history, rules, docs, or skills during development. Not for: code changes (use feature-dev), code review (use codex-review-fast), deep research (use deep-research), full code trace (use code-explore). Output: structured answer with source attribution.
project-brief
Convert a technical spec into a PM/CTO-readable executive summary. Simplify technical details, focus on business value.
codex-test-gen
Generate unit tests for specified functions using Codex MCP
bug-fix
Bug fix workflow. Use when: fixing bugs, resolving issues, regression fixes. Not for: new features (use feature-dev), understanding code (use code-explore). Output: fix + regression test + review gate.
skill-health-check
Validate skill quality against routing, progressive loading, and verification criteria. Use when: auditing skills, checking skill health, reviewing skill design. Not for: code review (use codex-code-review) or doc review (use doc-review). Output: health report with per-skill ratings + Gate.
Didn't find tool you were looking for?