skill-manager
Health Pass
- License — License: MIT
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 31 GitHub stars
Code Warn
- network request — Outbound network request in frontend/src/api/http.ts
Permissions Pass
- Permissions — No dangerous permissions requested
This tool acts as a local-first control center for managing, discovering, and syncing AI extensions (Skills, MCP servers, and CLI tools) across multiple development environments like Cursor and Claude Code.
Security Assessment
Overall risk: Low. The application runs locally and explicitly states it does not request dangerous system permissions. There are no hardcoded secrets in the codebase. The automated scan did flag an outbound network request within `frontend/src/api/http.ts`. Given the tool's core functionality of browsing marketplaces and fetching external tool updates, this network activity is entirely expected and standard. The tool does not appear to execute hidden shell commands or excessively access sensitive system data beyond standard local configuration files.
Quality Assessment
The project is in very good health and shows signs of active maintenance, with its most recent code push happening just today. It uses the standard, highly permissive MIT license, making it safe for both personal and commercial use. Community trust is currently in the early growth stages, marked by 31 GitHub stars, which is normal for a relatively new but useful developer utility.
Verdict
Safe to use.
Manage skills across Codex CLI, Claude Code, Cursor, OpenCode, and OpenClaw from one local app.
skill-manager
A local-first control center for AI extensions.
Use, review, and discover Skills, MCP servers, and CLI tools across agent harnesses.
Why it exists
AI extensions are scattered across harness-specific folders, MCP config files, and marketplace sources. Skill Manager gives those pieces one local control surface:
| Product idea | What it means |
|---|---|
| In use | Skill Manager controls the item and can enable or disable it across harnesses. |
| Needs review | Skill Manager found local state, config differences, or inventory issues that need a decision. |
| Discover | Browse marketplaces and preview external tools. |
What you can do
- See what is in use, what needs review, and where extensions are active.
- Adopt local Skills into one shared inventory, then enable or disable them per harness.
- Install or adopt MCP server configs, resolve differences, and enable them where supported.
- Discover Skills, MCP servers, and preview-only CLI tools from marketplace sources.
Product tour
Overview
Start with the whole extension portfolio: what is in use, what needs review, what can be discovered, and where extensions are active.

Skills
Use Skills as shared local packages instead of maintaining separate copies per harness.
Typical flow:
- Review a Skill found in a harness or install one from the marketplace.
- Adopt it into the Skill Manager inventory.
- Enable it only where it should be available.
- Update, remove, or delete it from one place.

MCP servers
Use MCP servers as one normalized config that can be written into each harness shape.
Typical flow:
- Review an MCP server found in a harness or install one from the marketplace.
- Adopt it into the Skill Manager inventory.
- Enable it where the server should be available.
- Resolve config differences, disable harness bindings, or uninstall it from one place.

Marketplace
Marketplace is the discovery surface:
- Skills Marketplace: browse and install Skills.
- MCP Marketplace: browse and install MCP servers.
- CLI Marketplace: preview external CLI tools from CLIs.dev. This is display-only; Skill Manager does not install or manage CLIs.

Install
Homebrew (recommended)
brew tap mode-io/tap
brew install skill-manager
skill-manager start
npm
npm install -g @mode-io/skill-manager
skill-manager start
Supported harnesses
|
Codex CLI Docs |
Claude Code Docs |
Cursor Docs |
OpenCode Docs |
OpenClaw Docs |
| Harness | Skills | MCP servers |
|---|---|---|
| Codex CLI | Yes | Yes |
| Claude Code | Yes | Yes |
| Cursor | Yes | Yes |
| OpenCode | Yes | Yes |
| OpenClaw | Yes | Not Yet |
Local-first safety
Skill Manager is a local configuration-management tool. It runs on your machine and reads or writes local harness extension state.
Actions that can change local state include:
- adopting a local skill folder
- enabling or disabling a skill for a harness
- updating a source-backed skill
- removing or deleting a skill
- installing an MCP server into a source harness
- adopting an existing MCP config
- enabling, disabling, resolving, or uninstalling an MCP server
- changing harness support settings
App-owned files live under ~/Library/Application Support/skill-manager on macOS.
How it works
Skills
Before adoption, each harness points at its own local skill folder. After adoption, Skill Manager keeps one canonical package in its shared local store and exposes it to selected harnesses with local links. Disabling a harness removes that harness binding without deleting the package.
MCP servers
MCP servers are stored as normalized Skill Manager records, then translated into the config shape each harness expects:
- Codex uses TOML under
mcp_servers. - Claude Code and Cursor use
mcpServersJSON entries. - OpenCode uses typed local/remote MCP entries.
- OpenClaw MCP writes are not yet supported.
When Skill Manager finds different configs for the same MCP server, it asks you to resolve the source of truth first.
CLIs
CLI marketplace entries are preview-only.
Configuration
On macOS, app-owned files live under ~/Library/Application Support/skill-manager.
Useful paths:
- shared skills store:
~/Library/Application Support/skill-manager/shared - MCP manifest:
~/Library/Application Support/skill-manager/mcp/manifest.json - marketplace cache:
~/Library/Application Support/skill-manager/marketplace - app settings:
~/Library/Application Support/skill-manager/settings.json
Most users do not need to change these locations. If you manage skills in a custom environment, you can override individual skill roots with environment variables.
| Harness | Env var | Default Skill Manager skill root |
|---|---|---|
| Codex | SKILL_MANAGER_CODEX_ROOT |
~/.agents/skills |
| Claude | SKILL_MANAGER_CLAUDE_ROOT |
~/.claude/skills |
| Cursor | SKILL_MANAGER_CURSOR_ROOT |
~/.cursor/skills |
| OpenCode | SKILL_MANAGER_OPENCODE_ROOT |
~/.config/opencode/skills |
| OpenClaw | n/a |
~/.openclaw/skills |
MCP config locations are harness-owned. Skill Manager writes only to verified config paths and skips unsupported harness writes.
From source
Requirements
- Python 3.11+
- Node.js 18+
- npm
skill-manager supports Python 3.11+. CI validates backend compatibility on Python 3.11 through 3.14, while packaging and release builds stay pinned to Python 3.11 for determinism.
Contributor setup
scripts/install-dev.sh
Run locally
scripts/start-dev.sh
Stop the managed local instance:
scripts/stop-dev.sh
The split dev flow is available when you want Vite hot reload:
npm run dev
npm run dev:backend
Default local URLs:
- Frontend:
http://127.0.0.1:5173 - Backend:
http://127.0.0.1:8000 - Health:
http://127.0.0.1:8000/api/health
Validation:
scripts/install-dev.sh
npm run typecheck
bash scripts/test_backend.sh
npm test
npm run build
Troubleshooting
- If Marketplace requests fail with
Marketplace is temporarily unavailable, verify your network connection and try again. - If
npm install -g @mode-io/skill-managerreports that Homebrew already ownsskill-manager, uninstall the Homebrew formula first. The inverse also applies: uninstall the npm package before switching back to Homebrew. - If an MCP harness is shown as unavailable, Skill Manager has detected that the local client is missing or does not support the required config surface.
More to come
Extension families
- Hook support
- Slash command support
- Plugin support
Harness expansion
- GitHub Copilot
- Gemini CLI
- Cline
- Windsurf
- Qwen Code
- Kimi Code
- Qoder
Community
- See CONTRIBUTING.md for contribution guidelines.
- See SECURITY.md to report vulnerabilities privately.
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found