Guide · Agent skill
How to use the Scaffold Exercises agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
The scaffold-exercises skill is an agent skill that teaches an AI agent how to create the folder layout for a coding course: numbered sections, numbered exercises, and subfolders for problem, solution and explainer material, each with a placeholder readme. This guide explains what the skill does, how to install it, how to ask for it in plain language, and what it needs before you rely on it. By the end you will know whether it fits a project that uses the ai-hero-cli tool.
Quick start
- 1Get the skill. Download the ZIP from this page and unzip it. Keep the SKILL.md file intact.
- 2Install it. Unzip it into ~/.claude/skills/ for personal use or into .claude/skills/ in a project, or upload it under Settings → Capabilities → Skills in the Claude apps.
- 3Check the prerequisites. Make sure Node.js, pnpm, Git and the ai-hero-cli tool with its internal lint command are available in your project.
- 4Write your plan. List each section with its number and name, then each exercise with its number, name and variants.
- 5Ask in plain language. Ask the agent to scaffold the section from your plan. It will create the directories and readme stubs.
- 6Let lint run. The agent runs pnpm ai-hero-cli internal lint and fixes any errors until it passes.
- 7Review and commit. Check the generated folders, then confirm the commit made with git commit.
What is an agent skill and what does this one do?
An agent skill is a folder containing a SKILL.md file with instructions that an AI agent can load when a task matches the skill's description. The agent reads those instructions and follows them, so you do not have to explain the same workflow in every conversation.
The scaffold-exercises skill covers one narrow job. Given a plan for a course section, the agent creates the directories, writes stub readme.md files, runs the lint command, fixes any errors it reports, and commits the result with git. The skill only creates stubs and placeholder readmes; it does not write the actual exercise content.
- Sections are named XX-section-name inside exercises/, for example 01-retrieval-skill-building.
- Exercises are named XX.YY-exercise-name inside a section, for example 01.03-retrieval-with-bm25.
- Each exercise gets at least one of problem/, solution/ or explainer/. When the plan does not say otherwise, the skill defaults to explainer/.
- Names are dash-case: lowercase letters with hyphens.
How do you install the scaffold-exercises skill?
You can install the skill in either of two ways. Download the ZIP file from this page and unzip it into one of the locations below. Alternatively, upload the skill in the Claude apps.
For a personal install that applies across your projects, unzip the skill into ~/.claude/skills/. For a single project, unzip it into that project's .claude/skills/ folder so it applies only there.
In the Claude apps, go to Settings → Capabilities → Skills and upload the skill from there.
- Personal install: ~/.claude/skills/
- Project install: .claude/skills/ inside your project folder
- Claude apps: Settings → Capabilities → Skills
How do you trigger the skill with a natural request?
You do not need a special command. The skill's description tells the agent when to use it: when you want to scaffold exercises, create exercise stubs, or set up a new course section. Describe the structure you want in ordinary words and include the plan if you have one.
Clear plans work best. Give the section number and name, each exercise with its number and name, and which variants each exercise needs. If you leave out the variants, the skill uses explainer/.
- Scaffold a new section called 05 Memory Skill Building with three exercises from this plan.
- Create exercise stubs for section 03 from the outline I paste below.
- Set up a new course section for retrieval and add placeholder readmes for each exercise.
What does a stubbing example look like?
Suppose the plan is a section numbered 05 called Memory Skill Building, with three exercises. Exercise 05.02 needs explainer, problem and solution variants, and the other two need only the default explainer. The skill turns this into directories and readme stubs.
Each readme stub is a title line, since a single title is enough for the lint check to pass. After the stubs exist, the agent runs the lint command and iterates until it passes, then commits the work.
- Directories are created with mkdir -p, one per exercise variant.
- Each variant folder gets a readme.md containing a title such as # Short-term Memory.
- The lint command is run and any errors are fixed before committing.
mkdir -p exercises/05-memory-skill-building/05.01-introduction-to-memory/explainer
mkdir -p exercises/05-memory-skill-building/05.02-short-term-memory/{explainer,problem,solution}
mkdir -p exercises/05-memory-skill-building/05.03-long-term-memory/explainerHow do you rename or move exercises safely?
When you renumber or move exercises, the skill tells the agent to use git mv instead of mv. This keeps the git history attached to the renamed folder. After any move, the numeric prefix should be updated to keep the order correct, and lint should be run again.
The example below renames exercise 01.03 to 01.04 inside section 01.
- Use git mv for every rename or move.
- Update the numeric prefix so the order stays correct.
- Re-run the lint command after the moves.
git mv exercises/01-retrieval/01.03-embeddings exercises/01-retrieval/01.04-embeddingsWhat does the lint check require?
The skill is built around the linter run by pnpm ai-hero-cli internal lint. Knowing its main rules helps you understand errors when they appear. The agent should fix errors it reports rather than work around them.
- Each exercise has subfolders such as problem/, solution/ and explainer/.
- At least one of problem/, explainer/ or explainer.1/ exists.
- readme.md exists and is non-empty in the primary subfolder.
- No .gitkeep files and no speaker-notes.md files.
- No broken links in readmes.
- No pnpm run exercise commands in readmes.
- main.ts is required per subfolder unless the subfolder is readme-only.
What do you need before using it, and what are the safety notes?
The skill needs Node.js and pnpm, the ai-hero-cli tool with its internal lint command, and Git. Without the lint command the workflow cannot complete, and the agent would fail or improvise. The skill runs scripts. It does not use the network.
Because the skill runs scripts, read the SKILL.md and the files in the skill folder before installing a skill from anywhere. Review the commands the agent proposes, especially git commands that change history, and check the diff before you accept a commit.
- Requires Node.js and pnpm, the ai-hero-cli tool, and Git.
- Runs scripts: yes.
- Uses network: no.
- The skill's files are agents/openai.yaml and SKILL.md.
What tips help the skill work well?
Keep your plan in one place so the agent sees the full structure at once. Use the same naming pattern you already have in the repository, because the skill uses dash-case and fixed number prefixes. Review the generated stubs before writing real content, since the readmes contain only titles.
- Paste the full plan rather than describing sections one at a time.
- Decide the variants up front, because the default is explainer/ only.
- Check the lint output yourself if the agent reports success too quickly.
- Fill in the placeholder readmes only after the structure passes lint.
What people use it for
- Stub out a new course section from a written plan before any content exists.
- Add a new exercise between existing ones and renumber the following exercises with git mv.
- Make folder names consistent across a numbered exercise repository.
- Create explainer-only placeholders so a course outline can be reviewed early.
Frequently asked questions
How do I install the scaffold-exercises skill?
Download the ZIP from this page and unzip it into ~/.claude/skills/ for personal use, or into .claude/skills/ inside a project. You can also upload it in the Claude apps under Settings → Capabilities → Skills.
What does the scaffold-exercises skill require?
It requires Node.js and pnpm, the ai-hero-cli tool with its internal lint command, and Git. It runs scripts but does not use the network.
Is the scaffold-exercises skill free to use?
The source lists the licence as MIT. Check the licence file in the skill's repository for the full terms before you reuse or redistribute it.
Can I use the skill if my project does not use ai-hero-cli?
Not as intended. The workflow depends on the pnpm ai-hero-cli internal lint command, so without it the agent would fail or improvise. Use it only in projects that have that lint command.
Why does the lint check fail after scaffolding?
Common causes are an empty readme.md in the primary subfolder, a broken link in a readme, a leftover .gitkeep or speaker-notes.md file, or a pnpm run exercise command in a readme. Fix the reported item and run the lint command again.
Does the skill write the exercise content for me?
No. It creates directories and placeholder readmes with a title and description. You write the actual exercise material yourself.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
This skill suits course authors and maintainers of numbered exercise repositories that already use the ai-hero-cli lint command and want new sections stubbed out consistently. It is a poor fit if your project does not use that lint command, or if you want the agent to write the exercise content itself.
Download the skill