OpenSkills: Bringing Claude Code’s Skill System to Every AI Coding Agent
A unified, open, and developer-friendly skill framework that lets any AI coding agent share, install, and use Claude Code–compatible skills.
1. Introduction: Why Skills Matter in AI Coding
In today’s AI-assisted programming era, we interact with various intelligent coding tools—Claude Code, Cursor, Windsurf, Aider, and more.
What separates a simple chatbot from a true AI assistant is the skill system—a structured set of task-specific abilities that extend what the AI can do.
OpenSkills exists to make that system universal.
It brings Anthropic’s Claude Code skill architecture to all coding agents, allowing them to share and reuse skills seamlessly.
The idea is simple yet powerful:
Skills should be portable, human-readable, and agent-agnostic, not locked inside a single ecosystem.
2. What Is OpenSkills?
OpenSkills is an open-source CLI tool that fully replicates Claude Code’s skill system, maintaining 100% compatibility in both structure and behavior.
With it, you can:
-
Install and manage skills from any GitHub repository. -
Synchronize skills across multiple AI agents. -
Store, version, and share skill files within your own projects.
In short, OpenSkills transforms skills from isolated code snippets into reusable knowledge modules for every AI development environment.
3. Quick Start (HowTo)
Getting started takes only three steps:
npm i -g openskills
openskills install anthropics/skills
openskills sync
After syncing, your agent will automatically include the same <available_skills> format used by Claude Code.
4. Full Compatibility with Claude Code
OpenSkills doesn’t imitate—it mirrors.
Every key component of Claude Code’s skill mechanism is preserved.
| Feature | Claude Code | OpenSkills |
|---|---|---|
| System prompt | Built-in | Stored in AGENTS.md |
| Invocation | Skill("pdf") |
openskills read pdf |
| Format | <available_skills> XML |
Identical |
| Folder structure | .claude/skills/ |
Same |
| Skill format | SKILL.md (YAML + Markdown) |
Same |
| Progressive disclosure | Supported | Supported |
| Bundled resources | references/, scripts/, assets/ |
Same |
The only difference: Claude Code calls a built-in tool, while OpenSkills uses a CLI command.
5. How It Works
5.1 Claude Code’s Native Skill Process
When you ask Claude Code, “Extract data from this PDF,” the system:
-
Scans the <available_skills>list. -
Finds the “pdf” skill. -
Invokes Skill("pdf"). -
Loads the SKILL.mdinstructions. -
Executes tasks accordingly.
This structure ensures consistent, predictable behavior and avoids context overload.
5.2 OpenSkills’ Skill Execution Flow
OpenSkills uses the same XML-based definition inside AGENTS.md:
<skills_system priority="1">
<available_skills>
<skill>
<name>pdf</name>
<description>Comprehensive PDF toolkit for text extraction, table parsing, and document merging.</description>
<location>project</location>
</skill>
</available_skills>
</skills_system>
Execution flow:
-
User issues a request. -
Agent scans <available_skills>. -
Runs Bash("openskills read pdf"). -
Loads the corresponding SKILL.mdcontent. -
Executes instructions.
From the AI’s perspective, the behavior is identical to Claude Code—only the trigger method changes.
6. Understanding SKILL.md
Each skill is a self-contained folder containing one core file: SKILL.md.
Here’s the typical structure:
---
name: pdf
description: A full toolkit for creating, merging, and analyzing PDF files.
---
# PDF Skill Instructions
1. Install dependencies: `pip install pypdf2`
2. Run the script `scripts/extract_text.py`
3. Use templates from the provided output directory
Key characteristics:
-
Readable YAML header for metadata -
Human-friendly Markdown for step-by-step guidance -
Supports progressive loading—instructions are fetched only when invoked -
Includes optional subdirectories ( scripts/,assets/,references/)
This design makes SKILL.md both human- and machine-friendly.
7. Command Reference
OpenSkills is operated entirely via CLI commands:
openskills install <source> [options]
openskills sync [-y]
openskills list
openskills read <name>
openskills manage
openskills remove <name>
Common Flags
| Flag | Description |
|---|---|
--global |
Installs skills globally (~/.claude/skills) |
--universal |
Installs to .agent/skills/ for shared environments |
-y |
Runs non-interactively (for CI/CD) |
Typical Scenarios
| Goal | Command | Description |
|---|---|---|
| Project-level setup | openskills install anthropics/skills |
Installs to local .claude/skills/ |
| Global sharing | openskills install anthropics/skills --global |
Shared across all projects |
| Multi-agent usage | openskills install anthropics/skills --universal |
For Claude Code + Cursor/Aider |
8. Interactive CLI Experience
Unlike plain terminal scripts, OpenSkills features an elegant TUI (text user interface).
Installation
-
Checkbox selection of skills. -
Displays name, description, and size. -
All selected by default.
Sync
-
Select skills to include in AGENTS.md. -
Pre-selects those already synced. -
Empty selection removes the skill section.
Manage
-
Safely remove unused skills. -
No pre-selection—reduces error risk.
This approach makes OpenSkills approachable for developers and non-experts alike.
9. Why Not MCP?
Some developers wonder: if Anthropic’s Model Context Protocol (MCP) connects AI to external tools, why not use it for skills?
Here’s the difference:
| Aspect | MCP | OpenSkills (Skills System) |
|---|---|---|
| Type | Live protocol | Static file system |
| Purpose | Real-time integration, APIs | Reusable task logic |
| Server dependency | Required | None |
| Compatibility | Limited | Universal |
| Implementation | Networked service | Local CLI instructions |
In short:
-
MCP is for dynamic services (databases, APIs, live data). -
Skills are for static workflows (document editing, data extraction).
OpenSkills keeps things simple, universal, and offline-ready—perfect for static, reusable instructions.
10. Universal Mode for Multi-Agent Teams
If you use multiple agents (like Claude + Cursor), installing skills to .claude/skills/ can create duplication.
Use the Universal Mode instead:
openskills install anthropics/skills --universal
Advantages
-
Works across all agents. -
Avoids duplicate definitions. -
Keeps project directories clean.
Search Priority
-
./.agent/skills/ -
~/.agent/skills/ -
./.claude/skills/ -
~/.claude/skills/
When a skill exists in multiple locations, the higher-priority version is used.
11. Creating Your Own Skills (HowTo)
Creating a skill is simple and modular.
Minimal Structure
my-skill/
└── SKILL.md
With Additional Resources
my-skill/
├── SKILL.md
├── references/
│ └── api-docs.md
├── scripts/
│ └── process.py
└── assets/
└── template.json
Inside SKILL.md
1. Read `references/api-docs.md`
2. Run `scripts/process.py`
3. Use `assets/template.json` as the base template
Publishing Steps
-
Push your folder to GitHub: your-username/my-skill -
Others can install with:
openskills install your-username/my-skill
This open workflow encourages community-driven knowledge sharing.
12. Example Skills
OpenSkills supports Anthropic’s public skills repository, including:
-
xlsx — Spreadsheet creation, formulas, and analytics -
docx — Word document editing and collaboration -
pdf — PDF parsing, merging, and form handling -
pptx — Presentation creation and editing -
canvas-design — Visual and poster design -
mcp-builder — Build MCP-compatible servers -
skill-creator — Guide to writing new skills
These examples demonstrate how structured instructions can empower any AI coding agent.
13. System Requirements
To run OpenSkills, you’ll need:
-
Node.js 20.6 or higher -
Git for repository cloning
No external dependencies are required.
14. Frequently Asked Questions (FAQ)
Q1: Will OpenSkills interfere with Claude Code?
No. They operate independently. Claude uses its plugin system, while OpenSkills manages CLI-based skills.
Q2: Can I share skills across multiple projects?
Yes. Use the --global flag to install skills globally for all environments.
Q3: How can I remove unwanted skills?
Run openskills manage and uncheck the ones you want to delete.
Q4: Does OpenSkills require an internet connection?
Only during installation—it can run offline afterward.
Q5: Can I build my own marketplace?
Absolutely. Just push your skills to GitHub, and anyone can install them directly.
15. Conclusion
OpenSkills redefines what it means for AI agents to have “skills.”
It breaks down walls between ecosystems, standardizes instruction formats, and enables genuine interoperability.
By transforming skills into modular, human-readable knowledge units, OpenSkills moves us one step closer to a unified, open AI development world.
If you’re using multiple agents or want consistent skill behavior across tools, OpenSkills is a long-term solution worth integrating.
License: Apache 2.0
Attribution: Implements Anthropic’s Agent Skills specification.
Disclaimer: Not affiliated with Anthropic. Claude, Claude Code, and Agent Skills are trademarks of Anthropic PBC.
✅ Structured Schema Data
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "TechArticle",
"headline": "OpenSkills: Bringing Claude Code’s Skill System to Every AI Coding Agent",
"author": { "@type": "Person", "name": "OpenSkills Contributors" },
"publisher": { "@type": "Organization", "name": "OpenSkills Project" },
"about": "OpenSkills is an open-source CLI tool that replicates Claude Code’s skill system for all AI coding agents.",
"inLanguage": "en",
"mainEntityOfPage": "https://github.com/openskills",
"keywords": ["OpenSkills", "Claude Code", "AI coding agents", "SKILL.md", "AGENTS.md", "CLI tool", "AI development"],
"hasPart": [
{
"@type": "HowTo",
"name": "How to Install OpenSkills",
"step": [
{ "@type": "HowToStep", "text": "Run npm i -g openskills" },
{ "@type": "HowToStep", "text": "Install Anthropic's official skills with openskills install anthropics/skills" },
{ "@type": "HowToStep", "text": "Sync skills to AGENTS.md using openskills sync" }
]
},
{
"@type": "HowTo",
"name": "How to Create a Custom Skill",
"step": [
{ "@type": "HowToStep", "text": "Create a my-skill directory and add SKILL.md" },
{ "@type": "HowToStep", "text": "Include any helper scripts or assets as needed" },
{ "@type": "HowToStep", "text": "Push to GitHub and install via openskills install your-username/my-skill" }
]
},
{
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Will OpenSkills interfere with Claude Code?",
"acceptedAnswer": { "@type": "Answer", "text": "No. OpenSkills and Claude Code work independently." }
},
{
"@type": "Question",
"name": "Can I share skills across projects?",
"acceptedAnswer": { "@type": "Answer", "text": "Yes. Use the --global flag for shared installation." }
},
{
"@type": "Question",
"name": "Does it work offline?",
"acceptedAnswer": { "@type": "Answer", "text": "Yes. Only installation requires network access." }
}
]
}
]
}
</script>

