The Hutch — observability, steering, and provenance for autonomous-research agents.
Project description
thehutch
Observability, steering, and provenance for autonomous-research agents.
thehutch is the PyPI distribution for Hutch —
an observability, steering, and provenance dashboard for autonomous-research
agents. It covers linear "hypothesis → experiment → claim" pipelines as well
as evolutionary, population-based, and self-improving systems
(AlphaEvolve / OpenEvolve / ShinkaEvolve / CVEvolve / DGM / SICA /
AIDE / ASI-ARCH / FunSearch / POET / MAP-Elites).
Install
pip install thehutch # PyPI distribution name; imports as `hutch`
hutch serve # → http://localhost:7777
Three ways to populate the dashboard
(a) Import an existing run. Eleven hand-tuned adapters ship in this release: OpenEvolve, AIDE, DGM, QDax, ASI-ARCH, FunSearch, CORAL, POET, CVEvolve, ptychi-evolve, ShinkaEvolve. For anything else, the LLM-assisted importer asks an LLM to write an adapter on the fly:
hutch import ./checkpoints/circle_packing # autodetect (11 adapters)
hutch watch ./checkpoints/live_run # poll and update live
hutch watch ./cvevolve-run --include-audit # opt into raw CVEvolve audit logs
hutch import ./novel-format --llm # LLM-assisted fallback
(b) Instrument a Python loop.
import hutch as h
h.start_run(name="my-search")
seed = h.log_individual(kind="hypothesis")
h.log_fitness(individual=seed, scores={"plausibility": 0.7})
h.end_run()
(c) Drop the skill into an LLM-driven agent. See the skill — it makes structured tool calls so any Claude / GPT-4 agent emits canonical events as it works.
Steering
The dashboard can be a control surface for runs that declare
capabilities={"steering": True}. Those agents poll
hutch.steering.poll() between iterations; the UI's Steering tab issues
commands (pause_run, cancel_individual, fork_from, inject_hint,
approve_hitl, …). Imported/offline runs stay read-only.
Documentation
- Concepts
- Schema (auto-generated)
- Distribution
- Adapters
- Steering
- Security
- Publication exports
The schema is additive-only between minor releases: new optional
fields and new kind enum values are fine; renaming or removing
existing fields is a breaking change.
License
Apache 2.0.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file thehutch-0.1.1.tar.gz.
File metadata
- Download URL: thehutch-0.1.1.tar.gz
- Upload date:
- Size: 513.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b358831dddca8a3ea23a81f5000b92fb64e56cfca12027d395093d9d7dc88ca8
|
|
| MD5 |
cbe4ef23b87f7b59b6bfddd044cc0b2a
|
|
| BLAKE2b-256 |
7612e3d17ec7f99c65bc38ef88eda675d92c9553e64727f8785601877bddf3d7
|
Provenance
The following attestation bundles were made for thehutch-0.1.1.tar.gz:
Publisher:
publish.yml on xyin-anl/hutch
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
thehutch-0.1.1.tar.gz -
Subject digest:
b358831dddca8a3ea23a81f5000b92fb64e56cfca12027d395093d9d7dc88ca8 - Sigstore transparency entry: 1512593712
- Sigstore integration time:
-
Permalink:
xyin-anl/hutch@bc91d5b55f3994a0639fab7f04d5775f6d5a050f -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/xyin-anl
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@bc91d5b55f3994a0639fab7f04d5775f6d5a050f -
Trigger Event:
push
-
Statement type:
File details
Details for the file thehutch-0.1.1-py3-none-any.whl.
File metadata
- Download URL: thehutch-0.1.1-py3-none-any.whl
- Upload date:
- Size: 572.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b61f3d7342af8b3cdc1cefcce2c8b876fe830f4fa8ad166c2f0db23c462ed172
|
|
| MD5 |
59f07022519b3073e842e2a64cd1a93e
|
|
| BLAKE2b-256 |
06021e3ceeb3b78741618f2e62653121bb92394132e0fa553446a93f3d20a2f4
|
Provenance
The following attestation bundles were made for thehutch-0.1.1-py3-none-any.whl:
Publisher:
publish.yml on xyin-anl/hutch
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
thehutch-0.1.1-py3-none-any.whl -
Subject digest:
b61f3d7342af8b3cdc1cefcce2c8b876fe830f4fa8ad166c2f0db23c462ed172 - Sigstore transparency entry: 1512594134
- Sigstore integration time:
-
Permalink:
xyin-anl/hutch@bc91d5b55f3994a0639fab7f04d5775f6d5a050f -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/xyin-anl
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@bc91d5b55f3994a0639fab7f04d5775f6d5a050f -
Trigger Event:
push
-
Statement type: