SeaSnoke

Docs

Getting Started

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:

  • seasnoke CLI 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 period

Verify 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: READY

First 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 using seasnoke task submit
  • Configure strategies

     — Define custom agent strategies in .seasnoke/strategies/
  • Explore the Change Graph

     — Visualize your swarm’s exploration tree at /graph in the dashboard
  • Integrate CI/CD

     — Add swarm execution to your pipeline using the GitHub Actions integration