MCPInstall

autoresearch

Run Karpathy-style autonomous ML search on a real training repo: choose the right mode (setup, program.md, bounded loop, results interpretation, or constrained-hardware adaptation), preserve the immutable prepare.py / 300-second / valbpb contract, and route prompt/skill eval work away to LangSmith, Promptfoo, Braintrust, or skill-autoresearch.

Installs
347
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/akillness/jeo-skills --skill autoresearch
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads autoresearch automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

autoresearch

Autoresearch is a closed-loop ML experimentation workflow:

  • human writes program.md
  • agent edits train.py
  • prepare.py stays fixed
  • every run gets the same 300-second budget
  • lower val_bpb wins
  • regressions get reverted

This skill should behave like a routing-first front door, not a giant tutorial. Pick the user's mode, enforce the immutable-harness rules, then hand them to the smallest useful script or reference.

When to use this skill

  • Set up karpathy/autoresearch on a real GPU machine
  • Write or refine program.md before a session
  • Run a bounded overnight train.py search loop
  • Interpret results.tsv after a session
  • Adapt the workflow to tighter VRAM constraints without invalidating comparisons
  • Explain the ML-specific boundary between autoresearch and nearby eval tooling

Do not use this skill when

  • The user wants to optimize a SKILL.md, prompt, or repo-local workflow with frozen prompts/evals — use skill-autoresearch
  • The user wants app-level tracing, dataset-backed LLM evals, feedback review, or observability — use LangSmith, Braintrust, Weave, Promptfoo, or similar tools
  • The job does not involve a real training repo, program.md, train.py, fixed runtime budget, and val_bpb keep/revert ratcheting
  • The user is really asking for a paper survey, general benchmark scan, or literature review with no intention to run the training loop

Core boundary

Concernautoresearch ownsRoute elsewhere
Mutable targettrain.py in a real training repoprompts, app configs, SKILL.md, product behavior
Fixed evaluatorprepare.py, validation shard, TIME_BUDGET=300, chosen MAX_SEQ_LEN / EVAL_TOKENS for the sessionprompt/eval datasets, app scorecards, observability dashboards
Acceptance rulekeep only lower val_bpb; revert ties/regressionshuman review queues, app-level release gates
Main artifactsprogram.md, results.tsv, kept/discarded commitsprompt suites, traces, feedback datasets

If that boundary does not fit, do not stretch this skill.

Required intake packet

Before acting, identify:

  1. Mode — setup, program.md, run loop, results interpretation, or constrained hardware
  2. Repository state — cloned or not, dependencies installed or not
  3. Hardware state — GPU / VRAM / CUDA / MLX / Windows path
  4. Session state — first baseline, active loop, or completed run
  5. Constraint state — target VRAM ceiling, whether prepare.py has already been frozen for this session

Instructions

Step 1: Pick exactly one operating mode

Choose the smallest mode that answers the request:

  1. Setup readiness

    • install uv
    • clone repo
    • sync dependencies
    • verify GPU/CUDA/uv with scripts/check-hardware.sh
    • run the first baseline experiment
  2. program.md authoring

    • write or refine the human research charter
    • record current baseline val_bpb
    • prioritize hypotheses
    • list what has already been tried
    • freeze constraints before the loop starts
  3. Bounded run loop

    • confirm the evaluator is already fixed
    • use train.py as the only mutable search surface
    • run the loop with keep/revert discipline
    • log every experiment to results.tsv
  4. Results interpretation

    • summarize best kept runs
    • identify repeated failures or crash patterns
    • extract what belongs in the next program.md
    • distinguish genuine gains from one-off anomalies
  5. Constrained-hardware adaptation

    • set MAX_SEQ_LEN and EVAL_TOKENS before the session
    • keep them unchanged once the session starts
    • adjust model/search strategy instead of cheating the evaluator mid-run
    • route to community forks when CUDA assumptions do not hold

Do not answer all five modes at once unless the user explicitly asked for a full end-to-end walkthrough.

Step 2: Re-state the immutable harness

Every mode must preserve these rules:

  • program.md is human-authored and read-only during a session
  • train.py is the main mutable search surface
  • prepare.py is read-only once the session starts
  • TIME_BUDGET=300 stays fixed
  • val_bpb is the main keep/revert metric
  • results.tsv is append-only
  • dependency set in pyproject.toml stays locked

