From asi
Scans existing files for placeholder tokens like TODOs, FIXMEs, mocks, stubs; classifies by severity and generates remediation plans with tasks.
How this skill is triggered — by the user, by Claude, or both
Slash command
/asi:substitute-eraserThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Scan existing codebases for placeholder tokens. Generate remediation plan.
Scan existing codebases for placeholder tokens. Generate remediation plan.
Audit existing files for substitution tokens (TODO, FIXME, placeholder, mock, etc.) and produce actionable remediation plan. Distinct from accept-no-substitutes which validates agent output.
This skill scans what already exists:
Complements accept-no-substitutes (output validation).
# Scan current directory
just substitute-scan .
# Scan specific path
just substitute-scan src/
| Severity | Tokens | Action |
|---|---|---|
| CRITICAL | TODO, FIXME, placeholder, xxx | Must fix before merge |
| WARNING | mock-, fake-, stub-* (outside tests) | Review context |
| INFO | example_, demo_ | Document or remove |
Output format:
SUBSTITUTE ERASER REPORT
========================
Scanned: 142 files
Found: 23 substitutions
CRITICAL (7):
src/auth.py:42 TODO: implement token refresh
src/api.py:118 placeholder value
src/db.py:55 FIXME: race condition
...
WARNING (12):
src/service.py:30 mock_client (not in test file)
...
INFO (4):
README.md:15 example_config
...
REMEDIATION PLAN:
1. [CRITICAL] src/auth.py:42 - Implement token refresh logic
2. [CRITICAL] src/api.py:118 - Replace placeholder with actual value
...
| Pattern | Acceptable In |
|---|---|
mock-*, fake-*, stub-* | *_test.py, test_*.py, /tests/ |
example_* | README.md, /docs/, /examples/ |
demo_* | /demo/, documentation |
TODO | Issue tracker references with ID |
Mark intentional placeholders:
# SUBSTITUTE-OK: mock used for test isolation
mock_client = MockHTTPClient()
# Full scan with report
just substitute-scan <path>
# Critical only (CI mode)
just substitute-critical <path>
# Generate remediation tasks
just substitute-tasks <path> --output=github # GitHub issues
just substitute-tasks <path> --output=linear # Linear tickets
just substitute-tasks <path> --output=todo # TODO file
# Interactive fix mode
just substitute-fix <path>
Operates as MINUS (-1) in audit triads:
substitute-eraser(-1) + code-generator(+1) + review-coordinator(0) = 0
Emits rejection signal when scan finds violations above threshold.
references/patterns.md - Detection regex patterns (shared with accept-no-substitutes)references/remediation.md - Fix strategies per token typescripts/scan.py - Main scanning scriptscripts/report.py - Report generationnpx claudepluginhub plurigrid/asi --plugin asiDetects placeholder tokens like pseudo-, mock-, TODO in agent output and triggers user interview to reject incomplete substitutions.
Detects and auto-fixes AI slop in code (debug leftovers, placeholders, hardcoded credentials) using a three-phase certainty scan, safely applying only deterministic HIGH fixes and verifying with tests.
Scans codebase for debug artifacts (console.log, debugger), TODO/FIXME markers, and TypeScript `any` types. Optionally auto-fixes safe patterns. Useful before commits or during PR review.