/ Directorio / Playground / Autoresearch (Karpathy-style)
● Comunidad uditgoenka ⚡ Instantáneo

Autoresearch (Karpathy-style)

por uditgoenka · uditgoenka/autoresearch

Objetivo como entrada, resultados como salida — Claude propone un cambio, lo ejecuta, mide, conserva las ganancias, descarta las pérdidas e itera. El bucle autoresearch de Andrej Karpathy, empaquetado como skill.

Autoresearch convierte a Claude en un investigador de bucle cerrado: especificas un objetivo y un verificador (una métrica, un test o un prompt juez), y la skill itera Modificar → Verificar → Conservar/Descartar con controles de presupuesto. Inspirado en los posts de autoresearch de Karpathy. Útil cuando el objetivo es medible pero el espacio de búsqueda es demasiado grande para planificar de antemano — ajuste de prompts, búsqueda de hiperparámetros, refactor por rendimiento, A/B de copy.

Por qué usarlo

Características clave

Demo en vivo

Cómo se ve en la práctica

listo

Instalar

Elige tu cliente

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "autoresearch-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/uditgoenka/autoresearch",
        "~/.claude/skills/autoresearch"
      ],
      "_inferred": true
    }
  }
}

Abre Claude Desktop → Settings → Developer → Edit Config. Reinicia después de guardar.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "autoresearch-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/uditgoenka/autoresearch",
        "~/.claude/skills/autoresearch"
      ],
      "_inferred": true
    }
  }
}

Cursor usa el mismo esquema mcpServers que Claude Desktop. La configuración del proyecto prevalece sobre la global.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "autoresearch-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/uditgoenka/autoresearch",
        "~/.claude/skills/autoresearch"
      ],
      "_inferred": true
    }
  }
}

Haz clic en el icono MCP Servers de la barra lateral de Cline y luego en "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "autoresearch-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/uditgoenka/autoresearch",
        "~/.claude/skills/autoresearch"
      ],
      "_inferred": true
    }
  }
}

Mismo formato que Claude Desktop. Reinicia Windsurf para aplicar.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "autoresearch-skill",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/uditgoenka/autoresearch",
        "~/.claude/skills/autoresearch"
      ]
    }
  ]
}

Continue usa un array de objetos de servidor en lugar de un mapa.

~/.config/zed/settings.json
{
  "context_servers": {
    "autoresearch-skill": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/uditgoenka/autoresearch",
          "~/.claude/skills/autoresearch"
        ]
      }
    }
  }
}

Añádelo a context_servers. Zed recarga en caliente al guardar.

claude mcp add autoresearch-skill -- git clone https://github.com/uditgoenka/autoresearch ~/.claude/skills/autoresearch

Un solo comando. Verifica con claude mcp list. Quita con claude mcp remove.

Casos de uso

Usos del mundo real: Autoresearch (Karpathy-style)

Ajustar iterativamente un prompt de sistema contra un benchmark

👤 Ingenieros de IA ajustando prompts ⏱ ~90 min advanced

Cuándo usarlo: Tienes un prompt, un benchmark y la paciencia para un bucle.

Requisitos previos
  • Skill instalada — git clone https://github.com/uditgoenka/autoresearch ~/.claude/skills/autoresearch
  • Benchmark con función de puntuación — /bench/run.sh que imprime una puntuación en stdout
Flujo
  1. Definir el objetivo
    Usa autoresearch. Objetivo: maximizar la puntuación de /bench/run.sh sobre el prompt en /prompts/system.md. Presupuesto de 30 iteraciones.✓ Copiado
    → El bucle arranca; se hace la primera propuesta
  2. Observar la traza
    Muéstrame las iteraciones 5-10 con los deltas.✓ Copiado
    → Traza con puntuación por iteración; conservado/descartado marcado
  3. Parada anticipada
    Si 3 iteraciones consecutivas no mejoran > 1%, para e informa del mejor.✓ Copiado
    → Se activa el guardia de convergencia; se informa del mejor prompt

Resultado: Mejor prompt, con una traza que explica el porqué.

