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

cc-dev-team

v0.7.0

Published

Multi-agent orchestration system for software development with Claude Code

Downloads

21

Readme

CC Dev Team

A multi-agent orchestration system that enables teams of AI agents to collaborate on software development tasks. Built on top of Claude Code, it allows a human developer to work with a Product Manager agent that coordinates specialized sub-agents (Architect, Engineer, QA, etc.) running in parallel Claude Code sessions.

License Platform Node

Agents Collaborating

Features

  • Multi-Agent Collaboration - Specialized AI agents work together: PM, Architect, Engineer, QA, UI/UX Expert, Code Auditor, and Docs Auditor
  • Real-Time Dashboard - Monitor all agents, view their terminals, and watch team communication in real-time
  • Headless Agent Mode - All agents run in headless mode, controllable from the web dashboard
  • Persistent Message History - All inter-agent communication stored in SQLite for debugging and replay
  • Extensible Architecture - Easy to add new agent roles and customize behavior
  • Claude Code Integration - Each agent is a full Claude Code session with access to all its capabilities
  • Auto-Updating Status Bar - Each agent session has a status bar that describes the current work being done, and links to the relevant GitHub issue when work is issue-related
  • File Linking - Click on any file path mentioned in agent terminal output and it opens in the host machine's default editor
  • Multi-Project Tabs - Work on multiple projects simultaneously with tabbed sessions, all in the same dashboard interface

How It Works

                    ┌───────────────────────────────────────────────────────────────┐
                    │                       HUMAN DEVELOPER                         │
                    │                         (Dashboard)                           │
                    └───────────────────────────────────────────────────────────────┘
                                                   │
                                                   ▼
                                         ┌───────────────────┐
                                         │  PRODUCT MANAGER  │
                                         │   (Claude Code)   │
                                         │                   │
                                         │ • Human interface │
                                         │ • Delegates work  │
                                         │ • Approves plans  │
                                         └───────────────────┘
                                                   │
        ┌────────────────┬────────────────┬────────┴───────┬────────────────┬────────────────┐
        │                │                │                │                │                │
        ▼                ▼                ▼                ▼                ▼                ▼
┌───────────────┐┌───────────────┐┌───────────────┐┌───────────────┐┌───────────────┐┌───────────────┐
│   ARCHITECT   ││   ENGINEER    ││  QA ENGINEER  ││  UI/UX EXPERT ││ CODE AUDITOR  ││ DOCS AUDITOR  │
│               ││               ││               ││               ││               ││               │
│    Design     ││  Implement    ││ Test & Verify ││ Design Review ││  Code Review  ││  Doc Quality  │
└───────────────┘└───────────────┘└───────────────┘└───────────────┘└───────────────┘└───────────────┘
        │                │                │                │                │                │
        └────────────────┴────────────────┴────────┬───────┴────────────────┴────────────────┘
                                                   │
                                         ┌───────────────────┐
                                         │   MESSAGE BROKER  │
                                         │    (Socket.io)    │
                                         └───────────────────┘

Prerequisites

  • Node.js 18+
  • Bun - For the dashboard
  • Claude Code CLI - Installed and authenticated
  • macOS (Apple Silicon) - Other platforms may require PTY package changes

Quick Start

Run this single command to install and start:

bunx @hoverlover/cc-dev-team

That's it! This will:

  • Check prerequisites
  • Install to ~/.cc-dev-team (first run only)
  • Check for updates (subsequent runs)
  • Start the broker, dashboard, and all agents

Then open http://localhost:3101 to access the dashboard.

Manual Installation

If you prefer to clone the repository manually:

# Clone the repository
git clone https://github.com/hoverlover/cc-dev-team.git
cd cc-dev-team

# Run the install script
./scripts/install.sh

# Start the orchestrator
./start-orchestrator.sh

For Developers

If you're contributing to this project, use bun dev instead of the install script:

git clone https://github.com/hoverlover/cc-dev-team.git
cd cc-dev-team
bun dev  # Generates settings and starts everything

Why Settings Are Generated

