Pre-implementation gate covering think-first, simplicity, surgical edits, and verifiable goals. Use when starting implementation to verify the approach.
npx skills add https://github.com/athola/claude-night-market --skill karpathy-principles
> 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.
done
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.**
list them. Do not silently pick.
when the simpler path is correct.
assumptions are the cheapest bug to prevent and the
most expensive to find later.
Calibrated tone beats confident hand-waving.
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)
requested
it
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 appenda 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-fileENTRY TEMPLATE; assign the next TR-NNN id.
**Touch only what you must. Clean up only your own
mess.**
formatting
differently
not delete it
remove the orphans you created. Pre-existing dead
code stays unless asked.
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:
pass"
then make it pass"
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 railswith before/after diffs
modules/senior-engineer-test.md - thethree-question self-check battery
modules/verifiable-goals.md - vague-to-verifiablereformulation template with worked examples
modules/tradeoff-acknowledgment.md - when the fourprinciples do not apply
references/source-attribution.md - Karpathyprimary citation, Forrest Chang derivation, license,
adjacent prior art
Skill(imbue:scope-guard) - worthiness formula andbranch budgets
Skill(imbue:proof-of-work) - Iron Law TDD gateSkill(imbue:rigorous-reasoning) - sycophancy andhidden-assumption guard
Skill(imbue:justify) - additive-bias diff auditSkill(leyline:additive-bias-defense) - burden ofproof on every addition
Skill(conserve:code-quality-principles) - KISS,YAGNI, SOLID
Skill(superpowers:test-driven-development) -RED-GREEN-REFACTOR
Skill(superpowers:brainstorming) - generateoptions before committing
docs/quality-gates.md#skill-level-quality-gate-compositionfor 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 4satisfied
concrete artifact (assumption list, scope rationale,
diff trace, verification plan).
the implementation begins.
recorded to docs/tradeoffs.md (or the in-file
template) when real alternatives were weighed.
Integration with protocols.io API for managing scientific protocols. This skill should be used when working with protocols.io to search, create, update, or publish protocols; manage protocol steps and materials; handle discussions and comments; organize workspaces; upload and manage files; or integrate protocols.io functionality into workflows. Applicable for protocol discovery, collaborative protocol development, experiment tracking, lab protocol management, and scientific documentation.
Analyzes job descriptions and generates tailored resumes that highlight relevant experience, skills, and achievements to maximize interview chances
Generate Excalidraw diagrams from natural language descriptions. Use when asked to "create a diagram", "make a flowchart", "visualize a process", "draw a system architecture", "create a mind map", or "generate an Excalidraw file". Supports flowcharts, relationship diagrams, mind maps, and system architecture diagrams. Outputs .excalidraw JSON files that can be opened directly in Excalidraw.
Build and distribute Expo development clients locally or via TestFlight
Use when you have a written implementation plan to execute in a separate session with review checkpoints
Data structure for annotated matrices in single-cell analysis. Use when working with .h5ad files or integrating with the scverse ecosystem. This is the data format skill—for analysis workflows use scanpy; for probabilistic models use scvi-tools; for population-scale queries use cellxgene-census.
Benchling R&D platform integration. Access registry (DNA, proteins), inventory, ELN entries, workflows via API, build Benchling Apps, query Data Warehouse, for lab data management automation.
Comprehensive molecular biology toolkit. Use for sequence manipulation, file parsing (FASTA/GenBank/PDB), phylogenetics, and programmatic NCBI/PubMed access (Bio.Entrez). Best for batch processing, custom bioinformatics pipelines, BLAST automation. For quick lookups use gget; for multi-service integration use bioservices.
Take athola/karpathy-principles from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.