🎯

system-design

🎯Skill

from joelhooks/swarm-tools

VibeIndex|
What it does

Helps generate comprehensive system architecture diagrams and documentation by breaking down complex system requirements into structured design components and interactions.

πŸ“¦

Part of

joelhooks/swarm-tools(3 items)

system-design

Installation

npm installInstall npm package
npm install -g opencode-swarm-plugin
BunRun with Bun
bun install
πŸ“– Extracted from docs: joelhooks/swarm-tools
3Installs
-
AddedFeb 4, 2026

Skill Details

SKILL.md

Overview

# Swarm

[![npm version](https://img.shields.io/npm/v/opencode-swarm-plugin.svg)](https://www.npmjs.com/package/opencode-swarm-plugin)

[![Documentation](https://img.shields.io/badge/docs-swarmtools.ai-blue)](https://swarmtools.ai/docs)

```

β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•— β–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ•—

β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ•‘

β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β–ˆβ•— β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•”β–ˆβ–ˆβ–ˆβ–ˆβ•”β–ˆβ–ˆβ•‘

β•šβ•β•β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘

β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ–ˆβ•”β–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β•šβ•β• β–ˆβ–ˆβ•‘

β•šβ•β•β•β•β•β•β• β•šβ•β•β•β•šβ•β•β• β•šβ•β• β•šβ•β•β•šβ•β• β•šβ•β•β•šβ•β• β•šβ•β•

```

Multi-agent coordination that survives context death.

Break big tasks into small ones. Spawn agents to work in parallel. Learn from what works.

> [swarmtools.ai](https://swarmtools.ai) Β· [Documentation](https://swarmtools.ai/docs)

---

Installation

OpenCode

```bash

npm install -g opencode-swarm-plugin

swarm setup

```

Done. Use /swarm "your task" in any OpenCode session.

Claude Code

Step 1: Install the CLI globally (required):

```bash

npm install -g opencode-swarm-plugin

```

Step 2: Add the marketplace in Claude Code:

```

/plugin

β†’ Manage marketplaces

β†’ Add marketplace

β†’ Enter: joelhooks/swarm-tools

```

Step 3: Install the plugin:

```

/plugin

β†’ Manage plugins

β†’ swarm-tools

β†’ swarm

β†’ Install

```

The MCP server starts automatically. Use /swarm "your task" in any session.

---

What It Does

```

/swarm "Add user authentication with OAuth"

```

  1. Decomposes the task into parallelizable subtasks
  2. Creates cells in the Hive (git-backed task tracker)
  3. Spawns workers with file reservations (no conflicts)
  4. Coordinates via Swarm Mail (embedded event store)
  5. Reviews each completion before approval
  6. Learns what worked for next time

---

Core Concepts

Hive

Git-backed task tracking in .hive/. Survives sessions, syncs via git.

```

hive_create({ title: "Fix auth bug", type: "bug" })

hive_cells({ status: "in_progress" })

hive_close({ id: "cell-123", reason: "Fixed" })

```

Hivemind

Semantic memory with embeddings. Store learnings, search later.

```

hivemind_store({ information: "Auth requires idempotency keys", tags: "auth,gotcha" })

hivemind_find({ query: "auth patterns" })

```

Swarm Mail

Actor-model coordination between agents. File reservations, messaging, checkpoints.

```

swarmmail_reserve({ paths: ["src/auth/*"], exclusive: true })

swarmmail_send({ to: ["worker-b"], subject: "Need types", body: "..." })

```

---

Commands

| Command | Description |

|---------|-------------|

| /swarm | Decompose and spawn parallel workers |

| /hive | Query and manage tasks |

| /inbox | Check messages from other agents |

| /status | Swarm coordination status |

| /handoff | End session with sync and handoff notes |

---

CLI

```bash

swarm setup # Configure OpenCode/Claude Code integration

swarm doctor # Check dependencies (Ollama for embeddings)

swarm init # Initialize hive in current project

swarm config # Show config paths

```

---

How It Works

```

Your Task

β”‚

β–Ό

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”

β”‚ COORDINATOR β”‚

β”‚ β”‚

β”‚ 1. Query past β”‚

β”‚ sessions β”‚

β”‚ 2. Pick strat β”‚

β”‚ 3. Decompose β”‚

β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

β”‚

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”

β–Ό β–Ό β–Ό

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”

β”‚ Worker A β”‚ β”‚ Worker B β”‚ β”‚ Worker C β”‚

β”‚ β”‚ β”‚ β”‚ β”‚ β”‚

β”‚ πŸ”’ files │───▢│ πŸ”’ files β”‚ β”‚ πŸ”’ files β”‚

β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

β”‚ β”‚ β”‚

β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

β–Ό

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”

β”‚ LEARNING β”‚

β”‚ β”‚

β”‚ Record outcome β”‚

β”‚ Update weights β”‚

β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

```

---

Architecture

Everything runs locally. No external servers.

  • libSQL - Embedded SQLite for event sourcing
  • Hive - Git-backed .hive/ directory for tasks
  • Hivemind - Semantic memory with Ollama embeddings (falls back to FTS)
  • Swarm Mail - DurableMailbox, DurableLock, DurableDeferred primitives

Event Sourcing

All state is an append-only event log:

```

agent_registered β†’ Agent joins swarm

message_sent β†’ Agent-to-agent communication

file_reserved β†’ Exclusive lock acquired

file_released β†’ Lock released

checkpoint β†’ Progress snapshot

outcome β†’ Completion result

```

---

Learning System

Every completion records duration, errors, files touched, success.

  • Patterns mature: candidate β†’ established β†’ proven
  • Anti-patterns auto-generate when failure rate > 60%
  • Confidence decays over 90 days unless revalidated

---

Dependencies

| Required | Optional |

|----------|----------|

| [Bun](https://bun.sh) | [Ollama](https://ollama.ai) - local embeddings |

Run swarm doctor to check status.

Embedding Model Configuration

Configure the embedding model via environment variables:

```bash

export OLLAMA_MODEL=nomic-embed-text # Default: mxbai-embed-large

export OLLAMA_HOST=http://localhost:11434 # Default

```

Supported models: mxbai-embed-large (1024d), nomic-embed-text (768d), all-minilm (384d), snowflake-arctic-embed (1024d). See [swarm-mail docs](packages/swarm-mail/README.md#configuring-the-embedding-model) for details.

---

Development

```bash

bun install

bun turbo build

bun turbo test

```

---

Credits

  • [MCP Agent Mail](https://github.com/Dicklesworthstone/mcp_agent_mail) - inspiration for multi-agent coordination
  • [Electric SQL](https://electric-sql.com) - durable streams patterns
  • [Superpowers](https://github.com/obra/superpowers) - verification patterns

---

MIT