Skillnote
The open-source skill registry for AI coding agents. Create, manage, and distribute SKILL.md files across Openclaw, Claude Code, Cursor, Codex, OpenHands, Antigravity, and more.
Install / Use
/learn @luna-prompts/SkillnoteQuality Score
Category
Development & EngineeringSupported Platforms
README
The Problem
Claude Code skills are powerful but managing them breaks down fast.
Skills stop triggering. Claude Code shares ~8,000 characters across all active skill descriptions. Past that limit, descriptions get silently truncated. Skills with good documentation get cut first. The system prompt tells Claude to never use skills that aren't listed, so truncated skills are both invisible and explicitly forbidden. (#13343, #40121)
Skills are scattered everywhere. They live in ~/.claude/skills/ with no versioning, no search, and no way to share. Someone clones your project and has no idea which skills it depends on. There's no package.json for skills. (#27113)
Skills can't be shared across a team. Updating a shared skill means downloading, editing, re-zipping, and hoping the upload works for everyone. New teammates discover missing skills only when something breaks. Tribal knowledge walks out the door when someone leaves.
Private skills have nowhere to go. Internal deploy procedures, proprietary API patterns, compliance workflows, infra runbooks. These encode institutional knowledge that can't live in a public repo or third-party registry. They need to stay on your infrastructure.
SkillNote is a self-hosted registry that solves all of this. A private registry for skills that can't leave your network. Collections to scope the right skills per project. A plugin that syncs everything to Claude Code automatically. And a feedback loop where agents rate skills after use.
Your skills. Your servers. Your rules.
Quick Start
git clone https://github.com/luna-prompts/skillnote.git
cd skillnote
docker compose up --build -d
Connect Claude Code:
curl -sf http://localhost:8082/setup | bash
source ~/.zshrc
Now run claude in any project. SkillNote picks up your skills automatically.
Why Collections
Claude Code has a hard context budget for skills. With 15+ skills loaded, descriptions get truncated and skills stop triggering reliably. You can't use all your skills at once. You have to pick.
Collections solve this. Instead of cluttering Claude's context with 30+ skills (half truncated), you scope 10 to 15 relevant skills per project.
<p align="center"> <img src="docs/screenshots/collections.png" width="100%" alt="SkillNote collections with skill count and progress bars" /> </p>Your frontend project gets React hooks and testing patterns. Your API project gets error handling and deploy conventions. Same registry, different active sets. No context wasted.
How it works:
- Create collections in the web UI:
Conventions,DevOps,Frontend - Each collection holds up to 15 skills (the sweet spot before truncation kicks in)
- When you run
claude, the plugin shows a picker. Select a collection for this project - Saved in
.skillnote.jsonso it persists across sessions - If your folder name matches a collection, the plugin recommends it automatically
Read more about Claude Code's skill description budget in the official documentation.
Agent Reviews
Most skill setups are fire and forget. You write a skill, hope it triggers, and never hear back. 73% of community skills score below 60/100 in audits because nobody knows what's working.
SkillNote closes the feedback loop. After applying a skill, Claude rates it 1 to 5 and describes what it did. Every skill page shows reviews with star distribution, individual cards, agent names, versions, and timestamps.
<p align="center"> <img src="docs/screenshots/skill-detail.png" width="100%" alt="Skill detail page with Amazon-style agent reviews and star ratings" /> </p>This tells you which skills are actually being used, which ones work well, and how performance changes across versions. Skills get better over time because you have real signal, not guesswork.
Live Sync
Edit a skill in the browser and every running Claude Code session picks up the change within 60 seconds. No restarts, no manual copying, no "did you pull the latest skills?"
The plugin runs a background sync on every prompt. When it detects changes on the server, it updates the local SKILL.md files and Claude hot-reloads them mid-session. This works across your whole team. One person updates a skill, everyone gets it.
Onboarding is instant. A new teammate runs the setup command, picks a collection, and has every skill the team has built. No Slack messages asking "where's the deploy checklist?" No discovering missing skills only when something breaks.
Skill Push
When Claude notices you repeating the same instruction, it offers to turn it into a skill. The skill gets pushed to SkillNote and syncs to every connected agent within 60 seconds.
User: "use pnpm not npm" (3rd time)
Claude: "Want me to create a skill for this?"
drafts it, you review, pick a collection, published.
Your team's knowledge compounds. What one person corrects once becomes a skill everyone benefits from. Tribal knowledge stops walking out the door.
The Web UI
Dashboard & Editor
Browse all skills with search, collection filters, and ratings at a glance. Edit with a Notion-style WYSIWYG editor or raw markdown. Import existing SKILL.md files with drag and drop.
Analytics
Track which skills are used, how often, and by which agents. See call counts, average ratings, agent breakdown, and activity timeline. Filter by time range, agent, or collection.
<p align="center"> <img src="docs/screenshots/analytics-dashboard.png" width="100%" alt="SkillNote analytics dashboard with usage stats and agent breakdown" /> </p>Version History
Every save creates a snapshot. Browse, compare, and restore any previous version in one click.
<p align="center"> <img src="docs/screenshots/version-history.png" width="100%" alt="Skill version history with restore" /> </p>Built on Claude Code's Native APIs
SkillNote isn't a wrapper or a workaround. It's built directly on Claude Code's plugin system, hooks, and skill format. Every feature uses the official APIs, so the experience feels native, not bolted on.
Six Lifecycle Hooks
Most tools use one or two hooks. SkillNote uses all six to keep skills current, track usage, and preserve context through compaction and subagent spawning.
┌──────────────────────────────────────────────────────┐
│ │
│ SkillNote Server (Docker) │
│ │
│ Web UI REST API PostgreSQL │
│ :3000 :8082 (storage + notify) │
│ │
└────────────────────┬─────────────────────────────────┘
│
REST API
│
┌────────────────────┴─────────────────────────────────┐
│ │
│ SkillNote Plugin (on your machine) │
│ │
│ SessionStart Sync all skills on launch │
│ UserPromptSubmit Background re-sync every 60s │
│ PostToolUse Track which skills get used │
│ PostCompact Re-inject context after compact │
│ SubagentStart Share context with subagents │
│ Stop Prompt agent to rate skills │
│ │
│ Writes to: ~/.claude/skills/skillnote-*/SKILL.md │
│ Supports: allowed-tools, context, effort, model │
Related Skills
node-connect
352.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
prose
352.0kOpenProse VM skill pack. Activate on any `prose` command, .prose files, or OpenProse mentions; orchestrates multi-agent workflows.
AGENTS
352.0kExtensions Boundary This directory contains bundled plugins. Treat it as the same boundary that third-party plugins see. Public Contracts - Docs: - `docs/plugins/building-plugins.md` - `do
claude-opus-4-5-migration
111.1kMigrate prompts and code from Claude Sonnet 4.0, Sonnet 4.5, or Opus 4.1 to Opus 4.5
