Skip to content

feat(quick-spec): add copy-paste command for adversarial review in step-04 final menu#1749

Open
ak95asb wants to merge 4 commits intobmad-code-org:mainfrom
ak95asb:feat/quick-spec-adversarial-review-copy-paste-command
Open

feat(quick-spec): add copy-paste command for adversarial review in step-04 final menu#1749
ak95asb wants to merge 4 commits intobmad-code-org:mainfrom
ak95asb:feat/quick-spec-adversarial-review-copy-paste-command

Conversation

@ak95asb
Copy link

@ak95asb ak95asb commented Feb 24, 2026

What

Adds a ready-to-copy /bmad-review-adversarial-general {finalFile} command block in the Quick-Spec Step 4 final menu, alongside the existing quick-dev command.

Why

The final menu already provided a copy-paste command for starting development in a fresh context, but gave no equivalent for Adversarial Review — which is equally recommended to run in a fresh context for information asymmetry. This inconsistency forced users to manually ask the agent for the command.
Fixes #1659

How

  • Added a labeled copy-paste block for /bmad-review-adversarial-general {finalFile} before the existing quick-dev block
  • Kept both commands in the same section so users see all fresh-context options together
  • Updated the trailing sentence to be generic ("focused solely on its task") to apply to both commands

Testing

Ran npm run validate:refs and npm run validate:schemas — all pass. Full npm test suite (52 tests) passes with zero errors.

…ep-04 final menu

Adds /bmad-review-adversarial-general {finalFile} copy-paste block alongside
the existing quick-dev command, ensuring consistent fresh-context UX for both
adversarial review and development. Fixes bmad-code-org#1659.
@coderabbitai
Copy link

coderabbitai bot commented Feb 24, 2026

📝 Walkthrough

Walkthrough

This PR updates step-04-review.md to provide a copy-paste command for running adversarial review in a fresh context, addressing issue #1659. It adds a /bmad-review-adversarial-general {finalFile} code block and reformats the development start instructions.

Changes

Cohort / File(s) Summary
Documentation Update
src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md
Added copy-paste command block for adversarial review in fresh context (/bmad-review-adversarial-general {finalFile}) alongside existing quick-dev invocation. Reformatted closing instruction from "Copy this prompt to start dev:" to "To start development in a fresh context:" and adjusted explanatory text.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Possibly related PRs

  • #1182: Adds the review-adversarial-general task and restructures the quick-dev workflow that this PR invokes.
  • #1185: Also modifies step-04-review.md to add adversarial-review prompt and quick-dev invocation patterns.
  • #1570: Standardizes phrasing in the same step file for adversarial review wording.

Suggested reviewers

  • bmadcode
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main change: adding a copy-paste command for adversarial review in step-04 final menu.
Description check ✅ Passed The description clearly explains what was changed, why it was needed, and how it was implemented, all related to the changeset.
Linked Issues check ✅ Passed The PR successfully addresses issue #1659 by adding the requested copy-paste command block for /bmad-review-adversarial-general {finalFile} in step-04-review.md.
Out of Scope Changes check ✅ Passed All changes are scoped to the single requested file (step-04-review.md) and directly address the issue requirement of adding an adversarial review command.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🧹 Nitpick comments (5)
src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md (5)

127-128: Undefined jargon (“information asymmetry”).

“Information asymmetry” is unexplained and will confuse users not steeped in your internal lingo. Either define it briefly or remove the parenthetical.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md` around
lines 127 - 128, The phrase "information asymmetry" in the parenthetical next to
"To run **Adversarial Review** in a fresh context (recommended for information
asymmetry):" is undefined jargon; either remove the parenthetical or replace it
with a one-line clarification immediately after the heading (e.g., "recommended
when reviewers and authors have different access to details" or a short
definition of information asymmetry) so readers unfamiliar with the term
understand why a fresh context is recommended; update the sentence in
step-04-review.md that contains the string "information asymmetry" accordingly.

127-139: Menu behavior conflicts with “fresh context” guidance.

The menu’s [R] flow executes adversarial review inline (same context), yet you just recommended running it in a fresh context. That’s contradictory. Either update the [R] handler to explicitly mention the fresh-context alternative or adjust the guidance to avoid conflict.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md` around
lines 127 - 139, The README recommends running "Adversarial Review" in a fresh
context but the interactive menu's [R] option currently runs adversarial review
inline, which contradicts that guidance; update the menu [R] handler (the
interactive branch that displays the [R] choice) to either (A) change its
description to explicitly recommend the fresh-context command
(/bmad-review-adversarial-general {finalFile}) and link or show the quick-dev
alternative, or (B) change its behavior so selecting [R] invokes the
fresh-context flow by calling /bmad-review-adversarial-general {finalFile}
instead of running inline; locate and modify the menu code that renders/handles
the [R] choice and any associated help text so the menu and the step-04-review
guidance are consistent.

