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

@amaster.ai/pi-teamwork

v0.1.22

Published

Pi extension for team collaboration and issue management via Multica

Readme

@amaster.ai/pi-teamwork

pi-teamwork preview

Pi extension for team collaboration and project management. Provides LLM-callable tools to interact with issue trackers and project management systems.

Supported Providers

  • Multica — CLI-based adapter via multica

Configuration

Auto-Install

Runtime auto-installation is disabled because mutable package-manager taps and download scripts cannot provide the pinned artifact verification required in a credential-bearing agent process. Install a pinned Multica release separately and put the verified binary on $PATH, or configure multica.binary.

The deprecated autoInstall: true setting no longer executes an installer. It only reports a clear error when the binary is missing.

Configuration may live in user/agent settings or in a trusted project's .pi/settings.json. Project settings are ignored when trust is declined and do not expand ${ENV_VAR}; keep environment-backed credentials in user or agent settings.

Mode 1 — Self-hosted server

For teams running their own Multica server. The extension runs multica setup self-host with the provided URLs, then authenticates with the token:

{
  "pi-teamwork": {
    "enabled": true,
    "provider": "multica",
    "multica": {
      "serverUrl": "https://api.your-server.com",
      "appUrl": "https://your-server.com",
      "token": "<token-from-multica-server>"
    }
  }
}

Mode 2 — Pre-configured environment

Run multica setup once on the machine and finish login through multica's normal flow. The extension will reuse that state:

{
  "pi-teamwork": {
    "enabled": true,
    "provider": "multica",
    "multica": {
      "workspace": ""
    }
  }
}

Mode 3 — Headless token (Multica Cloud)

For CI or non-interactive environments where you can't run multica setup. The extension will run multica login --token <token> on every session_start:

{
  "pi-teamwork": {
    "enabled": true,
    "provider": "multica",
    "multica": {
      "token": "<token-from-multica-server>"
    }
  }
}

⚠️ token is a credential. Keep it out of version control — put it in a local-only settings file or inject via env-substituted config.

| Field | Description | |-------|-------------| | enabled | Enable/disable the extension | | provider | Provider name (multica) | | multica.binary | Path to multica binary (default: multica) | | multica.workspace | Workspace ID override; leave empty to use multica's default | | multica.token | Headless-login token. Omit when multica is already logged in on the machine | | multica.serverUrl | Self-hosted server API URL. Triggers multica setup self-host --server-url on start | | multica.appUrl | Self-hosted server frontend URL. Required when serverUrl is a remote address | | multica.autoInstall | Deprecated compatibility flag; no installer is executed (default: false) |

Tools

| Tool | Description | |------|-------------| | issue_list | List issues with optional filters (status, assignee, project, limit) | | issue_get | Get detailed info about a specific issue | | issue_create | Create a new issue | | issue_update | Update an existing issue (title, description, status, priority, assignee) | | issue_comment | Add a comment to an issue | | project_list | List all projects in the workspace | | teamwork_status | Check provider/daemon status |

Commands

  • /teamwork-status — Show current provider status

Architecture

src/
├── index.ts              # Generic tool layer (provider-agnostic)
├── types.ts              # TeamworkProvider interface + shared types
└── adapters/
    └── multica.ts        # Multica CLI adapter + initialization

The extension uses a provider pattern — index.ts registers tools that delegate to a TeamworkProvider interface. Adding a new provider (Linear, Jira, etc.) only requires implementing the interface and adding a factory branch in session_start.