genswarms

The operating system for AI workforces.

Deploy, coordinate and control thousands of AI agents across your organization.

license
Open source, MIT
version
0.2.0
runtime
Elixir / OTP

Your agents need more than models and prompts.

One agent is easy. Many agents working together need somewhere to run, rules for who talks to whom, and a way back when one fails.

One agent: a model, a prompt and some tools.

model
decides the next step
prompt
says what the job is
tools
do the work

Twelve agents, each wired to the others by hand.

who talks to whom
written into each agent
where each one runs
wherever it was started
when one fails
nothing restarts it

Think of it as an operating system.

An operating system runs programs it didn’t write. GenSwarms does that for agents: it starts them, isolates them, routes their messages and restarts them when they fail.

start
each agent as its own process
isolate
each one in its own sandbox
route
messages along declared paths only
restart
a failed agent, by its supervisor

Every agent is a process.

Each one runs in its own sandbox, under its own supervisor. If one crashes, it restarts and the others keep working. You set its role, its model and where it runs separately.

events (illustration)

agent 10
crashed
agent 10
restarted by its supervisor
11 others
running

Agents talk only along declared paths.

You draw the graph. Every message is checked against it, and anything off the graph is dropped.

From here the drawings follow one swarm: a support team that answers customers on Telegram.

events (illustration)

message_routedtelegram → triage
message_routedtriage → research
invalid_routeresearch → telegramdropped
message_routedresearch → answer

Not everything needs a model.

Objects are plain code on the same graph: a Telegram gateway, a scheduler, a budget for model spend. They do the same thing every time.

Objects are plain code on the graph. The answer and research agents call budget for their model calls.

agents
triage, research, answer: use a model
objects
telegram, cron, browser, budget: plain code

Install what your agents need.

Telegram, WhatsApp and email connectors, a browser, a scheduler: signed packages from the swarmidx index, verified before they load.

packages · swarmidx (illustration)

genlayerlabs/genswarms-telegram@0.6.6sha256:9f2c…verified
genlayerlabs/cron@0.2.8sha256:4be1…verified
genlayerlabs/browser@0.2.4sha256:51d3…verified
genlayerlabs/genswarms-llm-proxy@0.4.2sha256:c07a…verified

A swarm is a document.

Its definition is data, and every change is logged. A bad change is refused before it runs; a stopped swarm comes back from its database.

Refused changes are never logged. A stopped swarm restores from its database: the seed, then the logged changes, in order.

restore
seed, then changes 1, 2, 3

One control layer for your AI organization.

Watch every message, crash and restart as it happens. Drive it by API or CLI, or hand it to your coding agent.

Models provide intelligence. Agents perform work. GenSwarms runs the organization.

one event stream (illustration)

supportmessage_routedtriage → answer
observermessage_routedwatch → report
trading simrestartagent 3
codingoutputagent 2

How it works.

The parts of an operating system, and what GenSwarms puts in each place.

Processes
Every agent a supervised OTP process: role, model and backend set separately.
Isolation
bwrap, Docker or Apple container, per agent.
Network
Isolated agents reach their model endpoint only.
Messages
Only along declared paths, checked each hop.
Services
Objects: deterministic code on the same graph.
Drivers
Local, Tmux, Docker, Apple container, SSH, Bwrap, Mock.
Packages
gsp and swarmidx: signed, content-addressed, checked on your machine.
State
A seed plus a log of changes. Bad changes refused. Restore from the database.
Control
REST, WebSocket, CLI, and a skill file for your coding agent.
Events
Every message, crash and restart, live.

How is it different from LangGraph, CrewAI or AutoGen?

Frameworks organize agents in your code. GenSwarms runs each agent as its own supervised process.

GenSwarms compared with LangGraph, CrewAI and AutoGen
QuestiongenswarmsLangGraphCrewAIAutoGen
What it isA runtime that runs each agent as a supervised processOrchestration framework and runtime for stateful agents; LangSmith Deployment hosts themOpen-source framework for agent crews and flows; AMP deploys themMulti-agent framework, now in maintenance mode; Microsoft Agent Framework succeeds it
Where agents runEach in its own supervised process: local, sandbox, container or SSHIn your Python or JS process, or on LangSmith Deployment serversIn your Python process, or on CrewAI AMP managed infrastructureIn your process, or across workers via its experimental distributed runtime
What a crash affectsThe agent that crashed. Its supervisor restarts itThe run; checkpoints let it resume, and nodes can retryThe run; agents retry errors, and flows can persist and resumeYour code handles it; team state can be saved and reloaded

From each project’s own documentation, September 2026.

What it guarantees, and what it doesn’t yet.

What ships in 0.2.0 today, and the limits we know about.

Guarantees

  • A crash restarts one agent, not the swarm.
  • Messages follow declared paths only.
  • Bad configurations and changes are refused before they run.
  • Packages are verified against a signed log.

Not yet

  • One operator token, no per-user roles.
  • At-least-once delivery, not exactly once.
  • Spend budgets come as a package, not in the core.
  • Updating a package restarts the agent; no live swap yet.
  • 100 agents per swarm by default (configurable).

Start with one team. Scale to thousands of agents.

In use today for chat assistants, coding agents, trading simulations and swarms that watch other swarms.

Or hand it to your agent:

Read https://genswarms.com/skill.md and set up a swarm.