Skip to content

The Hutch

Observability, steering, and provenance for autonomous-research agents.

The Hutch is a dashboard for autonomous-research agents. It works for a small linear "hypothesis → experiment → claim" loop and scales up to large evolutionary or self-improving systems like OpenEvolve, ShinkaEvolve, DGM, CVEvolve, SICA, AIDE, ASI-ARCH, FunSearch, POET, and MAP-Elites.

Whatever your loop looks like, Hutch normalizes it into the same five concepts: Individual, Operator, Fitness, Lineage, Archive. One dashboard then works for all of them.

pip install thehutch       # PyPI distribution name; imports as `hutch`
hutch serve                # → http://localhost:7777

Hutch dashboard runs list The dashboard's entry point: every run that has reported at least one event to the daemon, with kind, project, status, and event count.

Where to start

  • Concepts


    The five concepts every Hutch view is built on. Read this first; the rest of the docs assume it.

    Concepts

  • Distribution


    Three ways to feed data into Hutch: import or watch an existing checkpoint, drop the LLM skill into your agent, or call the Python SDK.

    Distribution

  • Event schema


    The data model every layer normalizes into. Required reading before you write an adapter.

    Schema

  • Adapters


    Eleven built-in adapters cover the major systems. The LLM-assisted importer covers everything else.

    Adapters

  • Steering


    The dashboard can issue commands back to a running agent: pause, cancel, fork, inject a hint, gate a human-in-the-loop approval.

    Steering

  • Security


    Local-first defaults, daemon token auth, hosted-deployment guidance, and the LLM-importer trust boundary.

    Security

Integrations

Hutch can also forward every event to your existing observability stack. Set HUTCH_OTEL_ENDPOINT and Hutch emits OpenTelemetry spans on the research.* namespace; set HUTCH_OPENLINEAGE_ENDPOINT and it posts OpenLineage RunEvents to a backend like Marquez, OpenMetadata, or DataHub. For finished runs, hutch export produces ARA, PROV-O, and RO-Crate packages suitable for papers, archival, and FAIR data deposits.

OpenTelemetry research.* span emitter, OTLP exporter
OpenLineage One RunEvent per Operator and Self-Mod
Publication & provenance ARA, PROV-O, RO-Crate exporters

Status

This is v0.1.1, an alpha release. The Python API and CLI follow SemVer. The canonical event schema is additive-only from the v0.1.0 baseline until v1.0.0: new optional fields and new kind enum values are fine, but renaming or removing existing fields is a breaking change and requires a migration. See the changelog.

License

Apache 2.0. See LICENSE.