Releases: numman-ali/openskills
v1.5.0
Added
openskills update- Refresh installed skills from their recorded source (default: all)- Source metadata tracking - Install now records origin info for reliable updates
Changed
- Multi-skill read -
openskills readsupports comma-separated names - Generated usage text - Clarified read invocation for shell usage
- README - Added update guidance and human usage tips
Fixed
- Update UX - Skips skills without source metadata and lists them for re-install
v1.4.0 - Project-Local Install Clarity
Changed
- README: clarify project-local default installs and remove redundant sync note
- Installer messages: call out project-local default vs --global explicitly
Full Changelog: v1.3.2...v1.4.0
v1.3.2
Changed
- Docs and generated AGENTS.md usage now use \ consistently
v1.3.1
Fixed
- Windows installs: path validation now works on Windows (no more "Security error: Installation path outside target directory")
- CLI version:
openskills --versionreads from package.json - Root SKILL.md: single-skill repos with SKILL.md at repo root now install correctly
v1.3.0 - CI/CD, Local Development & Security
What's New in v1.3.0
This release focuses on making OpenSkills more useful for CI/CD pipelines, local skill development, and improving security.
Highlights
- Install from anywhere - Local paths, private git repos, or any GitHub repo
- Sync to any file - New
--outputflag for custom output paths - Fully non-interactive -
--yesflag now skips all prompts for CI/CD - Symlink support - Develop skills locally with symlinks
- Security hardening - Path traversal protection and safe symlink handling
New Features
🔗 Symlink Support (#3)
Skills can now be symlinked into the skills directory. This enables:
- Git-based skill updates (clone repo, symlink skills)
- Local development workflows
- Sharing skills across multiple projects
ln -s ~/dev/my-skills/custom-skill .claude/skills/custom-skill
openskills list # Shows custom-skill📁 Configurable Output Path (#5)
New --output / -o flag for the sync command:
openskills sync --output .ruler/AGENTS.md
openskills sync -o custom-rules.md- Auto-creates the file with a heading if it doesn't exist
- Auto-creates nested directories if needed
- Works with any
.mdfile
📂 Local Path Installation (#10)
Install skills from your local filesystem:
openskills install /path/to/skill
openskills install ./local-skills/my-skill
openskills install ~/my-skills/custom-skill🔐 Private Git Repository Support (#10)
Install from private repositories using SSH:
openskills install git@github.com:your-org/private-skills.git
openskills install https://gitlab.com/group/skills.git🤖 Fully Non-Interactive Mode (#6)
The --yes flag now skips all prompts, including overwrites:
openskills install anthropics/skills -y # Overwrites existing without prompting
openskills sync -y # Non-interactive syncPerfect for CI/CD pipelines and automation scripts.
Security Improvements
- Path traversal protection - Validates installation paths stay within target directory
- Symlink dereference -
cpSyncusesdereference: trueto safely copy symlink targets - Non-greedy YAML regex - Prevents potential ReDoS in frontmatter parsing
Test Coverage
Added 77 new tests across 5 test files (88 total):
| Test File | Tests | Coverage |
|---|---|---|
tests/utils/skills.test.ts |
13 | Symlink detection, deduplication |
tests/commands/install.test.ts |
27 | Local paths, git URLs, security |
tests/commands/sync.test.ts |
17 | XML generation, --output flag |
tests/integration/e2e.test.ts |
16 | Full CLI workflows |
tests/utils/yaml.test.ts |
10 | YAML parsing, regex security |
Upgrading
npm update -g openskills
# or
npm install -g openskills@1.3.0Full Changelog: v1.2.1...v1.3.0
v1.2.1 - Documentation Fixes
Documentation Fixes
Fixed README inconsistencies and removed duplicate content:
- ✅ Removed duplicate 'For Advanced Users' section
- ✅ Fixed incorrect
--projectflag usage (project is now default) - ✅ Consolidated all universal mode documentation
- ✅ Updated all examples with correct commands
No code changes - purely documentation cleanup.
Install:
npm i -g openskills@1.2.1v1.2.0 - Universal Skills Support
Major Features
🚀 Universal Skills Support (--universal flag)
Install skills to .agent/skills/ for use with any coding agent (Claude Code, Cursor, Windsurf, Aider) via AGENTS.md:
# Install to .agent/skills (universal)
openskills install anthropics/skills --universal
# Install to .agent/skills globally
openskills install anthropics/skills --global --universalUse case: Advanced users running multiple coding agents with one AGENTS.md file. Avoids duplicates with Claude Code's native plugin system.
🎯 Project Install Now Default
Project install is now the default behavior (was global):
# Default: installs to .claude/skills (project)
openskills install anthropics/skills
# Advanced: install globally
openskills install anthropics/skills --globalBreaking: Removed --project flag, added --global flag.
📁 4 Installation Locations Supported
Priority order (read/list/sync check all locations):
.agent/skills/(project universal)~/.agent/skills/(global universal).claude/skills/(project)~/.claude/skills/(global)
🔍 Smart Deduplication
Skills with same name only show once in list (highest priority wins). Prevents duplicates when skills exist in both .agent/ and .claude/.
What's Changed
Added:
--universalflag for.agent/skills/installation--globalflag (replaced--project)- Support for 4 installation locations
- Deduplication in list/read/sync commands
- 2 new tests (11 total passing)
Changed:
- Default install location: global → project
- Priority order:
.agent/before.claude/
Removed:
--projectflag (project is now default)
Migration Guide
# Before v1.2.0
openskills install X # Global install
openskills install X --project # Project install
# After v1.2.0
openskills install X # Project install (NEW DEFAULT)
openskills install X --global # Global install
openskills install X --universal # Universal (.agent/skills)Use Cases
Claude Code only:
openskills install anthropics/skills
# → .claude/skills (default)Claude Code + other agents (Cursor, Windsurf):
openskills install anthropics/skills --universal
# → .agent/skills (universal AGENTS.md)Share skills across all projects:
openskills install anthropics/skills --global
# → ~/.claude/skillsInstallation
npm i -g openskills@1.2.0Full Changelog
v1.1.0 - Comprehensive Documentation & Location Tag Fix
Major Improvements
🔧 Fixed Missing Location Tag
- Critical fix:
openskills syncnow outputs<location>tag matching Claude Code's format - Skills show
<location>project</location>or<location>global</location> - Ensures 100% compatibility with Claude Code's
<available_skills>XML structure
📚 Comprehensive Single-Page README
- Removed docs folder - everything now in one README
- Clear flow: What → How → Why
- Added "How It Works" section with Claude Code vs OpenSkills comparison
- Added "Why CLI Instead of MCP?" explaining design rationale
- Side-by-side comparison table showing identical implementation
- Full examples of both Claude Code and OpenSkills prompts
📖 Enhanced Documentation
- Complete Claude Code system prompt example
- Full OpenSkills AGENTS.md example
- Detailed progressive disclosure explanation
- Interactive TUI command examples
- Complete skill authoring guide with bundled resources
What's Changed
Fixed:
- Missing
<location>tag in generated XML (now matches Claude Code exactly)
Improved:
- Single comprehensive README (no more separate docs)
- Clear explanation of skills system and progressive disclosure
- Better organization and flow
Removed:
- Separate docs folder (consolidated into README)
Installation
npm i -g openskills@1.1.0Full Changelog
OpenSkills v1.0.0 - Universal Skills Loader
OpenSkills v1.0.0 - Initial Release
Universal skills loader for AI coding agents. Install and use Anthropic SKILL.md format skills in any agent (Claude Code, Cursor, Windsurf, Aider).
Installation
npm i -g openskillsQuick Start
# Install skills (interactive selection)
openskills install anthropics/skills --project
# Sync to AGENTS.md (interactive, pre-selects current state)
openskills sync
# List installed skills
openskills listFeatures
✅ Interactive by Default
- Checkbox selection for install and sync
- Smart defaults (pre-selects current AGENTS.md state)
- Beautiful TUI with colors and spinners
✅ Claude Code Compatible
- Uses
.claude/skills/standard location - Warns about marketplace skill conflicts
- Coexists with native Claude Code plugins
✅ Universal
- Works in any AI agent with Bash support
- Claude Code, Cursor, Windsurf, Aider
- No vendor lock-in
✅ Professional Quality
- TypeScript with strict mode
- 9 unit tests with vitest
- CI/CD on Node 18/20/22
- Comprehensive documentation
Commands
openskills install <source> [--project] [-y] # Install from GitHub
openskills sync [-y] # Update AGENTS.md
openskills list # Show installed
openskills read <name> # Read skill (for agents)
openskills manage # Remove skills (interactive)
openskills remove <name> # Remove one skillWhat's Included
- install: Interactive checkbox selection with skill sizes
- sync: Smart pre-selection based on current AGENTS.md
- manage: Interactive multi-select removal
- Agent-focused AGENTS.md: Usage instructions written for AI agents
- Conflict warnings: Detects Anthropic marketplace skills
- Graceful Ctrl+C: Clean exits, no stack traces
Examples
Install skills:
openskills install anthropics/skills --projectShows:
? Select skills to install
[x] xlsx 45.2KB
[x] pdf 120.5KB
[ ] algorithmic-art 85.3KB
Sync to AGENTS.md:
openskills syncPre-selects skills already in AGENTS.md. Check more to add, uncheck to remove.
Documentation
Attribution
Implements Anthropic's Agent Skills specification.
Not affiliated with Anthropic. Claude, Claude Code, and Agent Skills are trademarks of Anthropic, PBC.
Install: npm i -g openskills
Follow: @nummanthinks for updates