Getting it into your agent
There is no command for this one: it runs only inside a plugin, and the catalogue could not identify which plugin ships it. The source is linked below.
Wrote 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/zsutxz/claudelearning/setup-skill-template)<a href="https://agentmods.dev/skills/zsutxz/claudelearning/setup-skill-template"><img src="https://agentmods.dev/badge/skills/zsutxz/claudelearning/setup-skill-template/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/zsutxz/claudelearning/setup-skill-template"><img src="https://agentmods.dev/badge/skills/zsutxz/claudelearning/setup-skill-template.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.00044 | $0.01859 |
| Opus 5 | $0.00022 | $0.00929 |
| Sonnet 5 | $0.00009 | $0.00372 |
| Haiku 4.5 | $0.00004 | $0.00186 |
Grade C, and why
{setup-skill-name} scanned grade C with 2 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.
Subtle steeringmediumPrompt injection
Instructions that bias recommendations or shape behaviour without the user noticing.
Ask the user for values. Show defaults in brackets. Present all values together so the user can respond once with only the values they want to change (e.g. "change language to Swahili, rest are fine"). Never tell the use Enumerates other installed skillsmediumAgent snooping
Other skills' SKILL.md files reveal prompts, capabilities and secrets that should be invisible to peers.
python3 ./scripts/cleanup-legacy.py --bmad-dir "{project-root}/_bmad" --module-code {module-code} --also-remove _config --skills-dir "{project-root}/.claude/skills" This is a copy
95% identical to bmad-bmb-setup — 14 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 81 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Module Setup
Overview
Installs and configures a BMad module into a project. Module identity (name, code, version) comes from ./assets/module.yaml. Collects user preferences and writes them to three files:
{project-root}/_bmad/config.yaml— shared project config: core settings at root (e.g.output_folder,document_output_language) plus a section per module with metadata and module-specific values. User-only keys (user_name,communication_language) are never written here.{project-root}/_bmad/config.user.yaml— personal settings intended to be gitignored:user_name,communication_language, and any module variable markeduser_setting: truein./assets/module.yaml. These values live exclusively here.{project-root}/_bmad/module-help.csv— registers module capabilities for the help system.
Both config scripts use an anti-zombie pattern — existing entries for this module are removed before writing fresh ones, so stale values never persist.
{project-root} is a literal token in config values (the data written into the files above) — never substitute it there. It signals to the consuming LLM that the value is relative to the project root, not the skill root. This does not apply to the filesystem path arguments passed to the scripts below (the --*-path, --*-dir, and --target arguments): those are real paths, so you must resolve {project-root} to the actual project root before running, or the scripts will write to a literal {project-root}/ directory under the skill folder. The scripts reject an unresolved token with an error.
On Activation
- Read
./assets/module.yamlfor module metadata and variable definitions (thecodefield is the module identifier) - Check if
{project-root}/_bmad/config.yamlexists — if a section matching the module's code is already present, inform the user this is an update - Check for per-module configuration at
{project-root}/_bmad/{module-code}/config.yamland{project-root}/_bmad/core/config.yaml. If either file exists:- If
{project-root}/_bmad/config.yamldoes not yet have a section for this module: this is a fresh install. Inform the user that installer config was detected and values will be consolidated into the new format. - If
{project-root}/_bmad/config.yamlalready has a section for this module: this is a legacy migration. Inform the user that legacy per-module config was found alongside existing config, and legacy values will be used as fallback defaults. - In both cases, per-module config files and directories will be cleaned up after setup.
- If
What ships with it
5 files 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 First seen · 81 lines · 44 tokens per session scan C 412c9babad98
{setup-skill-name} is a skill published in the GitHub repository zsutxz/ClaudeLearning (5 stars, last pushed 1mo ago), licensed MIT. It adds 44 tokens to every session and 1,859 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it C with 2 findings (subtle steering, enumerates other installed skills). It is 95% identical to bmad-bmb-setup, differing in 14 lines, and is treated as a copy.
Other skills, from other repositories
recipe-create-meet-space
Create a Google Meet meeting space and share the join link.
workthreads
SpecStory Workthreads - a weekly work-thread rollup across a team's repos from SpecStory coding histories (any agent - Claude Code, Codex, Cursor, Gemini, and more). It groups the window's sessions into threads of work per project and labels each new / open / recently closed, so a lead sees what shipped, what is still…
atmos-config
Atmos root configuration: atmos.yaml discovery, precedence, deep merging, basepath, imports, minimal bootstrap, and routing to narrower Atmos skills.
story-readiness
Validate that a story file is implementation-ready. Checks for embedded GDD requirements, ADR references, engine notes, clear acceptance criteria, and no open design questions. Produces READY / NEEDS WORK / BLOCKED verdict with specific gaps. Use when user says 'is this story ready', 'can I start on this story', 'is…
autotask-creator
Rules for automation CRUD from the group-chat commander. The commander does not call mutation tools and does not edit cloud/autotasks files directly. It emits one or more top-level ... containers in its final text; the bus parses and applies them after the turn.
projects
List all managed projects with status, branch, open PRs, and open issue counts — portfolio-level view.