← Back to work— AI systems — 2025 · 02

Autopoietic agents — multi-agent platforms that keep themselves running

In development· 2024–present

Autopoiesis is a word I borrow carefully. Humberto Maturana coined it to describe living systems that continuously produce the components needed to sustain their own organization. I am not claiming to have built living machines. What I have built is a family of multi-agent platforms where the system's job is to keep the system running — to observe itself, detect degradation, reallocate resources, rebuild broken parts, and continue running anyway. The agents are not scripts that do one thing. They are organs that participate in a closed loop. Most multi-agent projects I see treat agents as LLMs with tools — a thin wrapper around an API call with some prompt templates bolted on. That model breaks down at scale. The swarm either collapses into incoherence the first time two agents touch the same state, or it becomes so risk-averse that nothing happens. The family of platforms I build is structured differently. Each is a different answer to the same question: what does it take to build a swarm that does not collapse under its own weight? The answer has several parts that recur across every project. First, the services do not talk to each other directly; every message passes through an event bus, because direct HTTP calls between components create the kind of tight coupling that turns a partial failure into a total one. Second, agents are untrusted by default — every write is gated by distributed locks and fencing tokens, every action produces evidence artifacts (git diffs, commit hashes, test logs), and no claim counts as real without the artifact. Third, the systems implement dual-LLM separation: one agent reads raw external content in quarantine and outputs only sanitized structured data, another agent holds write privileges but never touches raw input. That pattern is the only defense against prompt injection that actually works at scale. Fourth, state lives outside the chat: chat text is never truth, only the ticket system, the git history, and the CI logs are truth. Fifth, the system has an immune system — a guardrails layer filtering toxicity and validating payloads, a warden sweeping stale locks, a siege engine injecting controlled chaos to test antifragility, a circuit breaker capping daily spend before the swarm can ruin its own budget. Inside this domain I have built systems organized as biological organisms — brain, muscles, hippocampus, economy, each running as its own containerized service with specific responsibilities — coordinated over Redis Pub/Sub with no direct calls between organs. I have built forensic audit swarms organized into specialized squads where each squad owns a vertical (core, QA, infrastructure, security, documentation, optimization) and the squads audit each other. I have built knowledge-mining pipelines that crawl codebases and extract reusable patterns using bio-inspired heuristics: ant-colony optimization for path selection, golden-ratio scheduling for resource allocation, biological vitality scoring for triage. I have built autopoietic economic discovery systems designed to start with zero knowledge and discover on their own how to generate value — not programmed to be autopoietic, designed to survive, with autopoiesis emerging as a consequence. I have built meta-cognitive security analyzers that continuously watch a file tree with local models, streaming live state to a dashboard via WebSocket, with a built-in stress tester that injects file chaos for ten minutes straight so you can watch the engine cope in real time. I have built fully local research stacks on Apple Silicon that enforce strict separation of concerns across the model gateway, the vector store, the search layer, and the observability plane, with every claim labeled by an auditor agent as confirmed, inferred, or hypothesized. I have built orchestration hubs on Azure and GCP that unify multiple coding assistants and workflow engines behind a single endpoint with distributed locking, optimistic-concurrency state, event streams, and shared work queues. They do not all solve the same problem. A biological organism topology is the right shape for a system that has to monitor itself indefinitely. A squad topology is the right shape for a system that has to audit something complex and produce legible output. A knowledge-mining pipeline is the right shape when the goal is to harvest patterns at volume and feed them downstream. A fully local stack is the right shape when sovereignty matters more than scale. The family is wide because the problems are wide. What the platforms share is the underlying discipline: every one of them is observable end to end, fails safely by construction, and treats its own resource budget as a first-class design constraint.

multi-agentautopoiesisdual-LLMRedis Pub/SubDockerMCPPythonFastAPI
— Building something where this problem lives?Start a conversation