Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add metraton/gaia --skill gaia-releasegit clone --depth 1 https://github.com/metraton/gaiaWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/metraton/gaia/gaia-release)<a href="https://agentmods.dev/skills/metraton/gaia/gaia-release"><img src="https://agentmods.dev/badge/skills/metraton/gaia/gaia-release/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/metraton/gaia/gaia-release"><img src="https://agentmods.dev/badge/skills/metraton/gaia/gaia-release.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00037 | $0.07036 |
| Opus 5 | $0.00018 | $0.03518 |
| Sonnet 5 | $0.00007 | $0.01407 |
| Haiku 4.5 | $0.00004 | $0.00704 |
Grade A, and why
gaia-release scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 138 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Gaia Release
The norm for getting Gaia onto a machine and into the registry, organized as three layers of increasing confidence. The user expresses exactly one of three intentions -- install local (Layer 1, fast iteration), pre-release (Layer 2, the confidence gate), or release (Layer 3, the official publish) -- and each maps to a complete, automated sequence the orchestrator runs end-to-end. The user never recalls a sub-step and never runs a release script by hand: the script is a tool the flow invokes, not a command the human must remember. This is the lesson of the sagas that shipped broken -- a release failed because a version source was bumped one file at a time and a forgotten pyproject.toml drifted; another needed a force-push to reconcile a tag. Every one of those was a manual step a human was trusted to remember and didn't. The fix is to norm the sequence so the steps cannot be forgotten: they are the flow, not a checklist beside it.
This skill orchestrates the sequence; it does not define what a healthy install looks like. Every layer closes by installing into a target workspace and then validating it -- and "how you validate" lives in gaia-verify, which owns the wire-up checklist and the per-surface checks. When a layer says "verify," it means "run gaia-verify for the matching mode." Keep the two apart: release is the when and in what order; verify is the did it come out right.
The delivery model: one plugin, two distribution channels
Gaia ships as a single plugin named gaia (scripts/build-plugin.py has VALID_PLUGINS = ("gaia",)). The package root IS the plugin, and it is the same tree as the git repo root -- there is no dist/ bundle. That single tree reaches a workspace through two distribution channels, and a change can pass on one while breaking the other:
- plugin surface (git marketplace source) -- Claude Code consumes the git repository directly:
.claude-plugin/marketplace.jsonadvertises thegaiaplugin with{"source": "github", "repo": "metraton/gaia"}, so/plugin marketplace add+/plugin installmake CC clone the repo into its plugin cache. This is the channel that loads Gaia's agents, skills, and hooks in Claude Code. The git source was adopted (commita43ef22) precisely because the priorsource: npmentry loaded 0 skills on/plugin install-- a confirmed CC gap -- while the identical tree loads all 32 skills via a git/local source. CC loads hooks from the repo root'shooks/hooks.json(the standard plugin convention) -- it does not usesettings.local.jsonfor hooks, and the root.claude-plugin/plugin.jsonis metadata only (no inlinehooksblock). Hooks are declared in exactly ONE place because CC reads both a plugin.json inline block ANDhooks/hooks.json; declaring them in both double-registered every hook and fired every event twice (fixed ina1b1245). Both.claude-plugin/plugin.jsonandhooks/hooks.jsonare generated from the manifest (prepack/generate:plugin-root) and tracked in git, so the cloned tree already carries them. Git sources support version pinning by ref/sha, andrelease:prepare'sbumpMarketplace()does exactly that: for github/git sources it setssource.ref = v<version>atomically alongsideplugin.version, so/plugin installclones the fixed, reproducible release tag instead of tracking moving default-branch HEAD (npm/local sources carry norefand are left untouched). - CLI / npm surface (npm package
@jaguilar87/gaia) --npm|pnpm install @jaguilar87/gaia(andgaia dev) install the npm package; this is what provides thegaiaCLI and the workspace wiring.gaia installthen wires the workspace: it symlinks.claude/{agents,tools,hooks,config,skills}(plus aCHANGELOG.mdlink) to the installed package and merges hook events intosettings.local.json. The DB is bootstrapped lazily on firstgaiaCLI use (_ensure_db_bootstrappedinbin/gaia) -- there is no npmpostinstall(removed so the install is non-invasive and works identically under npm and pnpm, which ignores lifecycle scripts by default). This surface reads hooks from the package root's generatedhooks/hooks.json(viamerge_local_hooksin_install_helpers.py), which is regenerated at pack time from the manifest.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago Changed · +2 lines 2d7d66cd7d56
- 10d ago First seen · 136 lines · 37 tokens per session scan A af6e329f8588
gaia-release is a skill published in the GitHub repository metraton/gaia (3 stars, last pushed today), licensed MIT. It adds 37 tokens to every session and 7,036 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
precommit
Pre-commit checks — lint:fix -> build -> test.
precommit-fast
Quick pre-commit checks — lint:fix -> test.
verify-gates
Runs the mechanical quality gates that the arcgentic state machine requires for state transitions. Invoked indirectly by transition.sh OR directly by orchestrator agent before declaring a state transition. Use when about to call transition.sh OR when manually verifying that a round artifact meets the gate criteria.…
workflow
Run the complete 5-step development workflow: focus problem → prevent over-development → test-first (TDD) → document → smart commit. Use when starting a new feature, or when the user runs /workflow or asks for the full development flow.
verify
Run the full JobPilot CI gate locally - Biome, knip, API + web typechecks, API and contracts tests, and the terminal .NET tests when terminal files changed. Use before committing, or when asked to "verify", "run checks", or "run the gate".
coverage-check
Run the repo's unit tests with coverage and verify that every file touched in the current change keeps line, branch, and function coverage at or above 95%. Language- and framework-agnostic. Use before committing, before PR creation, or when the user asks about coverage.