← All tools

memento-engineering/the_grid

Popularity 50 Updated AI & Agents

A Dart-native reactive orchestrator for multi-agent software development. A resident station drives the ready frontier of a beads work graph as a reconciled tree — mount = spawn, unmount = kill.

githubauto-collected

Installation

A directly usable install command is not verified yet. Check the project documentation or releases.

thegrid

A Dart-native reactive orchestrator for multi-agent software development, inspired by Gas City, built over a beads work graph. Part of a long-term bet on Dart as a full-stack agentic platform:

Apps are built in Flutter. Lenny drives and debugs the apps. Lenny files bugs as beads into the grid. The grid builds everything.

thegrid is a framework, not a turnkey tool. A deployed station is a user-composed runner: a main.dart that authors its station as a tree on gridsdk and assembles the CLI commands it wants. The grid binary here is deliberately minimal — the generic, asset-agnostic verbs only.

The system

  • The work graph is observed, not polled. A bd mutation raises a dirty signal

(Dolt @@<dbworking probe or file watcher) → single-flight re-query → structural diff → typed GraphEvents. grid demo proves the loop with measured per-event latency.

  • The running grid IS a tree (ADR-0007/0009). genesistree is the engine:

build(observed) reconciles the running system — keyed reconcile + Branch lifecycle is the work lifecycle (mount = spawn, unmount = kill). State rides StateNotifiers provided via InheritedSeed (Riverpod was dropped at ADR-0007).

  • Work runs as circuits. A mounted work bead inflates a Circuit — a value-typed

step-graph — into a reconciled subtree (SessionScope → CircuitScope → CapabilityHost); steps are nodes driven by opaque Capability leaves, so supervision, restart, and cursor semantics apply at every depth (ADR-0008's reentrant engine).

  • A resident station drives the ready frontier. runGrid(delegate) mounts the

authored tree; each substation's open, unblocked, undeferred beads ARE the drive set (there is no --bead drive-list). Per ready bead the station provisions a git worktree (branch grid/<bead), spawns a build agent, gates the result with a committee of critic lanes, and lands (rebase → revalidate → commit/push/PR). Delivery is a per-substation binding authored in the station tree — the old global --land flag is retired.

  • Beads all the way down. Sessions, circuit instances, and committee gates are

themselves beads (per-node progress cursors ride the session bead), written to the station's own state store through the single StationBeadWriter chokepoint (bd CLI only, never SQL); work sources are never written (the A37 split). Molecule mode — the circuit instance persisted as a durable molecule/step bead graph — is the live default at the work seat.

  • Opinions live in asset packs, never in the engine. The engine knows source

control, agents, and trust in concept; the code circuit, committee rubrics, landing, and agent harnesses ship as gridassets packs a station composes in.

Packages