Files
Brian fc6a41c673 feat(toolsmith): default to a single-skill module and start prose from one sentence (#3158)
* feat(toolsmith): make a single-skill module the default for one skill

Registration is settled from the registry and shown in the read-back
instead of asked. A skill joins a module only when the user is working on
that module, named it, or chose its prefix. A bmod-<code> record folder is
never written for one skill.

* fix(toolsmith): ask whether a skill is part of a module

Single-skill module stays the offered guess, but discovery now asks whether
the skill joins a module or more skills are planned. A planned module settles
its code and prefix on the first skill, so nothing is renamed later.

* feat(toolsmith): read any agent's session logs and offer customization in from-logs

The agent finds its own logs and confirms the location instead of assuming
Claude Code. A corrected installed skill can be offered as a bmad-customize
change instead of a new skill.

* refactor(toolsmith): split discover into short sections and cut what a model infers

Registration gets its own section, the five things and other enumerable
items become lists, and the read-back carries the consumer and bar.

* feat(toolsmith): start prose from one sentence and hold one topic to a paragraph

The canon, leanness lens and cut roles now default to the one-sentence
version of a passage and split mixed topics. The pre-pass reports long
paragraphs and sentences.

* refactor(toolsmith): cut prompt files to one topic per paragraph and inline ecosystem into ship

Every route, mode and shape file is split into short paragraphs, bullets
and cases, with what a model would infer removed. ecosystem.md only ever
loaded from ship.md, so its content now lives there.

* feat(toolsmith): let a memory agent add its name to its description at First Breath

* fix(toolsmith): close a Markdown fence only on its own marker in the pre-pass

* fix(toolsmith): let a single-skill module grow into a multi-skill module

* fix(toolsmith): write dependencies to the table the module shape uses

* feat(toolsmith): restore a memory agent's name after an update and skip global installs

* docs(toolsmith): bring the help up to date and route to cut mode

* refactor(toolsmith): call the read-back the Smithy execution plan and add help on sharing and subagents

* docs(toolsmith): write the Toolsmith docs to replace the builder site
2026-10-31 19:01:43 -05:00

4.2 KiB

title, description, sidebar
title description sidebar
Toolsmith What the Toolsmith module is: one agent, Smithy, that builds skills, agents, and modules for BMad, and an eval runner beside it.
order
1

Toolsmith is the module for authoring BMad content. Its agent, Smithy (bmad-toolsmith), builds a skill, an agent, or a module from a conversation about what you need. bmad-eval measures whether a skill works. Use Toolsmith when you want an agent to do a job the same way every time, and when you want to share that job with a team or publish it.

A skill is a folder with a SKILL.md file. Your coding tool reads the description in that file to decide when to load the skill, and the agent follows the rest of the file once it does. Everything Toolsmith builds starts from that folder.

Install Toolsmith

Toolsmith installs from the BMAD-METHOD repository. If you do not have BMad yet, start with Install BMad. Then add the module from your project folder:

npx skills add bmad-code-org/BMAD-METHOD --skill bmad-toolsmith --skill bmad-eval --skill bmod-toolsmith

Ask the bmad skill to run bmad setup toolsmith. The module asks no setup questions.

Talk to Smithy

Start the bmad-toolsmith skill, or ask for Smithy by name, and say what you want. You do not need to know the shape of the result, or which mode to use. Smithy shows a menu when you give no request.

Code What it does
BUILD Build a new skill, agent, or module from a conversation
SCAFFOLD Lay out a skill you will write yourself
LOGS Propose a skill from your session logs, then build it
EDIT Change, fix, or extend a skill
CONVERT Rebuild a skill, prompt, or command from another tool as a BMad skill
REVIEW Review a skill and write a report of findings
CUT Cut a skill's prose to what changes what the model does
PACKAGE Package one skill or several into a module
VALIDATE Check a skill or module for what would stop it installing, loading, or firing
MIGRATE Convert an old-format module to the current format
EVAL Run, benchmark, or trigger-test a skill with bmad-eval

How a Build Works

Every new skill follows the same path. If you use the scaffold approach to write the skill yourself, steps 3 and 4 are yours.

  1. Discovery. Smithy reads what you have already said and asks only for what is missing, one or two questions at a time.
  2. Smithy execution plan. Smithy shows the name, purpose, description, shape, registration, approach, location, and files. Nothing is written until you approve it, and you can change any line.
  3. Build. Smithy writes the skill, and tries it on a real input when you have one.
  4. Review. Five review lenses read everything Smithy wrote. Smithy fixes the defects they find and tells you what changed.
  5. Hand-off. Smithy validates the skill, offers a trigger eval, and tells you where the skill is and what to try first.

In This Section

Page Read it when you want to
Build Your First Skill Go from an idea to a working skill, then a module
Ways to Build a Skill Choose how a build runs
Shapes of a Skill See what Smithy can make
Work on an Existing Skill Edit, convert, review, cut, package, or validate a skill
Write a Good Skill Learn the standard Smithy writes to and reviews against
Subagent Patterns Spread a skill's work across subagents
Make a Skill Customizable Let teams change a skill without forking it
Agents with Memory Build an agent that remembers you between sessions
Modules and Registration Decide how a skill registers with BMad
Distribute Your Module Publish a module so others can install it
Migrate an Old Module Bring a module.yaml module to the current format
Eval Runner Measure whether a skill works

The exact file formats are in Module Files and Eval Format.