smalltalk pre-release
smalltalk
smalltalk runs AI coding agents as long-lived seats on your machines, and gives them work as missions: declarative files that describe goals, steps, dependencies and checks. Its command-line tool is st.
Pre-release. smalltalk isn't generally released yet. Commands and the mission language may still change.
Why it exists
Agent work in terminals is fragile and opaque. A harness crashes and the thread is gone. The only way to know what an agent is doing is to read its screen. smalltalk makes the work declared, durable and inspectable, without anyone reading a terminal.
It works with the harnesses you already use: Claude Code, Codex, omp, pi and OpenCode. Each runs its real interactive interface, and smalltalk talks to it through the harness's native integration.
The mental model
- You declare seats and missions in KDL.
- smalltalk records them as facts in the graph.
- Starting a mission creates a run. The daemon makes reality match: it starts processes, readies steps as their dependencies settle, and wakes the right seat.
- Seats claim steps, work in their own harness terminal, and report back.
- Products and gates decide whether a step passed.
- People come in through attention, and only when they're needed.
The graph is the source of truth, not any process. A crashed harness, a restarted daemon or a rebooted machine resumes from it.
Keep your declarations in a repository
Keep the KDL for your most important seats and missions in a Git repository, next to the code they work on or in one of their own, so they're backed up. The graph records what you declared and everything that happened, but the files are what you can review, restore, and apply again on another machine.
One daemon per machine
Each machine runs one daemon, and each is a complete system on its own. Machines can join a fleet that replicates the graph between them over fabric.
What it looks like
st now # what needs you right now
st agents ls # seats and other running agents
st missions ls # missions with current runs
st work ls # steps that are ready or in progress
st attention ls # decisions and requests waiting for you
Known limits
--as person/...names who is acting. It's a boundary for trusted operators, not cryptographic authentication.- Mission constraints describe the outcomes you require. They are not a sandbox.
- Structured status reports, per-runtime resource limits, and freeze-drying idle sessions are still in progress.