Skip to content
Back to skills

Monolean Minimal Change

ASecurity

Use when implementing or refactoring and you want the smallest change that works: question the need, reuse existing code, prefer stdlib, fix at the root. A decision ladder against over-engineering and new dependencies.

  • 21 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 22, 2026
ai-agentsrefactoringgit

Works with

  • cli

Security analysis

A100/100

Scanned September 28, 2026

npx -y skills add monoes/monomind --skill monolean-minimal-change --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Monolean Minimal Change?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Monolean Minimal Change
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/monoes-monolean-minimal-change/badge)](https://www.skillsdirectory.com/skills/monoes-monolean-minimal-change)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: monolean-minimal-change
description: "Use when implementing or refactoring and you want the smallest change that works: question the need, reuse existing code, prefer stdlib, fix at the root. A decision ladder against over-engineering and new dependencies."
tags: ["engineering","monomind","refactor"]
tools: []
license: MIT
source: https://github.com/monoes/monomind
source_path: ".claude/skills/monolean"
---
# Monolean — minimal change

Lazy means efficient, not careless. The best code is the code never written.
Understand the task and the code it touches first; then climb the ladder and
stop at the first rung that holds.

## The ladder

1. **Does this need to exist at all?** Speculative need → skip it and say so
   in one line of your report.
2. **Already in this codebase?** Reuse the helper, type or pattern that lives
   a few files over. Look before you write.
3. **Standard library does it?** Use it.
4. **Native platform feature covers it?** CSS over JS, a DB constraint over
   app code, `<input type="date">` over a picker library.
5. **Already-installed dependency solves it?** Use it. Never add a dependency
   for what a few lines can do.
6. **Can it be one line?** One line.
7. **Only then:** the minimum code that works.

## Bug fixes

A report names a symptom. Before editing, find every caller of the function
you are about to touch. One guard in the shared function is a smaller diff
than a guard in every caller — and it fixes the sibling paths the ticket
didn't mention.

## Rules

- No abstraction with one implementation, no factory for one product, no
  config for a value that never changes, no scaffolding "for later".
- Deletion over addition. Boring over clever. Fewest files possible.
- The smallest change in the wrong place is not lean — it is a second bug.
- Two options the same size? Take the one correct on edge cases.
- Mark a deliberate shortcut with a comment naming its ceiling and upgrade
  path: `// monolean: global lock, per-account locks if throughput matters`.

## Handoff

Report the change, then at most three short lines: what you skipped and when
it would be worth adding.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.