An always-on agent
with one tool: the shell.
It builds everything else itself — memory, schedules, messaging, tools — as plain files on a Linux VM. The harness only guarantees privilege separation, journals, crash recovery and context resets.
$ sudo agent send main "Read your README, then tell me how you plan to keep notes." $ sudo agent messages main main: I'll keep plain-text notes in ~/notes/, indexed from my README …
The harness provides a few guarantees; the agent provides all policy.
- An agent is a user and a home holding
README.md,TASK.mdandinbox/. Its owner, root or another agent, creates it withagent new; the harness gives it a user from a pool.agent removestops it. Root is the top of the tree and the main agent its first child, so the human does exactly what an agent does. - Everything that happens is a file in an inbox: owner messages, schedules, heartbeats, child reports, crash recovery and context resets. There is no other event channel.
- The harness has no provider code. Model access is a plugin that speaks a small versioned JSON protocol.