142 lines
5.8 KiB
TOML
142 lines
5.8 KiB
TOML
# DO NOT EDIT -- overwritten on every update.
|
|
#
|
|
# Workflow customization surface for bmad-review.
|
|
#
|
|
# Override files (not edited here):
|
|
# {project-root}/_bmad/custom/bmad-review.toml (team)
|
|
# {project-root}/_bmad/custom/bmad-review.user.toml (personal)
|
|
|
|
[workflow]
|
|
|
|
# --- Configurable below. Overrides merge per BMad structural rules: ---
|
|
# scalars: override wins
|
|
# arrays (persistent_facts, activation_steps_*, review_guidance): append
|
|
# arrays of tables keyed by `code`: matching key replaces, new keys append
|
|
|
|
# Steps executed on activation: prepend runs before the skill's own
|
|
# activation flow, append runs after the lens plan is settled and before the
|
|
# lenses run. Each entry is a literal instruction.
|
|
activation_steps_prepend = []
|
|
activation_steps_append = []
|
|
|
|
# Standing context held for every review, code and document alike. Entries
|
|
# prefixed `file:` are paths or globs whose contents load as facts; all others
|
|
# are literal facts. The shipped entry is a project-wide glob — set it to []
|
|
# if you don't want every review scanning for it.
|
|
persistent_facts = ["file:{project-root}/**/project-context.md"]
|
|
|
|
# Standing review directives applied on every run alongside each lens's own
|
|
# method. Each entry is a literal sentence or a `file:`-prefixed path/glob
|
|
# whose contents load as directives.
|
|
#
|
|
# Examples:
|
|
# "Flag passive voice in headings."
|
|
# "Second-person imperative is the house voice; never suggest changing it."
|
|
# "file:{project-root}/docs/terminology.md"
|
|
review_guidance = []
|
|
|
|
# Executed after the findings are delivered. Freeform directive; empty = the
|
|
# review ends with the findings.
|
|
#
|
|
# Example:
|
|
# on_complete = "Append a one-line review summary to {project-root}/docs/review-log.md"
|
|
on_complete = ""
|
|
|
|
# How findings are presented when the caller doesn't say: "json" (the raw
|
|
# findings array only), "markdown" (the human report only), or "both". A lens
|
|
# that declares its own rendering keeps it for its own findings.
|
|
output_format = "both"
|
|
|
|
# Where to write the review report. Empty = present in chat only. Accepts
|
|
# {project-root}-prefixed paths.
|
|
report_path = ""
|
|
|
|
# How findings are presented — shaping, not destination. Freeform directive;
|
|
# empty = each lens's default ordering and rollup.
|
|
#
|
|
# Example:
|
|
# output_preferences = "Cap output at the 20 highest-impact findings."
|
|
output_preferences = ""
|
|
|
|
# --- Editorial lens settings (used by the structure and prose lenses) ---
|
|
|
|
# Default reader the editorial lenses calibrate for when the request doesn't
|
|
# say:
|
|
# "humans" clarity, flow, comprehension aids preserved
|
|
# "llm" precision, consistent terminology, no hedging
|
|
# A reader type stated in the request wins for that run.
|
|
reader_type = "humans"
|
|
|
|
# The baseline style guide for every editorial review: the name of a guide the
|
|
# model knows well, a `file:`-prefixed path to a style guide document, or the
|
|
# rules inline as text. A style guide stated in the request wins for that run.
|
|
# Where the guide in effect conflicts with the lens's generic principles, the
|
|
# guide wins — except content is sacrosanct.
|
|
#
|
|
# Examples (set in team/user override TOML):
|
|
# style_guide = "file:{project-root}/_bmad/style-guides/company-voice.md"
|
|
# style_guide = "Sentence-case headings. No Oxford comma. Address the reader as 'you'."
|
|
style_guide = "Microsoft Writing Style Guide"
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Review lenses. Each lens is a pass over the content with its own method and
|
|
# stance. `instruction` is the lens's whole execution recipe — the shipped
|
|
# lenses load a reference file from the skill root, but an override may inline
|
|
# any prompt.
|
|
#
|
|
# `applies_to` is the content this lens can review: "code", "docs", or "any".
|
|
# It is the first filter — a lens never joins a default review for content it
|
|
# does not apply to. `when` (optional) refines that judgement in prose. An
|
|
# explicitly requested lens always runs, whatever both say.
|
|
#
|
|
# `after` (optional) names a lens this one builds on: it runs once that lens
|
|
# has completed and receives its findings, instead of running independently.
|
|
#
|
|
# Empty `instruction` disables a lens. Keyed by `code`: an override with a
|
|
# matching code replaces the shipped lens, a new code appends.
|
|
#
|
|
# Example (add an org-specific lens in team/user override TOML):
|
|
# [[workflow.lenses]]
|
|
# code = "accessibility"
|
|
# name = "Accessibility"
|
|
# applies_to = "any"
|
|
# when = "UI code or user-facing documents."
|
|
# instruction = "Review against WCAG 2.2 AA. Emit findings in the canonical fields."
|
|
# ---------------------------------------------------------------------------
|
|
|
|
[[workflow.lenses]]
|
|
code = "adversarial"
|
|
name = "Adversarial"
|
|
applies_to = "any"
|
|
when = "always"
|
|
instruction = "Load `references/lens-adversarial.md` from the skill root and follow it."
|
|
|
|
[[workflow.lenses]]
|
|
code = "edge-case-hunter"
|
|
name = "Edge-Case Hunter"
|
|
applies_to = "any"
|
|
when = "Content with behavior to trace: code, diffs, and the specs, requirements, plans, and stories that define behavior. Skip for prose documents with no behavioral surface."
|
|
instruction = "Load `references/lens-edge-case-hunter.md` from the skill root and follow it."
|
|
|
|
[[workflow.lenses]]
|
|
code = "verification-gap"
|
|
name = "Verification Gap"
|
|
applies_to = "code"
|
|
when = "Reviewed inside a repo where tests can be searched and read."
|
|
instruction = "Load `references/lens-verification-gap.md` from the skill root and follow it."
|
|
|
|
[[workflow.lenses]]
|
|
code = "structure"
|
|
name = "Editorial Structure"
|
|
applies_to = "docs"
|
|
when = "Documents whose shape is the author's to change."
|
|
instruction = "Load `references/lens-structure.md` from the skill root and follow it."
|
|
|
|
[[workflow.lenses]]
|
|
code = "prose"
|
|
name = "Editorial Prose"
|
|
applies_to = "docs"
|
|
after = "structure"
|
|
when = "Documents being copy-edited."
|
|
instruction = "Load `references/lens-prose.md` from the skill root and follow it."
|