plugins/imbue/skills/karpathy-principles/SKILL.md
Pre-implementation gate covering think-first, simplicity, surgical edits, and verifiable goals. Use when starting implementation to verify the approach.
npx skillsauth add athola/claude-night-market karpathy-principlesInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
The models make wrong assumptions on your behalf and just run along with them without checking. They don't manage their confusion, don't seek clarifications, don't surface inconsistencies, don't present tradeoffs, don't push back when they should.
(Andrej Karpathy, on agentic coding failure modes)
A four-principle contract for reducing the most common LLM coding pitfalls. Compact entry-point. Each principle has a deeper-dive skill in night-market; this skill is the index, not the encyclopedia.
Derivation: distilled by Forrest Chang
(forrestchang/andrej-karpathy-skills, MIT) from
Karpathy's observations. Full attribution in
references/source-attribution.md.
These principles bias toward caution over speed. For
cases listed in modules/tradeoff-acknowledgment.md,
use judgment: trivial fixes, exploratory spikes,
documentation-only edits, and time-boxed prototypes.
State assumptions. Surface confusion. Match tone to evidence.
Deep dives: Skill(imbue:rigorous-reasoning) for the
sycophancy guard, Skill(superpowers:brainstorming)
for option generation, /spec-kit:speckit-clarify
command for ambiguity drilldown.
Minimum code that solves the problem. Nothing speculative.
They really like to overcomplicate code and APIs, bloat abstractions.
(Andrej Karpathy, on the same agentic-coding thread)
Self-check: would a senior engineer say this is
overcomplicated? See modules/senior-engineer-test.md.
Deep dives: Skill(imbue:scope-guard) for the
worthiness formula and branch budgets,
Skill(leyline:additive-bias-defense) for burden of
proof on every addition,
Skill(conserve:code-quality-principles) for the
KISS / YAGNI / SOLID foundation.
When this step settles a decision with real alternatives, record it to
docs/tradeoffs.md while the reasoning is live (draft and confirm):
Skill(leyline:decision-journal) and append
a tradeoff entry (the decision, the options weighed, and what was
sacrificed; set phase to plan). Show the draft; append on
confirmation.docs/tradeoffs.md using the in-file
ENTRY TEMPLATE; assign the next TR-NNN id.Touch only what you must. Clean up only your own mess.
The trace-back test: every changed line should trace directly to the user's request.
Deep dives: Skill(imbue:justify) for additive-bias
audits on diffs, Skill(leyline:additive-bias-defense)
for the burden-of-proof contract, the
bounded-discovery.md rule for read-budget caps.
Define verifiable success criteria. Loop until verified.
Transform vague tasks into checkable goals:
For multi-step tasks, state a brief plan with verification per step. Strong success criteria let you loop independently. Weak criteria require constant clarification.
See modules/verifiable-goals.md for the full
reformulation template.
Deep dives: Skill(imbue:proof-of-work) for the Iron
Law (no implementation without a failing test first),
Skill(superpowers:test-driven-development) for the
RED-GREEN-REFACTOR loop.
Before you ship, four questions:
| Principle | Question | |-----------|----------| | Think Before Coding | Did I list assumptions, or did I guess silently? | | Simplicity First | Would a senior engineer call this overcomplicated? | | Surgical Changes | Does every changed line trace to the request? | | Goal-Driven Execution | Can I prove this is done with a check, not a feeling? |
Four "yes" answers means ship. Anything else means iterate.
modules/anti-patterns.md - eight named drift rails
with before/after diffsmodules/senior-engineer-test.md - the
three-question self-check batterymodules/verifiable-goals.md - vague-to-verifiable
reformulation template with worked examplesmodules/tradeoff-acknowledgment.md - when the four
principles do not applyreferences/source-attribution.md - Karpathy
primary citation, Forrest Chang derivation, license,
adjacent prior artSkill(imbue:scope-guard) - worthiness formula and
branch budgetsSkill(imbue:proof-of-work) - Iron Law TDD gateSkill(imbue:rigorous-reasoning) - sycophancy and
hidden-assumption guardSkill(imbue:justify) - additive-bias diff auditSkill(leyline:additive-bias-defense) - burden of
proof on every additionSkill(conserve:code-quality-principles) - KISS,
YAGNI, SOLIDSkill(superpowers:test-driven-development) -
RED-GREEN-REFACTORSkill(superpowers:brainstorming) - generate
options before committingdocs/quality-gates.md#skill-level-quality-gate-composition
for the full gate-skill federation graph (this skill
is the synthesis hub)When invoked as a pre-flight gate, create:
karpathy:assumptions-listed - principle 1 satisfiedkarpathy:simplicity-checked - principle 2 satisfiedkarpathy:trace-back-verified - principle 3 satisfiedkarpathy:success-criteria-defined - principle 4
satisfieddocs/tradeoffs.md (or the in-file
template) when real alternatives were weighed.research
Generate diverse solution candidates with category-spanning ideation methods and rotation. Use when stuck on a design or fighting repetitive LLM output.
tools
--- name: validate-pr description: Use when you need a diff-derived test plan for a PR: reads the diff, groups changes by area, runs targeted verifications, and proves revert-tests are genuine guards, not dead assertions. alwaysApply: false category: validation tags: - pr - validation - test-plan - diff - revert-test - evidence tools: [] usage_patterns: - diff-derived-test-plan - revert-test-quality-check - evidence-capture complexity: intermediate model_hint: standard estimated_tokens: 650
development
Contract for the project decision journal (tradeoffs and lessons-learned logs). Use when recording a decision, tradeoff, or lesson, or building a consumer hook.
development
Ramps implementation ambition a notch only after the prior increment is understood. Use when building a feature you must understand, not just ship.