/deslop
This skill should be used when the user asks to "clean up slop", "remove AI artifacts", "deslop the codebase", "find debug statements", "remove console.logs", "repo hygiene", or mentions "AI slop", "code cleanup", "slop detection".
From deslopnpx claudepluginhub avifenesh/agentsys[report|apply] [--scope=path] [--thoroughness=quick|normal|deep]/deslop - AI Slop Cleanup
Senior maintainer performing periodic repo hygiene. Mission: remove AI-generated slop while preserving behavior and minimizing diffs.
Constraints (Priority Order)
When constraints conflict, follow this priority:
- Preserve behavior and public APIs (highest priority)
- Minimal diffs - do not reformat unrelated code
- Prefer deletion over invention
- No new dependencies or abstractions
- Respect repo conventions (check CLAUDE.md/AGENTS.md)
Arguments
Parse from $ARGUMENTS or use defaults:
- Mode:
report(default) orapply - Scope:
all(default),diff, or path - Thoroughness:
quick,normal(default), ordeep
Execution
Phase 1: Spawn Deslop Agent
// Parse arguments
const args = '$ARGUMENTS'.split(' ').filter(Boolean);
const mode = args.includes('apply') ? 'apply' : 'report';
const thoroughness = args.find(a => a.startsWith('--thoroughness='))?.split('=')[1] || 'normal';
const scope = args.find(a => a.startsWith('--scope='))?.split('=')[1] ||
args.find(a => !a.startsWith('-') && a !== 'report' && a !== 'apply') || 'all';
// Spawn agent to get findings
const result = await Task({
subagent_type: "deslop:deslop-agent",
prompt: `Scan for AI slop patterns.
Mode: ${mode}
Scope: ${scope}
Thoroughness: ${thoroughness}
Return structured results between === DESLOP_RESULT === markers.`
});
Phase 2: Parse Agent Results
Extract structured JSON from agent output:
function parseDeslop(output) {
const match = output.match(/=== DESLOP_RESULT ===[\s\S]*?({[\s\S]*?})[\s\S]*?=== END_RESULT ===/);
return match ? JSON.parse(match[1]) : { fixes: [] };
}
const findings = parseDeslop(result);
Phase 3: Handle Mode
Report Mode (Default)
Present findings as markdown table:
## Slop Hotspots
| Priority | File | Issue | Certainty | Fix |
|----------|------|-------|-----------|-----|
| 1 | src/api.js:42 | console.log | HIGH | auto |
| 2 | src/auth.js:15 | empty catch | HIGH | auto |
| 3 | lib/utils.js:88 | excessive comments | MEDIUM | review |
## Summary
- **HIGH certainty**: N (auto-fixable)
- **MEDIUM certainty**: N (review required)
- **LOW certainty**: N (flagged only)
## Do Next
- [ ] Run `/deslop apply` to auto-fix HIGH certainty items
- [ ] Review MEDIUM certainty items manually
Apply Mode
If fixes array is non-empty, spawn simple-fixer:
if (mode === 'apply' && findings?.fixes?.length > 0) {
await Task({
subagent_type: "next-task:simple-fixer",
model: "haiku",
prompt: `Apply these slop fixes:
${JSON.stringify(findings.fixes, null, 2)}
For each fix:
- remove-line: Delete the line at the specified line number
- add-comment: Add "// Error intentionally ignored" to empty catch
- remove-block: Delete the entire code block
Use Edit tool to apply. Commit message: "fix: clean up AI slop (auto-applied)"`
});
}
Present results:
## Applied Fixes
| File | Line | Fix |
|------|------|-----|
| src/api.js | 42 | remove-line (console.log) |
| src/auth.js | 15 | add-comment (empty catch) |
**Total**: N fixes applied
## Remaining (manual review needed)
| File | Line | Issue | Certainty |
|------|------|-------|-----------|
| lib/utils.js | 88 | excessive comments | MEDIUM |
Verification Strategy
After fixes are applied, run project's test command:
npm test
# or pytest, cargo test, go test ./...
On failure: git restore . and report which change failed.
Ignore Zones
Skip these paths (handled by detection script):
- Build artifacts:
dist/,build/,target/,out/,.next/ - Vendored:
vendor/,node_modules/,**/*.min.* - Generated:
**/*.gen.*, lockfiles
Error Handling
- Git not available: Exit with "Git required for rollback safety"
- Invalid scope path: Exit with "Path not found: <path>"
- Verification fails: Rollback with
git restore ., report failure
Additional Resources
Reference Files
For detailed pattern documentation, consult:
references/slop-categories.md- All pattern categories, severity levels, certainty thresholds, auto-fix strategies
Scripts
scripts/detect.js- Detection pipeline CLI (run with--helpfor options)