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

@manitmishra/skillsync

v0.1.4

Published

Share and sync Claude Code agents and skills with your team

Downloads

290

Readme

skillsync

Share and sync Claude Code agents and skills across a dev team via a GitHub repo.

Install

npm install -g @manitmishra/skillsync

Requirements

  • Bun runtime
  • gh CLI authenticated (gh auth login)

Quick Start

One person creates the shared repo:

skillsync create

This creates a GitHub repo with skills/ and agents/ folders and pushes the initial structure.

Share the repo slug (owner/repo) with your team.

Teammates join:

skillsync join <owner/repo>

This clones the repo into ~/.skillsync/store/<owner>/<repo>/ and creates symlinks in ~/.claude/skills/ and ~/.claude/agents/.

Team members can import their existing skills or agents:

skillsync import

Import flow:

  • If you're in multiple repos, choose which one to import into
  • Verify you have write access to that repo
  • Pick one or more local skills/agents from a multiselect (default: none selected)
  • Copy selected items into the repo store, link them locally, then commit + push

Commands

| Command | Description | |---------|-------------| | create | Create a shared team skills repo on GitHub | | join <owner/repo> | Clone a team repo and link its skills and agents | | sync [--repo owner/repo] | Pull remote changes and push local ones (git pull --rebase + push) | | import | Interactively select local skills/agents to copy into a joined repo, then push | | status | Show joined repos, linked items, daemon state, and last sync time | | delete [name] | Remove symlinks for a skill or agent (restores backups if present) | | leave [repo] | Leave a repo: remove all its symlinks and delete the local store | | destroy [repo] | Full teardown: unlink everything, restore backups, delete store, optionally delete the GitHub repo | | daemon start\|stop | Start or stop the background sync daemon | | check-git | Show gh CLI version and auth status |

How It Works

Store layout

Each joined repo is cloned to ~/.skillsync/store/<owner>/<repo>/. Symlinks in ~/.claude/skills/ and ~/.claude/agents/ point into the relevant store subdirectory. You can be joined to multiple team repos simultaneously without path collisions. Config is persisted at ~/.skillsync/config.json.

Symlinks

join creates symlinks for every item in the shared repo's skills/ and agents/ directories. If a real directory already exists at a target path, it is backed up to .backup/ before the symlink is created. delete, leave, and destroy restore backups automatically.

Daemon

daemon start launches a background process that watches ~/.claude/skills/ and ~/.claude/agents/ for file changes. Changes are debounced 10 seconds before committing and pushing. The daemon also polls for remote changes every 10 minutes. Auto-commit messages follow the format [skillsync] @username updated <skill-name>.

Run daemon stop to kill the background process. status shows whether the daemon is running and when the last sync occurred.

Conflicts

On sync conflict, skillsync fails loudly with a clear error. There is no automatic merge resolution — resolve conflicts manually in the store directory and re-run sync.