- Update module.yaml default to "open" and reorder options
- Change fallback in all 40 RULE directives from "default to structured
mode" to "default to open mode"
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Apply explicit {interaction_style} variable reference to handler-action,
handler-exec, handler-workflow, agent-command-header, and workflow.xml
- Remove old duplicate RULE lines left over from merge conflict resolution
in 10 template files (default-task/tool, rovodev, opencode-workflow*,
gemini-agent/task/tool/workflow/workflow-yaml)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Merges feature/platform-specific-structured-interaction which adds:
- Per-IDE template variants (claude, opencode, gemini, kiro, etc.)
- Explicit {interaction_style} session variable lookup in all RULE directives
- Fallback default to structured mode when variable is undetermined
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Change all 34 RULE directives from bare "When interaction_style is"
to explicit "Check your stored {interaction_style} session variable
from activation step 2" with a fallback default to structured mode.
Addresses cynical review finding that LLMs struggle with implicit
natural-language conditionals and need explicit variable lookup
instructions plus failure mode handling.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Standardize all 27 template RULE lines to use "EVERY question"
phrasing. The free-form escape clause prevents over-restriction
while EVERY strengthens the default structured behavior.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace emphatic "EVERY...MUST...Do NOT...No exceptions" phrasing with
clearer natural language that includes an explicit free-form override.
Research shows single clear sentences with conditional logic outperform
stacked absolute directives for LLM compliance.
New wording: "questions to the user MUST use structured options with a
numbered list unless the workflow or user explicitly requests free-form
input."
Also extracts RULE from step 4 in gemini-task.toml to standalone.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Replace Claude-specific AskUserQuestion in default-* templates with generic
numbered-list wording since these are universal fallbacks for all IDEs
- Fix hardcoded _bmad paths to use {{bmadFolderName}} in antigravity, rovodev,
trae, windsurf-workflow, and default-agent templates
- Extract RULE from numbered steps to standalone directive in gemini and
opencode workflow/tool templates
- Standardize RULE wording: add "Do NOT ask open-ended inline questions" to
all templates missing it for consistency
- Move RULE before execution instructions in default-task and rovodev templates
- Add {document_output_language} to activation-steps session variables
- Add interaction_style confirmation to gemini-agent preflight checklist
- Document all config settings including interaction_style in install guide
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Isolated test branch with just IDE template rules and module.yaml config.
No core agent-component or workflow.xml changes.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Adds a new `interaction_style` config option (structured/open) to core
module.yaml so users can choose how agents ask questions. When set to
"structured" (default), agents present numbered option lists and wait
for selection. When "open", agents ask questions naturally.
Changes:
- src/core/module.yaml: new interaction_style config with single-select
- activation-rules.txt: conditional rule based on {interaction_style}
- activation-steps.txt: include {interaction_style} in stored variables
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* 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>
* fix(ide): add support for Gemini CLI TOML format
* fix(ide): Added normalization for config.extension, added .yml to the extension array
---------
Co-authored-by: Brian <bmadcode@gmail.com>