SwarmForge Prerequisites: What You Need to Run the tmux-Based AI Orchestration Platform

SwarmForge requires zsh, git, tmux, Babashka, and an AI-agent backend to install and run any product pack.

SwarmForge is a tmux-based orchestration platform for AI agents developed by Uncle Bob (Robert C. Martin). Before you can deploy a multi-agent team like the six-pack or project-manager forge, five core prerequisites must be in place. This guide walks through each requirement, explains its role in the architecture, and shows how to verify your setup.

Shell Environment: zsh

SwarmForge assumes a Z shell environment. The get-swarm-forge helper script and various shell utilities throughout the codebase are written specifically for zsh.

If you're running bash or another shell, switch to zsh or ensure zsh is installed and available:

zsh --version

The installer script at get-swarm-forge relies on zsh-specific features for path handling and process management.

Version Control: git

Git is required for two reasons: the get-swarm-forge script clones the SwarmForge repository on first run, and individual product packs are themselves distributed via Git.

Verify git is installed:

git --version

When you run get-swarm-forge six-pack, the script pulls the latest pack files from the remote repository into your current working directory.

Terminal Multiplexer: tmux

All SwarmForge agents run in isolated tmux panes and sessions, providing process isolation, persistent sessions, and a unified dashboard. Without tmux, the orchestration layer cannot function.

Check your tmux installation:

tmux -V

The core runtime scripts in swarmforge/scripts/ manage tmux sessions programmatically, creating dedicated panes for each AI agent in your chosen pack.

Clojure Runtime: Babashka (bb)

SwarmForge's core runtime is written in Clojure and executed by Babashka, a fast native Clojure interpreter. The scripts in swarmforge/scripts/ are .clj files run through bb.

Install Babashka, then verify:

bb --version
bb -e '(println "Babashka is ready")'

Without Babashka, the swarm orchestration logic, agent handoff protocols, and session management cannot execute.

AI-Agent Backend

SwarmForge does not bundle an AI backend. You must have access to at least one supported language-model service:

Backend Use Case
grok xAI's conversational model
codex OpenAI's code-focused model
claude Anthropic's reasoning engine
copilot GitHub's pair-programming AI

Set appropriate environment variables for your chosen backend before launching a swarm. For example, with OpenAI Codex:

export OPENAI_API_KEY=your_key_here

The agents in swarmforge/scripts/ send prompts to this backend for code generation, refactoring, and question answering.

Installing SwarmForge After Prerequisites

Once all five prerequisites are satisfied, install the helper script:

mkdir -p ~/cmds
curl -L -o ~/cmds/get-swarm-forge \
  https://raw.githubusercontent.com/unclebob/swarm-forge/main/get-swarm-forge
chmod +x ~/cmds/get-swarm-forge
export PATH="$HOME/cmds:$PATH"

Then install and launch a product. The six-pack runs six coordinated agents:

get-swarm-forge six-pack
./swarm

For multi-project orchestration, use the project-manager forge instead:

get-swarm-forge project-manager
./swarm

Important: The Repository Is Not a Runnable Product

The main branch of unclebob/swarm-forge contains documentation, the installer, and pack definitions—but is not itself executable. As noted in the README.md prerequisites section, you must install a specific product via get-swarm-forge before running ./swarm.

Key Files in the Source

File Purpose
README.md Documents prerequisites and installation steps
get-swarm-forge Entry-point installer script for all packs
swarmforge/scripts/ Core Clojure runtime executed by Babashka
swarmforge/handoff-protocol.md Agent communication specification

Summary

  • zsh: Required shell environment for all scripts
  • git: Clones repository and pack files during installation
  • tmux: Provides session isolation and the dashboard UI
  • Babashka (bb): Executes the Clojure orchestration runtime
  • AI backend: External LLM service (grok, codex, claude, or copilot) powers agent cognition

Missing any prerequisite prevents installation or runtime operation.

Frequently Asked Questions

Can I run SwarmForge without zsh?

No. The get-swarm-forge installer and runtime utilities depend on zsh-specific behavior. Running under bash or fish will cause failures during pack installation or agent spawning.

Does SwarmForge work without an internet connection?

Partially. You need internet to install packs via git and for agent backends to reach their LLM APIs. Once installed, local-only operations may function offline, but agent cognition requires API connectivity.

The README.md does not prescribe a preferred backend. Choose based on your existing API access, cost constraints, and task requirements. Claude excels at reasoning; Codex targets code generation; Grok and Copilot offer alternative trade-offs.

Can I use my own local LLM instead of the listed backends?

The source code specifies grok, codex, claude, or copilot as supported options. The swarmforge/scripts/ runtime likely expects compatible API schemas. Using an unlisted local model would require modifications to the configuration and potentially the handoff protocol implementation.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →