A homelab experiment

Putting software agents to work, safely

Fabricatum is a sandbox agents can safely run amok in, an issue tracker built for them, and an orchestrator that assigns the work, picks the right agent for it, and knows when to call a human.

Agents can write code. Running them is the hard part.

A single coding agent in a single terminal is impressive. A project is a different job. The work has to be broken into issues and handed to the right agent, given a safe place to run, checked, and surfaced to a person at the moments that need judgment.

Fabricatum is my homelab for working on that: the environment, the coordination, and the human-in-the-loop parts that turn capable agents into a working team.

Three pieces, one loop

Each one is useful on its own. Together they take a project from backlog to done.

01 / plan

Context

A project tracker and knowledge base designed with agents as first-class users. Agents and humans work the same issues in the same place.

02 / dispatch

Orchestrator

Monitors the tracker, launches agent runtimes (agy, claude, codex) as the work calls for them, and escalates to a human when a decision needs one.

03 / contain

Sandbox

An isolated environment where agents get real tools and room to experiment, and where the blast radius of a bad idea stays inside the box.

How a piece of work moves through it

From issue to done, with a person in the loop only where judgment is needed

  1. issue → ready

    Planned

    Work is captured in the tracker as issues an agent can pick up.

  2. orchestrator

    Dispatched

    The orchestrator launches a runtime to implement it.

  3. sandbox

    Built

    The agent works inside the sandbox and reports back to the issue.

  4. done | escalate

    Closed, or handed up

    Finished work closes out. Anything that needs judgment goes to a human.

Status Early and still rough, but it has already taken a handful of small projects from backlog to done.

What I'm working out

The interesting problems aren't the agents. It's everything around them.

When should an agent stop and ask?

Escalate too often and you've built a slow, expensive way to page yourself. Escalate too rarely and you get confident, compounding mistakes. The handoff to a human is a design surface, not an error path.

What does a good issue look like when the reader is an agent?

Trackers assume a human who already has the context. An agent arrives cold every time, so scope, context and "done" have to be in the issue itself.

How much freedom is safe?

Agents are most useful with real tools and the latitude to use them. The sandbox's job is to contain the consequences without stripping away the capability that makes agents worth running.

Which agent for which job?

Runtimes differ in strengths, cost and failure modes. Treating them as interchangeable workers behind one orchestrator makes those differences visible and lets the system route around them.

It's an onboarding problem

Making an agent productive in an unfamiliar project takes the same things as making a new engineer productive: the right context for the task, a safe place to practice, and someone who checks the work and steps in when it's stuck. Building one keeps teaching me about the other.

Context
What an agent needs depends on the task, the codebase and the stack, just as a good learning path depends on who's learning.
Practice
A sandbox is a hands-on lab: real tools and real consequences, with nothing that can't be reset.
Coaching
Checking the work and knowing when to step in is what separates a good mentor from a bystander, for agents and people alike.

Let's compare notes

If you're thinking about agents, sandboxes, or how people and AI systems learn to work together, I'd like to hear from you.

hello@fabricatum.com