Zero Tech Debt

SkillDev tools

Zero Tech Debt guides your AI to rebuild a feature as if the correct architecture had existed from day one. Instead of patching around old code, it removes compatibility workarounds, dead abstractions, and leftover compromises. It is a methodology only, so nothing destructive happens without your approval.

Use Zero Tech Debt in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add Zero Tech Debt and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use the Zero Tech Debt skill

Details

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

After adding it, pick a feature you want rebuilt and tell your AI what the clean version should look like. Review and approve each removal before it happens.

Zero Tech DebtStart free

What your AI can do with it

  • Rebuild a feature as if it had been designed correctly from the start
  • Remove compatibility workarounds and leftover code
  • Strip out dead abstractions and unused structures
  • Drop historical compromises instead of preserving them
  • Ask for your approval before any destructive change

What this skill tells your AI

The instructions your AI receives, as published by darkroomengineering/cc-settings in skills/zero-tech-debt/SKILL.md and read by Ahel’s review.

Rework the change from the intended end-state, not from the historical path that produced the current patch. The principles (no compat hacks, no abstractions you don't need, no dead branches) are in AGENTS.md — this skill is the workflow for applying them to a specific patch.

When to invoke

  • A feature has accreted mode props, route aliases, or fallbacks across iterations
  • A migration left behind a compatibility shim that no current caller uses
  • You catch yourself preserving an old shape "just in case" with no concrete caller in mind
  • The diff is bigger than the change it represents because it's making the old structure better instead of removing it

For restructuring code outside the current diff use /refactor. This skill is for the patch in front of you. (Claude Code 2.1.147 renamed /simplify to /code-review and removed the old cleanup-and-fix behavior; the native command is now a correctness reporter, not a code tightener.)

Steps

  1. State the intended end-state. One or two sentences. If you can't name it, stop and ask the user — you'll otherwise optimize toward the current shape.
  2. Search for real callers before preserving compatibility. For each mode prop, route alias, fallback branch, or wrapper: grep for current callers. No caller → delete it, don't improve it.
  3. Reshape around the final product surface. Prefer one clear component or flow over mode flags. Split only when there's an obvious boundary — state, layout, controls, or domain commands.
  4. Move shared rules to one place. Feature flags, permissions, route gating, URL state, and command naming should not be duplicated across pages or hidden inside view components.
  5. Verify the intended flow. Test the new behavior and any deleted assumptions that affect navigation, permissions, or persisted state.

Rules

  • Optimize for the code that should exist, not the smallest diff from the old shape.
  • Delete dead compatibility paths instead of making them better.
  • Don't invent a generic framework for one feature.
  • Keep the rework scoped to what makes the final shape coherent — don't drag in unrelated cleanup.
  • Prefer names that describe product intent over implementation history (AdminDashboard over LegacyDashboardV2).

Signals

GitHub stars
47
Forks
4
Last commit
Oct 2026
Advanced
Item type
skill
Key
zero-tech-debt
Source
github.com/darkroomengineering/cc-settings