Sandbox
@yibie/skills-manager

Skills manager for Claude Code, Cursor, and Codex

Skills Manager gives you a local skill library, collections, and mounts so you can reuse the same skills across multiple agents. It discovers skills from skills.sh and other sources, installs them to chosen agents, and keeps agent-specific state visible when copies diverge or go missing.

441 stars42 forksSwiftUpdated 1mo ago
Who it's for

Builders who want to keep shared skills organized across several coding agents instead of copying them by hand.

What it delivers

You can manage one skill library and mount it into different agents without duplicating or losing track of the originals.

What it does

Discover skills

Loads skills from skills.sh and community sources, with cached browsing, full-site search, and translated summaries.

Install to multiple agents

Installs a skill to one or more detected agents in a single flow, including Claude Code, Cursor, Codex, Gemini CLI, and Copilot.

Library, collections, and mounts

Organizes skills into reusable collections and mounts them into agents on demand while leaving the library copy in place.

Conflict and state tracking

Shows missing, shared, partially applied, and diverged skill states, plus conflicts across agents.

Provider-aware management

Updates or removes skills through their detected provider and preserves ownership and recovery paths.

Terminal UI companion

Includes a Blessed-based TUI with discover, install, star, refresh, diff, and rollback flows.

How to get it

  1. 1Or build from source
    git clone https://github.com/yibie/skills-manager.git
    cd skills-manager
    open SkillsManager.xcodeproj

README

Skills Manager

A native macOS app to manage skills across all your coding agents — Claude Code, Cursor, Codex, Gemini CLI, Qwen Code, Roo Code, Continue, OpenHands, OpenClaw, and more.

Current source version: 2.0.0 (build 200).

Skills Manager Icon

Screenshots

Collections Control Center Organize Library skills into Collections, then mount them into agents without moving or duplicating the originals

Mounted Collection Inspect Collection membership and mounted agents while keeping missing or diverged state visible


What's new in 2.0.0

Version 2.0 turns Skills Manager from a directory browser into a local skill lifecycle control plane built around Library → Collection → Mount.

Library      trusted, managed skill sources
   ↓
Collection   reusable groups for a project or workflow
   ↓
Mount        links a Collection into one or more agents on demand

From 1.x to 2.0

Area1.x2.0
Product modelBrowse and manage agent skill directoriesManage the complete local skill lifecycle
OrganizationSkills live primarily inside each agent directoryA managed Library supplies reusable Collections
Multi-agent useInstall and maintain skills for each agent separatelyMount or unmount a Collection without moving or duplicating its Library skills
StatePrimarily installed or not installedMissing, shared, partially applied, and diverged states remain visible and can be reapplied explicitly
IdentityNames and paths do most of the matchingDurable skill IDs connect upgrades, Collections, stars, the macOS app, and the TUI
Ownership and recoveryBasic provider install and removal flowsProvider ownership is preserved; takeover keeps recoverable backups and refuses ambiguous destructive repairs
NavigationDirectory-oriented agent viewsAgent home pages, conflict diagnosis, full-site Discover search, Copy ID, Copy Path, and Show in Finder
Agent supportCore agent scanning and installationA broader registry, including first-class XDG-aware OpenCode support and correctly classified neutral shared roots
LocalizationUI strings did not have a consistent English fallbackEnglish is the source and fallback language; macOS can select the bundled Simplified Chinese localization

The architecture remains local-first: there is no Skills Manager backend, unmounting never deletes the Library copy, and network access is limited to features such as Discover, translation fallback, and LLM Try calls.

What it does

Coding agent skills are scattered everywhere. Each agent has its own format, install path, and management story. Skills Manager brings them together in one place.

  • Discover skills from skills.sh and community repositories, including full-site search beyond the initially loaded list
  • Install to one or multiple agents at once
  • Try skills with your own LLM (Claude, OpenAI, OpenRouter, Ollama, or LM Studio) before installing
  • Manage installed skills regardless of where they came from — update or remove through the detected provider, star favorites (stars are shared with the terminal UI), and spot diverged same-name copies across agents (Conflicts)
  • Group skills into collections and mount a collection into an agent only when needed — symlinks in, links out, the library stays put (sidebar → Control Center)
  • Monitor agent skill directories and refresh automatically when they change on disk
  • Agent home pages — clicking an agent in the sidebar opens its home: detection status and skills directory (Show in Finder / Copy Path), conflicts involving that agent, and its full skill list
  • Translate discovered skill summaries with a bundled 8-language catalog and on-demand LLM fallback for newly loaded entries

Requirements

  • macOS 14 (Sonoma) or later
  • One or more coding agents installed (Claude Code, Cursor, Copilot CLI, Codex, Gemini CLI…)

Installation

Download Skills Manager 2.0.0 and drag it to Applications. The universal app is Developer ID signed, Apple-notarized, and accepted by Gatekeeper. SHA-256: 8da1f38838119864e593e9e591355dd53b5d407e4a7383aac68f095efdac1ad5.

Upgrading from 1.x? Read the 2.0.0 upgrade and rollback guide first. All releases remain available on the Releases page.

Or build from source:

git clone https://github.com/yibie/skills-manager.git
cd skills-manager
open SkillsManager.xcodeproj

Supported Agents

Skills Manager detects and scans every agent below through AgentRegistry. The Install target column marks agents that are available in the current multi-install picker; the remaining agents are still detected and scanned from their registered skills directory when installed locally.

