·
Last changedVersion:
This version passed the hardening gate. Hardening applied 4 targeted changes and preserved all other text. Classified findings before hardening: 0. Classified findings closed: 0. Classified findings remaining: 0. Unclassified scanner findings remaining: 0. Review findings closed: 8. Review findings remaining: 1.
None
None
Expand | File | Group | Subtype | Severity | Status |
|---|
No findings available
0 findings
Create exercise directory structures that pass pnpm ai-hero-cli internal lint, then commit with git commit once the user has reviewed the changes and explicitly confirmed (see the Commit step in the Workflow).
XX-section-name/ inside exercises/ (e.g., 01-retrieval-skill-building)XX.YY-exercise-name/ inside a section (e.g., 01.03-retrieval-with-bm25)XX, exercise number = XX.YYEach exercise needs at least one of these subfolders:
problem/ - student workspace with TODOssolution/ - reference implementationexplainer/ - conceptual material, no TODOsWhen stubbing, default to explainer/ unless the plan specifies otherwise.
Each subfolder (problem/, solution/, explainer/) needs a readme.md that:
When stubbing, create a minimal readme with a title and a description:
Write only a plain text title and a short description. Leave out links, HTML or other markup taken from the plan unless the user explicitly supplied them, and show the generated content to the user before committing.
If the subfolder has code, it also needs a main.ts (>1 line). But for stubs, a readme-only exercise is fine.
exercises/.mkdir -p for each path. Quote each path as one argument. Use brace expansion only with the fixed variant names explainer, problem and solution. Prefer the file writing tool over shell commands built from plan text.readme.md per variant folder with a title. First check whether each target folder and readme.md already exists. Leave existing files in place, and overwrite one only after the user explicitly confirms.pnpm ai-hero-cli internal lint to validate. Run it only in a repository the user trusts, and only when the CLI is already a declared, pinned dependency of the project. If it is missing, stop and tell the user.exercises/ by name, and tell the user about any changes that were already staged so they stay out of the commit. Run git commit only after the user explicitly confirms.These steps need only directory creation and readme writes under exercises/, the lint command, git status, git mv and git commit.
The linter (pnpm ai-hero-cli internal lint) checks:
problem/, solution/, explainer/)problem/, explainer/, or explainer.1/ existsreadme.md exists and is non-empty in the primary subfolder.gitkeep filesspeaker-notes.md filespnpm run exercise commands in readmesmain.ts required per subfolder unless it's readme-onlyWhen renumbering or moving exercises:
exercises/, follow the Directory naming rules, and that the destination does not already exist. Show the rename plan to the user and get confirmation.git mv (not mv) to rename directories - preserves git historyExample:
Given a plan like:
Create:
Then create readme stubs:
Get started with chainctlchainctl skill install public/mattpocock/scaffold-exercises:latest
Bring Chainguard's hardening pipeline to your first-party skills — custom rulesets, automated remediation, full audit trail.
skills.chainreg.biz/public/github.com/mattpocock/skills/misc/scaffold-exercises:latest
MIT
HARDENING.md
LICENSE
SKILL.md