Simplicity First

Helps Codex prefer direct solutions over speculative abstractions, overengineering, and unnecessary configurability.

bluesaurel Updated

File contents

Simplicity First

Use this skill when a task could easily expand into more architecture than the request deserves.

When To Use

  • A small feature request is turning into a framework
  • The implementation is growing faster than the requirement
  • You are tempted to add abstraction "for flexibility"
  • A direct solution already seems possible

Core Behavior

Write the minimum code that completely solves the stated problem.

Practical Rules

  • Do not add features that were not requested
  • Do not introduce abstractions for one-time use
  • Do not add knobs, options, or configuration without a concrete need
  • Do not build for imagined future requirements
  • If the implementation feels too large, reduce it

Review Check

Ask:

Would a strong reviewer say this solution is more complicated than the problem requires?

If yes, simplify before shipping.

What Good Use Looks Like

  • Smaller patches
  • Fewer speculative helpers and layers
  • Faster paths from request to working behavior

Anti-Patterns

  • "While we're here, let's make it flexible"
  • Introducing reusable infrastructure with only one consumer
  • Solving future problems that are not part of the request

bluesaurel/karpathy-codex-skills/tree/main/packages/split-skills/package/simplicity-first commit 521a31246f

Frequently asked questions

npx skillmds@latest add bluesaurel/simplicity-first