karpathy-guidelines
Skill0 starsChanged 4 months agoMITView on GitHub
Use when writing, reviewing, or refactoring any code, before the first edit — guards against hidden assumptions, overcomplication, non-surgical diffs, silent error swallowing, comment noise, and vague success criteria. Not for pure research or explaining concepts.
126 other projects use a version of this, 92 of them edited.
Adopted by
Most recently taken up by
- Markssuave/Markssuave-Agent-skillsedited, first seen Nov 8, 2026
- mujtbabbas/andrej-karpathy-skillsedited, first seen Nov 8, 2026
- afawfawffaf/my-skillsedited, first seen Nov 8, 2026
- hamzzaqureshi/gravidextheir own version, first seen Nov 8, 2026
- lemonAlpha23/claude_code_toolboxedited, first seen Nov 8, 2026
- mel0nyrame/skillstheir own version, first seen Nov 8, 2026
Used with
Projects with it also use huashu-design, github-cli and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
XIYBHKSkillhuashu-design
花叔Design(Huashu-Design)——用HTML做高保真原型、交互Demo、幻灯片、动画、设计变体探索+设计方向顾问+专家评审的一体化设计能力。HTML是工具不是媒介,根据任务embody不同专家(UX设计师/动画师/幻灯片设计师/原型师),避免web design tropes。触发词:做原型、设计Demo、交互原型、HTML演示、动画Demo、设计变体、hi-fi设计、UI mockup、prototype、设计探索、做个HTML页面、做个可视化、app原型、iOS原型、移动应用mockup、导出MP4、导出GIF、60fps视频、设计风格、设计方向、设计哲学、配色方案、视觉风格、推荐风格、选个风格、做个好看的、评审、好不好看、review this design。**主干能力**:Junior Designer工作流(先给假设+reasoning+placeholder再迭代)、反AI slop清单、React+Babel最佳实践、Tweaks变体切换、Speaker Notes演示、Starter Components(幻灯片外壳/变体画布/动画引擎/设备边框)、App原型专属守则(默认从Wikimedia/Met/Unsplash取真图、每台iPhone包AppPhone状态管理器可交互、交付前跑Playwright点击测试)、Playwright验证、HTML动画→MP4/GIF视频导出(25fps基础 + 60fps插帧 + palette优化GIF + 6首场景化BGM + 自动fade)。**需求模糊时的Fallback**:设计方向顾问模式——从5流派×20种设计哲学(Pentagram信息建筑/Field.io运动诗学/Kenya Hara东方极简/Sagmeister实验先锋等)推荐3个差异化方向,展示24个预制showcase(8场景×3风格),并行生成3个视觉Demo让用户选。**交付后可选**:专家级5维度评审(哲学一致性/视觉层级/细节执行/功能性/创新性各打10分+修复清单)。
Also in 3 projects that use this
rogue-dev-studioSkillgithub-cli
GitHub CLI authentication and workflow configuration. Use when the project needs this capability or the user / team manifest asks for it. Use for specialized `github-cli` work when listed in TEAM.yaml or explicitly requested.
Also in 3 projects that use this
seikaikyoSkillbanner-design
Design banners for social media, ads, website heroes, creative assets, and print. Multiple art direction options with optional generated or supplied visuals. Actions: design, create, generate banner. Platforms: Facebook, Twitter/X, LinkedIn, YouTube, Instagram, Google Display, website hero, print. Styles: minimalist, gradient, bold typography, photo-based, illustrated, geometric, retro, glassmorphism, 3D, neon, duotone, editorial, collage.
Also in 4 projects that use this
OpenAISkillusing-superpowers
Use when starting any conversation - establishes how to find and use skills, requiring skill invocation before ANY response including clarifying questions
Also in 9 projects that use this
GoogleSkillponytail
Forces the laziest solution that actually works, simplest, shortest, most minimal. Channels a senior dev who has seen everything: question whether the task needs to exist at all (YAGNI), reach for the standard library before custom code, native platform features before dependencies, one line before fifty. Supports intensity levels: lite, full (default), ultra. Use on ANY coding task: writing, adding, refactoring, fixing, reviewing, or designing code, and choosing libraries or dependencies. Also use whenever the user says "ponytail", "be lazy", "lazy mode", "simplest solution", "minimal solution", "yagni", "do less", or "shortest path", or complains about over-engineering, bloat, boilerplate, or unnecessary dependencies. Do NOT use for non-coding requests (general knowledge, prose, translation, summaries, recipes).
Also in 9 projects that use this
LLl0k0laDSkillidea-refine
Refine ideas through structured divergent and convergent thinking. Use "idea-refine" or "ideate" to trigger.
Also in 4 projects that use this
Other versions126 projects use a version of this.
Word for word · 0
None found.
Edited · 92
- forrestchang/andrej-karpathy-skills★ 217k12% same
- multica-ai/andrej-karpathy-skills★ 214k12% same
- ghostfolio/ghostfolio★ 9.7k12% same
- OpenBMB/PilotDeck★ 5k12% same
- didi/mpx★ 4k12% same
- hzm0321/real-time-fund★ 1.8k12% same
- x-tools-author/x-tools★ 1.1k12% same
- mxyhi/ok-skills★ 51112% same
- vtroisWhite/andrej-karpathy-skills★ 42612% same
- Y80/bmm★ 34412% same
82 more not listed
Wrote their own version · 34
- coco-research/coco★ 797same name
- BurukalaManiReethika/Karpathy-Inspired-Claude-Code-Guidelines★ 36same name
- interfluve-wav/andrej-karpathy-skills-hermes★ 27same name
- tev6/andrej-karpathy-skills-zhCN★ 17same name
- Fadi88/one-man-startup★ 16same name
- vredin/vredin-CC-Harness★ 9same name
- Sspacegray/andrej-karpathy-skills-codex★ 8same name
- Akindu23/my-agent-skills★ 4same name
- dagonet/claude-code-toolkit★ 4same name
- richling98/karpathy-codex-skills★ 4same name
24 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository9 other files it gives its agents.
- adversarial-verifySkill
- agent-fanoutSkill
- compounding-engineeringSkill
- deployment-checkSkill
- goal-contractSkill
- recon-firstSkill
- two-strike-debugSkill
- universal-loopSkill
- writing-claude-mdSkill
The file
We split this skill into the rules it gives an agent
6 rules. 1 is common, 4 are distinctive, and 1 is very specific to this project.
1
Common
Most of the 122 edited versions we read keep these.
4
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 27
Ask the user only when a genuine decision is theirs to make.
- Distinctive: line 35
Do the simplest thing that works well.
- Distinctive: line 46
Write changes that read like the surrounding code — match its comment density, naming, and idiom.
- Distinctive: line 77
When delegating to haiku-tier models (the smallest/cheapest tier, e.g.
- Common: line 85
No features beyond what was asked.
- Very specific: line 91
Don't "improve" adjacent code, comments, or formatting.
“Common” is measured: kept by at least 6 in 10 of the 122 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Karpathy Guidelines (v2)
Triggers automatically when relevant; invoke directly with /karpathy-guidelines or ask, e.g. "review this code against the guidelines".
Behavioral guidelines against common LLM coding failure modes, derived from Andrej Karpathy's observations.
Rules are stated at judgment level with a reason attached — current models generalize from the explanation better than from enumerated prohibitions. The appendix keeps the prescriptive form for weak-model delegation.
1. Think before coding
Name your assumptions and open questions before implementing. Where several readings of the request exist, present them and recommend one; where a simpler approach would serve better, say so — silent compliance hides better options. Ask the user only when a genuine decision is theirs to make; otherwise state your interpretation and proceed.
Why: hidden assumptions are where wrong implementations start, and surfacing one costs a sentence.
2. Simplicity first
Do the simplest thing that works well. Scale the code to the problem as it exists today — features, abstractions, and configurability earn their place when the request needs them. Change code directly rather than adding flags or compatibility shims around it. Comments say what the code cannot: constraints, invariants, non-obvious whys.
Why: every speculative branch is code someone must read, test, and maintain against a need that may never arrive.
3. Surgical changes
Write changes that read like the surrounding code — match its comment density, naming, and idiom. Every changed line traces to the request; adjacent code stays as found (mention what you noticed, so the user decides). Clean up the orphans your own change created: imports, variables, functions now unused.
Why: reviewers audit the diff; unrelated churn hides the real change and widens the blast radius.
4. Verifiable goals
Turn the task into a runnable check before starting — "fix the bug" becomes a test that reproduces it. Report completion against tool results from this session (exit codes, test output, screenshots), and say plainly when something is not yet verified.
Why: a stated check lets you work independently, and evidence-grounded claims are what make "done" trustworthy.
5. Let errors surface
Handle an error where you can do something meaningful with it — a retry, a fallback the user asked for, an actionable message. Everywhere else let it fail near its cause, loudly; in unattended jobs a non-zero exit beats running on values nobody chose.
Why: a swallowed error is a bug with a delay — that is how failures go unnoticed for months.
Appendix — v1 prescriptive form, for weak-model delegation
When delegating to haiku-tier models (the smallest/cheapest tier, e.g. Haiku 4.5, typically run as subagents), include the relevant rules below verbatim in the delegation prompt. On frontier models the judgment form above is enough; benchmarks showed no gain from the explicit form there, and on Sonnet it added refusal bias.
- State assumptions explicitly; if uncertain, ask. If multiple interpretations exist, present them — don't pick silently.
- No features beyond what was asked. No abstractions for single-use code. No speculative "flexibility" or "configurability". No error handling for impossible scenarios. If 200 lines could be 50, rewrite.
- Comments only for what the code cannot say — constraints, invariants, non-obvious whys. No narration, no notes to the reviewer, no docstrings on trivial functions.
- Don't "improve" adjacent code, comments, or formatting. Match existing style. Mention unrelated dead code — don't delete it. Remove imports/variables/functions that your changes made unused.
- Define success criteria before starting; loop until verified. Every changed line must trace to the request.
- try/except only where the error is handled meaningfully (retry, requested fallback, actionable message); otherwise let it crash near its cause. Never catch-and-continue with a default that masks a real failure.
Related skills
- universal-loop — the execute-verify iteration engine for §4.
- compounding-engineering — process-level discipline across sessions; these guidelines are code-level.
- writing-claude-md — the same Claude 5 encoding principles applied to instruction files.
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.

