From harness-audit
Use when Claude Code harness has grown over time and needs dead weight identification, or after a major model upgrade when scaffolding built to compensate for old model limitations may now be obsolete.
How this skill is triggered — by the user, by Claude, or both
Slash command
/harness-audit:harness-auditThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Every hook, MCP, and skill encodes an assumption about what Claude can't do on its own. Those assumptions go stale as the model improves. This skill audits your harness, annotates each component with its origin purpose, and flags dead weight.
Every hook, MCP, and skill encodes an assumption about what Claude can't do on its own. Those assumptions go stale as the model improves. This skill audits your harness, annotates each component with its origin purpose, and flags dead weight.
Core principle: Build to delete. Every harness component needs a birth certificate and an expiration check.
budget-savings.log / similar telemetry shows a hook never firescat ~/.claude/settings.json
cat ~/.claude/settings.local.json
cat .claude/settings.json 2>/dev/null # project-level
ls ~/.claude/skills/ # active skills
Catalog all: Stop/PreToolUse/PostToolUse/SessionStart hooks · mcpServers · enabledPlugins · active skills.
For each component, answer:
Write to .claude/harness-manifest.md (see format below).
| Status | Criteria |
|---|---|
| KEEP | Deficiency still present, or compensates for environment (not model) |
| REVIEW | Partially superseded — test with/without |
| DEAD WEIGHT | Model now handles this natively |
| UNKNOWN | Origin unclear — investigate before any removal |
For each KEEP, record when to revisit:
### hooks.Stop.world-model-snap.py
- Purpose: cross-session world state
- Compensates for: no native session persistence
- Status: KEEP
- Expiration trigger: when native session persistence ships
.claude/harness-manifest.md:
# Harness Manifest
Generated: {date} | Model: {model-id}
## Dead Weight Candidates
- [ ] hooks.Stop.foo.py — [reason]
- [ ] mcpServers.puppeteer — redundant with chrome-in-chrome
## Components
### hooks.Stop.{script}
- **Purpose**: {what it does}
- **Compensates for**: {model deficiency or environment limit}
- **Status**: KEEP | REVIEW | DEAD WEIGHT | UNKNOWN
- **Expiration trigger**: {condition}
| Pattern | Signal |
|---|---|
| Context anxiety handler | Model no longer abandons tasks near context limit |
| Sprint decomposer | Model handles long tasks without forced checkpoints |
| Retry wrapper | Model recovers from tool failures natively |
| Duplicate memory | Two systems solving same problem |
| Output formatter | Model formats consistently without prompting |
# 1. Disable first (comment out, don't delete)
# 2. Run 3+ representative sessions
# 3. Compare output quality and behavior
# 4. Clean → delete. Broken → re-enable, update status to KEEP.
Never remove based on manifest alone. Test the hypothesis.
Guides collaborative design exploration before implementation: explores context, asks clarifying questions, proposes approaches, and writes a design doc for user approval.
Creates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.
Reference for writing and editing skills with predictable behavior, covering invocation models, description writing, and information hierarchy.
npx claudepluginhub 2233admin/harness-audit