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

@sabbour/squadboard

v0.0.1

Published

Pre-alpha local-first kanban + workflow board for Squad agents — MCP server and CLI

Readme

@sabbour/squadboard

Pre-alpha local-first kanban + workflow board for Squad agents. Runs as an MCP server and web application.

What is Squadboard?

Squadboard is a unified workspace for agents to coordinate work. It combines:

  • Local-first kanban — Project boards, task columns, and issue cards
  • Workflows — Multi-step agent ceremonies (spawn, checkpoint, closeout)
  • Ceremonies — Scheduled and triggered team events (standups, planning, retrospectives)
  • Agent mesh — Route work to agents based on skills and availability
  • Squad storage — PostgreSQL or filesystem-based project state

It exposes APIs for agents to read/write projects, issues, workflows, and to participate in ceremonies via the Model Context Protocol (MCP).

Installation

npm install @sabbour/squadboard

Or use the CLI:

npx @sabbour/squadboard-cli init

Usage

Start the Server

squadboard init          # Start server + web UI on :3000
squadboard mcp           # Start MCP server (stdio protocol)

As MCP Server

Add to your Claude Desktop claude_desktop_config.json or Cursor MCP config:

{
  "mcpServers": {
    "squadboard": {
      "command": "squadboard",
      "args": ["mcp"],
      "env": {
        "SQUADBOARD_SQUAD_STORAGE_PROVIDER": "postgresql"
      }
    }
  }
}

Then invoke from an MCP client:

import { McpClient } from '@modelcontextprotocol/sdk/client/index.js';

const client = new McpClient();
// Call Squadboard tools and resources…

REST API

The server exposes REST endpoints on http://localhost:3000/api:

| Endpoint | Description | |----------|-------------| | /api/health | Server health check | | /api/projects | CRUD project operations | | /api/squad | Squad sync and config | | /api/agents | Agent registry and routing | | /api/issues | Issue and deliverable management | | /api/workflows | Workflow definitions and runs | | /api/ceremonies | Ceremony scheduling and execution | | /api/consult | Consult/review process | | /api/models | LLM model configuration |

See source code in src/routes/ for detailed endpoint signatures.

Storage

PostgreSQL (Default)

Stores squad state in a PostgreSQL database. Uses local PGlite by default; set DATABASE_URL to use a remote instance:

DATABASE_URL=postgresql://user:pass@host/db squadboard init

Filesystem

Alternative storage using .squad/ files in the repository:

squadboard init --squad-storage fs

Environment

  • PORT — HTTP server port (default: 3000)
  • DATABASE_URL — PostgreSQL connection string (optional; uses PGlite if not set)
  • SQUADBOARD_SQUAD_STORAGE_PROVIDERpostgresql or fs (default: postgresql)

Development

pnpm build         # Build TypeScript to dist/
pnpm dev           # Watch mode (file system storage)
pnpm dev:fs        # Watch mode with fs storage
pnpm dev:postgresql # Watch mode with PostgreSQL
pnpm test          # Run tests
pnpm test:cost-drift # Test for rate-limit drift

# Database
pnpm db:generate   # Generate Drizzle schema migrations
pnpm db:push       # Push schema to database
pnpm db:studio     # Open Drizzle Studio UI

# Migrations
pnpm migrate       # Run pending migrations
pnpm migrate:dry   # Preview migrations
pnpm migrate:verify # Verify migration state

Architecture

  • Express — REST API and web routing
  • WebSocket — Real-time updates for kanban, workflows, and ceremonies
  • Drizzle ORM — Type-safe database queries
  • PGlite — Embedded PostgreSQL or remote connection
  • MCP — Model Context Protocol server for agent integration
  • MCP HTTP Transport — Bridge between stdio and HTTP for testing

Notes

  • Pre-alpha — Expect breaking changes
  • Monorepo internal package — Requires @sabbour/squadboard-sdk from the same monorepo
  • Local-first design — State syncs to .squad/ files or PostgreSQL; agents pull work from the board
  • Ceremonies-centric — Workflows are driven by ceremonies (spawn → work → checkpoint → closeout)