Initializing the Swarm
Configure and launch your first agent swarm. Define strategies, set resource limits, and watch parallel execution in real time.
Prerequisites
Before initializing a swarm, ensure you have the following:
seasnokeCLI installed (v0.8.2 or later)- Authenticated workspace:
seasnoke auth login - A git repository with at least one branch
- Docker or containerd runtime (for local microVM orchestration)
seasnoke init
The seasnoke init command bootstraps your repository for agent swarm execution. It creates a configuration file, sets up microVM templates, and verifies your environment:
cd my-project
seasnoke init
# Output:
# [OK] Detected git repository: my-project (main)
# [OK] Writing .seasnoke/swarm.toml
# [OK] Creating VM template: default (Firecracker v1.7)
# [OK] Pulling base image: seasnoke/agent-runtime:latest
# [OK] Verifying container runtime: containerd 1.7.13
# [OK] Registering workspace: acme-corp
#
# Swarm initialized. Run seasnoke swarm start to launch.Configuration
The generated .seasnoke/swarm.toml defines your swarm parameters. Here is the default configuration with annotations:
# .seasnoke/swarm.toml
[workspace]
name = "acme-corp"
default_repo = "github.com/acme/api"
[swarm]
max_agents = 20 # Maximum concurrent agents
default_agents = 5 # Agents per task by default
strategy = "exploration" # "exploration" | "consensus" | "coverage"
[microvm]
runtime = "firecracker" # Firecracker or cloud-hypervisor
vcpu = 2 # vCPUs per microVM
memory = "4GiB" # Memory per microVM
disk = "10GiB" # Ephemeral disk per microVM
pool_size = 10 # Pre-warmed VM pool size
max_boot_time_ms = 250 # Max acceptable boot time
[evaluator]
test_runner = "auto" # Detect from project (jest, pytest, cargo test)
coverage_threshold = 80 # Minimum test pass percentage
lint_on_completion = true # Run linter before merge
security_scan = true # Run SAST on agent output
[llm]
provider = "anthropic" # LLM provider for agents
model = "claude-sonnet-4" # Default model
temperature = 0.2 # Low temp for code generation
max_tokens = 16000 # Max tokens per agent turn
fallback_model = "claude-haiku" # Fallback for fast iterations
[logging]
level = "info" # trace | debug | info | warn | error
output = "json" # json | text | compact
retention_days = 30 # Log retention periodVerify Setup
Run the built-in diagnostic to confirm your swarm is ready:
seasnoke swarm check
# Output:
# [OK] Workspace: acme-corp (active)
# [OK] Container runtime: containerd 1.7.13
# [OK] Firecracker: /usr/bin/firecracker (v1.7.0)
# [OK] Kernel image: /var/lib/seasnoke/vmlinux.bin
# [OK] Rootfs: /var/lib/seasnoke/rootfs.ext4
# [OK] VM pool: 10/10 pre-warmed (booted in 87ms avg)
# [OK] LLM: anthropic/claude-sonnet-4 (key: configured)
# [OK] Git: main branch clean, no uncommitted changes
# [OK] Plugin: eslint, jest detected
#
# Swarm status: READYFirst Swarm Run
Launch your first swarm with a dry-run task to verify end-to-end execution. The dry-run uses a synthetic task that exercises the full pipeline without modifying your code:
seasnoke swarm start --dry-run --agents 3
# Output:
# [12:01:01] INFO Orchestrator started (3 agents, exploration strategy)
# [12:01:01] INFO Provisioning 3 microVMs from pool...
# [12:01:02] INFO [OK] vm-01 provisioned (booted 78ms) -> agent-01
# [12:01:02] INFO [OK] vm-02 provisioned (booted 82ms) -> agent-02
# [12:01:02] INFO [OK] vm-03 provisioned (booted 91ms) -> agent-03
# [12:01:03] INFO Dispatching task: dry-run-add-tests
# [12:01:03] INFO agent-01: Strategy = add-unit-tests
# [12:01:03] INFO agent-02: Strategy = add-integration-tests
# [12:01:03] INFO agent-03: Strategy = add-property-tests
# [12:01:15] INFO agent-01: 12/12 tests passed [OK]
# [12:01:18] INFO agent-02: 8/8 tests passed [OK]
# [12:01:22] INFO agent-03: 15/15 tests passed [OK]
# [12:01:24] INFO Evaluator: agent-03 ranked #1 (confidence: 0.94)
# [12:01:25] INFO Swarm complete. Best patch: agent-03/property-tests
#
# Dry run successful. All 3 agents completed without errors.Next Steps
Your swarm is initialized and verified. Here is what to explore next:
Run a real task
— Submit an actual engineering task usingseasnoke task submitConfigure strategies
— Define custom agent strategies in.seasnoke/strategies/Explore the Change Graph
— Visualize your swarm’s exploration tree at/graphin the dashboardIntegrate CI/CD
— Add swarm execution to your pipeline using the GitHub Actions integration