diff --git a/src/core/module.yaml b/src/core/module.yaml index 10596d862..c45a302b7 100644 --- a/src/core/module.yaml +++ b/src/core/module.yaml @@ -23,3 +23,13 @@ output_folder: prompt: "Where should output files be saved?" default: "_bmad-output" result: "{project-root}/{value}" + +interaction_style: + prompt: "How should agents ask you questions?" + default: "structured" + result: "{value}" + single-select: + - value: "structured" + label: "Structured - Numbered option lists (recommended)" + - value: "open" + label: "Open - Natural conversational questions" diff --git a/src/utility/agent-components/activation-steps.txt b/src/utility/agent-components/activation-steps.txt index 9ead0e01c..5d0393805 100644 --- a/src/utility/agent-components/activation-steps.txt +++ b/src/utility/agent-components/activation-steps.txt @@ -1,7 +1,7 @@ Load persona from this current agent file (already in context) 🚨 IMMEDIATE ACTION REQUIRED - BEFORE ANY OUTPUT: - Load and read {project-root}/_bmad/{{module}}/config.yaml NOW - - Store ALL fields as session variables: {user_name}, {communication_language}, {output_folder} + - Store ALL fields as session variables: {user_name}, {communication_language}, {output_folder}, {interaction_style} - VERIFY: If config not loaded, STOP and report error to user - DO NOT PROCEED to step 3 until config is successfully loaded and variables stored diff --git a/tools/cli/installers/lib/ide/templates/agent-command-template.md b/tools/cli/installers/lib/ide/templates/agent-command-template.md index 897136317..c2c2f44f2 100644 --- a/tools/cli/installers/lib/ide/templates/agent-command-template.md +++ b/tools/cli/installers/lib/ide/templates/agent-command-template.md @@ -5,6 +5,8 @@ description: '{{description}}' You must fully embody this agent's persona and follow all activation instructions exactly as specified. NEVER break character until given an exit command. +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. Do NOT ask open-ended inline questions. No exceptions. + 1. LOAD the FULL agent file from @_bmad/{{module}}/agents/{{path}} 2. READ its entire contents - this contains the complete agent persona, menu, and instructions diff --git a/tools/cli/installers/lib/ide/templates/combined/antigravity.md b/tools/cli/installers/lib/ide/templates/combined/antigravity.md index 88e806e9d..d6c9b09b7 100644 --- a/tools/cli/installers/lib/ide/templates/combined/antigravity.md +++ b/tools/cli/installers/lib/ide/templates/combined/antigravity.md @@ -6,3 +6,5 @@ description: '{{description}}' Read the entire workflow file at: {project-root}/_bmad/{{workflow_path}} Follow all instructions in the workflow file exactly as written. + +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. No exceptions. diff --git a/tools/cli/installers/lib/ide/templates/combined/default-agent.md b/tools/cli/installers/lib/ide/templates/combined/default-agent.md index f8ad93801..bc6f0e6ab 100644 --- a/tools/cli/installers/lib/ide/templates/combined/default-agent.md +++ b/tools/cli/installers/lib/ide/templates/combined/default-agent.md @@ -5,6 +5,8 @@ description: '{{description}}' You must fully embody this agent's persona and follow all activation instructions exactly as specified. NEVER break character until given an exit command. +RULE: When interaction_style is "structured", EVERY question to the user MUST call the AskUserQuestion tool. Do NOT write questions as plain text. No exceptions. + 1. LOAD the FULL agent file from {project-root}/_bmad/{{path}} 2. READ its entire contents - this contains the complete agent persona, menu, and instructions diff --git a/tools/cli/installers/lib/ide/templates/combined/default-task.md b/tools/cli/installers/lib/ide/templates/combined/default-task.md index b865d6ffb..8d07ad96d 100644 --- a/tools/cli/installers/lib/ide/templates/combined/default-task.md +++ b/tools/cli/installers/lib/ide/templates/combined/default-task.md @@ -8,3 +8,5 @@ description: '{{description}}' Read the entire task file at: {project-root}/{{bmadFolderName}}/{{path}} Follow all instructions in the task file exactly as written. + +RULE: When interaction_style is "structured", EVERY question to the user MUST call the AskUserQuestion tool. Do NOT write questions as plain text. No exceptions. diff --git a/tools/cli/installers/lib/ide/templates/combined/default-tool.md b/tools/cli/installers/lib/ide/templates/combined/default-tool.md index 11c6aac8d..01c0acc97 100644 --- a/tools/cli/installers/lib/ide/templates/combined/default-tool.md +++ b/tools/cli/installers/lib/ide/templates/combined/default-tool.md @@ -8,3 +8,5 @@ description: '{{description}}' Read the entire tool file at: {project-root}/{{bmadFolderName}}/{{path}} Follow all instructions in the tool file exactly as written. + +RULE: When interaction_style is "structured", EVERY question to the user MUST call the AskUserQuestion tool. Do NOT write questions as plain text. No exceptions. diff --git a/tools/cli/installers/lib/ide/templates/combined/default-workflow-yaml.md b/tools/cli/installers/lib/ide/templates/combined/default-workflow-yaml.md index eca904370..d7d72098b 100644 --- a/tools/cli/installers/lib/ide/templates/combined/default-workflow-yaml.md +++ b/tools/cli/installers/lib/ide/templates/combined/default-workflow-yaml.md @@ -3,6 +3,8 @@ name: '{{name}}' description: '{{description}}' --- +RULE: When interaction_style is "structured", EVERY question to the user MUST call the AskUserQuestion tool. Do NOT write questions as plain text. No exceptions. + IT IS CRITICAL THAT YOU FOLLOW THESE STEPS - while staying in character as the current agent persona you may have loaded: diff --git a/tools/cli/installers/lib/ide/templates/combined/default-workflow.md b/tools/cli/installers/lib/ide/templates/combined/default-workflow.md index afb0dea58..97db910c3 100644 --- a/tools/cli/installers/lib/ide/templates/combined/default-workflow.md +++ b/tools/cli/installers/lib/ide/templates/combined/default-workflow.md @@ -3,4 +3,6 @@ name: '{{name}}' description: '{{description}}' --- +RULE: When interaction_style is "structured", EVERY question to the user MUST call the AskUserQuestion tool. Do NOT write questions as plain text. No exceptions. + IT IS CRITICAL THAT YOU FOLLOW THIS COMMAND: LOAD the FULL @{project-root}/{{bmadFolderName}}/{{path}}, READ its entire contents and follow its directions exactly! diff --git a/tools/cli/installers/lib/ide/templates/combined/gemini-agent.toml b/tools/cli/installers/lib/ide/templates/combined/gemini-agent.toml index ae5f791cf..0a8fcc75d 100644 --- a/tools/cli/installers/lib/ide/templates/combined/gemini-agent.toml +++ b/tools/cli/installers/lib/ide/templates/combined/gemini-agent.toml @@ -7,6 +7,8 @@ PRE-FLIGHT CHECKLIST: 2. [ ] IMMEDIATE ACTION: Read and internalize the full agent definition at {project-root}/{{bmadFolderName}}/{{path}}. 3. [ ] CONFIRM: The user's name from config is {user_name}. +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. No exceptions. + Only after all checks are complete, greet the user by name and display the menu. Acknowledge this checklist is complete in your first response. diff --git a/tools/cli/installers/lib/ide/templates/combined/gemini-task.toml b/tools/cli/installers/lib/ide/templates/combined/gemini-task.toml index 7d15e2164..a9ab4d15b 100644 --- a/tools/cli/installers/lib/ide/templates/combined/gemini-task.toml +++ b/tools/cli/installers/lib/ide/templates/combined/gemini-task.toml @@ -6,6 +6,7 @@ TASK INSTRUCTIONS: 1. LOAD the task file from {project-root}/{{bmadFolderName}}/{{path}} 2. READ its entire contents 3. FOLLOW every instruction precisely as specified +4. RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. No exceptions. TASK FILE: {project-root}/{{bmadFolderName}}/{{path}} """ diff --git a/tools/cli/installers/lib/ide/templates/combined/gemini-tool.toml b/tools/cli/installers/lib/ide/templates/combined/gemini-tool.toml index fc78c6b72..9927fbe4c 100644 --- a/tools/cli/installers/lib/ide/templates/combined/gemini-tool.toml +++ b/tools/cli/installers/lib/ide/templates/combined/gemini-tool.toml @@ -6,6 +6,7 @@ TOOL INSTRUCTIONS: 1. LOAD the tool file from {project-root}/{{bmadFolderName}}/{{path}} 2. READ its entire contents 3. FOLLOW every instruction precisely as specified +4. RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. No exceptions. TOOL FILE: {project-root}/{{bmadFolderName}}/{{path}} """ diff --git a/tools/cli/installers/lib/ide/templates/combined/gemini-workflow-yaml.toml b/tools/cli/installers/lib/ide/templates/combined/gemini-workflow-yaml.toml index bc6c8da39..e3ca1180f 100644 --- a/tools/cli/installers/lib/ide/templates/combined/gemini-workflow-yaml.toml +++ b/tools/cli/installers/lib/ide/templates/combined/gemini-workflow-yaml.toml @@ -11,6 +11,7 @@ CRITICAL: This is a structured YAML workflow. Follow these steps precisely: - Dependencies between steps 3. EXECUTE each step in order 4. VALIDATE outputs before proceeding to next step +5. RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. No exceptions. WORKFLOW FILE: {project-root}/{{bmadFolderName}}/{{workflow_path}} """ diff --git a/tools/cli/installers/lib/ide/templates/combined/gemini-workflow.toml b/tools/cli/installers/lib/ide/templates/combined/gemini-workflow.toml index 3306cce04..63b20c572 100644 --- a/tools/cli/installers/lib/ide/templates/combined/gemini-workflow.toml +++ b/tools/cli/installers/lib/ide/templates/combined/gemini-workflow.toml @@ -9,6 +9,7 @@ WORKFLOW INSTRUCTIONS: 2. READ its entire contents 3. FOLLOW every step precisely as specified 4. DO NOT skip or modify any steps +5. RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. No exceptions. WORKFLOW FILE: {project-root}/{{bmadFolderName}}/{{workflow_path}} """ diff --git a/tools/cli/installers/lib/ide/templates/combined/kiro-agent.md b/tools/cli/installers/lib/ide/templates/combined/kiro-agent.md index e2c2a83fa..33d9f93c1 100644 --- a/tools/cli/installers/lib/ide/templates/combined/kiro-agent.md +++ b/tools/cli/installers/lib/ide/templates/combined/kiro-agent.md @@ -6,6 +6,8 @@ inclusion: manual You must fully embody this agent's persona and follow all activation instructions exactly as specified. NEVER break character until given an exit command. +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. Do NOT ask open-ended inline questions. No exceptions. + 1. LOAD the FULL agent file from #[[file:{{bmadFolderName}}/{{path}}]] 2. READ its entire contents - this contains the complete agent persona, menu, and instructions diff --git a/tools/cli/installers/lib/ide/templates/combined/kiro-task.md b/tools/cli/installers/lib/ide/templates/combined/kiro-task.md index 8952e5ee2..7a7454fe6 100644 --- a/tools/cli/installers/lib/ide/templates/combined/kiro-task.md +++ b/tools/cli/installers/lib/ide/templates/combined/kiro-task.md @@ -7,3 +7,5 @@ inclusion: manual Read the entire task file at: #[[file:{{bmadFolderName}}/{{path}}]] Follow all instructions in the task file exactly as written. + +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. No exceptions. diff --git a/tools/cli/installers/lib/ide/templates/combined/kiro-tool.md b/tools/cli/installers/lib/ide/templates/combined/kiro-tool.md index cd903217a..5a45b0b3b 100644 --- a/tools/cli/installers/lib/ide/templates/combined/kiro-tool.md +++ b/tools/cli/installers/lib/ide/templates/combined/kiro-tool.md @@ -7,3 +7,5 @@ inclusion: manual Read the entire tool file at: #[[file:{{bmadFolderName}}/{{path}}]] Follow all instructions in the tool file exactly as written. + +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. No exceptions. diff --git a/tools/cli/installers/lib/ide/templates/combined/kiro-workflow-yaml.md b/tools/cli/installers/lib/ide/templates/combined/kiro-workflow-yaml.md index 4ee4e0824..1db8829e6 100644 --- a/tools/cli/installers/lib/ide/templates/combined/kiro-workflow-yaml.md +++ b/tools/cli/installers/lib/ide/templates/combined/kiro-workflow-yaml.md @@ -4,6 +4,8 @@ inclusion: manual # {{name}} +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. Do NOT ask open-ended inline questions. No exceptions. + IT IS CRITICAL THAT YOU FOLLOW THESE STEPS - while staying in character as the current agent persona you may have loaded: diff --git a/tools/cli/installers/lib/ide/templates/combined/kiro-workflow.md b/tools/cli/installers/lib/ide/templates/combined/kiro-workflow.md index e1847f414..5966c0c72 100644 --- a/tools/cli/installers/lib/ide/templates/combined/kiro-workflow.md +++ b/tools/cli/installers/lib/ide/templates/combined/kiro-workflow.md @@ -4,4 +4,6 @@ inclusion: manual # {{name}} +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. Do NOT ask open-ended inline questions. No exceptions. + IT IS CRITICAL THAT YOU FOLLOW THIS COMMAND: LOAD the FULL #[[file:{{bmadFolderName}}/{{path}}]], READ its entire contents and follow its directions exactly! diff --git a/tools/cli/installers/lib/ide/templates/combined/opencode-agent.md b/tools/cli/installers/lib/ide/templates/combined/opencode-agent.md index 828d673ac..a58aae109 100644 --- a/tools/cli/installers/lib/ide/templates/combined/opencode-agent.md +++ b/tools/cli/installers/lib/ide/templates/combined/opencode-agent.md @@ -5,6 +5,8 @@ description: '{{description}}' You must fully embody this agent's persona and follow all activation instructions exactly as specified. NEVER break character until given an exit command. +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. Do NOT ask open-ended inline questions. No exceptions. + 1. LOAD the FULL agent file from {project-root}/{{bmadFolderName}}/{{path}} 2. READ its entire contents - this contains the complete agent persona, menu, and instructions diff --git a/tools/cli/installers/lib/ide/templates/combined/opencode-task.md b/tools/cli/installers/lib/ide/templates/combined/opencode-task.md index 772f9c9eb..ee26a3c3a 100644 --- a/tools/cli/installers/lib/ide/templates/combined/opencode-task.md +++ b/tools/cli/installers/lib/ide/templates/combined/opencode-task.md @@ -10,4 +10,6 @@ TASK INSTRUCTIONS: 2. READ its entire contents 3. FOLLOW every instruction precisely as specified +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. No exceptions. + TASK FILE: {project-root}/{{bmadFolderName}}/{{path}} diff --git a/tools/cli/installers/lib/ide/templates/combined/opencode-tool.md b/tools/cli/installers/lib/ide/templates/combined/opencode-tool.md index 88c317e63..c726d3eec 100644 --- a/tools/cli/installers/lib/ide/templates/combined/opencode-tool.md +++ b/tools/cli/installers/lib/ide/templates/combined/opencode-tool.md @@ -10,4 +10,6 @@ TOOL INSTRUCTIONS: 2. READ its entire contents 3. FOLLOW every instruction precisely as specified +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. No exceptions. + TOOL FILE: {project-root}/{{bmadFolderName}}/{{path}} diff --git a/tools/cli/installers/lib/ide/templates/combined/opencode-workflow-yaml.md b/tools/cli/installers/lib/ide/templates/combined/opencode-workflow-yaml.md index 88838cc1c..5e4182627 100644 --- a/tools/cli/installers/lib/ide/templates/combined/opencode-workflow-yaml.md +++ b/tools/cli/installers/lib/ide/templates/combined/opencode-workflow-yaml.md @@ -12,5 +12,6 @@ WORKFLOW INSTRUCTIONS: 2. READ its entire contents 3. FOLLOW every step precisely as specified 4. DO NOT skip or modify any steps +5. RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. No exceptions. WORKFLOW FILE: {project-root}/{{bmadFolderName}}/{{path}} diff --git a/tools/cli/installers/lib/ide/templates/combined/opencode-workflow.md b/tools/cli/installers/lib/ide/templates/combined/opencode-workflow.md index 88838cc1c..5e4182627 100644 --- a/tools/cli/installers/lib/ide/templates/combined/opencode-workflow.md +++ b/tools/cli/installers/lib/ide/templates/combined/opencode-workflow.md @@ -12,5 +12,6 @@ WORKFLOW INSTRUCTIONS: 2. READ its entire contents 3. FOLLOW every step precisely as specified 4. DO NOT skip or modify any steps +5. RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. No exceptions. WORKFLOW FILE: {project-root}/{{bmadFolderName}}/{{path}} diff --git a/tools/cli/installers/lib/ide/templates/combined/rovodev.md b/tools/cli/installers/lib/ide/templates/combined/rovodev.md index 066945ee5..4e16682c6 100644 --- a/tools/cli/installers/lib/ide/templates/combined/rovodev.md +++ b/tools/cli/installers/lib/ide/templates/combined/rovodev.md @@ -7,3 +7,5 @@ Read the entire workflow file at: {project-root}/_bmad/{{workflow_path}} Follow all instructions in the workflow file exactly as written. + +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. No exceptions. diff --git a/tools/cli/installers/lib/ide/templates/combined/trae.md b/tools/cli/installers/lib/ide/templates/combined/trae.md index b4d43d7af..73adae9a6 100644 --- a/tools/cli/installers/lib/ide/templates/combined/trae.md +++ b/tools/cli/installers/lib/ide/templates/combined/trae.md @@ -7,3 +7,5 @@ Read the entire workflow file at: {project-root}/_bmad/{{workflow_path}} Follow all instructions in the workflow file exactly as written. + +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. No exceptions. diff --git a/tools/cli/installers/lib/ide/templates/combined/windsurf-workflow.md b/tools/cli/installers/lib/ide/templates/combined/windsurf-workflow.md index 6366425c7..154fddbc9 100644 --- a/tools/cli/installers/lib/ide/templates/combined/windsurf-workflow.md +++ b/tools/cli/installers/lib/ide/templates/combined/windsurf-workflow.md @@ -8,3 +8,5 @@ auto_execution_mode: "iterate" Read the entire workflow file at {project-root}/_bmad/{{workflow_path}} Follow all instructions in the workflow file exactly as written. + +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. No exceptions. diff --git a/tools/cli/installers/lib/ide/templates/workflow-command-template.md b/tools/cli/installers/lib/ide/templates/workflow-command-template.md index 5c9e436c7..f5caa9948 100644 --- a/tools/cli/installers/lib/ide/templates/workflow-command-template.md +++ b/tools/cli/installers/lib/ide/templates/workflow-command-template.md @@ -2,6 +2,8 @@ description: '{{description}}' --- +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. Do NOT ask open-ended inline questions. No exceptions. + IT IS CRITICAL THAT YOU FOLLOW THESE STEPS - while staying in character as the current agent persona you may have loaded: diff --git a/tools/cli/installers/lib/ide/templates/workflow-commander.md b/tools/cli/installers/lib/ide/templates/workflow-commander.md index 3645c1a2f..5ab0d99a8 100644 --- a/tools/cli/installers/lib/ide/templates/workflow-commander.md +++ b/tools/cli/installers/lib/ide/templates/workflow-commander.md @@ -2,4 +2,6 @@ description: '{{description}}' --- +RULE: When interaction_style is "structured", EVERY question to the user MUST use structured options with a numbered list. Do NOT ask open-ended inline questions. No exceptions. + IT IS CRITICAL THAT YOU FOLLOW THIS COMMAND: LOAD the FULL @{{workflow_path}}, READ its entire contents and follow its directions exactly!