Skip to content
Development
Skill

/autoresearch

Run the Parallel Autoresearch Engine — massively parallel SKILL.md optimization. Generates 10+ SKILL.md variants per generation, tests each with programmatic harness (no browser needed), scores with triple-run averaging, and iterates autonomously. Use when asked to run

From plugin
vibes
13511 skills2 hooks

Claude Code

$ npx -y skills add popmechanic/VibesOS --skill autoresearch --agent claude-code

SKILL.md

autoresearch.SKILL.md
name: autoresearch
argument-hint: "[--variants=N] [--generations=N]"
description: >
  Run the Parallel Autoresearch Engine — massively parallel SKILL.md
  optimization. Generates 10+ SKILL.md variants per generation, tests each
  with programmatic harness (no browser needed), scores with triple-run
  averaging, and iterates autonomously. Use when asked to run autoresearch,
  improve SKILL.md at scale, or start parallel autoresearch.
license: MIT
allowed-tools: Read, Write, Edit, Bash, Agent, Glob, Grep

Parallel Autoresearch Engine

> **Plan mode**: This skill is ONE plan step: "Invoke /vibes:autoresearch". Do not decompose.

Prerequisites Check

VIBES_ROOT="${CLAUDE_PLUGIN_ROOT:-$(dirname "$(dirname "${CLAUDE_SKILL_DIR}")")}"
echo "Checking autoresearch prerequisites..."
test -f "$VIBES_ROOT/scripts/eval-ssr-check.ts" && echo "✓ Tier 1.5 SSR check" || echo "✗ Missing eval-ssr-check.ts"
test -f "$VIBES_ROOT/scripts/eval-harness.ts" && echo "✓ Tier 2 harness" || echo "✗ Missing eval-harness.ts"
test -f "$VIBES_ROOT/scripts/eval-parallel.ts" && echo "✓ Orchestrator" || echo "✗ Missing eval-parallel.ts"
test -f "$VIBES_ROOT/scripts/eval-scoring.ts" && echo "✓ Scoring" || echo "✗ Missing eval-scoring.ts"
test -f "$VIBES_ROOT/eval/config.md" && echo "✓ Config" || echo "✗ Missing eval/config.md"
test -f "$VIBES_ROOT/eval/napkin.md" && echo "✓ Napkin" || echo "✗ Missing eval/napkin.md"
ls "$VIBES_ROOT/eval/specs/"*.md 2>/dev/null | wc -l | xargs -I{} echo "✓ {} eval specs found"
cd "$VIBES_ROOT/scripts" && bun -e "import React from 'react'; console.log('✓ React available')" 2>/dev/null || echo "✗ React not installed"

If any prerequisite is missing, stop and inform the user.

Running

Option 1: Full Autonomous Run (Recommended)

Dispatch the autoresearch orchestrator agent (`.claude/agents/autoresearch-orchestrator.md`) with context from eval/config.md, eval/napkin.md, and eval/scoreboard.md.

Pass any CLI arguments from the user (e.g., `--variants=5 --generations=10`).

Option 2: Single Eval Pipeline Test

VIBES_ROOT="${CLAUDE_PLUGIN_ROOT:-$(dirname "$(dirname "${CLAUDE_SKILL_DIR}")")}"
bun "$VIBES_ROOT/scripts/eval-parallel.ts" --mode=eval-only <app.jsx> <spec.md>

Option 3: Score Existing Generation

VIBES_ROOT="${CLAUDE_PLUGIN_ROOT:-$(dirname "$(dirname "${CLAUDE_SKILL_DIR}")")}"
bun "$VIBES_ROOT/scripts/eval-scoring.ts" "$VIBES_ROOT/eval/results/gen-N/"

What It Does

Each generation: 1. **Mutate**: N independent SKILL.md variants (fix-targeted, structural, adversarial, etc.) 2. **Generate**: Each variant × each prompt × 3 runs 3. **Evaluate**: Tier 1 (static) → Tier 1.5 (SSR) → Tier 2 (data model) — all programmatic 4. **Score**: Triple-run averaging with consistency penalty; fitness = mean - 0.5×stddev 5. **Select**: Best variant replaces current SKILL.md; git commit on improvement 6. **Repeat**: Until plateau (3 gens), max generations, or score oscillation

Monitoring

  • `eval/results/gen-N/summary.json` — per-generation results
  • `eval/results/summaries.json` — cumulative history
  • `eval/scoreboard.md` — human-readable scoreboard
  • `eval/napkin.md` — failure log (grows monotonically)

Final Report

VIBES_ROOT="${CLAUDE_PLUGIN_ROOT:-$(dirname "$(dirname "${CLAUDE_SKILL_DIR}")")}"
bun "$VIBES_ROOT/scripts/eval-report.ts" "$VIBES_ROOT/eval/results/summaries.json"
Read more
@popmechanic
Ships withvibes

Instantly make your own small multi-user apps, without a backend. For apps made with Vibes, the front-end is the app.

Stars on GitHub

Momentum

stars in total
135
Star history of popmechanic/VibesOS on GitHub, a chart by star-history.com

Other skills on vibes.

cloudflare

cloudflare

Self-contained deploy automation — invoke directly, do not decompose. Deploys a Vibes app to Cloudflare Workers via the Deploy…

@popmechanic@popmechanicInstall Skill
design

design

Self-contained design transformer — invoke directly, do not decompose. Transforms a design reference HTML file into a Vibes app.…

@popmechanic@popmechanicInstall Skill
factory

factory

Self-contained SaaS pipeline — invoke directly, do not decompose. Generates a factory app with landing page, Stripe subscription…

@popmechanic@popmechanicInstall Skill
riff

riff

Self-contained parallel generator — invoke directly, do not decompose. Generates 3-10 app variations in parallel for comparing…

@popmechanic@popmechanicInstall Skill
test

test

Self-contained test automation — invoke directly, do not decompose. End-to-end integration test that assembles a fixture, deploys…

@popmechanic@popmechanicInstall Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills12d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc13d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react2d252k
@facebook@facebookInstall Skill

Questions about autoresearch.

Which coding agents can use autoresearch?
autoresearch installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.