v0.1.1  ·  MIT License  ·  Go + npm

openswarm

Open, composable, file-backed primitives for multi-agent terminal orchestration. Any agent. Any multiplexer. No daemons.

$ npm install -g @justestif/openswarm click to copy

Everything your swarm needs

One binary. Five primitives. All state in .swarm/ — no services to run.

  • swarm msg

    Agent-to-agent messaging via lock-free inbox files. Threaded replies, unread tracking, inbox watch.

  • swarm task

    Shared task queue with atomic flock-safe mutations. Assign, claim, block, complete, fail.

  • swarm pane

    Spawn, capture, send keystrokes to terminal panes across tmux, Zellij, and WezTerm.

  • swarm run

    Run a command in a managed pane. Fire-and-forget or block until exit. PATH and env inherited.

  • swarm worktree

    Git worktree lifecycle tied to agent identity. Merge and clean when the work is done.

  • swarm events

    Tail the shared append-only event log across all subsystems. Filter by type.

tmux Zellij ≥ 0.44 WezTerm Kitty (planned)

Built like Claude Code's internals

The same file-backed, daemon-free architecture used by Claude Code's agent teams — available outside Claude Code.

  • 01

    File-backed everything

    No daemons, no sockets. Atomic writes, flock() for all mutations. State survives crashes and is readable by any tool.

  • 02

    Agent-friendly by default

    --json on every command. Machine-readable exit codes. Designed to be called from agent sessions, not just humans at a terminal.

  • 03

    Multiplexer-agnostic

    Eight-method Backend interface. Swap tmux for Zellij without changing a single caller. WezTerm, Kitty, and others plug in the same way.

  • 04

    Pull complexity downward

    CLI handlers are <15 lines. All logic lives in internal/ — tested in isolation, never entangled with flag parsing.

Up in 30 seconds

Requires tmux, Zellij, or WezTerm for pane commands. Everything else works standalone.

1

Install

npm install -g @justestif/openswarm
2

Initialize your project

cd your-project
swarm init
3

Register, add tasks, and spawn agents

swarm agent register coder
swarm task add "implement the auth module"
swarm run start -- claude --print "$(swarm prompt)"
Other install methods

Homebrew

brew install justEstif/tap/openswarm

Go

go install github.com/justEstif/openswarm/cmd/swarm@latest

mise

[tools]
"npm:@justestif/openswarm" = "latest"