Skip to content

Conversation

@alexeyv
Copy link
Contributor

@alexeyv alexeyv commented Feb 8, 2026

Summary

  • Replaces the custom kiro-cli.js installer (326 lines of YAML-to-JSON conversion) with config-driven templates, matching the pattern used by all other IDEs
  • Adds Kiro-specific steering file templates (kiro-agent.md, kiro-task.md, kiro-tool.md, kiro-workflow.md, kiro-workflow-yaml.md) using Kiro #[[file:...]] reference syntax and inclusion: manual frontmatter
  • Updates platform-codes.yaml to register Kiro as a config-driven IDE (target: .kiro/steering/, template type: kiro)
  • Renames platform code from kiro-cli to kiro and recategorizes from CLI to IDE
  • Updates docs (install guide, index, commands reference) to list Kiro alongside other supported tools

Test plan

  • Run npx bmad-method install and select Kiro -- verify steering files are generated in .kiro/steering/
  • Verify generated files use #[[file:...]] syntax and include inclusion: manual frontmatter
  • Run installer for other IDEs to confirm no regressions
  • Verify docs site builds cleanly with updated pages

Replace broken kiro-cli.js custom installer with config-driven approach
using platform-codes.yaml. Creates Kiro-specific templates with
inclusion: manual frontmatter and #[[file:...]] reference syntax.
@alexeyv alexeyv marked this pull request as ready for review February 8, 2026 09:09
@github-actions
Copy link
Contributor

github-actions bot commented Feb 8, 2026

@coderabbitai review

@augmentcode
Copy link

augmentcode bot commented Feb 8, 2026

🤖 Augment PR Summary

Summary: This PR adds first-class Kiro IDE support by moving Kiro onto the existing config-driven installer flow.

Changes:

  • Replaces the bespoke kiro-cli.js installer with a platform-codes entry for kiro (targeting .kiro/steering/ and template_type: kiro).
  • Adds Kiro steering templates for agents, tasks, tools, and workflows (including YAML workflows) using Kiro’s #[[file:…]] reference syntax and inclusion: manual frontmatter.
  • Renames the platform code from kiro-clikiro and re-categorizes it from CLI to IDE in both platform registries.
  • Updates docs to list Kiro as a supported tool and to describe where generated files are written.

Technical notes: Kiro now follows the same template resolution and artifact rendering path as other config-driven IDEs, reducing custom maintenance and keeping generation consistent across tools.

🤖 Was this summary useful? React with 👍 or 👎

Copy link

@augmentcode augmentcode bot left a comment

Choose a reason for hiding this comment

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

Review completed. 3 suggestions posted.

Fix All in Augment

Comment augment review to trigger a new review at any time.

| Claude Code | `.claude/commands/` | `@path` references |
| Kiro | `.kiro/steering/` | `#[[file:path]]` references with `inclusion: manual` frontmatter |
| Cursor | `.cursor/commands/` | `@path` references |
| Windsurf | `.windsurf/workflows/` | `@{project-root}/path` references |
Copy link

Choose a reason for hiding this comment

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

The Windsurf row claims @{project-root}/path references, but the current Windsurf workflow template reads files via plain {project-root}/_bmad/... (no @ include), so this table may be inaccurate for Windsurf users.

Severity: low

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

├── _bmad-output/ # Generated artifacts
└── .claude/ # Claude Code commands (if using Claude Code)
├── .claude/ # Claude Code commands (if using Claude Code)
└── .kiro/ # Kiro steering files (if using Kiro)
Copy link

Choose a reason for hiding this comment

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

This tree implies Kiro steering files live directly under .kiro/, but the installer config targets .kiro/steering/; consider reflecting the more specific path here to reduce user confusion.

Severity: low

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.


kiro-cli:
name: "Kiro CLI"
kiro:
Copy link

Choose a reason for hiding this comment

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

Renaming the tool ID from kiro-cli to kiro is a breaking change for scripted/non-interactive installs (e.g., --tools kiro-cli); consider an alias or explicit migration note so existing automation doesn’t start failing unexpectedly.

Severity: medium

Other Locations
  • tools/platform-codes.yaml:70

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

@coderabbitai
Copy link

coderabbitai bot commented Feb 8, 2026

📝 Walkthrough

Walkthrough

This PR refactors Kiro support by removing the legacy KiroCliSetup implementation, reconfiguring Kiro from a CLI tool to an IDE in platform definitions, adding five new Kiro-specific template files, and updating documentation and installer references to reflect the architectural shift.

