zero-techdebt
Skill8 starsChanged 6 months agoMITView on GitHub
Review code changes for avoidable tech debt through function scope, naming, and file organization. Use when the user wants to know whether a change fits the existing codebase, introduces shallow abstractions, uses misleading names, or places code in the wrong module or directory.
In this repository12 other files it gives its agents.
- create-issueSkill
- dumb-it-downSkill
- falsify-projectSkill
- from-issueSkill
- github-repo-hygieneSkill
- new-featureSkill
- overengineering-reviewSkill
- project-doc-scaffolderSkill
- system-diagrammerSkill
- test-writerSkill
- to-adrSkill
- verify-projectSkill
The file
We split this skill into the rules it gives an agent
8 rules. About 0 are common, 8 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈8
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 10
Use this skill to review whether code changes fit the codebase without adding avoidable tech debt.
- Distinctive: line 19
Prefer repo conventions over generic style preferences.
- Distinctive: line 51
Prefer names that describe the domain behavior and match existing project vocabulary.
- Distinctive: line 88
Do not propose broad refactors unrelated to the diff.
- Distinctive: line 89
Do not rename for taste; tie naming feedback to behavior, caller clarity, or repo convention.
- Distinctive: line 90
Do not flag a pattern as wrong until checking sibling code.
- Distinctive: line 91
Do not treat a single-file directory as automatically wrong.
- Distinctive: line 92
If there are no actionable issues, say that directly and note any residual risk.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Zero Tech Debt
Use this skill to review whether code changes fit the codebase without adding avoidable tech debt.
This is a review skill. Lead with concrete findings, not praise or a summary.
Workflow
- Gather context.
- Inspect the diff, nearby files, exports, immediate callers, and sibling modules.
- Identify the local naming, file, directory, and module patterns before judging the change.
- Prefer repo conventions over generic style preferences.
- Review through three lenses.
- Function scope and module boundaries.
- Naming.
- File and directory organization.
- Report only actionable findings.
- Prioritize issues that would make future changes harder, hide bugs, or confuse callers.
- Include file and line references when possible.
- Suggest the smallest correction that restores fit with the codebase.
Lens 1: Function Scope And Boundaries
Look for:
- Functions or modules mixing unrelated responsibilities.
- Shallow wrappers that only rename or forward another call without adding leverage.
- Abstractions at the wrong level: too broad, too narrow, or leaking implementation details.
- Logic extracted only to make a test easy while the real behavior remains scattered across callers.
- Modules that require callers to know too many invariants, ordering rules, or config details.
Useful question: if this function or module were deleted, would complexity disappear, concentrate in a better place, or spread across callers?
Lens 2: Naming
Look for:
- Function names that do not describe the actual behavior.
- Names that expose incidental implementation details.
- File names that do not match sibling naming patterns.
- Generic names such as
utils,helpers,manager, orservicewhen the code has a clearer domain name available. - Re-exports that make ownership or import paths ambiguous.
Prefer names that describe the domain behavior and match existing project vocabulary.
Lens 3: File And Directory Organization
Look for:
- A directory created for a single file with no clear reason to grow.
- Code placed by technical type instead of the surrounding repo's domain or feature pattern.
- Files that group unrelated concerns because they happened to change together.
- Shared utilities moved too far from their only caller.
- New folders that bypass existing package, route, or module conventions.
Good placement should make the next related change obvious.
Output Format
## Findings
1. Severity - Title
- File:
- Lens:
- Problem:
- Why it matters:
- Suggested change:
## Open Questions
- Question, if any.
## What Fits Well
- Optional, brief notes for decisions that should stay.Guardrails
- Do not propose broad refactors unrelated to the diff.
- Do not rename for taste; tie naming feedback to behavior, caller clarity, or repo convention.
- Do not flag a pattern as wrong until checking sibling code.
- Do not treat a single-file directory as automatically wrong; it is a prompt to ask whether the directory earns its keep.
- If there are no actionable issues, say that directly and note any residual risk.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

