autoresearch

Run evaluator-driven iterative improvement cycles until a bounded stop condition.

Updated Apr 29, 2026
One-click install
npx skills add https://github.com/nichobbs/lyric-lang --skill autoresearch-nichobbs
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: autoresearch
Source: https://github.com/nichobbs/lyric-lang/tree/main/.claude/skills/autoresearch
Command: npx skills add https://github.com/nichobbs/lyric-lang --skill autoresearch-nichobbs

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Autoresearch eliminates the friction of running repeated, evaluator-driven improvements by keeping a single mission moving through successive non-passing attempts until a strict time bound or explicit terminal condition is reached.

Core Features & Use Cases

  • Stateful single-mission improvement loop: Iteratively runs one experiment/change cycle, then evaluates results against a required structured JSON contract.
  • Durable decision logging: Persists per-iteration evaluation JSON plus a human-readable markdown decision log under canonical .omc/autoresearch/ or .omc/logs/ paths.
  • Strict, bounded stopping behavior: Continues through non-passing evaluations but stops only when a max-runtime ceiling (or another explicit terminal condition) is recorded.

Quick Start

Start a mission and evaluator first, then run autoresearch with a mission directory and max runtime so it can iteratively evaluate and log each attempt.

Frequently Asked Questions about autoresearch

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate iterative improvement for a single task under a fixed evaluator?

Automating iterative improvement is done by running repeated change cycles until a bounded stop condition is met. The loop records per-iteration results and stops at a strict max-runtime ceiling or explicit terminal condition.

What structured data format is required for evaluator outputs during automated refinement?

Evaluator outputs require a structured JSON contract with a boolean pass field and an optional numeric score. This stable JSON schema allows the improvement loop to reliably assess each attempt and decide whether to continue iterating.

How does bounded optimization handle state and decision logging between iterations?

Bounded optimization persists durable state under canonical paths like `.omc/autoresearch/` or `.omc/logs/`. It saves per-iteration evaluation JSON alongside a human-readable markdown decision log to maintain state across each non-passing attempt.

Can I use an automated refinement loop to tighten requirements and select better revisions?

Yes, you can use an automated refinement loop to tighten requirements, refine generated artifacts, or select better revisions. It iteratively executes one change cycle and evaluates the results against a required structured JSON contract until passing.

When should I not use an iterative mission loop for evaluator-driven improvement?

You should not use an iterative mission loop if your evaluator cannot produce stable structured JSON outputs with a boolean pass field. It also requires a strict max-runtime termination hook, making it unsuitable for unbounded or open-ended workflows.