Changes

Cohort / File(s) Summary
Documentation Updates
docs/index.md, docs/how-to/install-bmad.md, docs/reference/commands.md
Added Kiro as a supported AI tool to installation guide and overview; expanded command reference with per-tool location details and table format for tool-specific command paths.
Platform Configuration
tools/cli/installers/lib/ide/platform-codes.yaml, tools/platform-codes.yaml
Renamed platform entry from kiro-cli to kiro; migrated category from cli to ide; updated name to "Kiro" and description to "Amazon's AI-powered IDE"; added installer block with target_dir ".kiro/steering" and template_type "kiro".
KiroCliSetup Removal
tools/cli/installers/lib/ide/kiro-cli.js
Removed entire KiroCliSetup class implementation including setup orchestration, agent discovery, YAML processing, validation, and availability checks; eliminated publicly exported KiroCliSetup module.
Installer Manager Updates
tools/cli/installers/lib/ide/manager.js, tools/cli/installers/lib/ide/installer.js
Updated manager.js to exclude kiro-cli.js from custom installer loading; modified installer.js comment to remove kiro-cli reference and mention only kilo as custom IDE installer option.
Kiro Template Files
tools/cli/installers/lib/ide/templates/combined/kiro-agent.md, tools/cli/installers/lib/ide/templates/combined/kiro-task.md, tools/cli/installers/lib/ide/templates/combined/kiro-tool.md, tools/cli/installers/lib/ide/templates/combined/kiro-workflow.md, tools/cli/installers/lib/ide/templates/combined/kiro-workflow-yaml.md
Added five new Markdown template files with YAML front-matter defining manual inclusion and dynamic path placeholders ({{name}}, {{bmadFolderName}}, {{path}}) to instruct users on loading and executing Kiro-specific agents, tasks, tools, and workflows.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~22 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title 'feat: add Kiro IDE support via config-driven installer' accurately reflects the primary change: replacing a custom kiro-cli.js installer with config-driven templates and adding Kiro IDE support.
Description check ✅ Passed The description provides relevant context about replacing the custom installer with config-driven templates, adding Kiro-specific templates, updating platform codes, and documentation changes—all directly related to the changeset.
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 docstrings
🧪 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

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
docs/how-to/install-bmad.md (2)

19-19: ⚠️ Potential issue | 🟡 Minor

Prerequisites list doesn't mention Kiro.

Line 19 lists "Claude Code, Cursor, Windsurf, or similar" but now that Kiro is a first-class supported tool (added to the selection list on line 44 and given its own tree entry), it should appear here too — or the wording should be made generic enough to not enumerate specific tools.

Proposed fix
-- **AI tool** (Claude Code, Cursor, Windsurf, or similar)
+- **AI tool** (Claude Code, Cursor, Windsurf, Kiro, or similar)

60-69: ⚠️ Potential issue | 🟡 Minor

Directory tree is selectively incomplete.

The tree shows .claude/ and .kiro/ output directories but omits .cursor/ and .windsurf/, which are equally valid installer outputs. This creates a misleading impression that only Claude Code and Kiro produce project-level artifacts. Either show all IDE outputs (with conditional comments) or use a single generic placeholder like .<ide>/ to avoid playing favourites.

🤖 Fix all issues with AI agents
In `@docs/index.md`:
- Around line 36-40: Update the Kiro list item text to match current branding:
replace the description "Amazon's AI-powered IDE" with a phrasing like "Agentic
AI development from prototype to production — spec-driven development" and keep
the existing URL `https://kiro.dev`; edit the list entry that currently reads
"**[Kiro](https://kiro.dev)** — Amazon's AI-powered IDE" to the new branded
description so the item accurately reflects Kiro's positioning.

In `@docs/reference/commands.md`:
- Around line 20-26: The table showing supported AI tools (header row "AI Tool |
Location | File Reference Syntax" and entries like "Claude Code", "Kiro",
"Cursor", "Windsurf") only lists 4 of 15+ platforms; update
docs/reference/commands.md by either adding a final row titled "Other tools"
that points readers to the installer or the canonical platform list
(platform-codes.yaml) and explains that other tools (e.g., Cline, Roo, Auggie,
Codex, Gemini, GitHub Copilot) are supported, or add a short sentence below the
table clarifying the table is not exhaustive and linking to the installer and
platform-codes.yaml for the full list.

