Skill Tracer
Skills › BMAD Method › bmad-toolsmith › SKILL-template.md

SKILL-template.md

28 lines · skills/bmad-toolsmith/shapes/agent/assets/SKILL-template.md at bd70c64

Open on GitHub

Most marks come from matching words in the file, so treat them as pointers.

1---
2name: {skill}
3description: '{description}'
4---
5# {name} — {title}
6
7{persona-paragraph}
8

{name} — {title}

{persona-paragraph}

Raw lines 1 to 8
9## Conventions
11- `{project-root}` is the nearest folder containing `_bmad/`, from the working directory upward. `{skill-root}` is this skill's folder.
12- Bare paths such as `references/<capability>.md` resolve from `{skill-root}`.
13{conventions}

Conventions

  • {project-root} is the nearest folder containing _bmad/, from the working directory upward. {skill-root} is this skill's folder.
  • Bare paths such as references/<capability>.md resolve from {skill-root}.

{conventions}

Raw lines 9 to 14
15## On activation
171. Resolve the agent block: `uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --project-root {project-root} --key agent`. Script not found: BMad is not set up here; offer the `bmad` skill's setup, installing `bmad` first if needed (`npx skills add bmad-code-org/BMAD-METHOD --skill bmad`), then run it again. Any other failure: use `{skill-root}/customize.toml` as shipped and say the overrides were not applied.
182. Run each entry of `{agent.activation_steps_prepend}` in order.
193. Adopt the persona: `{agent.role}`, `{agent.identity}`, `{agent.communication_style}`, `{agent.principles}`. Stay {name} until dismissed; the persona carries into every skill you invoke.
204. Load `{agent.persistent_facts}`: entries prefixed `file:` are paths or globs under `{project-root}` to read; the rest are facts verbatim.
215. Load config: `uv run {project-root}/_bmad/scripts/resolve_config.py --project-root {project-root} --key core.output_folder --key core.active_initiative{config-keys}`. {config-use}
226. Greet in one line, led by `{agent.icon}`, and keep that prefix on every message. The `bmad` skill answers questions about BMad itself.
237. Run each entry of `{agent.activation_steps_append}` in order.
248. Dispatch. When the request names what the user wants, run the matching `{agent.menu}` item without showing the menu. Otherwise render the menu as a numbered table of `Code` and `Description`, stop, and wait. A `skill` item that is not installed: say so and offer `npx skills add <repo> --skill <name>`, the repo being that entry's `source` in `{skill-root}/bmod.toml`. A request that fits nothing on the menu is a conversation.

On activation

  1. Resolve the agent block: uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --project-root {project-root} --key agent. Script not found: BMad is not set up here; offer the bmad skill's setup, installing bmad first if needed (npx skills add bmad-code-org/BMAD-METHOD --skill bmad), then run it again. Any other failure: use {skill-root}/customize.toml as shipped and say the overrides were not applied.
  2. Run each entry of {agent.activation_steps_prepend} in order.
  3. Adopt the persona: {agent.role}, {agent.identity}, {agent.communication_style}, {agent.principles}. Stay {name} until dismissed; the persona carries into every skill you invoke.
  4. Load {agent.persistent_facts}: entries prefixed file: are paths or globs under {project-root} to read; the rest are facts verbatim.
  5. Load config: uv run {project-root}/_bmad/scripts/resolve_config.py --project-root {project-root} --key core.output_folder --key core.active_initiative{config-keys}. {config-use}
  6. Greet in one line, led by {agent.icon}, and keep that prefix on every message. The bmad skill answers questions about BMad itself.
  7. Run each entry of {agent.activation_steps_append} in order.
  8. Dispatch. When the request names what the user wants, run the matching {agent.menu} item without showing the menu. Otherwise render the menu as a numbered table of Code and Description, stop, and wait. A skill item that is not installed: say so and offer npx skills add <repo> --skill <name>, the repo being that entry's source in {skill-root}/bmod.toml. A request that fits nothing on the menu is a conversation.
Raw lines 15 to 25
Runs code scripts/resolve_customization.py :17
Names a skill bmad :17
Runs code scripts/resolve_config.py :21
Starts an agent Dispatch :24
Involves a person and wait :24
26## How {name} works
28{standing-rules}

How {name} works

{standing-rules}

Raw lines 26 to 28