AgentRegistry IDInstall target
Claude Codeclaude-codeYes
AmpampScan
ClineclineScan
CodexcodexYes
CursorcursorYes
Deep AgentsdeepagentsScan
FirebenderfirebenderScan
Gemini CLIgemini-cliYes
GitHub Copilotgithub-copilotYes
Kimi Code CLIkimi-cliScan
ReplitreplitScan
WarpwarpScan
AntigravityantigravityScan
AugmentaugmentYes
IBM BobbobScan
CodeBuddycodebuddyScan
Command Codecommand-codeYes
ContinuecontinueYes
Cortex CodecortexScan
CrushcrushScan
DroiddroidScan
GoosegooseScan
iFlow CLIiflow-cliYes
JuniejunieScan
Kilo CodekiloYes
Kiro CLIkiro-cliYes
KodekodeScan
MCPJammcpjamYes
Mistral Vibemistral-vibeScan
MuxmuxYes
NeovateneovateYes
OpenCodeopencodeYes
OpenHandsopenhandsYes
PipiYes
PochipochiScan
QoderqoderScan
Qwen Codeqwen-codeYes
Roo CoderooYes
TraetraeScan
Trae CNtrae-cnScan
WindsurfwindsurfScan
ZencoderzencoderScan
AdaLadalScan
OpenClawopenclawScan

OpenCode uses $XDG_CONFIG_HOME/opencode/skills (or ~/.config/opencode/skills when XDG_CONFIG_HOME is unset). Import Folder expects the agent's exact skills directory and uses it for both scanning and future installs.

$XDG_CONFIG_HOME/agents/skills and ~/.agents/skills are neutral shared roots. OpenClaw-specific discovery is limited to its clawd, npm-global, and workspace-main roots so shared skills are not mislabeled as OpenClaw.

Discover and Translation

Discover starts fast from a local cache at ~/.skills-manager/cache/discover-directory.json, then refreshes from skills.sh in the background. Search uses the skills.sh full-site API when online and falls back to cached query snapshots when offline.

The app bundles a generated description translation catalog covering 8 languages (English, Simplified/Traditional Chinese, Japanese, Korean, French, German, Spanish) and still keeps an on-demand translation button as a temporary fallback for newly loaded or uncached descriptions. Local Ollama and LM Studio endpoints are normalized to IPv4 loopback (127.0.0.1) at runtime to avoid macOS localhost resolving to IPv6 ::1.

Architecture

Pure local architecture — no backend, works offline except for network-backed features like Discover refresh/search, detail loading, translation fallback, and LLM Try calls. Reads and writes agent config files directly. The terminal UI additionally keeps a local Git history of skill installs for version management (diff and rollback).

The macOS app owns the lifecycle:

  • skills.sh supplies discovery data only. Installing from Discover downloads the GitHub skill package directly, preserves its scripts/assets, writes it to the managed Library, and creates agent links without requiring Node or npx.
  • Skills installed by the Vercel Skills CLI are recognized from its global v3 lock file and managed through that provider when npx is available.
  • If that provider is unavailable, an update can move the existing provider copy to Trash and adopt the refreshed package into the managed Library; native removal also clears stale provider metadata.
  • Unmount removes agent links but keeps the Library copy. Delete from Library is a separate confirmed operation. External OpenClaw/plugin content is moved to macOS Trash rather than permanently deleted.

Built with SwiftUI + Swift 6, SwiftData, macOS 14+.

Terminal UI

The repository also includes a terminal UI in tui/.

Current status:

  • Blessed TUI: complete for the current scope and treated as the primary terminal implementation
  • Ink TUI: historical backup/reference only, no longer the target runtime

Official CLI command:

cd tui
npm exec skills-manager

For a global command, run once inside tui/:

npm link

Then launch from anywhere with:

skills-manager

The Blessed TUI currently supports:

  • three-panel keyboard-first navigation
  • discover via skills.sh
  • install / uninstall / star (direct install currently targets Claude Code; Discover installs can target multiple agents; stars sync with the macOS app via ~/.skills-manager/tui-state.json)
  • source-file opening and discover source-page opening
  • search, detail overlays, full refresh
  • version history with diff and rollback (press H)
  • local / plugin differentiation, including Codex plugin cache and Pi package resources

Roadmap

  • Auto-update detection for discovered skills
  • Skill conflict detection across agents
  • Export / import skill sets
  • Team sync via shared skills repository

Contributing

Issues and PRs welcome. See CONTRIBUTING.md for guidelines.

License

MIT — see LICENSE.

Files in the repo

Repository payload17 top-level entries
  • .github
  • .serena
  • docs
  • scripts
  • SkillsManager
  • SkillsManager.xcodeproj
  • Tests
  • tui
  • .gitignore
  • AGENTS.md
  • CHANGELOG.md
  • CLAUDE.md
  • CONTRIBUTING.md
  • LICENSE
  • project.yml
  • README.md
  • SkillsManager_Logo.png

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More tools

JuliusBrussee/
caveman

🪨 why use many token when few token do trick — Claude Code skill that cuts 65% of tokens by talking like caveman

105k
1 add
MemPalace/
mempalace

The best-benchmarked open-source AI memory system. And it's free.

59k
stablyai/
orca

Orca is the ADE for working with a fleet of parallel agents. Run any coding agent with your own subscription. Available on desktop, mobile and remote runtime.

66k

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

132k

Never stop coding. Free MIT AI gateway: one endpoint, 352 providers (150+ free), 1200+ models Kimi, Claude, GPT, Gemini, GLM, DeepSeek, MiniMax. Works with Claude Code, Codex, Cursor, OpenCode, Cline & Copilot. Quota-aware auto-fallback, RTK+Caveman compression saves 15-95% tokens, MCP/A2A, Desktop/PWA. Built by 550+ contributors

64k
headroomlabs-ai/
headroom

Compress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.

71k