In `@tools/cli/installers/lib/ide/platform-codes.yaml`:
- Around line 114-115: Add a migration for the renamed platform code from
"kiro-cli" to "kiro": update platform lookup logic (e.g., getPlatformByCode /
resolvePlatformCode) to treat "kiro-cli" as an alias for "kiro", and add a
config migration routine (e.g., migrateLegacyConfig or
migratePlatformConfigFiles) that detects a legacy kiro-cli.yaml, renames it to
kiro.yaml (preserving file contents and metadata/permissions), and skips
overwrite if kiro.yaml already exists (or merge safely). Ensure any
history/selection loading paths also map "kiro-cli" → "kiro" so existing config
and user selections continue to work.

In `@tools/cli/installers/lib/ide/templates/combined/kiro-agent.md`:
- Line 7: Update the line containing "NEVER break character until given an exit
command" in the kiro-agent persona template to either (a) point readers to where
the exit command is defined (e.g., "see the activation section of this agent
file for the exit command") or (b) define a sensible default exit command inline
(for example, "default exit command: 'EXIT_AGENT'") and ensure the document
references the activation section or the exact exit token; modify the wording to
include the pointer or default so users are not left without an exit mechanism.
🧹 Nitpick comments (10)
tools/cli/installers/lib/ide/templates/combined/kiro-task.md (2)

7-9: Standardize action verbs to “read and follow” per repo convention.

These are action instructions, so the verb standardization rule applies; “Read … Follow …” should be collapsed to “Read and follow …” to avoid drift.
Based on learnings, when standardizing verbs like "execute", "invoke", "run" per issue #1378 and PR #1387/#1570, only action instructions (that tell the AI how to perform an action) are replaced with "load and follow" or "read and follow". Section headers, frontmatter metadata, and other descriptive/structural elements are intentionally left unchanged, as they label topics rather than instruct actions.

Proposed change
-Read the entire task file at: #[[file:{{bmadFolderName}}/{{path}}]]
-
-Follow all instructions in the task file exactly as written.
+Read and follow the entire task file: #[[file:{{bmadFolderName}}/{{path}}]]

7-7: Adjust phrasing to align with other Kiro template conventions.

The #[[file:...]] syntax does not require a "LOAD" keyword—Kiro's documentation confirms this syntax works directly. However, other critical Kiro templates in this repository (kiro-workflow.md, kiro-agent.md) use explicit phrasing like "LOAD the FULL ... READ its entire contents" to emphasize the importance of including the file. Consider updating line 7 to match that pattern for consistency and clarity:

LOAD the FULL task file from #[[file:{{bmadFolderName}}/{{path}}]] and READ its entire contents.

This aligns the task template with the established convention for critical file references across Kiro templates.

tools/cli/installers/lib/ide/templates/combined/kiro-tool.md (1)

7-9: Standardize action verbs to “read and follow” per repo convention.

These are action instructions; they should use the standardized verb form.
Based on learnings, when standardizing verbs like "execute", "invoke", "run" per issue #1378 and PR #1387/#1570, only action instructions (that tell the AI how to perform an action) are replaced with "load and follow" or "read and follow". Section headers, frontmatter metadata, and other descriptive/structural elements are intentionally left unchanged, as they label topics rather than instruct actions.

Proposed change
-Read the entire tool file at: #[[file:{{bmadFolderName}}/{{path}}]]
-
-Follow all instructions in the tool file exactly as written.
+Read and follow the entire tool file: #[[file:{{bmadFolderName}}/{{path}}]]
tools/cli/installers/lib/ide/templates/combined/kiro-workflow.md (2)

7-7: Align action wording with “load and follow” convention.

“FOLLOW THIS COMMAND: LOAD … READ … follow …” is inconsistent with the standardized action phrasing and invites divergent behavior.
Based on learnings, when standardizing verbs like "execute", "invoke", "run" per issue #1378 and PR #1387/#1570, only action instructions (that tell the AI how to perform an action) are replaced with "load and follow" or "read and follow". Section headers, frontmatter metadata, and other descriptive/structural elements are intentionally left unchanged, as they label topics rather than instruct actions.

Proposed change
-IT IS CRITICAL THAT YOU FOLLOW THIS COMMAND: LOAD the FULL #[[file:{{bmadFolderName}}/{{path}}]], READ its entire contents and follow its directions exactly!
+IT IS CRITICAL THAT YOU LOAD AND FOLLOW the FULL #[[file:{{bmadFolderName}}/{{path}}]] exactly as written.

7-7: Inconsistent “stay in character” guidance vs. workflow-yaml template.

kiro-workflow-yaml.md explicitly instructs the agent to stay in character; this template does not. That split can cause behavior drift between YAML and non-YAML workflows. Either add the instruction here or remove it there.

tools/cli/installers/lib/ide/templates/combined/kiro-agent.md (1)

10-15: Standardize action verbs in activation steps.

These are action instructions; replace “LOAD/READ/FOLLOW” with the standardized “load and follow/read and follow” forms for consistency.
Based on learnings, when standardizing verbs like "execute", "invoke", "run" per issue #1378 and PR #1387/#1570, only action instructions (that tell the AI how to perform an action) are replaced with "load and follow" or "read and follow". Section headers, frontmatter metadata, and other descriptive/structural elements are intentionally left unchanged, as they label topics rather than instruct actions.

Proposed change
-1. LOAD the FULL agent file from #[[file:{{bmadFolderName}}/{{path}}]]
-2. READ its entire contents - this contains the complete agent persona, menu, and instructions
-3. FOLLOW every step in the <activation> section precisely
+1. Load and follow the FULL agent file: #[[file:{{bmadFolderName}}/{{path}}]]
+2. Read and follow its entire contents — this contains the complete agent persona, menu, and instructions
+3. Read and follow every step in the <activation> section precisely
tools/cli/installers/lib/ide/templates/combined/kiro-workflow-yaml.md (2)

12-13: Use file reference syntax for the workflow-config path.

Step 3 passes a raw path string, which can be misinterpreted or ignored by Kiro. Use the same #[[file:...]] syntax to enforce file loading.

Proposed change
-3. Pass the yaml path {{bmadFolderName}}/{{path}} as 'workflow-config' parameter to the workflow.xml instructions
+3. Pass the yaml file #[[file:{{bmadFolderName}}/{{path}}]] as the 'workflow-config' parameter to the workflow.xml instructions

11-14: Standardize action verbs (“EXECUTING” → “following”) per repo convention.

The instruction uses “EXECUTING,” which conflicts with the standard action verb replacements.
Based on learnings, when standardizing verbs like "execute", "invoke", "run" per issue #1378 and PR #1387/#1570, only action instructions (that tell the AI how to perform an action) are replaced with "load and follow" or "read and follow". Section headers, frontmatter metadata, and other descriptive/structural elements are intentionally left unchanged, as they label topics rather than instruct actions.

Proposed change
-2. READ its entire contents - this is the CORE OS for EXECUTING the specific workflow-config #[[file:{{bmadFolderName}}/{{path}}]]
+2. Read and follow its entire contents — this is the CORE OS for FOLLOWING the specific workflow-config #[[file:{{bmadFolderName}}/{{path}}]]
docs/reference/commands.md (1)

27-31: Example paths are Claude Code–only, but Kiro was just added.

Given that the purpose of this PR is to add Kiro support, showing at least one Kiro example path (e.g., .kiro/steering/bmad/<module>/agents/) would demonstrate the new feature and help Kiro users orient themselves. Currently there's no example of what the Kiro steering file tree looks like.

tools/platform-codes.yaml (1)

70-74: Systematic duplication across 21+ platform entries — metadata drift risk extends beyond kiro.

Both tools/platform-codes.yaml and tools/cli/installers/lib/ide/platform-codes.yaml define nearly identical metadata for the same set of entries (cline, cursor, kiro, and others). The IDE file extends with installer-specific config, but the shared metadata (name, preferred, category, description) is duplicated. Any independent update to either file will cause silent divergence — for example, updating the description of cline in the top-level file won't propagate to the IDE installer config that uses it.

Consider refactoring to make the top-level file the single source of truth for metadata, with the IDE file importing or extending only the installer-specific sections. At minimum, cross-reference comments documenting which entries are mirrored across files.

Comment on lines 36 to 40
- **[Claude Code](https://code.claude.com)** — Anthropic's CLI tool (recommended)
- **[Cursor](https://cursor.sh)** — AI-first code editor
- **[Windsurf](https://codeium.com/windsurf)** — Codeium's AI IDE
- **[Kiro](https://kiro.dev)** — Amazon's AI-powered IDE
- **[Roo Code](https://roocode.com)** — VS Code extension
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🌐 Web query:

Kiro IDE official website current description Amazon

💡 Result:

Official website (Kiro): Kiro describes itself as “Agentic AI development from prototype to production” and says it “brings structure to AI coding with spec-driven development.” [1]

Amazon/AWS: Kiro is developed by Amazon Web Services (AWS). [2]

Sources:
[1] Kiro official site (kiro.dev)
[2] AlternativeTo “Kiro” about page (lists developer as Amazon Web Services, Inc.)


Update Kiro description to reflect current branding.

The URL https://kiro.dev is correct, but the description "Amazon's AI-powered IDE" mischaracterizes the product. Kiro positions itself as "Agentic AI development from prototype to production" with spec-driven development focus. Update the description to align with Kiro's actual branding rather than labeling it generically as an IDE.

🤖 Prompt for AI Agents
In `@docs/index.md` around lines 36 - 40, Update the Kiro list item text to match
current branding: replace the description "Amazon's AI-powered IDE" with a
phrasing like "Agentic AI development from prototype to production — spec-driven
development" and keep the existing URL `https://kiro.dev`; edit the list entry
that currently reads "**[Kiro](https://kiro.dev)** — Amazon's AI-powered IDE" to
the new branded description so the item accurately reflects Kiro's positioning.

Comment on lines +20 to +26
| AI Tool | Location | File Reference Syntax |
| --- | --- | --- |
| Claude Code | `.claude/commands/` | `@path` references |
| Kiro | `.kiro/steering/` | `#[[file:path]]` references with `inclusion: manual` frontmatter |
| Cursor | `.cursor/commands/` | `@path` references |
| Windsurf | `.windsurf/workflows/` | `@{project-root}/path` references |

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

Table only covers 4 of 15+ supported platforms.

Users of Cline, Roo, Auggie, Codex, Gemini, GitHub Copilot, and others will look at this table and wonder if their tool is supported. At minimum, add a row for "Other tools" with a note pointing to the installer or platform-codes.yaml, or add a sentence below the table clarifying the table is not exhaustive.

🤖 Prompt for AI Agents
In `@docs/reference/commands.md` around lines 20 - 26, The table showing supported
AI tools (header row "AI Tool | Location | File Reference Syntax" and entries
like "Claude Code", "Kiro", "Cursor", "Windsurf") only lists 4 of 15+ platforms;
update docs/reference/commands.md by either adding a final row titled "Other
tools" that points readers to the installer or the canonical platform list
(platform-codes.yaml) and explains that other tools (e.g., Cline, Roo, Auggie,
Codex, Gemini, GitHub Copilot) are supported, or add a short sentence below the
table clarifying the table is not exhaustive and linking to the installer and
platform-codes.yaml for the full list.

Comment on lines +114 to +115
kiro:
name: "Kiro"
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check if kiro-cli is still referenced anywhere in the codebase
echo "=== References to kiro-cli ==="
rg -rn 'kiro-cli' --type-not yaml
echo ""
echo "=== Check for migration or alias logic ==="
rg -rn 'alias\|migration\|rename\|legacy' tools/cli/installers/lib/ide/ --glob '*.js' -C2 2>/dev/null | head -60

Repository: bmad-code-org/BMAD-METHOD

Length of output: 143


🏁 Script executed:

#!/bin/bash
echo "=== Exploring tools/cli/installers directory structure ==="
find tools/cli/installers -type f -name "*.js" -o -name "*.json" | head -20
echo ""
echo "=== Search for how platform codes are loaded/validated ==="
rg -rn 'platform.*code\|platformCode' tools/cli/installers/ --glob '*.js' -A3 | head -80
echo ""
echo "=== Check for any config handling or upgrade logic ==="
rg -rn 'config\|upgrade\|version' tools/cli/installers/lib/ --glob '*.js' -l | head -10

Repository: bmad-code-org/BMAD-METHOD

Length of output: 1215


🏁 Script executed:

#!/bin/bash
echo "=== Reading platform-codes.js ==="
cat -n tools/cli/installers/lib/ide/platform-codes.js
echo ""
echo "=== Checking ide-config-manager.js for config handling ==="
wc -l tools/cli/installers/lib/core/ide-config-manager.js

Repository: bmad-code-org/BMAD-METHOD

Length of output: 3771


🏁 Script executed:

#!/bin/bash
echo "=== Reading ide-config-manager.js ==="
cat -n tools/cli/installers/lib/core/ide-config-manager.js | head -100

Repository: bmad-code-org/BMAD-METHOD

Length of output: 3793


🏁 Script executed:

#!/bin/bash
echo "=== Continue reading ide-config-manager.js from line 100 ==="
cat -n tools/cli/installers/lib/core/ide-config-manager.js | tail -60

Repository: bmad-code-org/BMAD-METHOD

Length of output: 2156


🏁 Script executed:

#!/bin/bash
echo "=== Check installer.js for how it uses platform codes ==="
wc -l tools/cli/installers/lib/core/installer.js
echo ""
echo "=== Search for where platform codes are loaded from saved config ==="
rg -rn 'loadIdeConfig\|getPlatformInfo' tools/cli/installers/lib/ --glob '*.js' -B2 -A2

Repository: bmad-code-org/BMAD-METHOD

Length of output: 244


🏁 Script executed:

#!/bin/bash
echo "=== Search for how installer handles saved IDE selections ==="
rg -rn 'loadAllIdeConfigs\|loadIdeConfig' tools/cli/installers/lib/ --glob '*.js' -B1 -A3
echo ""
echo "=== Search for IDE selection logic in installer ==="
rg -rn 'selectIde\|getPlatformInfo\|ideManager' tools/cli/installers/lib/core/installer.js -B1 -A2 | head -60

Repository: bmad-code-org/BMAD-METHOD

Length of output: 183


🏁 Script executed:

#!/bin/bash
echo "=== Search for platform code validation or checking ==="
rg -rn 'platform' tools/cli/installers/lib/core/installer.js -B1 -A1 | head -80
echo ""
echo "=== Check manager.js for IDE management ==="
cat -n tools/cli/installers/lib/ide/manager.js

Repository: bmad-code-org/BMAD-METHOD

Length of output: 12421


Add migration path for renamed kiro-clikiro platform code.

Renaming the platform code will break existing installations. Users with kiro-cli in their project config or selection history will encounter "unsupported IDE" errors on re-install. The old config file (kiro-cli.yaml) will be orphaned. Implement migration logic to:

  • Detect and rename legacy kiro-cli.yaml config files to kiro.yaml
  • Handle kiro-cli lookups by mapping them to the new kiro code
  • Preserve existing configurations during upgrade
🤖 Prompt for AI Agents
In `@tools/cli/installers/lib/ide/platform-codes.yaml` around lines 114 - 115, Add
a migration for the renamed platform code from "kiro-cli" to "kiro": update
platform lookup logic (e.g., getPlatformByCode / resolvePlatformCode) to treat
"kiro-cli" as an alias for "kiro", and add a config migration routine (e.g.,
migrateLegacyConfig or migratePlatformConfigFiles) that detects a legacy
kiro-cli.yaml, renames it to kiro.yaml (preserving file contents and
metadata/permissions), and skips overwrite if kiro.yaml already exists (or merge
safely). Ensure any history/selection loading paths also map "kiro-cli" → "kiro"
so existing config and user selections continue to work.


# {{name}}

You must fully embody this agent's persona and follow all activation instructions exactly as specified. NEVER break character until given an exit command.
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

Exit command is undefined; risk of trapping the agent.

“NEVER break character until given an exit command” is unhelpful if the user can’t find the command. Add a pointer to where the exit command is defined (e.g., activation section of the agent file) or specify a default.

Proposed change
-You must fully embody this agent's persona and follow all activation instructions exactly as specified. NEVER break character until given an exit command.
+You must fully embody this agent's persona and follow all activation instructions exactly as specified. NEVER break character until given an exit command (defined in the agent file’s <activation> section).
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
You must fully embody this agent's persona and follow all activation instructions exactly as specified. NEVER break character until given an exit command.
You must fully embody this agent's persona and follow all activation instructions exactly as specified. NEVER break character until given an exit command (defined in the agent file's <activation> section).
🤖 Prompt for AI Agents
In `@tools/cli/installers/lib/ide/templates/combined/kiro-agent.md` at line 7,
Update the line containing "NEVER break character until given an exit command"
in the kiro-agent persona template to either (a) point readers to where the exit
command is defined (e.g., "see the activation section of this agent file for the
exit command") or (b) define a sensible default exit command inline (for
example, "default exit command: 'EXIT_AGENT'") and ensure the document
references the activation section or the exact exit token; modify the wording to
include the pointer or default so users are not left without an exit mechanism.

@bmadcode bmadcode merged commit fc5ef57 into bmad-code-org:main Feb 8, 2026
8 checks passed
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.

2 participants