What problem does it solve? Small code-level cleanup items (lint warnings, dead imports, weak tests) get noticed and forgotten because they are too minor for a risk register and not features for a roadmap. This Skill maintains docs/TECH_DEBT.md as a single committed table for exactly those items, with schema validation and clear boundaries against the risk register and roadmap. ## Core Features & Use Cases - Structured row filing: Append cleanup rows with a defined schema (id, item, area, description, effort, since, status) illustrated by a YAML template and enforced by a JSON Schema. - Pre-commit validation: scripts/validate-tech-debt-schema.sh checks every table row against the schema, wired into lefthook pre-commit so malformed rows cannot be committed locally. - Boundary due diligence: Built-in rules for deciding whether an item is cleanup, a real risk (promote to docs/RISK_REGISTER.md), or already tracked by aislop's baseline. - Use Case: You notice an unused import that eslint only warns about. File it as a tech-debt row with the next available number, a self-contained description, and Effort: S, then validate before committing. When fixed, delete the row after confirming no hidden risk was revealed. ## Quick Start Ask the agent to log a small cleanup item you noticed as a new row in docs/TECH_DEBT.md using the tech-debt skill.