> Triggers on "absolute debt", "fix our lint warnings", "clear the type errors", "get to strict mode", "burn down suppressions".
npx skills add https://github.com/maddhruv/absolute --skill absolute-debt
> Start your first response with the 🧾 emoji.
Pay down accumulated lint and type-checker debt across the repo — existing warnings,
errors, and suppressions that built up over time — in safe waves, by rule, with tests green
after each. The goal is a genuinely clean lint + typecheck, not a quieter one.
Runs the shared engine in references/health-engine.md — read it for the
DETECT → SCAN → TRIAGE → FIX → VERIFY → REPORT loop and the safety contract. This file
covers only what's specific to lint/type debt.
tsconfig strictness) and clearing the fallout.eslint-disable / @ts-ignore / # type: ignore suppressions.debt vs simplify: simplify improves *your working diff's* quality. debt clears
pre-existing repo-wide lint/type violations on green main. Use debt for standing
cleanup, not for changes you're actively making.
| Ecosystem | Lint debt | Type debt |
|---|---|---|
| JS/TS | eslint . (full report, by rule) | tsc --noEmit |
| Python | ruff check / flake8 | mypy / pyright |
| Go | golangci-lint run | go vet ./..., staticcheck |
Also inventory suppressions as debt in their own right: eslint-disable*,
@ts-ignore/@ts-expect-error, # type: ignore, # noqa, //nolint. Each is a hidden
violation. Count violations grouped by rule (not by file) — that's how you wave them.
| Wave | Class | Default |
|---|---|---|
| 1 | autofixable lint (eslint --fix, ruff --fix, gofmt) | fix now — mechanical, safe |
| 2 | manual lint by rule, low behavioral risk (unused, style, imports) | fix this pass, one rule at a time |
| 3 | type errors, and lint rules that can change behavior if "fixed" wrong | gated — review each, may need real logic |
| 4 | removing suppressions (@ts-ignore etc.) | gated — each may surface a real bug |
Fix one rule across the repo per wave, not one file across all rules — keeps diffs
reviewable and regressions bisectable. Config tightening (enable rule / raise strictness) is
itself a finding: propose it, then clear what it surfaces.
wrong somewhere — fix the type, don't cast to any/add # type: ignore.
nothing regress.
@ts-ignore to clear a type error *adds* debt. Forbidden here.any / cast to win. Silences the checker, keeps the bug. Fix the real type.--fix can change behavior (e.g. prefer-const on areassigned var via a bug). Run tests after autofix too.
not paydown.
/absolute simplify — quality of code you're *currently changing*./absolute prune — many unused-var/import warnings vanish once dead code is pruned./absolute work — if clearing the debt needs real refactoring, hand off.Use when receiving code review feedback, before implementing suggestions, especially if feedback seems unclear or technically questionable - requires technical rigor and verification, not performative agreement or blind implementation
Use when completing tasks, implementing major features, or before merging to verify work meets requirements
Execute git commit with conventional commit message analysis, intelligent staging, and message generation. Use when user asks to commit changes, create a git commit, or mentions "/commit". Supports: (1) Auto-detecting type and scope from changes, (2) Generating conventional commit messages from diff, (3) Interactive commit with optional type/scope/description overrides, (4) Intelligent file staging for logical grouping
Comprehensive GitHub code review with AI-powered swarm coordination
Behavioral guidelines to reduce common LLM coding mistakes. Use when writing, reviewing, or refactoring code to avoid overcomplication, make surgical changes, surface assumptions, and define verifiable success criteria.
Use this skill to review code. It supports both local changes (staged or working tree) and remote Pull Requests (by ID or URL). It focuses on correctness, maintainability, and adherence to project standards.
Refactor bloated AGENTS.md, CLAUDE.md, or similar agent instruction files to follow progressive disclosure principles. Splits monolithic files into organized, linked documentation.
Create high-quality git commits: review/stage intended changes, split into logical commits, and write clear commit messages (including Conventional Commits). Use when the user asks to commit, craft a commit message, stage changes, or split work into multiple commits.
Take maddhruv/absolute-debt from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.