Errores comunes
  • El verificador es manipulable — la puntuación sube sin calidad — Añade un verificador de cordura (juez LLM o conjunto separado)
Combinar con: filesystem

Extraer un 20% de rendimiento de una función caliente mediante auto-iteración

👤 Desarrolladores backend con datos de profiler ⏱ ~120 min advanced

Cuándo usarlo: Sabes qué función es lenta; quieres que Claude encuentre un equivalente más rápido.

Flujo
  1. Definir
    Objetivo: minimizar el wall-time de /bench/perf.sh que ejercita foo(). Restricción: los tests deben seguir pasando.✓ Copiado
    → El bucle arranca; se captura la línea base
  2. Iterar
    Ejecuta 20 iteraciones. Muestra las 3 mejoras más destacadas al final.✓ Copiado
    → 3 refactorizaciones candidatas con aceleración medida

Resultado: Aceleración concreta, validada.

Errores comunes
  • Las iteraciones introducen un problema sutil de corrección que los tests no detectan — Añade tests basados en propiedades como verificador junto a los tests unitarios
Combinar con: github

Auto-iterar el copy de una landing page contra un juez de CTR

👤 Marketers ejecutando tests de contenido ⏱ ~60 min intermediate

Cuándo usarlo: Tienes un objetivo de CTR (o un prompt juez que lo simula) y tiempo para iterar.

Flujo
  1. Configurar el juez
    Objetivo: maximizar judge_score en /copy/headline.md. Prompt del juez: 'valora la probabilidad de que un fundador de SaaS en Series B haga clic en este titular'.✓ Copiado
    → Línea base del juez puntuada; el bucle arranca
  2. Iterar
    Ejecuta 15 iteraciones; conserva los 3 candidatos más distintos.✓ Copiado
    → Top 3 titulares distintos

Resultado: 3 titulares candidatos para revisión humana.

Errores comunes
  • El juez tiene una fuerte preferencia de estilo no relacionada con la probabilidad de clic — Fija el juez a un archivo de rúbrica con criterios explícitos

Combinaciones

Combínalo con otros MCPs para multiplicar por 10

autoresearch-skill + filesystem

Persistir trazas de iteraciones para inspección

autoresearch-skill + github

Abrir un PR con el candidato ganador

Herramientas

Lo que expone este MCP

HerramientaEntradasCuándo llamarCoste
loop goal, verifier, max_iter, budget_tokens? Optimización de bucle cerrado Variable — limitado por presupuesto
trace loop_id? Inspeccionar una ejecución 0
rollback to_iteration El bucle se descarriló 0

Coste y límites

Lo que cuesta ejecutarlo

Cuota de API
Limitado por tu LLM
Tokens por llamada
Pesado — un bucle completo puede ser 100k+ tokens
Monetario
Gratis; el coste del LLM es tuyo
Consejo
Establece siempre max_iter y budget_tokens — los bucles sin límite quemarán dinero

Seguridad

Permisos, secretos, alcance

Almacenamiento de credenciales: Ninguno
Salida de datos: Limitado por tu proveedor de LLM

Resolución de problemas

Errores comunes y soluciones

Bucle atascado — la misma propuesta en cada iteración

Aumenta la temperatura de exploración en el proposer; o siembra con candidatos diversos

El verificador falla de forma inconsistente

La intermitencia del verificador invalida el bucle — fija semillas, repite la verificación N=3 por iteración

Presupuesto agotado antes de la convergencia

Inspecciona la traza — si las ganancias continúan monotónicamente, aumenta el presupuesto; de lo contrario el verificador o el proposer es el cuello de botella

Alternativas

Autoresearch (Karpathy-style) vs otros

AlternativaCuándo usarlaContrapartida
wanshuiyin/Auto-claude-code-research-in-sleep (ARIS)Quieres bucles de investigación ML async específicamente durante la nocheARIS enfocado en ML; autoresearch es general
A/B manual con iteración scriptedEl objetivo es pequeño y puntualLa skill elimina la sobrecarga de orquestación

Más

Recursos

📖 Lee el README oficial en GitHub

🐙 Ver issues abiertas

🔍 Ver todos los 400+ servidores MCP y Skills