AI Slop Cleaner Skill
Reduce AI-generated slop with a regression-tests-first, smell-by-smell cleanup workflow that preserves behavior and raises signal quality.
When to Use
Use this skill when:
- A code path works but feels bloated, noisy, repetitive, or over-abstracted
- A user asks to “cleanup”, “refactor”, or “deslop” AI-generated output
- Follow-up implementation left duplicate code, dead code, weak boundaries, missing tests, fallback-like code, or unnecessary wrapper layers
- You need a disciplined cleanup workflow without broad rewrites
GPT-5.5 Guidance Alignment
- Keep outputs concise and evidence-dense unless risk or the user requests more detail.
- Treat newer user instructions as local workflow updates without discarding earlier non-conflicting constraints.
- Keep using inspection, tests, diagnostics, and verification until the cleanup is grounded.
- Proceed automatically through clear, reversible cleanup steps; ask only when a choice materially changes scope or behavior.
Scoped File Lists and Ralph Workflow
- This skill can accept a file list scope instead of a whole feature area.
- When the caller provides a changed-files list (for example, Ralph session-owned edits), keep the cleanup strictly bounded to those files.
- In the Ralph workflow, the mandatory deslop pass should run this skill on Ralph's changed files only, in standard mode unless the caller explicitly requests otherwise.
Procedure
Lock behavior with regression tests first
- Identify the behavior that must not change
- Add or run targeted regression tests before editing cleanup candidates
- If behavior is currently untested, create the narrowest test coverage needed first
- For fallback-like code, cover the primary path and any preserved compatibility/fail-safe fallback before cleanup
Create a cleanup plan before code
- List the specific smells to remove
- Bound the pass to the requested files/scope
- If a file list scope is provided, keep the pass restricted to that changed-files list
- Include fallback findings, classifications, and escalation status in the plan
- Order fixes from safest/highest-signal to riskiest
- Do not start coding until the cleanup plan is explicit
Inventory fallback-like code before editing
- Search the requested scope for fallback-like detection signals: quick hacks, temporary workaround, temporary fallback, just bypass, just skip, fallback if it fails, swallowed errors, silent defaults, broad compatibility shims, and duplicate alternate execution paths
- Classify each finding before changing it:
- Masking fallback slop — hides errors or evidence, bypasses the primary contract, suppresses tests or validation, swallows failures, silently defaults, or adds untested alternate paths
- Grounded compatibility/fail-safe fallback — is scoped to an external/version/fail-safe boundary, documents the rationale, preserves failure evidence, and has regression tests for both the primary and fallback behavior
- Prefer root-cause repair, deletion, boundary repair, or explicit failure behavior before preserving fallback paths
- For broad, ambiguous, cross-layer, or architectural fallback-like code, invoke
$ralplan for consensus resolution before edits
- Recursion guard: when already inside ralplan, ralph, team, or another OMX workflow, do not spawn a nested
$ralplan; record the finding and attach it to the active ralplan, leader, or plan handoff instead
Categorize issues before editing
- Fallback-like code — masking fallbacks, workaround branches, bypasses, swallowed errors, silent defaults, broad shims, alternate execution paths
- Duplication — repeated logic, copy-paste branches, redundant helpers
- Dead code — unused code, unreachable branches, stale flags, debug leftovers
- Needless abstraction — pass-through wrappers, speculative indirection, single-use helper layers
- Boundary violations — hidden coupling, leaky responsibilities, wrong-layer imports or side effects
- Missing tests — behavior not locked, weak regression coverage, gaps around edge cases
Execute passes one smell at a time
- Fallback-like code resolution gate — remove masking fallback slop, repair root causes, or escalate ambiguous cases before continuing
- Pass 1: Dead code deletion
- Pass 2: Duplicate removal
- Pass 3: Naming/error handling cleanup
- Pass 4: Test reinforcement
- Re-run targeted verification after each pass
- Avoid bundling unrelated refactors into the same edit set
Run quality gates
- Regression tests stay green
- Lint passes
- Typecheck passes
- Relevant unit/integration tests pass
- Static/security scan passes when available
- Diff stays minimal and scoped
- No new abstractions or dependencies unless explicitly required
Finish with an evidence-dense report
- Changed files
- Simplifications made
- Fallback findings, classifications, and escalation status
- Tests/diagnostics/build checks run
- Remaining risks
- Residual follow-ups or consciously deferred cleanup
Output Format
AI SLOP CLEANUP REPORT
======================
Scope: [files or feature area]
Behavior Lock: [targeted regression tests added/run]
Cleanup Plan: [bounded smells and order]
Fallback Findings: [none, or finding -> masking fallback slop / grounded compatibility/fail-safe fallback -> escalation status]
Passes Completed:
- Fallback-like code resolution gate - [root-cause repair, explicit failure behavior, preserved grounded fallback, or ralplan handoff]
1. Pass 1: Dead code deletion - [concise fix]
2. Pass 2: Duplicate removal - [concise fix]
3. Pass 3: Naming/error handling cleanup - [concise fix]
4. Pass 4: Test reinforcement - [concise fix]
Quality Gates:
- Regression tests: PASS/FAIL
- Lint: PASS/FAIL
- Typecheck: PASS/FAIL
- Tests: PASS/FAIL
- Static/security scan: PASS/FAIL or N/A
Changed Files:
- [path] - [simplification]
Fallback Review:
- Findings: [fallback-like findings detected]
- Classification: [masking fallback slop | grounded fallback]
- Escalation Status: [none | raised to leader/ralplan | no escalation]
Remaining Risks:
- [none or short deferred item]
Scenario Examples
Good: The user says continue after tests already lock behavior and the next smell pass is clear. Continue with the next bounded cleanup pass.
Good: The user narrows the scope to a specific file after planning. Keep the regression-tests-first workflow, but apply the new scope locally.
Bad: Start rewriting architecture before protecting behavior with tests.
Bad: Collapse multiple smell categories into one large refactor with no intermediate verification.
Bad: Keep a fallback if it fails branch that silently defaults after a swallowed error instead of fixing the root cause or making failure explicit.
Good: A version-specific compatibility shim is narrow, documented, preserves error evidence, has primary and fallback regression tests, and is reported as a grounded compatibility/fail-safe fallback.
1---2name: ai-slop-cleaner3description: Run an anti-slop cleanup/refactor/deslop workflow4---56# AI Slop Cleaner Skill78Reduce AI-generated slop with a regression-tests-first, smell-by-smell cleanup workflow that preserves behavior and raises signal quality.910## When to Use1112Use this skill when:13- A code path works but feels bloated, noisy, repetitive, or over-abstracted14- A user asks to “cleanup”, “refactor”, or “deslop” AI-generated output15- Follow-up implementation left duplicate code, dead code, weak boundaries, missing tests, fallback-like code, or unnecessary wrapper layers16- You need a disciplined cleanup workflow without broad rewrites1718## GPT-5.5 Guidance Alignment1920- Keep outputs concise and evidence-dense unless risk or the user requests more detail.21- Treat newer user instructions as local workflow updates without discarding earlier non-conflicting constraints.22- Keep using inspection, tests, diagnostics, and verification until the cleanup is grounded.23- Proceed automatically through clear, reversible cleanup steps; ask only when a choice materially changes scope or behavior.2425## Scoped File Lists and Ralph Workflow2627- This skill can accept a **file list scope** instead of a whole feature area.28- When the caller provides a changed-files list (for example, Ralph session-owned edits), keep the cleanup strictly bounded to those files.29- In the **Ralph workflow**, the mandatory deslop pass should run this skill on Ralph's changed files only, in standard mode unless the caller explicitly requests otherwise.3031## Procedure32331. **Lock behavior with regression tests first**34 - Identify the behavior that must not change35 - Add or run targeted regression tests before editing cleanup candidates36 - If behavior is currently untested, create the narrowest test coverage needed first37 - For fallback-like code, cover the primary path and any preserved compatibility/fail-safe fallback before cleanup38392. **Create a cleanup plan before code**40 - List the specific smells to remove41 - Bound the pass to the requested files/scope42 - If a file list scope is provided, keep the pass restricted to that changed-files list43 - Include fallback findings, classifications, and escalation status in the plan44 - Order fixes from safest/highest-signal to riskiest45 - Do not start coding until the cleanup plan is explicit46473. **Inventory fallback-like code before editing**48 - Search the requested scope for fallback-like detection signals: quick hacks, temporary workaround, temporary fallback, just bypass, just skip, fallback if it fails, swallowed errors, silent defaults, broad compatibility shims, and duplicate alternate execution paths49 - Classify each finding before changing it:50 - **Masking fallback slop** — hides errors or evidence, bypasses the primary contract, suppresses tests or validation, swallows failures, silently defaults, or adds untested alternate paths51 - **Grounded compatibility/fail-safe fallback** — is scoped to an external/version/fail-safe boundary, documents the rationale, preserves failure evidence, and has regression tests for both the primary and fallback behavior52 - Prefer root-cause repair, deletion, boundary repair, or explicit failure behavior before preserving fallback paths53 - For broad, ambiguous, cross-layer, or architectural fallback-like code, invoke `$ralplan` for consensus resolution before edits54 - Recursion guard: when already inside ralplan, ralph, team, or another OMX workflow, do not spawn a nested `$ralplan`; record the finding and attach it to the active ralplan, leader, or plan handoff instead55564. **Categorize issues before editing**57 - **Fallback-like code** — masking fallbacks, workaround branches, bypasses, swallowed errors, silent defaults, broad shims, alternate execution paths58 - **Duplication** — repeated logic, copy-paste branches, redundant helpers59 - **Dead code** — unused code, unreachable branches, stale flags, debug leftovers60 - **Needless abstraction** — pass-through wrappers, speculative indirection, single-use helper layers61 - **Boundary violations** — hidden coupling, leaky responsibilities, wrong-layer imports or side effects62 - **Missing tests** — behavior not locked, weak regression coverage, gaps around edge cases63645. **Execute passes one smell at a time**65 - **Fallback-like code resolution gate** — remove masking fallback slop, repair root causes, or escalate ambiguous cases before continuing66 - **Pass 1: Dead code deletion**67 - **Pass 2: Duplicate removal**68 - **Pass 3: Naming/error handling cleanup**69 - **Pass 4: Test reinforcement**70 - Re-run targeted verification after each pass71 - Avoid bundling unrelated refactors into the same edit set72736. **Run quality gates**74 - Regression tests stay green75 - Lint passes76 - Typecheck passes77 - Relevant unit/integration tests pass78 - Static/security scan passes when available79 - Diff stays minimal and scoped80 - No new abstractions or dependencies unless explicitly required81827. **Finish with an evidence-dense report**83 - Changed files84 - Simplifications made85 - Fallback findings, classifications, and escalation status86 - Tests/diagnostics/build checks run87 - Remaining risks88 - Residual follow-ups or consciously deferred cleanup8990## Output Format9192```text93AI SLOP CLEANUP REPORT94======================9596Scope: [files or feature area]97Behavior Lock: [targeted regression tests added/run]98Cleanup Plan: [bounded smells and order]99Fallback Findings: [none, or finding -> masking fallback slop / grounded compatibility/fail-safe fallback -> escalation status]100101Passes Completed:102- Fallback-like code resolution gate - [root-cause repair, explicit failure behavior, preserved grounded fallback, or ralplan handoff]1031. Pass 1: Dead code deletion - [concise fix]1042. Pass 2: Duplicate removal - [concise fix]1053. Pass 3: Naming/error handling cleanup - [concise fix]1064. Pass 4: Test reinforcement - [concise fix]107108Quality Gates:109- Regression tests: PASS/FAIL110- Lint: PASS/FAIL111- Typecheck: PASS/FAIL112- Tests: PASS/FAIL113- Static/security scan: PASS/FAIL or N/A114115Changed Files:116- [path] - [simplification]117118Fallback Review:119- Findings: [fallback-like findings detected]120- Classification: [masking fallback slop | grounded fallback]121- Escalation Status: [none | raised to leader/ralplan | no escalation]122123Remaining Risks:124- [none or short deferred item]125```126127## Scenario Examples128129**Good:** The user says `continue` after tests already lock behavior and the next smell pass is clear. Continue with the next bounded cleanup pass.130131**Good:** The user narrows the scope to a specific file after planning. Keep the regression-tests-first workflow, but apply the new scope locally.132133**Bad:** Start rewriting architecture before protecting behavior with tests.134135**Bad:** Collapse multiple smell categories into one large refactor with no intermediate verification.136137**Bad:** Keep a `fallback if it fails` branch that silently defaults after a swallowed error instead of fixing the root cause or making failure explicit.138139**Good:** A version-specific compatibility shim is narrow, documented, preserves error evidence, has primary and fallback regression tests, and is reported as a grounded compatibility/fail-safe fallback.