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
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.
-
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.
-
Event schema
The data model every layer normalizes into. Required reading before you write an adapter.
-
Adapters
Eleven built-in adapters cover the major systems. The LLM-assisted importer covers everything else.
-
Steering
The dashboard can issue commands back to a running agent: pause, cancel, fork, inject a hint, gate a human-in-the-loop approval.
-
Security
Local-first defaults, daemon token auth, hosted-deployment guidance, and the LLM-importer trust boundary.
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.