CLI Reference

The localskills CLI manages skill installation, publishing, and updates across AI coding tools.

login

$ localskills login [--token <token>]

Opens your browser for device code authentication. Your credentials are stored in ~/.localskills/config.json with 0600 permissions.

For headless environments, pass a token directly with --token to skip the browser flow.

logout

$ localskills logout

Clear the stored auth token from your local configuration.

whoami

$ localskills whoami

Display the current authenticated user's name, username, and email.

install

$ localskills install [slug] [options]
FlagDescription
-t, --target <platforms...>Target platforms: cursor, claude, codex, windsurf, cline, copilot, opencode, aider
-g, --globalInstall globally (user-level)
-p, --project [dir]Install in project directory
--symlinkCreate symlink to cached file
--copyCopy content directly into target location

When no flags are provided, the CLI runs interactively – prompting for target platform, scope, and install method. When all required flags are present, it runs non-interactively.

The CLI auto-detects appropriate defaults for each platform. If no slug is given, it lists available skills for interactive selection.

Note: GitHub Copilot and Codex CLI use the section install method (embedded markers in a shared file). Windsurf global installs also use sections.

publish

$ localskills publish [file] [options]
FlagDescription
-t, --team <id>Team to publish under
-n, --name <name>Skill display name
--visibility <v>public, private, or unlisted (default: private)
--type <t>skill or rule (default: skill)
-m, --message <msg>Version message

Publish a local file as a skill or rule. Omit the file argument to scan your project for unpublished skills across all platform directories:

.cursor/rules/
.claude/skills/
.claude/rules/
.windsurf/rules/
.clinerules/
.github/copilot-instructions.md
.opencode/rules/
.aider/skills/
AGENTS.md

share

$ localskills share [file] [options]
FlagDescription
-n, --name <name>Skill display name
--type <t>skill or rule (default: skill)

Share a skill anonymously without creating an account. On first use, the CLI generates an Ed25519 keypair stored in ~/.localskills/config.json to serve as your anonymous identity.

Shared skills are always unlisted — accessible only via the direct URL. They do not appear in explore or search results.

# Share a specific file
$ localskills share ./my-skill.md

# Interactive: scan and select
$ localskills share
Note: Anonymous users are limited to 10 shared skills. Sign up for unlimited publishing with localskills login.

pull

$ localskills pull [slug]

Pull the latest version of an installed skill. The CLI compares content hashes to determine whether an update is available. Symlinked skills auto-update when the cache is refreshed. Copied and section-based installs are re-written in place.

uninstall

$ localskills uninstall [slug] [--purge]

Remove an installed skill from all target platforms. Pass --purge to also delete the cached file from ~/.localskills/cache/.

list

$ localskills list [--public]

List available skills from your teams. Pass --public to filter to public skills only.