Skills

Skills are reusable agent instructions for AI coding tools. Rules are governance guidelines or coding standards. Both are versioned, organized into folders, and installable across eight platforms.

Types

A skill provides agent instructions, capabilities, or workflows — installed into your tool's skill directory.

A rule provides governance guidelines or coding standards. On some platforms, rules are placed in a separate directory (e.g. .claude/rules/).

Every skill is a SKILL.md package

A skill is a folder with a SKILL.md at its root — plus, optionally, any scripts, references, and assets. The SKILL.md is the skill's content: its frontmatter description: is what shows on the skill's page and cards, and its body renders as the page's primary content.

The simplest skill is just the one file — write it in the dashboard editor or publish a Markdown file with the CLI. Multi-file skills are stored as a single versioned archive and unpacked on install. Publish one by dragging a folder or .zip onto the New Skill page, or with localskills publish path/to/folder.

Package limits: 100 MB compressed, 100 MB uncompressed, 500 files.

The New Skill page with the Folder tab selected, showing a drop zone for folders and zip files
The New Skill page accepts a dragged folder or .zip for package skills — with folder placement, tags, visibility, and type.
A package skill page showing the file tree with references, scripts, and SKILL.md
Package skills expose their full file tree — here a code-review skill with references and a helper script.
Note: Package skills install as folder-based Agent Skills on Claude Code, Cursor, Codex, Windsurf, GitHub Copilot, Cline, and OpenCode, each in that tool's native skills directory. Aider supports single-file text skills only, so package installs skip it with a notice.

Visibility

LevelBehavior
PublicDiscoverable in search, profiles, and explore. Installable by anyone.
PrivateVisible only to organization members. Requires authentication to install.
UnlistedAccessible via direct link only. Not shown in search or profiles.

Beyond visibility, private skills can be further scoped inside an organization with folder restrictions — see /docs/folders.

Versioning

Every publish creates a new version with a semantic version label (e.g. v1.2.0). Pushing an update bumps the patch version by default; the CLI and API accept --minor, --major, or an explicit semver. Content is hashed with SHA-256 so the CLI can detect whether an update is available.

The dashboard shows the full version history for each skill, and a role with the skill update permission can revert to any previous version with one click.

Running localskills pull compares the local content hash against the latest version and updates only when they differ.

A skill's dashboard page showing the current version, download stats, share URL, install command, and content
A skill's dashboard page: version, downloads, share URL, and the CLI install command.

Supported platforms

PlatformProject pathScopeMethod
Cursor.cursor/rules/{slug}.mdcGlobal + projectSymlink
Claude Code.claude/skills/{slug}/SKILL.mdGlobal + projectSymlink
Codex CLIAGENTS.mdGlobal + projectSection
Windsurf.windsurf/rules/{slug}.mdGlobal + projectSection / symlink
Cline.clinerules/{slug}.mdProject onlySymlink
GitHub Copilot.github/copilot-instructions.mdProject onlySection
OpenCode.opencode/rules/{slug}.mdGlobal + projectSymlink
Aider (text skills only).aider/skills/{slug}.mdProject onlySymlink

The CLI auto-detects which tools are installed and pre-selects them during interactive installs.

Install methods

Symlink (default on macOS/Linux) — Creates a symbolic link from the target location to the cached file in ~/.localskills/cache/. Pulling a new version updates the cache, and all symlinks pick up the latest content automatically.

Copy (default on Windows) — Writes an independent copy of the skill content into the target location. Running localskills pull re-writes the file with updated content.

Section — Embeds the skill in a shared file using marker comments:

<!-- localskills:start:{slug} -->
...skill content...
<!-- localskills:end:{slug} -->

Section-based installs are used for platforms that rely on a single shared file (e.g. GitHub Copilot's copilot-instructions.md or Codex CLI's AGENTS.md).

Skills — localskills.sh docs