Platforms Overview
Source Resolution
When you pass a source string to skillx run or skillx scan, skillx resolves it using this priority order:
1. Local Path
Any source that starts with ./, /, ~/, or points to an existing file system path is treated as a local skill:
skillx run ./my-skill "prompt"skillx run /absolute/path/to/skill "prompt"skillx run ~/skills/my-skill "prompt"Local skills are used directly — no download or caching.
2. github: Prefix
The shorthand github: prefix resolves to a GitHub repository:
# owner/repo (skill at repo root)skillx run github:skillx-run/skillx-skills "prompt"
# owner/repo/path (skill in a subdirectory)skillx run github:skillx-run/skillx/examples/skills/code-review "prompt"
# owner/repo/path@ref (specific branch or tag)skillx run github:skillx-run/skillx/examples/skills/code-review@main "prompt"3. gist: Prefix
The shorthand gist: prefix resolves to a GitHub Gist:
skillx run gist:abc123 "prompt"skillx run gist:abc123@revision "prompt"4. Platform URL
Full URLs from any supported Git hosting platform are parsed automatically:
# GitHubskillx run https://github.com/org/repo/tree/main/path "prompt"
# GitLabskillx run https://gitlab.com/org/repo/-/tree/main/path "prompt"
# Bitbucketskillx run https://bitbucket.org/org/repo/src/main/path "prompt"
# Gitea / Codebergskillx run https://codeberg.org/user/repo/src/branch/main/path "prompt"
# SourceHutskillx run https://git.sr.ht/~user/repo/tree/main/item/path "prompt"
# HuggingFaceskillx run https://huggingface.co/user/repo/tree/main/path "prompt"5. Archive URL
Direct download links to ZIP or tar.gz archives:
skillx run https://example.com/skill.zip "prompt"skillx run https://example.com/skill.tar.gz "prompt"6. Error
If the source doesn’t match any of the above, skillx exits with an error.
Supported Platforms
| Platform | Status | Source Format |
|---|---|---|
| Local filesystem | Supported | ./path, /path, ~/path |
| GitHub | Supported | github:owner/repo/path or URL |
| GitLab | Supported | URL (gitlab.com + self-hosted) |
| Bitbucket | Supported | URL |
| Gitea / Codeberg | Supported | URL (auto-detected + self-hosted) |
| GitHub Gist | Supported | gist:id or URL |
| SourceHut | Supported | URL (tarball extraction) |
| HuggingFace | Supported | URL (models/datasets/spaces) |
| Archive | Supported | .zip / .tar.gz URL |
Caching Behavior
Remote skills are cached locally after download:
- Cache key: SHA-256 hash of the full source string
- Cache location:
~/.skillx/cache/<hash>/skill-files/ - Default TTL: 24 hours (configurable in
config.toml)
[cache]ttl = "7d" # 7 daysmax_size = "2GB"Use --no-cache to bypass caching for a single run:
skillx run --no-cache github:org/skills/my-skill "prompt"Manage the cache with:
skillx cache ls # List cached skillsskillx cache clean # Remove all cached entries