If the user wants to change the evaluator, start a new comparison track, not the current session.

Step 3: Execute the chosen mode

Mode A — Setup readiness

Use this path when the repo is not yet runnable.

curl -LsSf https://astral.sh/uv/install.sh | sh
git clone https://github.com/karpathy/autoresearch
cd autoresearch
uv sync
bash scripts/check-hardware.sh
uv run prepare.py
uv run train.py > run.log 2>&1
grep "^val_bpb:\|^peak_vram_mb:" run.log

Success condition: one baseline run completes and prints both val_bpb and peak_vram_mb.

Mode B — program.md authoring

Use this path when the loop exists but direction is weak.

Minimum sections:

  • goal tied to lower val_bpb
  • current baseline val_bpb
  • directions to explore in priority order
  • what has been tried already
  • constraints: TIME_BUDGET=300, no prepare.py mutation, no new packages, VRAM ceiling, one meaningful change per experiment

For fuller templates and update patterns, use references/program-md-guide.md.

Mode C — Bounded run loop

Use this path only after setup and program.md are ready.

Loop contract:

  1. read program.md + current train.py
  2. form one hypothesis
  3. edit train.py
  4. commit
  5. run one 300-second experiment
  6. extract val_bpb
  7. keep if improved, otherwise git reset HEAD~1
  8. append result to results.tsv

Typical commands:

bash scripts/run-experiment.sh
bash scripts/run-loop.sh --max 20 --desc "session-1"

Do not encourage multi-change hero rewrites. Clean ablations matter more than flashy edits.

Mode D — Results interpretation

Use this path after a completed run or checkpoint.

Helpful commands:

bash scripts/show-results.sh --top 10
awk -F'\t' '$4=="keep"' results.tsv | sort -t$'\t' -k2 -n
awk -F'\t' '{print $4}' results.tsv | sort | uniq -c

Summarize only four things: best gains, repeated failures, what should move into What Has Been Tried, and the next narrow experiment family.

Mode E — Constrained-hardware adaptation

Use this path when VRAM, platform, or runtime constraints dominate.

Rules:

  • choose MAX_SEQ_LEN and EVAL_TOKENS before the session
  • never change them mid-session
  • lower model/search ambition before mutating the evaluator
  • prefer route-outs to community forks for Apple Silicon / non-CUDA paths

For concrete values and troubleshooting, use references/hardware-config.md.

Step 4: Route out aggressively when the request is adjacent

Route out when:

  • the user wants to optimize instructions, prompts, or repo-local skills → skill-autoresearch
  • the user wants app-level traces, feedback review, observability, or online/offline eval dashboards → LangSmith / Braintrust / Weave / Promptfoo
  • the user wants general literature synthesis rather than a runnable ML loop → research or survey tooling

Step 5: Keep the heavy detail in support files

