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

@niceforbear/uniskill

v0.1.1

Published

Unified skill manager for AI agents: one canonical store (~/.uniskill/store) symlinked into every agent app's skills directory (Qoder, Qoder CN, QoderWork, WorkBuddy, Claude Code, Codex CLI, ...). Install a skill once, update once, available everywhere. A

Downloads

53

Readme

uniskill

English · 中文

一份技能,所有 AI 应用通用。 技能只安装一次、只更新一次,即可同时在 Qoder、Qoder CN、QoderWork、WorkBuddy、Claude Code、Codex CLI 等所有应用中使用——零冗余、零重复劳动。

为什么做这个

每个 AI 应用都从自己的私有目录加载用户技能(~/.qoder/skills~/.claude/skills~/.codex/skills……),不存在公共的用户级目录。后果:

  • 存储冗余:N 个技能 × M 个应用 = N×M 份完整拷贝
  • 更新痛苦:每次升级都要在每个应用目录重复安装一遍
  • 状态盲区:无法一眼看清"哪个应用装了什么",拷贝之间逐渐版本漂移

uniskill 让每个技能在 ~/.uniskill/store 只保留一份真实副本,通过符号链接扇出到各应用的 skills 目录:

~/.uniskill/store/political-thinking        ← 唯一真实副本
  ↑ 链接自 ~/.qoder/skills/political-thinking
  ↑ 链接自 ~/.qoder-cn/skills/political-thinking
  ↑ 链接自 ~/.qoderwork/skills/political-thinking
  ↑ 链接自 ~/.workbuddy/skills/political-thinking
  ↑ 链接自 ~/.codex/skills/political-thinking

更新 store 里的一份 → 所有应用重启后即可看到新版本。

安装

npm install -g uniskill
uniskill init          # 创建 ~/.uniskill 并探测本机已装的 agent 应用

零依赖,Node >= 16.7,macOS / Linux(v0.1)。

使用

# 三种来源,装入 store 后自动链接到所有应用
uniskill add political-thinking-skill              # npm 包(安装器式)
uniskill add https://github.com/user/some-skill    # git 仓库
uniskill add ~/dev/my-skill                        # 本地目录:直接活链接,改代码即时生效

# 一眼看清全局
uniskill list

# 精细控制扇出
uniskill link my-skill --apps qoder,codex          # 只链到指定应用
uniskill unlink my-skill --apps workbuddy
uniskill update all                                # 按记录的来源重新拉取
uniskill remove my-skill                           # 解除链接 + 删除 store 副本

# 体检:断链、陈旧拷贝、孤儿条目
uniskill doctor

# 验证哪些应用真的跟随符号链接(安装探针技能)
uniskill probe

uniskill list 输出示例:

skill             qoder        qoder-cn     codex
----------------- ------------ ------------ -------------
political-thinking linked       linked       linked
open-repo-wiki     linked       missing      missing

store: /Users/you/.uniskill/store  (2 skill(s))

工作原理

| 概念 | 含义 | | --- | --- | | Store | ~/.uniskill/store/<skill>/——唯一真实副本,顶层必须含 SKILL.md | | 扇出 | 每个「技能 × 应用」一条软链:<app目录>/<skill> → store/<skill> | | 拷贝模式 | 对拒绝软链的应用降级为真实拷贝,uniskill sync 重新分发(--mode copy) | | 注册表 | registry.json 记录每个技能的来源(本地/npm/git),供 update 溯源 | | 应用注册表 | apps.json 列出已知应用与目录,社区共建,欢迎 PR |

完整约定(store 结构、链接规则、注册表结构、对应用厂商的建议)见 SPEC.md——它既是本工具的实现依据,也欢迎其他工具乃至各 agent 应用原生采纳。

兼容性

软链支持因应用而异。验证方法:链接任意技能后重启应用看是否加载,然后在 ~/.uniskill/apps.json 中记录(followsSymlink: "yes" | "no")。标记为 "no" 的应用会自动改用拷贝模式。默认防冲突:已存在的条目不加 --force 绝不覆盖。

局限

  • v0.1 支持 macOS / Linux;Windows 需要目录联接或拷贝模式(规划中)
  • 应用通常在启动时扫描技能——增删链接后请重启应用
  • npm 方式 add 依赖包自带支持 --target 的安装器;否则手动安装后用 uniskill add <路径> 登记

许可证

MIT — 见 LICENSE