Skip to content
cccskills
FreePublished on GitHub

karpathy-guidelines

Behavioral guardrails for implementation work. Reduces common LLM coding mistakes: overcomplication, silent assumption-picking, scope drift, and unverifiable success criteria. Load on Builder and software-engineer-mode.

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md2.9 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Karpathy Guidelines

Behavioral guardrails to reduce common LLM coding mistakes, adapted from Andrej Karpathy's observations on LLM coding pitfalls.

Original source: karpathy-guidelines — MIT License — Andrej Karpathy.

Tradeoff: These guidelines bias toward caution over speed. For trivial tasks, use judgment.


1. Think Before Coding

Don't assume. Don't hide confusion. Surface tradeoffs.

Before implementing:

  • State assumptions explicitly. If uncertain, ask.
  • If multiple interpretations exist, present them — don't pick silently.
  • If a simpler approach exists, say so. Push back when warranted.
  • If something is unclear, stop. Name what's confusing. Ask the team lead.

2. Simplicity First

Minimum code that solves the problem. Nothing speculative.

  • No features beyond what the ticket asks for.
  • No abstractions for single-use code.
  • No "flexibility" or "configurability" that wasn't requested.
  • No error handling for impossible scenarios.
  • If you write 200 lines and it could be 50, rewrite it.

Ask: "Would a senior engineer say this is overcomplicated?" If yes, simplify.


3. Surgical Changes

Touch only what you must. Clean up only your own mess.

When editing existing code:

  • Don't "improve" adjacent code, comments, or formatting.
  • Don't refactor things that aren't broken.
  • Match existing style, even if you'd do it differently.
  • If you notice unrelated dead code, mention it to the team lead — don't delete it.

When your changes create orphans:

  • Remove imports, variables, or functions that your changes made unused.
  • Don't remove pre-existing dead code unless the ticket asks for it.

The test: every changed line should trace directly to the ticket's acceptance criteria.


4. Goal-Driven Execution

Define success criteria. Loop until verified.

Transform tasks into verifiable goals before starting:

  • "Add validation" → "Write tests for invalid inputs, then make them pass"
  • "Fix the bug" → "Write a test that reproduces it, then make it pass"
  • "Refactor X" → "Ensure tests pass before and after"

For multi-step tasks, state a brief plan:

1. [Step] → verify: [check]
2. [Step] → verify: [check]
3. [Step] → verify: [check]

Strong success criteria let the agent loop independently. Weak criteria ("make it work") require constant clarification and stall delivery.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Universal guardrails loaded by every agent. Defines Verify Before Reporting (VBR), Write-Ahead Log (WAL), and the security baseline. Always-on, role-independent.

The English summary is being prepared. Showing the original description.

Agistra/agistra.dev5Updated Oct 14, 2026

Use when: architecture mode, architect this, ADR, C4, PlantUML, system boundary, design decision, PRD gap, high ambiguity, multiple technical approaches, security architecture, data architecture, integration risk, implementability gap, story ticket, or epic ticket.

The English summary is being prepared. Showing the original description.

Agistra/agistra.dev5Updated Oct 14, 2026

Use when: assumptions audit, audit assumptions, check for hidden assumptions, plan/ticket has ambiguous scope edges, pre-flight before finalizing a ticket, unstated assumptions, or 'what am I assuming'. Surfaces unstated assumptions, ambiguous scope edges, and untested preconditions in a finished plan/ticket/ADR before it is handed to Builder. Optional pass — Architect judges when to apply it; not a mandatory gate on every ticket.

The English summary is being prepared. Showing the original description.

Agistra/agistra.dev5Updated Oct 14, 2026

Use when: Tester needs UI state evidence for VBR, or Builder needs to verify an integration wire is observable end-to-end. Powered by agent-browser MCP — token-efficient browser automation (200–400 tokens/page).

The English summary is being prepared. Showing the original description.

Agistra/agistra.dev5Updated Oct 14, 2026

Use when drafting a bug or defect ticket, reviewing one someone else wrote, or deciding whether a reported problem is ready to file. Keeps what the reporter actually saw separate from what the agent later found out, so a reader can tell which lines are testimony and which are collected proof. Trigger phrases: 'file a bug', 'write up this defect', 'triage this report', 'is this ticket ready to file', 'what did the reporter actually see'.

The English summary is being prepared. Showing the original description.

Agistra/agistra.dev5Updated Oct 14, 2026

Conducts multi-axis code review. Use before merging any change. Use when reviewing code written by yourself, another agent, or a human. Use when you need to assess code quality across multiple dimensions before it enters the main branch.

The English summary is being prepared. Showing the original description.

Agistra/agistra.dev5Updated Oct 14, 2026

See all skills by Agistra

Report a problem with this skill