Claude Code requires absolute paths for hooks and permissions in settings.json files. Since these paths differ on every machine, we can't commit them to git. Instead:

  1. Templates (agents/*/.claude/settings.template.json) are tracked in git with placeholders
  2. On startup, bun dev replaces placeholders with your actual paths:
    • __ORCHESTRATOR_DIR__ → your cloned directory
    • __HOME_DIR__ → your home directory
  3. Generated settings.json files are gitignored

This means settings auto-regenerate on every startup, staying in sync with template changes.

See CLAUDE.md for full architecture details and the development workflow.

Starting Components Individually

For development or debugging, you can start components separately:

# Terminal 1: Start the message broker
./scripts/start-broker.sh

# Terminal 2: Start the dashboard
./scripts/start-dashboard.sh

# Terminal 3: Start the PM (from your project directory)
cd /path/to/your/project
~/.cc-dev-team/scripts/start-pm.sh

# Terminal 4+: Start sub-agents
~/.cc-dev-team/scripts/start-agent.sh architect
~/.cc-dev-team/scripts/start-agent.sh engineer

Usage

Once started, open the dashboard at http://localhost:3101 and give the PM a task:

> "Let's add OAuth authentication with Google and GitHub"

The PM will coordinate with the team to plan, implement, and verify the feature.

Direct Agent Interaction

While the PM handles coordination, you can talk directly to any agent by selecting their terminal in the dashboard and typing. This is useful for:

  • Deep technical discussions with the Architect about design trade-offs
  • Debugging sessions with the Engineer on specific implementation details
  • Clarifying test requirements with QA
  • Design feedback with the UI/UX Expert

Each agent is a full Claude Code session with complete context of the project and conversation history.

Dashboard

Dashboard

The web dashboard provides:

  • Agents Panel - See all agents with real-time status (Idle, Thinking, Working)
  • Terminal View - Full interactive terminal for each agent
  • Messages View - Team chat showing all inter-agent communication

Agent Roles

| Agent | Role | Responsibilities | |-------|------|------------------| | Product Manager | Orchestrator | Human interface, task delegation, plan approval | | Architect | Design Lead | System design, architecture decisions, specifications | | Engineer | Implementation | Code writing, feature development | | QA Engineer | Quality | Testing, verification, bug reporting | | Code Auditor | Review | Security review, code quality, best practices | | UI/UX Expert | Design | User experience, interface design, accessibility | | Docs Auditor | Documentation | Documentation quality gate, drift detection, doc updates |

Communication Protocol

Agents communicate through WebSocket messages via the broker:

  • Direct messages: agent → specific agent
  • Broadcasts: agent → team (all agents)
  • Message types: PROJECT_INIT, TASK_ASSIGNMENT, PROPOSAL, QUESTION, HANDOFF, RESPONSE, etc.

All messages are persisted to SQLite for history and debugging.

Typical Workflow

  1. Human tells PM what to build
  2. PM breaks down the task and assigns to team
  3. Architect creates technical design
  4. PM presents plan to human for approval
  5. Human approves (or requests changes)
  6. Engineer implements the feature
  7. QA tests and verifies
  8. Code Auditor reviews for quality/security
  9. Docs Auditor verifies documentation
  10. PM reports completion to human

Project Structure

cc-dev-team/
├── agents/                 # Agent personas and configurations
│   ├── pm/                 # Product Manager
│   ├── architect/          # System Architect
│   ├── engineer/           # Software Engineer
│   ├── qa-engineer/        # QA Engineer
│   ├── code-auditor/       # Code Auditor
│   ├── docs-auditor/       # Docs Auditor
│   └── ui-ux/              # UI/UX Expert
├── broker/                 # Message broker (Socket.io server)
├── dashboard/              # Web dashboard (Next.js + TypeScript)
├── hooks/                  # Claude Code hooks for message notification
├── installer/              # npm/bunx installer
├── scripts/                # Startup and utility scripts
├── skills/                 # Agent workflow skills
├── tests/                  # Test suite
├── tools/                  # Agent tools (send-msg, get-roster, etc.)
├── data/                   # SQLite database for messages
├── docs/                   # Documentation and images
├── logs/                   # Agent logs
├── start-orchestrator.sh   # Main entry point
├── CLAUDE.md               # Project instructions
├── vitest.config.js        # Test configuration
├── package.json            # Package manifest
└── bun.lock                # Dependency lockfile

Configuration

Environment Variables

| Variable | Default | Description | |----------|---------|-------------| | BROKER_PORT | 3100 | Message broker port | | BROKER_URL | http://localhost:3100 | Broker URL for agents | | NEXT_PUBLIC_BROKER_URL | http://localhost:3100 | Broker URL for dashboard |

Agent Tools

These tools are available to Claude Code agents for inter-agent communication:

send-msg

Send messages between agents:

send-msg <from> <to> <type> '<content>'

# Examples:
send-msg pm team PROJECT_INIT '{"description":"Add OAuth"}'
send-msg architect engineer TASK_ASSIGNMENT '{"task":"implement login"}'

get-roster

Check which agents are online:

get-roster

set-issue-bar

Update the dashboard task display for an agent:

set-issue-bar 'Working on auth flow'
set-issue-bar --issue 42

spawn-agent

Launch a new agent in the dashboard:

spawn-agent engineer
spawn-agent qa-engineer

sync-workspace

Sync all agents to a worktree after switching branches:

sync-workspace engineer switch /path/to/worktree
sync-workspace engineer remove /path/to/original/project

rename-sessions

Rename agent sessions for organization:

rename-sessions pm issue-num worktree-name

Skills

Agent workflow skills provide interactive, multi-step capabilities:

| Skill | Used By | Purpose | |-------|---------|---------| | /new-feature | PM | Create GitHub issues with user stories | | /smart-commit | Engineer | Create logical atomic commits | | /dev-server | Engineer | Manage development servers | | /worktree | Engineer | Manage git worktrees | | /wireframe | UI/UX | Generate visual HTML wireframes |

Troubleshooting

Broker not running

⚠️ Broker not detected at localhost:3100

Start the broker first: ./scripts/start-broker.sh

Agent not receiving messages

  1. Check broker is running
  2. Verify agent shows as "online" in dashboard
  3. Check logs/ directory for agent-specific logs

Dashboard not connecting

  1. Ensure broker is running on port 3100
  2. Check browser console for WebSocket errors
  3. Verify NEXT_PUBLIC_BROKER_URL if using custom ports

Platform Support

Currently tested on macOS (Apple Silicon). The PTY wrapper uses platform-specific packages:

  • macOS ARM64: @lydell/node-pty-darwin-arm64

For other platforms, update package.json with the appropriate node-pty variant and modify tools/claude-wrapper.js accordingly.

Contributing

Contributions are welcome! Please feel free to submit issues and pull requests.

License

This project is licensed under the GPL-3.0 License - see the LICENSE file for details.

Acknowledgments