Over 10,000 turns, the working instructions an agent acts on drift away from the original intent (top white curve).
LONG-HORIZON AGENT HARNESS
The answer can’t be verified. The method can.
You write a brief. Agents turn it into measurable questions, answer each with an instrument inside a sealed sandbox, and keep the widgets and procedures that worked.
§ 01 · Witness, Not Trust
Hold the trajectory when there is no answer key.
Mizpah (מִצְפָּה, "watchtower") separates the controller that writes the brief from the worker that measures the world—so long runs compound verified instruments instead of drifting.
Run locally on your machine
Flutter desktop workspace + Rust department engine. Connect local llama.cpp models or frontier APIs and watch briefs turn into verified deliverables.
Try it on Linux → THE SUBSTRATE · OPEN SOURCETerra + Cartograph + Playbook
Three stores with separated write paths: Terra holds the brief and evidence map, Cartograph validates reusable code widgets, Playbook steps procedures.
Explore the repo →Managed Department Runs
Dispatch long-horizon verification campaigns to sealed cloud sandboxes with shared widget registries and cryptographic run receipts.
Coming soon§ 02 · One Turn of the Wheel
A closed feedback loop over open-ended work.
Instead of hoping a single prompt survives a thousand tool calls, Mizpah runs a strict control cycle between the reference brief and the measured map.
brieflocks the reference r — needs, deliverables, non-goals, and point budget. Read-only to every worker.unknownturns the gap r − y into discrete, typed questions on the route DAG.widgetbuilds or reuses a self-contained Cartograph instrument tested to >=80% coverage.probeexecutes the instrument inside a sealed OCI department sandbox and stamps a reproducible run.gatechecks every brief need against corroborated knowns on the map before any method is certified.
§ 04 · Try It
Launch the desk on Linux.
Early and changing fast. Requires uv, the Flutter Linux SDK, and bubblewrap/socat for rootless department sandboxes.
sudo dnf install bubblewrap socat gtk3-devel mpv-devel libnotify-devel libayatana-appindicator-gtk3-devel clang cmake ninja-build
git clone https://github.com/benteigland11/mizpah.git
cd mizpah
uv sync --python 3.12 --managed-python
cd app && flutter run -d linux
Connect a model under Providers (an API key, a local server, or a subscription), then tell the Deputy on Home what you want built. It drafts a brief; you sign it; the work starts.