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

@youenchene/paperclip-plugin-github-issues

v0.1.2

Published

Paperclip plugin: bidirectional GitHub Issues sync

Readme

paperclip-plugin-github-issues

Bidirectional GitHub Issues sync for Paperclip.

This is the first external Paperclip plugin built as a standalone npm package, created to validate the plugin developer experience.

What it does

  • Selective linking - pick individual GitHub issues to sync with Paperclip issues
  • Bidirectional status sync - close a GitHub issue, the Paperclip issue updates (and vice versa)
  • Comment bridging - optionally mirror comments between systems
  • Agent tools - Paperclip agents can search GitHub issues and create links during runs
  • Webhook support - receives GitHub webhook events for real-time sync
  • Periodic polling - catches changes missed by webhooks

Requirements

  • Paperclip instance with plugin runtime enabled (requires PR #821 to be merged)
  • GitHub personal access token with repo scope (or fine-grained token with Issues read/write)

Installation

# From the Paperclip CLI
pnpm paperclipai plugin install paperclip-plugin-github-issues

Or for development:

git clone https://github.com/mvanhorn/paperclip-plugin-github-issues.git
cd paperclip-plugin-github-issues
npm install
npm run build

Configuration

After installation, configure the plugin in Paperclip Settings > GitHub Issues Sync:

  1. Create a secret - go to Paperclip Settings → Secrets, click "Add Secret", paste your GitHub PAT as the value, and copy the generated UUID
  2. GitHub Token - paste the secret UUID from step 1 into the "GitHub Token" field
  3. Default Repository - optional owner/repo for agent tool searches
  4. Sync Comments - enable to mirror comments between systems
  5. Sync Direction - bidirectional, github-to-paperclip, or paperclip-to-github

GitHub Webhook Setup

For real-time sync, configure a webhook on your GitHub repository:

  1. Go to your GitHub repo > Settings > Webhooks > Add webhook
  2. Payload URL: https://your-paperclip-instance/api/plugins/paperclip-plugin-github-issues/webhooks/github-events
  3. Content type: application/json
  4. Events: select "Issues" and "Issue comments"

Agent Tools

Agents in Paperclip can use these tools during runs:

  • github-issues:search - search GitHub issues by query
  • github-issues:link - link a GitHub issue to the current Paperclip issue
  • github-issues:unlink - remove the sync link

Plugin Architecture

src/
  manifest.ts    # Plugin manifest (capabilities, tools, webhooks, UI slots)
  worker.ts      # Plugin worker (event handlers, sync logic, tool registration)
  constants.ts   # Shared constants
  github.ts      # GitHub REST API client
  sync.ts        # Sync state management and bidirectional logic
  index.ts       # Package exports

Built with the Paperclip Plugin SDK (@paperclipai/plugin-sdk).

Status

This plugin was built ahead of the plugin runtime landing on master (PR #821). It implements the full SDK contract based on the plugin spec and example plugins. Testing against a live Paperclip instance will happen once the plugin runtime ships.

Migration

v0.1.1

The githubTokenRef field now requires a secret UUID rather than a raw token string. If you configured this plugin before v0.1.1 by pasting a raw GitHub personal access token directly into the field, you must re-configure:

  1. Go to Paperclip Settings → Secrets and add your GitHub PAT as a new secret
  2. Copy the secret's UUID
  3. Go to Settings → GitHub Issues Sync and replace the old token value with the secret UUID

Plugins that were already storing a secret UUID (the intended usage) are unaffected.

License

MIT