---
name: skill-release-gate
description: Evaluate an Agent Skill bundle for structural integrity, trigger quality, artifact improvement, script correctness, safety, installed-tree integrity, and target-host portability before release.
license: MIT
metadata:
lesson: "27"
---
# Skill release gate
Use this skill before publishing or distributing an Agent Skill directory bundle.
## Workflow
1. Resolve `SKILL_ROOT` to the absolute directory containing this installed
`SKILL.md`. Do not assume the process cwd is the installed bundle.
2. Resolve `TARGET_ROOT` from the original workspace working directory and
resolve the user-supplied candidate as an absolute `TARGET_BUNDLE`.
3. Read `references/eval-contract.md` from `SKILL_ROOT`.
4. Inspect the positive and near-miss trigger cases in
`evals/cases.json` under `TARGET_BUNDLE`.
5. Inspect the shared baseline and with-skill assertions in
`evals/artifacts.json` under `TARGET_BUNDLE`.
6. Inspect the explicit script and safety results in
`evals/evidence.json` under `TARGET_BUNDLE`.
7. Inspect the declared runtime capabilities in
`assets/hosts.json` under `TARGET_BUNDLE` and verify the target file hashes
against its `assets/manifest.json`.
8. For production, replace deterministic predictions, artifacts, evidence,
and host capabilities with captured results; set all four captured modes;
and bind every raw trigger observation, both artifacts, the complete
evidence set, and the non-empty host matrix to non-empty sources and
matching SHA-256 provenance digests. These local checks can set
`localEvidenceReady`, but locally recomputable hashes do not prove capture.
9. Obtain an external JSON attestation whose `evidenceRoot` matches the report,
plus the SHA-256 of its exact bytes from a separate trusted policy or
release channel. The attestation must be a regular file outside the target
bundle.
10. Before execution, show the exact resolved argv. The installed evaluator is
`scripts/evaluate_skill.py` under `SKILL_ROOT`. For the shipped lesson
fixture, build argv from `python3`, that absolute evaluator path,
`--fixture-demo`, and the absolute `TARGET_BUNDLE`. For production, use the
same installed script with `--attestation`,
`--trusted-attestation-sha256`, and the absolute `TARGET_BUNDLE`, without
`--fixture-demo`.
11. Return `checksPassed`, `fixturePassed`, `localEvidenceReady`,
`trustAnchorValid`, `productionReady`, and `passed` with the evidence root,
evaluation modes, failed checks, precision, recall, every raw trigger
observation, per-case repeated-run rates, artifact comparison, script and
safety evidence, installed-tree verification, and portability matrix.
Include the resolved script path, resolved target path, cwd, exact argv,
and exit code. Mark unavailable observations unverified.
## Output contract
Return the complete JSON evaluation report. Preserve every layer-specific check and its evidence so a passing aggregate cannot hide a routing, artifact, script, safety, installed-tree, or portability failure. `fixturePassed` reports a successful teaching fixture. `localEvidenceReady` reports only local digest integrity. `passed` is true only when `productionReady` also has a valid out-of-bundle trust anchor.
## Failure behavior
If configuration is invalid, provenance is absent or mismatched, the trusted attestation is missing or invalid, a file hash differs, a required capability is absent, or any production gate fails, stop with a nonzero result and report the failed layer. The explicit `--fixture-demo` path may exit successfully only when `fixturePassed` is true, and it never makes a release claim. Never publish, install elsewhere, repair evidence, create the trust decision, or weaken a threshold automatically.
Do not publish a bundle merely because SKILL.md parses or one positive prompt activates. Do not label a package portable when a target drops required companion files or ignores required runtime extensions.
---
name: course-guide
description: Topic router for the AI Engineering from Scratch curriculum. Give it a topic, a question, or a bug you are fighting, and it points at the exact lessons that teach it, plus the right next command. Trigger phrases: "where do I learn", "which lesson covers", "course guide", "I'm stuck on", "what should I do next", "teach me MCP", "teach me Agent Skills", "where do I prepare for a Claude certification"
---
---
name: learn
description: Interactive lesson tutor for the AI Engineering from Scratch curriculum. Reads LEARNING.md, fetches the next lesson, teaches it section by section in the terminal, quizzes at the end, and records progress. Works cloned or entirely over raw.githubusercontent.com — no setup required. Trigger phrases: "next lesson", "teach me", "continue the course", "let's learn", "resume learning"
---
---
name: start-learning
description: One-time onboarding for the AI Engineering from Scratch curriculum (523 lessons, 20 phases). Interviews the learner, runs the placement quiz, and writes LEARNING.md, a persistent study plan the learn skill drives. Trigger phrases: "start learning", "set up the course", "begin the curriculum", "onboard me", "create my learning plan"
---
---
name: build-project
description: Hands-on project tutor for the AI Engineering from Scratch Projects section. Guides a learner through one stage of a real project per session: read the stage lesson, predict, write the code, run the stage grader, reflect, and record progress in PROJECTS-LEARNING.md. Gives hints, never full solutions. Trigger phrases: "build a project", "next project stage", "continue my project", "start the research report agent".
---