Model or dataset
xingkongliang/skills-manager avatar
xingkongliang/skills-manager

Skills Manager: one library for skills scattered across 50+ coding agents

A lightweight desktop app to manage, sync, and organize AI agent skills across 50+ coding tools — Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.

4,747 stars406 forksRustMIT

At a glance

What is it?
A Rust desktop app that keeps a central skill repository at ~/.skills-manager and pushes skills into agent folders by symlink or copy. The design is sound for people running several agents at once, and the preset model is copy-on-apply rather than live sync, which is the detail most likely to surprise you.
Who is it for?
Adopt Skills Manager if you already run two or more agents and are tired of hand-copying SKILL.md folders into each one's global directory. Skip it if you use a single agent, or if you want skill edits to propagate to every tool the moment you save the file: applying a preset is a one-time copy, not a live sync.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 1 day ago.
What is it written in?
Mainly Rust, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

The problem: every agent wants its own skills folder

Claude Code, Codex, Cursor, Copilot and Gemini CLI each read skills from their own directory. Install a skill for one and the other four do not see it. Copy it across and you now own several divergent versions of the same SKILL.md with no record of which one is current. Skills Manager exists to collapse that into one repository and treat each agent folder as a deployment target. The README describes the app as "One app to manage AI agent skills across all your coding tools," and the feature list names more than fifty supported tools. The audience is narrow but real: developers who keep several agents installed side by side, or who move between a work laptop and a personal machine and want the same skill set available on both. If you only ever run one agent, the app adds a layer between you and a folder you could edit directly.

One central repo, and agent folders as deployment targets

The library lives in a single directory that defaults to ~/.skills-manager and can be changed in Settings. Skills enter it from Git repositories, local folders, .zip or .skill archives, or the skills.sh marketplace. From there the app writes them into agent folders by symlink or copy, chosen per sync. Each skill card carries an agent icon badge per enabled agent, and the badge reflects live sync state, so the card doubles as a status readout rather than a static label. The Global Workspace page for each agent lists everything in that agent's global folder, including skills installed outside Skills Manager, which means the view is meant to match what the agent actually sees rather than only what the app put there. Project Workspaces do the same for project-local skill folders and add a comparison against the central library, with sync in either direction. Linked Workspaces point at an arbitrary directory as a skills root, for skills that live outside the default agent paths; the README states these are managed standalone and do not participate in global preset sync.

Presets copy once, they do not stay in sync

Presets group skills under a name. In a workspace you click a preset pill and all its skills activate or deactivate for the current agent scope. The README is explicit that applying a preset is a one-time copy, not a live sync. That distinction decides how you use the tool. Edit a skill in the central library after applying a preset and the agent folder keeps the old content until you apply again or sync that skill. Treat the preset as a deploy step, not a subscription. The same logic runs through multi-tool sync: a click pushes a skill to a tool, and nothing in the material suggests a background daemon reconciling the two sides. Update tracking covers Git-based skills by checking upstream, and local skills are re-imported rather than pulled, which fits the copy model but means a hand-edited file inside an agent folder can drift from the library without the app intervening.

Install, then point the repo somewhere you control

On macOS the README gives `brew install --cask skills-manager`. Windows and Linux users download the installer from the latest release page. Once running, the first setting worth touching is the repo path, since the default is ~/.skills-manager and the README says it can be customized in Settings. Sync mode, theme, text size, language, tray behavior, proxy, Git remote, update checks and the order agents appear are all in the same place. Custom tools are added by supplying a skills directory and a name, and any built-in tool's default path can be overridden, which is the escape hatch when an agent changes where it looks for skills. For the agent-driven workflow, the Dashboard sets up the integration in one click; the README describes agents installing a skill, deploying it to another agent, or reporting what is where by driving Skills Manager rather than writing into an agent folder directly, so sources, presets, update tracking and per-agent state stay intact. Backup and multi-device sync connect a private GitHub repository with one sign-in, or any Git remote, and the README says merges are skill-aware, so a rename on one machine combines with an edit on another. Conflicts leave the local version in place until you pick keep mine, use remote, or keep both, and snapshot versions are restorable.

Where the model strains

Two constraints stand out. First, the copy-on-apply preset model means the app is a deployment tool, not a filesystem overlay. Anyone expecting edits in the library to appear instantly in every agent will be disappointed, and the failure is silent: the agent keeps reading stale content with no warning. Second, Linked Workspaces sit outside global preset sync by design, so skills parked there need to be managed individually. The backup story also deserves a close look before you trust it. Automatic backup to a Git remote is a real convenience, but the conflict policy resolves by keeping your local version and waiting for a choice, which means an unattended machine can accumulate unresolved conflicts. The README does not describe a size limit on the central repository or a policy for very large skill trees, and nothing in the material says how the app behaves when two devices edit the same skill while offline. The Activity log records install, remove, update and sync operations locally, and Settings has an Export Logs action that bundles recent logs and activity history into a zip, which is the practical way to diagnose a sync that did not land.

Against plain Git and a symlink script

The obvious alternative is a Git repository of skill folders plus a short shell script that symlinks them into each agent's directory. That approach is transparent, needs no GUI, and works over SSH on a headless box. What it does not give you is per-agent state: the script does not know which skills are enabled for which tool, cannot show a badge per agent, and has no notion of a preset. Skills Manager's value is that bookkeeping layer, and the marketplace and update tracking are conveniences built on top of it. The trade is a desktop application with a GUI, a tray, and an auto-updater, which is a poor fit for servers or CI. If your skills need to be present in a container build or a remote dev box, a Git checkout plus symlinks remains the simpler mechanism, and the app's own backup feature assumes a Git remote anyway, so you are not escaping Git by choosing it.

Maintenance, releases and the MIT licence

The repository is not archived and the release cadence visible in the material is brisk: v1.37.0, v1.37.1 and v1.38.0 all landed within three days in September 2026. Frequent releases on a desktop app mean frequent update prompts unless you turn update checks off in Settings. The README notes that in-app updates install on macOS and Windows, and that checking only notifies: installing and restarting each take a click, so nothing changes under you without confirmation. The project is MIT licensed, which permits commercial use and modification provided the copyright notice and permission notice are retained; that is a statement about the licence text, not legal advice for your situation. Because the app writes into agent directories and can symlink them, the practical maintenance cost is not the upgrade itself but the state it leaves on disk: understand the chosen sync mode, and know that switching between symlink and copy for an existing skill is a filesystem change, not a setting toggle.

Editorial conclusion

Adopt Skills Manager if you already run two or more agents and are tired of hand-copying SKILL.md folders into each one's global directory. Skip it if you use a single agent, or if you want skill edits to propagate to every tool the moment you save the file: applying a preset is a one-time copy, not a live sync. Before committing, install it, point the repo path in Settings at a disposable directory, add one skill from a local folder, and confirm the symlink or copy lands where your agent actually reads from. Then test one restore from a snapshot to see what the backup flow does with your existing files.

Official sources

  1. License: MIT
  2. Project website
  3. README
  4. Releases
  5. xingkongliang/skills-manager on GitHub
Community notes

Community notes