127-131: “Fresh context” lacks explicit instruction to open it.

You tell users to run a command in a fresh context but never say how to create one (new chat, new session, new process). That’s a usability footgun in a workflow guide.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md` around
lines 127 - 131, The text tells users to run "/bmad-review-adversarial-general
{finalFile}" in a "fresh context" but doesn't explain how to create one; update
the step-04-review.md content near the command to explicitly instruct the user
to open a fresh context (e.g., "open a new chat or start a new session/process")
before running the command, and optionally give both GUI and CLI examples (e.g.,
"start a new chat window or run in a new terminal/session") so readers know
exactly how to create the required fresh context.

139-139: Ambiguous “its task” reference.

“This ensures the agent has clean context focused solely on its task” is unclear after two commands. Specify which task (review vs development) or rephrase to cover both.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md` at line
139, Replace the ambiguous sentence "This ensures the agent has clean context
focused solely on its task." in step-04-review.md with a specific reference to
which task you mean (e.g., "review task" or "development task"), or reword to
cover both (e.g., "This ensures the agent has a clean context focused only on
the current task—either the review or the development task—so prior prompts
don't interfere."); locate the exact sentence to update and apply the clearer
wording.

125-127: Contradictory sequencing: “fully satisfied” precedes Adversarial Review.

You now recommend Adversarial Review after “Once you are fully satisfied…”, which reads as mutually exclusive. This insertion makes the advice self‑contradictory. Move the “fully satisfied” sentence after the Adversarial Review guidance, or reword it to reflect that the review happens before satisfaction.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md` around
lines 125 - 127, The two sentences are sequenced contradictorily: the line "Once
you are fully satisfied with the spec (ideally after **Adversarial Review** and
maybe a few rounds of **Advanced Elicitation**), it is recommended to run
implementation in a FRESH CONTEXT for best results." appears before the "To run
**Adversarial Review** in a fresh context (recommended for information
asymmetry):" guidance, implying review happens after satisfaction. Fix by either
moving the "Once you are fully satisfied..." sentence to follow the Adversarial
Review guidance or reword the sentence to state that Adversarial Review (and
Advanced Elicitation) should occur before you consider yourself "fully
satisfied" (e.g., "After completing Adversarial Review and any Advanced
Elicitation, and once you are fully satisfied..."), ensuring references to
Adversarial Review and Advanced Elicitation remain clear.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md`:
- Around line 127-139: The action-instruction phrasing ("To run …" and "To start
…") should be standardized to the project's required verbs; replace those lines
so the commands use "load and follow" or "read and follow" phrasing instead
(e.g., change the directive introducing "/bmad-review-adversarial-general
{finalFile}" and the one introducing "quick-dev {finalFile}" to begin with "Load
and follow" or "Read and follow" as appropriate), keeping the same command
examples and surrounding explanatory sentence about fresh context.
- Around line 135-137: The dev command example uses unquoted {finalFile} which
will break on paths containing spaces; update the example invocation of
quick-dev to wrap {finalFile} in quotes (e.g., quick-dev "{finalFile}") so the
shell treats the entire path as a single argument — apply this change where the
snippet shows quick-dev {finalFile} in the step-04-review.md content.
- Around line 129-131: The command snippet uses an unquoted placeholder
"/bmad-review-adversarial-general {finalFile}" which will break if {finalFile}
contains spaces or special characters; update the markdown in step-04-review.md
so the placeholder {finalFile} is wrapped in quotes inside the code block (i.e.,
replace the unquoted {finalFile} with a quoted version wherever
"/bmad-review-adversarial-general {finalFile}" appears) to ensure the command
works with filenames containing spaces or special chars.
- Around line 133-137: The documentation shows inconsistent command prefixing:
"/bmad-review-adversarial-general" has a leading slash while "quick-dev" does
not; decide and standardize the convention in step-04-review.md by either
removing the leading slash from "/bmad-review-adversarial-general" or adding a
slash to "quick-dev" across this code block, and add a short clarifying note if
the slash denotes a different scope/type; update the instances of the commands
("/bmad-review-adversarial-general" and "quick-dev") so they follow the chosen
convention and ensure surrounding text reflects that choice.

---

Nitpick comments:
In `@src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md`:
- Around line 127-128: The phrase "information asymmetry" in the parenthetical
next to "To run **Adversarial Review** in a fresh context (recommended for
information asymmetry):" is undefined jargon; either remove the parenthetical or
replace it with a one-line clarification immediately after the heading (e.g.,
"recommended when reviewers and authors have different access to details" or a
short definition of information asymmetry) so readers unfamiliar with the term
understand why a fresh context is recommended; update the sentence in
step-04-review.md that contains the string "information asymmetry" accordingly.
- Around line 127-139: The README recommends running "Adversarial Review" in a
fresh context but the interactive menu's [R] option currently runs adversarial
review inline, which contradicts that guidance; update the menu [R] handler (the
interactive branch that displays the [R] choice) to either (A) change its
description to explicitly recommend the fresh-context command
(/bmad-review-adversarial-general {finalFile}) and link or show the quick-dev
alternative, or (B) change its behavior so selecting [R] invokes the
fresh-context flow by calling /bmad-review-adversarial-general {finalFile}
instead of running inline; locate and modify the menu code that renders/handles
the [R] choice and any associated help text so the menu and the step-04-review
guidance are consistent.
- Around line 127-131: The text tells users to run
"/bmad-review-adversarial-general {finalFile}" in a "fresh context" but doesn't
explain how to create one; update the step-04-review.md content near the command
to explicitly instruct the user to open a fresh context (e.g., "open a new chat
or start a new session/process") before running the command, and optionally give
both GUI and CLI examples (e.g., "start a new chat window or run in a new
terminal/session") so readers know exactly how to create the required fresh
context.
- Line 139: Replace the ambiguous sentence "This ensures the agent has clean
context focused solely on its task." in step-04-review.md with a specific
reference to which task you mean (e.g., "review task" or "development task"), or
reword to cover both (e.g., "This ensures the agent has a clean context focused
only on the current task—either the review or the development task—so prior
prompts don't interfere."); locate the exact sentence to update and apply the
clearer wording.
- Around line 125-127: The two sentences are sequenced contradictorily: the line
"Once you are fully satisfied with the spec (ideally after **Adversarial
Review** and maybe a few rounds of **Advanced Elicitation**), it is recommended
to run implementation in a FRESH CONTEXT for best results." appears before the
"To run **Adversarial Review** in a fresh context (recommended for information
asymmetry):" guidance, implying review happens after satisfaction. Fix by either
moving the "Once you are fully satisfied..." sentence to follow the Adversarial
Review guidance or reword the sentence to state that Adversarial Review (and
Advanced Elicitation) should occur before you consider yourself "fully
satisfied" (e.g., "After completing Adversarial Review and any Advanced
Elicitation, and once you are fully satisfied..."), ensuring references to
Adversarial Review and Advanced Elicitation remain clear.

ℹ️ Review info

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between b83ccc7 and 2632f6c.

📒 Files selected for processing (1)
  • src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md

Comment on lines +127 to +139
To run **Adversarial Review** in a fresh context (recommended for information asymmetry):

\`\`\`
/bmad-review-adversarial-general {finalFile}
\`\`\`

To start **development** in a fresh context:

\`\`\`
quick-dev {finalFile}
\`\`\`

This ensures the dev agent has clean context focused solely on implementation.
This ensures the agent has clean context focused solely on its task.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Action‑instruction verb standardization not followed.

These lines are action instructions; the project standard is to use “load and follow” / “read and follow” for such directives. The new “To run…” and “To start…” wording deviates.

Based on learnings: “only action instructions … are replaced with ‘load and follow’ or ‘read and follow’.”

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md` around
lines 127 - 139, The action-instruction phrasing ("To run …" and "To start …")
should be standardized to the project's required verbs; replace those lines so
the commands use "load and follow" or "read and follow" phrasing instead (e.g.,
change the directive introducing "/bmad-review-adversarial-general {finalFile}"
and the one introducing "quick-dev {finalFile}" to begin with "Load and follow"
or "Read and follow" as appropriate), keeping the same command examples and
surrounding explanatory sentence about fresh context.

Comment on lines 133 to 137
To start **development** in a fresh context:

\`\`\`
quick-dev {finalFile}
\`\`\`
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

# First, let's examine the specific file and lines mentioned
cat -n src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md | sed -n '125,145p'

Repository: bmad-code-org/BMAD-METHOD

Length of output: 806


🏁 Script executed:

# Now search for quick-dev and /bmad-review patterns across markdown files
rg -n --no-heading -C2 '\b/quick-dev\b|\bquick-dev\b' -g '*.md' | head -50

Repository: bmad-code-org/BMAD-METHOD

Length of output: 4536


🏁 Script executed:

# Search for /bmad-review and similar command patterns
rg -n --no-heading -C2 '/bmad-review' -g '*.md' | head -50

Repository: bmad-code-org/BMAD-METHOD

Length of output: 494


🏁 Script executed:

# Check if there's a command reference or documentation
find . -name "*.md" -o -name "*.txt" | xargs rg -l "command\|prefix\|slash" | head -20

Repository: bmad-code-org/BMAD-METHOD

Length of output: 51


Inconsistent command prefixing convention between command types.

Line 130 uses /bmad-review-adversarial-general with a leading slash, while line 136 uses quick-dev without one. Throughout the documentation, quick-dev is consistently written without a slash (correct as-is), but the adjacent command uses a different prefix convention. Clarify whether the slash prefix distinguishes command scope/type, or standardize the convention for consistency within this code block.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md` around
lines 133 - 137, The documentation shows inconsistent command prefixing:
"/bmad-review-adversarial-general" has a leading slash while "quick-dev" does
not; decide and standardize the convention in step-04-review.md by either
removing the leading slash from "/bmad-review-adversarial-general" or adding a
slash to "quick-dev" across this code block, and add a short clarifying note if
the slash denotes a different scope/type; update the instances of the commands
("/bmad-review-adversarial-general" and "quick-dev") so they follow the chosen
convention and ensure surrounding text reflects that choice.

@alexeyv
Copy link
Contributor

alexeyv commented Feb 25, 2026

Sounds like a great idea. Please resolve CodeRabbit comments, and I'll give it a closer look.

@alexeyv alexeyv self-assigned this Feb 25, 2026
@ak95asb
Copy link
Author

ak95asb commented Feb 25, 2026

Hi @alexeyv, thanks for the quick response and interest. Two of the changes suggested are pretty straightforward (related to quotes) and I'll take care of them ASAP. The other two might require some digging but I'll try and do my best.

pbean and others added 2 commits February 25, 2026 13:10
…line (bmad-code-org#1746)

* fix(installer): remove double-escaping of quotes in CSV manifest pipeline

cleanForCSV() pre-escaped " to "" before storing in memory, then
escapeCsv() escaped again at CSV write time. After csv-parse round-trip
(which only un-escapes once), descriptions retained doubled quotes
instead of originals, corrupting generated output files.

Fix: remove the redundant quote escaping from cleanForCSV() since
escapeCsv() already handles CSV quoting correctly at write time.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(installer): use single quotes for description in Gemini workflow templates

Replace triple-quoted """{{description}}""" with single-quoted '{{description}}'
to avoid TOML escaping issues in Gemini workflow templates.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
…n step-04

  - Add `/` prefix to `quick-dev` slash command references for clarity
  - Quote `{finalFile}` in copy-paste commands to handle spaces in paths
  - Update wording from "To run" to "Load and follow" for precision
  - Add inline note clarifying both are BMAD slash commands/skills
@ak95asb
Copy link
Author

ak95asb commented Feb 25, 2026

Hi @alexeyv,

Have made the changes as per my limited understanding, please help and guide here as I am relatively new here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Quick-Spec Step 4: Provide copy-paste command for Adversarial Review in fresh context

3 participants