Use support files instead of re-explaining everything inline:

  • references/operating-modes-and-route-outs.md — fast routing table, minimal response shape, and handoff logic
  • references/architecture.md — immutability contract, file map, metric rationale
  • references/program-md-guide.md — templates and update rules
  • references/hardware-config.md — VRAM tables and platform troubleshooting
  • scripts/*.sh — runnable setup / loop / reporting helpers

Available scripts

Run from inside the autoresearch repository directory:

ScriptPurposeUsage
setup.shOne-time environment setupbash scripts/setup.sh [--seq-len 512]
run-experiment.shSingle 5-minute experiment + metric extractionbash scripts/run-experiment.sh
run-loop.shAutonomous loop: run → keep/revert → repeatbash scripts/run-loop.sh [--max 20]
show-results.shHuman-readable results.tsv reportbash scripts/show-results.sh [--top 10]
check-hardware.shGPU/CUDA/uv readiness check (JSON output)bash scripts/check-hardware.sh

References

Detailed documentation in references/:

FileContents
references/operating-modes-and-route-outs.mdMode picker, adjacency boundaries, and minimal output contract
references/architecture.mdSystem design, immutability contract, git ratcheting, metric rationale
references/program-md-guide.mdHow to write and update effective program.md directives
references/hardware-config.mdVRAM settings by GPU, memory optimization, platform troubleshooting

Examples

Example 1: First 40GB GPU session

Request: “Help me run Karpathy autoresearch on a 40GB GPU.”

Expected behavior:

  • choose Setup readiness first
  • verify hardware and dependencies
  • run one baseline experiment
  • route to program.md authoring only after the baseline exists

Example 2: User wants to optimize a skill instead

Request: “Can autoresearch help me improve this SKILL.md with binary evals?”

Expected behavior:

  • route out immediately to skill-autoresearch
  • explain that this skill is for real ML training search on train.py

Best practices

  1. Start with the smallest mode that fits — setup, authoring, run loop, interpretation, or hardware adaptation
  2. Baseline before bravado — confirm one successful run before talking about overnight loops
  3. Freeze the evaluator before the session — prepare.py, TIME_BUDGET, MAX_SEQ_LEN, and EVAL_TOKENS must stay comparable
  4. One meaningful experiment at a time — ablations beat mystery bundles
  5. Keep results.tsv append-only — discarded runs are still evidence
  6. Push deep detail into references/scripts — the front door should classify and route, not duplicate every table
  7. Route adjacent jobs away early — prompt/app eval and SKILL.md optimization are different lanes

References

FAQ

What does the autoresearch skill do?

Run Karpathy-style autonomous ML search on a real training repo: choose the right mode (setup, program.md, bounded loop, results interpretation, or constrained-hardware adaptation), preserve the immutable prepare.py / 300-second / valbpb contract, and route prompt/skill eval work away to LangSmith, Promptfoo, Braintrust, or skill-autoresearch.

How do I install autoresearch?

Run npx skills add https://github.com/akillness/jeo-skills --skill autoresearch in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/autoresearch/ (personal) or .claude/skills/autoresearch/ (project).

Which AI agents can use autoresearch?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is autoresearch safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains autoresearch?

It is published by akillness in akillness/jeo-skills. It has 347 recorded installs.

More from akillness/jeo-skills

View all →

rtk

akillness/jeo-skills

Install, initialize, verify, and troubleshoot RTK (Rust Token Killer) for AI coding agents. Use when you need to reduce shell-command token output, confirm that the correct rtk binary is installed, choose between Homebrew, install.sh, or Cargo installation, wire rtk init for Claude Code, Codex, Gemini CLI, Cursor, Copilot, Windsurf, Cline, or OpenCode, or use compact wrappers such as rtk git status, rtk read, rtk grep, rtk test, rtk lint, and rtk gain. Triggers on: rtk, rust token killer, token saver cli, rtk init, rtk gain, codex rtk, gemini rtk, opencode rtk, claude hook token reduction.

Backend & APIs672 installs

graphify

akillness/jeo-skills

Drive Graphify from its CLI to build, refresh, query, export, and serve a durable code/corpus knowledge graph. Use when the user wants .graphify/GRAPHREPORT.md, graph.json, graph.html, graphify update/summary/query/path/explain/tree, change-aware review context, git-hook or watch-based refresh, a stdio MCP graph server, or an install into jeo, jeopi, gjc, opencode, Claude, Codex, or Gemini. Also covers the honest structural fallback when native extraction is empty or misleading. Route simple locate/reference work to codebase-search, narrative knowledge-base work to llm-wiki, and project-memory handoff to opencontext. Triggers on: graphify, graphify update, graphify query, knowledge graph CLI, GRAPHREPORT.md, graph.json, codebase graph, graph refresh, graphify install, graphify serve, review context, affected flows.

data-analysis

akillness/jeo-skills

Analyze datasets to extract insights, identify patterns, and generate reports.

598 installs

code-refactoring

akillness/jeo-skills

Turn a cleanup packet into one behavior-preserving refactor brief. Use when simplifying a messy function/component/service, freezing behavior before touching fragile legacy code, splitting a cleanup-heavy diff into reviewable slices, or planning a repeated migration / codemod without changing intended behavior. Route diagnosis to debugging, review judgment to code-review, validation-program design to testing-strategies, bottleneck-led tuning to performance-optimization, and pure symbol inventory to codebase-search.

technical-writing

akillness/jeo-skills

Write internal technical documentation for engineers and operators: technical specs, architecture docs, ADRs, runbooks, migration plans, and developer-facing implementation guides. Use when the main job is capturing a technical decision, system boundary, operating procedure, or rollout path for builders and maintainers. Triggers on: tech spec, design doc, architecture doc, ADR, runbook, migration guide, implementation guide, rollout doc, operational guide, and internal technical writing. End-user onboarding guides, tutorials, FAQs, and help-center flows belong here too. Route API portals to api-documentation, release notes to changelog-maintenance, decks to presentation-builder, and GTM messaging to marketing-automation.

Docs & Writing544 installs

web-accessibility

akillness/jeo-skills

Routing-first skill for web accessibility remediation and verification. Use when the main job is classifying which accessibility surface is failing — semantics, keyboard/focus, labels/announcements, visual perception/reflow, media alternatives, or routed-app navigation feedback — and turning vague audit, WCAG, axe/Lighthouse, or "make this accessible" requests into one concrete remediation packet. Broad UI critique for hierarchy, polish, and launch readiness belongs here too. Route component API architecture and system governance to design-system, and responsive layout strategy to responsive-design.

Frontend & Design531 installs

Popular ai & agents skills

View category →

google-agents-cli-publish

google/agents-cli

This skill should be used when the user wants to "publish an agent", "publish my ADK agent", "register an agent with Gemini", "publish to Gemini" (formerly Gemini Enterprise), or needs guidance on the agents-cli publish gemini command. Also use when the user wants to "manage agents in Agent Registry", "list/update/delete registered agents", or "register an MCP server". Covers ADK vs A2A registration modes, programmatic and interactive usage, flag reference, auto-detection from deployment metadata, Agent Registry fleet management, and troubleshooting. Part of the agents-cli skills suite. Do NOT use for deployment (use google-agents-cli-deploy).

AI & Agents513.9K installs

google-agents-cli-eval

google/agents-cli

This skill should be used when the user wants to "run an evaluation", "evaluate my agent", "evaluate my ADK agent", "write an eval dataset", "analyze eval failures", "compare eval results", "optimize agent", or needs guidance on the Gemini platform eval methodology and the Quality Flywheel. Covers eval metrics, dataset schema, LLM-as-judge scoring, and common failure causes. Applies to any agents-cli project, whatever framework the agent is written in. Do NOT use for agent API code patterns (ADK: use google-agents-cli-adk-code), deployment (use google-agents-cli-deploy), or project scaffolding (use google-agents-cli-scaffold).

AI & Agents513.5K installs

skill-creator

anthropics/skills

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.

OfficialAI & Agents416.4K installs

codex-pet

prime-skills/runcomfy-agent-skills

Codex Pet generator on RunComfy. Build a Codex-compatible Codex Pet spritesheet.webp + pet.json from a single reference image, drop it into ${CODEXHOME:-$HOME/.codex}/pets/ / and Codex picks it up as a custom Codex Pet next to the 8 built-ins. This skill produces the exact Codex Pet atlas Codex expects (1536x1872 PNG/WebP, 8 cols x 9 rows, 192x208 cells, 9 animation states — idle, running-right, running-left, waving, jumping, failed, waiting, running, review). Calls OpenAI GPT Image 2 edit ONCE via the local RunComfy CLI as runcomfy run openai/gpt-image-2/edit to produce a canonical Codex Pet pose, then assembles all 9 animation rows programmatically with ImageMagick micro-transforms — no Codex Pro, no $imagegen, no OPENAIAPIKEY required, only RUNCOMFYTOKEN. Triggers on "codex pet", "create codex pet", "make codex pet", "hatch codex pet", "/hatch image", "desktop pet codex", "codex pets", "spritesheet.webp", or any explicit ask to build a custom pet for OpenAI Codex.

AI & Agents402.1K installs

full-output-enforcement

leonxlnx/taste-skill

Overrides default LLM truncation behavior. Enforces complete code generation, bans placeholder patterns, and handles token-limit splits cleanly. Apply to any task requiring exhaustive, unabridged output.

AI & Agents401K installs

executing-plans

obra/superpowers

Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available

AI & Agents245.7K installs