Skip to main content

autoresearch_anything

autoresearch_anything is a framework for running autonomous LLM-driven research loops over any verifiable problem. You define what to propose, how to evaluate, and whether to keep results — the framework runs the loop across local or remote workers.

If you're missing anything, let me know on Discord or Twitter.

Install

pip install autoresearch_anything

Concepts

The framework has two kinds of workers:

  • Impl workers — run an LLM that reads your editable files and modifies them to implement a proposed direction.
  • Eval workers — run your evaluation command and return stdout.

You subclass Autoresearch to wire these together:

from autoresearch_anything import Autoresearch, Journal, EvalWorker, ImplWorker, Models, ModelConfig

class MyResearch(Autoresearch):
    journal      = MyJournal
    eval_workers = [EvalWorker(host=None, remote_dir="/path/to/project")]
    impl_workers = [ImplWorker(host=None)]
    models       = Models(
        propose   = ModelConfig(model="claude-opus-4-5", provider="anthropic"),
        commit    = ModelConfig(model="claude-opus-4-5", provider="anthropic"),
        implement = ModelConfig(model="claude-cli",      provider="claude-cli"),
        diagnose  = ModelConfig(model="claude-cli",      provider="claude-cli"),
    )
    eval_command = "python evaluate.py"
    editable     = ["model.py"]

    def propose(self, state, history):
        # Return a natural-language direction string
        ...

    def parse_result(self, stdout):
        # Parse eval stdout into a result dict
        ...

    def keep(self, result, history):
        # Return True to accept, False to discard
        return history.best is None or result["score"] > history.best["score"]

autoresearch = MyResearch()

Journal

Subclass Journal to implement state and history management:

from autoresearch_anything import Journal

class MyJournal(Journal):
    def get_state(self):
        # Return {relative_path: content} of current editable files
        ...

    def get_history(self):
        # Return history as a string for the propose prompt
        ...

    def record(self, result):
        # Persist a result
        ...

    def apply(self):
        # Accept the current impl (e.g. copy files into place)
        ...

    def revert(self):
        # Discard the current impl
        ...

Run

Point autoresearch_run at a package that exports an autoresearch instance:

autoresearch_run my_autoresearch_package

The impl worker entry point (autoresearch_impl_runner) is launched automatically on impl workers — you don't need to call it directly.

Programmatic API

You can also launch from Python directly:

from autoresearch_anything import run_from_instance

run_from_instance(autoresearch)

Troubleshooting

If something's broken or confusing, hit me up on Discord or Twitter.

Metadata

Release files for autoresearch-anything 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for autoresearch-anything 0.1.0
File Size Uploaded Provenance
autoresearch_anything-0.1.0.tar.gz 22.5 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for autoresearch-anything 0.1.0
File Interpreter ABI Platform
autoresearch_anything-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 43.5 kB

Release files / autoresearch_anything-0.1.0.tar.gz

Download URL autoresearch_anything-0.1.0.tar.gz
Size 22.5 kB
Tags Source
SHA-256 checksum
How to use checksums
9d50d1dc583cded24083237866ea1667241c388d70f66241d93f8d5a153a8bec
BLAKE2b-256 checksum
How to use checksums
8d22f02fcf529f0c2fa75647a56156938db596f70c9e7c23f180d41caae59adf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 12, 2026.

Transparency log

Release files / autoresearch_anything-0.1.0-py3-none-any.whl

Download URL autoresearch_anything-0.1.0-py3-none-any.whl
Size 21.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2269828ba1914fe1070f4fab123410393d912d70e00ed515942bf2f5d6c971a7
BLAKE2b-256 checksum
How to use checksums
40081c905d726fd9ab13c5aa219ce0a2d2c8cf12f0fdb897ecd47a33ac2d9348
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 12, 2026.

Transparency log

Security for autoresearch-anything 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for autoresearch_anything-0.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 12, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page