Scaffold a new brooks-lint analysis skill so it passes `npm run validate` and `npm run evals` on the first try — generates skills/{name}/SKILL.md (with the mandatory "Do NOT trigger for:" clause and a Process section citing guide step ranges) plus skills/{name}/{name}-guide.md (sequentially numbered steps), then appends paired eval scenarios. Triggers when the maintainer asks to "add a new skill", "scaffold a skill", or "create a brooks-lint mode". Do NOT trigger for: editing an existing skill's content, adding a single eval to an existing skill, or authoring skills for some other plugin.
Start a fresh conversation. Replace the highlighted placeholders.
Use new-skill in [brooks-lint checkout] to scaffold [skill name] for [one-line analysis purpose]. Create the skill and sequential guide, include precise triggers and the mandatory Do NOT trigger for clause, and cite guide step ranges from the Process section. Add paired happy-path and false-positive evals and wire the required shared-framework references. Report created files only after npm run validate and npm run evals pass; perform the documented local discovery check and report any unavailable runtime rather than claiming it passed.
Required inputs
[brooks-lint checkout]
[skill name]
[one-line analysis purpose]
User-approved starter prompt based on a pinned source version; check current skill requirements before running. Task evidence ↗
SKILL.md
name: new-skilldescription: > Scaffold a new brooks-lint analysis skill so it passes `npm run validate` and `npm run evals` on the first try — generates skills/{name}/SKILL.md (with the mandatory "Do NOT trigger for:" clause and a Process section citing guide step ranges) plus skills/{name}/{name}-guide.md (sequentially numbered steps), then appends paired eval scenarios. Triggers when the maintainer asks to "add a new skill", "scaffold a skill", or "create a brooks-lint mode". Do NOT trigger for: editing an existing skill's content, adding a single eval to an existing skill, or authoring skills for some other plugin.
brooks-lint — New Skill Scaffold
Skill name comes from the user request (kebab-case, e.g. brooks-security). If empty,
ask for the name and a one-line purpose first.
Follow the repo's "Adding a New Skill" checklist exactly:
Create skills/{name}/SKILL.md with frontmatter — name, a description
that ends with a Do NOT trigger for: clause (validate-enforced for shipped
skills; omitting it causes false triggering), metadata: with opencode/slash: "true", and a Process section of 3–6
bullets that cite the guide's step ranges inline (e.g. Scan risks (Steps 1–6 of the guide)). Mirror the structure of an existing skill such as
skills/brooks-review/SKILL.md (Setup → Process → Mode line).
Create skills/{name}/{name}-guide.md with sequentially numbered steps —
no gaps, no duplicates. Sub-steps like Step 2a are allowed. The guide owns the
detailed steps; the SKILL.md Process is just an orientation skeleton.
Wire the framework. The new SKILL.md Setup section must Read the relevant
_shared/ files (common.md for Iron Law + Report Template, plus
decay-risks.md / test-decay-risks.md as applicable) — _shared/ is NOT
auto-loaded.
Add eval coverage to evals/evals.json: append with the next sequential
id at least one happy-path scenario (with the relevant risk code in
expected_output) and at least one false-positive scenario flagged
no_risk_codes: true. Each scenario needs id, name, prompt,
expected_output, mode, files.
Validate.npm run validate (structure + step continuity + Process-section
presence) and npm run evals (eval schema). Fix until both pass.
Local-test. Link the new skill folder from skills/ into
.agents/skills/ alongside the _shared symlink, then invoke it with
$<skill-name> in a Codex session and verify the Iron Law output.
Codex discovers repository skills directly; no command wrapper is needed.
Report the files created and the validate/evals results.