Skills support engine for Claude Code, Codex CLI, GitHub Copilot CLI, and Cursor.
Installation | User Guide | CLI Reference | MCP Tutorial | FAQ | Changelog
What's new in 0.7.6 -- Plugin assets sync mirrors runtime scripts, binaries, and source packages from the Claude plugin cache to Cursor. Hash-based change detection and executable permission preservation on Unix. See changelog.
Skills authored for one AI coding assistant rarely work in another. Skrills validates, analyzes, and syncs skills across four CLI environments from a single Rust binary:
- One-command sync --
skrills sync-allmirrors skills, commands, agents, MCP servers, hooks, rules, preferences, and plugin assets between Claude Code, Codex CLI, Copilot CLI, and Cursor. - Validation with autofix -- detects missing frontmatter,
incompatible fields, and body issues across each target's
requirements, then fixes them with
--autofix. - 36-tool MCP server -- exposes validation, sync, intelligence, and research operations over stdio or HTTP so other tools can call Skrills programmatically.
See comparison for how Skrills differs from static skill bundles, rules repositories, and local sync CLIs.
TUI dashboard -- navigate skills, activity, and metrics with keyboard shortcuts:
See the quickstart tutorial for a walkthrough, or the MCP tutorial for server setup.
- Cross-CLI validation -- validates against Claude Code (permissive), Codex CLI (strict), Copilot CLI (strict), and Cursor rules. Auto-derives missing YAML frontmatter.
- Multi-directional sync -- syncs eight asset types across four CLIs. File hashing preserves manual edits.
- Token analytics -- per-skill token counts with reduction suggestions for context-window management.
- Dependency resolution -- cycle detection and semver constraints across skill graphs.
- MCP server -- 36 tools over stdio or HTTP for validation, sync, intelligence, research, and skill generation.
- Session mining -- parses Claude Code and Codex CLI session history to improve recommendations.
- Dashboards -- TUI and browser UIs showing skills,
validation status, usage metrics, and MCP server configs.
The standalone
skrills-portal.htmlworks offline without a running server. - Plugin asset sync -- mirrors runtime scripts, binaries, and source packages from the Claude plugin cache to Cursor with hash-based change detection.
- Discovery deduplication -- frontmatter identity matching consolidates duplicate skill installations.
macOS / Linux:
curl -LsSf https://raw.githubusercontent.com/athola/skrills/HEAD/scripts/install.sh | shWindows PowerShell:
powershell -ExecutionPolicy Bypass -NoLogo -NoProfile -Command ^
"Remove-Item alias:curl -ErrorAction SilentlyContinue; iwr https://raw.githubusercontent.com/athola/skrills/HEAD/scripts/install.ps1 -UseBasicParsing | iex"crates.io: cargo install skrills
See installation guide for HTTP transport setup, systemd services, and advanced options.
# Validate skills for Codex/Copilot/Cursor compatibility
skrills validate --target both --autofix
# Analyze token usage
skrills analyze --min-tokens 1000 --suggestions
# Sync from Claude to all other CLIs
skrills sync-all
# Sync between specific environments
skrills sync --from cursor --to claude
# Start MCP server and open the browser dashboard
skrills serve --http 127.0.0.1:3000 --open
# Interactive TUI dashboard
skrills tui
# Launch an agent with automatic backend routing (Claude -> Codex fallback)
skrills multi-cli-agent my-agentSee CLI reference for all commands including
skill lifecycle management (skill-deprecate, skill-rollback,
skill-import, skill-score, skill-catalog).
Skrills syncs eight asset types across four CLI environments. Each cell reflects what the adapter reads and writes today:
| Asset | Claude Code | Codex CLI | Copilot CLI | Cursor |
|---|---|---|---|---|
| Skills | Y | Y | Y | Y |
| Commands | Y | Y | -- | Y |
| Agents | Y | -- | Y | Y |
| MCP Servers | Y | Y | Y | Y |
| Hooks | Y | -- | -- | Y |
| Instructions / Rules | Y | -- | Y | Y |
| Preferences | Y | Y | Y | -- |
| Plugin Assets | Y | -- | -- | Y |
Plugin assets (scripts, binaries, libraries) are mirrored from the
Claude plugin cache to ~/.cursor/plugins/cache/, preserving the
directory hierarchy so that skills can reference companion scripts.
Cursor rules (.mdc files) are mapped bidirectionally via mode
derivation (alwaysApply, glob-scoped, agent-requested).
See ADR 0006 for the
mapping strategy and sync guide for
workflows.
| Crate | Purpose |
|---|---|
cli |
Binary entry point (delegates to server crate) |
server |
MCP server, HTTP transport, security middleware |
validate |
Validation logic for Claude/Codex/Copilot/Cursor compatibility |
analyze |
Token counting, dependency analysis, optimization |
intelligence |
Recommendations, project analysis, skill generation |
sync |
Multi-directional sync with adapters for each CLI (Claude, Codex, Copilot, Cursor) |
dashboard |
TUI and browser-based skill visualization |
discovery |
Skill discovery and ranking |
state |
Environment config, manifest settings, runtime overrides |
metrics |
SQLite-based telemetry for invocations, validations, sync |
subagents |
Shared subagent runtime and backends |
tome |
Research API orchestration, caching, PDF serving |
test-utils |
Shared test infrastructure (fixtures, RAII guards, temp dirs) |
See architecture docs for the crate dependency graph and runtime flow.
Create ~/.skrills/config.toml for persistent settings:
[serve]
auth_token = "your-secret-token"
tls_auto = true
cors_origins = "https://app.example.com"Precedence: CLI flags > environment variables > config file.
See security docs for TLS setup (skrills cert
subcommand) and FAQ for environment variables.
| Resource | Description |
|---|---|
| User Guide | Primary documentation (mdBook) |
| CLI Reference | All commands with examples |
| MCP Tutorial | Server setup and tool reference |
| Sync Guide | Cross-CLI sync workflows (Claude, Codex, Copilot, Cursor) |
| Token Optimization | Context window management |
| FAQ | Common questions |
| Security | Auth, TLS, threat model |
| Changelog | Release history |
- No runtime skill injection: Skrills validates and syncs files; it does not inject skills into prompts at runtime.
- Copilot command sync: Copilot CLI does not support slash commands, so command sync is skipped.
- Cursor preferences: Cursor preferences are not yet mapped; preference sync is skipped for Cursor targets.
- Empirical mining: Session history parsing works best with recent Claude Code / Codex CLI versions.
- LLM generation: Requires
ANTHROPIC_API_KEYorOPENAI_API_KEYfor skill creation.
Skrills validates, analyzes, and syncs skills from these exemplar plugin marketplaces:
- superpowers -- Opinionated skill pack for Claude Code covering TDD, code review, planning, debugging, and development workflows.
- claude-night-market -- Plugin marketplace for Claude Code with skills, agents, hooks, and commands across multiple domains.
make lint test --quietRequires Rust 1.75+. See development guide for test coverage, CI, and contribution workflow.
- Security issues: See security policy and threat model
- Bug reports: Include OS,
skrills --version, and logs (--trace-wirefor MCP) - Pull requests: Follow process guidelines; update docs/tests with code

