Declarative agent skill manager with pluggable backends.
Project description
🛠️ skeel
Declarative agent skill management.
skeel reads a desired-state manifest and applies it through a backend.
The first backend is gh skill from GitHub CLI.
✨ Features
- Desired state: declare skills, sources, shared install directory, and target agents in one YAML file
- Plan and diff: preview commands and compare managed skills against what's installed locally
- Apply and update: install missing skills and update gh-managed skills
- Agent links: installs once into a shared directory and links skills into agent-specific locations such as Claude Code
🚀 Quickstart
Run skeel directly with uvx:
uvx skeel --help
⚙️ Manifest
Default path: ~/.agents/.skill.yaml
version: 1
shared_dir: ~/.agents/skills
agents:
- universal
- claude-code
sources:
- source: openclaw/gogcli
allow_hidden_dirs: true
skills:
- gog
✨ Usage
uvx skeel plan # print commands
uvx skeel diff # compare desired vs installed skills
uvx skeel apply # install desired state
uvx skeel update # update installed gh-managed skills
uvx skeel path # print manifest path
🧰 Backend policy
skeel installs each skill into the shared directory with:
gh skill install <repo> <skill> --dir ~/.agents/skills --force
For claude-code, it creates symlinks from ~/.claude/skills/<skill> to the
shared skill directory.
📄 License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file skeel-0.1.0.tar.gz.
File metadata
- Download URL: skeel-0.1.0.tar.gz
- Upload date:
- Size: 7.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a0b31230191277472a1c73db23fba760e89afbff4e5eff096fef0ed991b4b8ea
|
|
| MD5 |
bcead7c1087eff72f4008332ee136557
|
|
| BLAKE2b-256 |
b638d845d461b100d1e60de4c822323a76a1ed2a9c21fec3dad7237905a71e1c
|
Provenance
The following attestation bundles were made for skeel-0.1.0.tar.gz:
Publisher:
release.yaml on mavam/skeel
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
skeel-0.1.0.tar.gz -
Subject digest:
a0b31230191277472a1c73db23fba760e89afbff4e5eff096fef0ed991b4b8ea - Sigstore transparency entry: 1815106598
- Sigstore integration time:
-
Permalink:
mavam/skeel@5714b346b2fbae5e41feb03ecc1e0ce4795afafe -
Branch / Tag:
refs/heads/main - Owner: https://github.com/mavam
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yaml@5714b346b2fbae5e41feb03ecc1e0ce4795afafe -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file skeel-0.1.0-py3-none-any.whl.
File metadata
- Download URL: skeel-0.1.0-py3-none-any.whl
- Upload date:
- Size: 7.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
81ef17967dea560b0531ffb3f02b1700d90e5db2b065ef94b644c957e1bc50a8
|
|
| MD5 |
6ef7e3ce0d7109448347590df715b2d9
|
|
| BLAKE2b-256 |
ae199982565d056203a8ef188501cf810b1a7b72b05059bb14749ca8ecf7fd9b
|
Provenance
The following attestation bundles were made for skeel-0.1.0-py3-none-any.whl:
Publisher:
release.yaml on mavam/skeel
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
skeel-0.1.0-py3-none-any.whl -
Subject digest:
81ef17967dea560b0531ffb3f02b1700d90e5db2b065ef94b644c957e1bc50a8 - Sigstore transparency entry: 1815106774
- Sigstore integration time:
-
Permalink:
mavam/skeel@5714b346b2fbae5e41feb03ecc1e0ce4795afafe -
Branch / Tag:
refs/heads/main - Owner: https://github.com/mavam
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yaml@5714b346b2fbae5e41feb03ecc1e0ce4795afafe -
Trigger Event:
workflow_dispatch
-
Statement type: