npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

claude-code-swarm

v0.3.4

Published

Claude Code plugin for launching agent teams from openteams topologies with MAP observability

Downloads

317

Readme

claude-code-swarm

A Claude Code plugin that launches agent teams from openteams YAML topologies.

Overview

Define your multi-agent team structure as a YAML topology (roles, communication channels, spawn rules) using openteams, then let this plugin spin it up as a coordinated Claude Code agent team.

Built-in topologies

| Template | Roles | Description | |----------|-------|-------------| | get-shit-done | 12 | Wave-based parallel execution with goal-backward verification and checkpoint management | | bmad-method | 10 | Full agile development team across 4 phases: analysis, planning, solutioning, implementation |

Installation

Install as a Claude Code plugin:

claude plugin add /path/to/claude-code-swarm

Usage

Option 1: Configure a default team

Create .claude-swarm.json in your project root:

{
  "template": "get-shit-done"
}

The team context loads automatically on session start.

Option 2: Launch on demand

/swarm get-shit-done

Option 3: Use a custom topology

Point to any openteams template directory:

{
  "template": "/path/to/my-team-template"
}

Or create your own using openteams editor:

npm install -g openteams
openteams editor

Configuration

Config resolution

Configuration is resolved with tiered fallthrough — each level overrides the one below:

SWARM_* env vars  >  project config  >  global config  >  defaults

Project config

Lives in your project directory at .swarm/claude-swarm/config.json (or .claude-swarm/config.json with --no-prefix):

{
  "template": "get-shit-done",
  "map": {
    "scope": "my-project",
    "systemId": "my-project-swarm"
  }
}

Project config is typically committed to the repo or gitignored per preference.

Global config

Lives at ~/.claude-swarm/config.json. Created by swarmkit init or manually. Sets user-wide defaults that apply to all projects unless overridden:

{
  "map": {
    "server": "ws://my-map-server:8080",
    "sidecar": "session",
    "auth": {
      "token": "my-token"
    }
  },
  "sessionlog": {
    "enabled": true,
    "sync": "metrics"
  }
}

This is useful for settings you don't want to repeat in every project — MAP server address, auth tokens, sidecar mode, sessionlog preferences. Fields like template and map.scope are typically project-specific and belong in the project config.

Environment variable overrides

All config values can be overridden via SWARM_* environment variables:

| Config field | Environment variable | |---|---| | template | SWARM_TEMPLATE | | map.server | SWARM_MAP_SERVER | | map.enabled | SWARM_MAP_ENABLED | | map.scope | SWARM_MAP_SCOPE | | map.systemId | SWARM_MAP_SYSTEM_ID | | map.sidecar | SWARM_MAP_SIDECAR | | map.auth.token | SWARM_MAP_AUTH_TOKEN | | map.auth.param | SWARM_MAP_AUTH_PARAM | | sessionlog.enabled | SWARM_SESSIONLOG_ENABLED | | sessionlog.sync | SWARM_SESSIONLOG_SYNC |

How it works

  1. SessionStart hook ensures openteams is installed and reads your team configuration
  2. openteams generators produce per-role SKILL.md files with prompts, communication config, and CLI references
  3. Agent bridge converts those into Claude Code agent definitions
  4. Claude Code agent teams spawns teammates according to the topology

Teams coordinate via openteams' shared state (SQLite-backed tasks, messages, and signal channels) alongside Claude Code's native team features.

Creating custom topologies

See the openteams documentation for the full template format. A minimal topology:

name: my-team
version: 1
roles:
  - lead
  - researcher
  - implementer

topology:
  root:
    role: lead
    prompt: prompts/lead.md
  spawn_rules:
    lead: [researcher, implementer]
    researcher: []
    implementer: []

communication:
  enforcement: permissive
  channels:
    workflow:
      signals: [RESEARCH_DONE, IMPLEMENTATION_DONE]
  subscriptions:
    lead:
      - channel: workflow
  emissions:
    researcher: [RESEARCH_DONE]
    implementer: [IMPLEMENTATION_DONE]

Requirements

  • Claude Code with agent teams support (CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1)
  • Node.js >= 18
  • openteams (installed automatically)