Compile validated Agent Skill sources into portable, installable bundles.
Project description
Degardis
Degardis is a command-line compiler for authors of portable Agent Skills. It turns structured YAML sources into self-contained bundles for Claude, Codex, Copilot, Cursor, Roo, and ChatGPT. Before writing an artifact, it validates the source, selected profiles, generated paths, and generated links.
Authoring stays separate from generated output: edit the source files, validate them, and rebuild either an installable folder or a distributable ZIP.
Quick start
Degardis requires Python 3.10 or later. Install it from PyPI:
python -m pip install degardis
degardis --version
For an isolated command-line installation, use pipx install degardis.
To work on Degardis from this repository instead:
python -m pip install -e .
degardis validate examples/structured-summary
degardis list examples/structured-summary
degardis build examples/structured-summary --output .artifacts
The successful build ends with Summary: 1 skill built as folder. and reports
the artifact path. The generated folder is ready to inspect or install:
.artifacts/structured-summary/
SKILL.md
agents/openai.yaml
references/
scripts/
assets/
Degardis writes only beneath the requested output root. Rebuilding a skill replaces that skill's existing folder and ZIP there, while preserving unrelated entries. See Artifact format before building directly into an agent's skill directory.
Add the example's optional profile or produce a ZIP:
degardis build examples/structured-summary --profile detailed --output .artifacts
degardis build examples/structured-summary --zip --output .artifacts
examples/structured-summary is the canonical public example used throughout
the guides and CLI help. It summarizes supplied material from any subject;
synthetic skills under tests/fixtures are compiler test data.
Companion skills
The Degardis skills catalog contains reusable skills authored with Degardis.
For the smoothest authoring experience, use Degardis Authoring. It guides a skill from initial design through review, validation, packaging, and installation while applying Degardis conventions across manifests, workflows, entries, profiles, scripts, and assets.
Commands
degardis list PATH [PATH ...]
degardis validate PATH [PATH ...]
degardis build PATH [PATH ...] --output PATH [--profile [SKILL:]PROFILE] [--zip]
Run degardis COMMAND --help for exact options and examples. All commands
accept individual skill directories, directories containing skills at any
depth, or a mixture of both. This lets a source tree group skills into
subdirectories while building all of them with one command.
An unqualified profile name applies to every selected skill that defines it.
SKILL:PROFILE selects one owner, and all selects all available profiles.
Supplying explicit selectors replaces manifest defaults for that build.
For exact command behavior, profile selectors, source schemas, and the Python API, see the reference.
Documentation
| Reader goal | Document |
|---|---|
| Build and install the example | Getting started |
| Understand the source and artifact models | Concepts |
| Create or modify a skill | Authoring guide |
| Look up commands, schemas, or the Python API | Reference |
| Inspect and install generated output | Artifact format |
Development
python -m unittest discover -s tests -v
python -m degardis validate examples/structured-summary
python -m degardis build examples/structured-summary --profile all --output .artifacts
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 degardis-1.0.0.tar.gz.
File metadata
- Download URL: degardis-1.0.0.tar.gz
- Upload date:
- Size: 49.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0221baa2666415cf26b63778583de79a96df1dc05a9091f0fae46838b3102010
|
|
| MD5 |
c50fb4b59a0031c17e445fd93664ebc0
|
|
| BLAKE2b-256 |
76d9c21366214ae51b90085ad02cb9ef91413477b1644f3990bf455e2d81bd57
|
Provenance
The following attestation bundles were made for degardis-1.0.0.tar.gz:
Publisher:
publish.yml on Khojasteh/degardis
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
degardis-1.0.0.tar.gz -
Subject digest:
0221baa2666415cf26b63778583de79a96df1dc05a9091f0fae46838b3102010 - Sigstore transparency entry: 2269968724
- Sigstore integration time:
-
Permalink:
Khojasteh/degardis@5537d26a07af57766642f68c7f48c146d567e5f8 -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/Khojasteh
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5537d26a07af57766642f68c7f48c146d567e5f8 -
Trigger Event:
release
-
Statement type:
File details
Details for the file degardis-1.0.0-py3-none-any.whl.
File metadata
- Download URL: degardis-1.0.0-py3-none-any.whl
- Upload date:
- Size: 25.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a0cae3dfa99fdefbb85fc40371abfcf77b0c02d18e1a89ee59dd7948e748b5d9
|
|
| MD5 |
383042ca729cd673293e43dd04eafd69
|
|
| BLAKE2b-256 |
563095b7ab3fb0201309d9195ae6322b23f2c034ef707b411a635f0b3b40f8b3
|
Provenance
The following attestation bundles were made for degardis-1.0.0-py3-none-any.whl:
Publisher:
publish.yml on Khojasteh/degardis
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
degardis-1.0.0-py3-none-any.whl -
Subject digest:
a0cae3dfa99fdefbb85fc40371abfcf77b0c02d18e1a89ee59dd7948e748b5d9 - Sigstore transparency entry: 2269968977
- Sigstore integration time:
-
Permalink:
Khojasteh/degardis@5537d26a07af57766642f68c7f48c146d567e5f8 -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/Khojasteh
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5537d26a07af57766642f68c7f48c146d567e5f8 -
Trigger Event:
release
-
Statement type: