Skills › BMAD Method › bmad-build-auto › customize.toml
customize.toml
157 lines · skills/bmad-build-auto/customize.toml at bd70c64
1# DO NOT EDIT -- overwritten on every update.
2#
3# Default customization values for bmad-build-auto.
4# Override in _bmad/custom/bmad-build-auto.toml or
5# _bmad/custom/bmad-build-auto.user.toml.
6#
7# Merge rules:
8# - Strings replace the default.
9# - Lists append to the default list.
10# - Tables merge key by key.
11# - Arrays of tables merge by `id`: matching `id` replaces, new `id`s append.
13[workflow]
15# Extra instructions to run before config is loaded.
17activation_steps_prepend = []
19# Extra instructions to run after config is loaded and before step 01.
21activation_steps_append = []
23# Facts kept in context for the whole run.
24# Entries are literal text or file references prefixed with "file:".
25# File entries may use globs and are loaded during activation.
27persistent_facts = []
29# Execution route: "oneshot" implements in this session, "full" writes a plan
30# and hands implementation to a subagent, "auto" applies route_selection after
31# planning.
33route = "auto"
35# Automatic route selection. Replace the whole instruction to change the rule.
37route_selection = """
38Decide whether to use a coding subagent (full) or implement directly (oneshot).
39Using the information already gathered, with no further reading and minimal
40extra reasoning, estimate the lines of code to add or modify.
41100 lines or fewer: oneshot. Otherwise: full.
42If the change touches more than five files and is not simple or mechanical,
43consider upgrading to full.
44"""
46# Instruction run by HALT after writing the terminal result.
47# Empty means no extra terminal behavior.
49on_complete = ""
51# Handoff for the implementation subagent in step 03. The whole execution
52# recipe — a subagent by default, but an override may run it any other way
53# (a different model, an external coding tool via bash). {plan_file} is
54# substituted at run time.
56implementation_handoff = """
57Launch a subagent with no prior conversation context, with this prompt:
59> Read {plan_file} fully and implement it — the plan is the sole source of truth. Load every file listed in its frontmatter `context:` before you start.
60>
61> When done, report what you changed, how you verified it, and anything left incomplete or risky.
62"""
64# Review selection: "none" launches no lens and skips triage, "quick" runs
65# quick_lenses, "thorough" runs thorough_lenses, "auto" follows the resolved
66# route — oneshot selects quick, full selects thorough.
68review = "quick"
70# Review lenses for the review step, in two sets the review selection picks
71# between. `instruction` is the lens's whole execution recipe — subagents by
72# default, but an override may run anything (e.g. an external reviewer via
73# bash). {diff_file}, {claims_file}, {plan_file}, and {verbatim_intent} are
74# substituted at run time; the first three are paths, and {diff_file} is the
75# unified diff file the lens reads. `when` (optional) gates a lens; empty
76# `instruction` disables it.
78[[workflow.quick_lenses]]
79id = "quick"
80name = "Quick"
81instruction = """
82Launch a context-free subagent with this prompt:
84Read `{plan_file}` — the plan holding the acceptance criteria and intent — and the files its frontmatter `context:` lists. Read the agent instruction files (`AGENTS.md`, `CLAUDE.md`, or equivalents) at the repository root and in the directories the diff touches; those are the rules. Then read the unified diff at `{diff_file}` — it is the change under review.
86Report unmet acceptance criteria, broken rules, and bugs. Each finding: the location, what goes wrong, and evidence checked against the surrounding code. Output a Markdown list of findings only — no severity, priority, or ranking.
88Review by inspection only. Do not modify code, run builds or tests, or invoke quality gates. Do not invoke any skill, and do not spawn subagents of your own — you are the reviewer. Return your findings as text in your final message; do not route them through any findings-reporting tool the host may offer.
90"""
92[[workflow.thorough_lenses]]
93id = "blind-hunter"
94name = "Blind Hunter"
95instruction = """
96Launch a context-free subagent with this prompt:
98Conduct a review of CONTENT.
99Look for what's missing, not only what's wrong.
100Compute your finding floor N from the diff file's size: N = min(floor(sqrt(kB) + 1), 10), where kB is the file's size in kilobytes. State the arithmetic in one line, then find at least N issues to fix or improve.
101Output a Markdown list of findings only — no severity, priority, or ranking.
102If the content is empty, stop and say so.
103If you have zero findings, re-check and keep thinking; do not stop with an empty list.
105CONTENT: the unified diff at `{diff_file}`. Read that file — it is the content under review.
107Review by inspection only. Do not modify code, run builds or tests, or invoke quality gates. Do not invoke any skill, and do not spawn subagents of your own — you are the reviewer. Return your findings as text in your final message; do not route them through any findings-reporting tool the host may offer.
109"""
111[[workflow.thorough_lenses]]
112id = "edge-case-hunter"
113name = "Edge Case Hunter"
114instruction = """
115Launch a context-free subagent with this prompt:
117Read `{skill-root}/review-prompts/edge-case-hunter.md` completely and follow it as your review instructions.
119claims_file (leave unread until your instructions call for it): {claims_file}
121Review content: the unified diff at `{diff_file}`. Read that file — it is the content under review.
123Review by inspection only. Do not modify code, run builds or tests, or invoke quality gates. Do not invoke any skill, and do not spawn subagents of your own — you are the reviewer. If the instruction file is unreadable, report that exact failure and stop. Return your findings as text in your final message; do not route them through any findings-reporting tool the host may offer.
125"""
127[[workflow.thorough_lenses]]
128id = "verification-gap"
129name = "Verification Gap Reviewer"
130instruction = """
131Launch a context-free subagent with this prompt:
133Read `{skill-root}/review-prompts/verification-gap.md` completely and follow it as your review instructions.
135Review content: the unified diff at `{diff_file}`. Read that file — it is the content under review.
137Review by inspection only. Do not modify code, run builds or tests, or invoke quality gates. Do not invoke any skill, and do not spawn subagents of your own — you are the reviewer. If the instruction file is unreadable, report that exact failure and stop. Return your findings as text in your final message; do not route them through any findings-reporting tool the host may offer.
139"""
141[[workflow.thorough_lenses]]
142id = "intent-alignment"
143name = "Intent Alignment Auditor"
144instruction = """
145Launch a subagent with this prompt:
147You are an intent-alignment auditor. You have no other context about how this change was produced. Here is the verbatim intent this work started from:
149{verbatim_intent}
151The diff is the unified diff at `{diff_file}`. Read that file — it is the change under review.
153Your task is strictly descriptive — do not prescribe additional work. Report: (1) the defensible readings of the intent, enumerated; (2) which reading this diff implements; (3) where the readings and the diff diverge — specifically, which surface the intent's expectations live at versus which surface the diff's changes and its tests exercise.
155Review by inspection only. Do not modify code, run builds or tests, or invoke quality gates. Do not invoke any skill, and do not spawn subagents of your own — you are the reviewer. Return your findings as text in your final message; do not route them through any findings-reporting tool the host may offer.
157"""