feat(installer): restore KiloCoder support and installer#2151
Conversation
Kilo Code now supports Agent Skills. Remove the suspended flag, restore it in the IDE picker, and replace the suspended test suite with a full native-skills installation test. - Remove suspended message from platform-codes.yaml - Rewrite test suite 22: config, IDE picker, install, skill output, legacy cleanup, and reinstall assertions - Update migration checklist to reflect active status Co-authored-by: Junie <junie@jetbrains.com>
🤖 Augment PR SummarySummary: This PR restores KiloCoder (Kilo Code) support in the BMAD installer now that it supports Agent Skills. Changes:
Technical Notes: KiloCoder uses 🤖 Was this summary useful? React with 👍 or 👎 |
| assert(kiloConfig22?.installer?.target_dir === '.kilocode/skills', 'KiloCoder target_dir uses native skills path'); | ||
|
|
||
| assert( | ||
| Array.isArray(kiloConfig22?.installer?.legacy_targets) && kiloConfig22.installer.legacy_targets.includes('.kilocode/workflows'), |
There was a problem hiding this comment.
test/test-installation-components.js:1057 — Suite 22 validates cleanup for .kilocode/workflows, but the Kilo config-driven cleanup also handles .kilocodemodes (via cleanupKiloModes()), which isn’t exercised/verified here. If .kilocodemodes cleanup is part of the intended migration guarantee, it may be worth adding an assertion for it so regressions don’t slip through.
Severity: medium
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
📝 WalkthroughWalkthroughKiloCoder transitions from a suspended state to full native-skills support. Test suite 22 now expects successful installation with SKILL.md output and reinstall capability, the migration checklist tracks completion of native-skills implementation, and the platform configuration removes the suspended flag that previously blocked KiloCoder. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Suggested reviewers
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@tools/docs/native-skills-migration-checklist.md`:
- Around line 213-214: Add a test case to Test Suite 22 that pre-populates a
legacy .kilocodemodes file and asserts the _config-driven.js cleanup logic
removes or strips BMAD-owned modes; specifically, in the Suite 22 setup (where
tempProjectDir22 and legacy_targets are used) write a .kilocodemodes fixture
(e.g., containing a bmad_owned_mode entry) before running the setup, then after
setup assert the file is deleted or its BMAD entries are removed to cover the
cleanup path implemented in _config-driven.js.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 8017dc91-8d51-4844-9e33-7d4869cf2295
📒 Files selected for processing (3)
test/test-installation-components.jstools/docs/native-skills-migration-checklist.mdtools/installer/ide/platform-codes.yaml
💤 Files with no reviewable changes (1)
- tools/installer/ide/platform-codes.yaml
| - [x] Legacy cleanup for `.kilocode/workflows` and `.kilocodemodes` | ||
| - [x] Automated tests — suite 22 (config, IDE picker, install, skill output, legacy cleanup, reinstall) |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Check if .kilocodemodes is defined in platform-codes.yaml for kilo
rg -A 20 '^ kilo:' tools/installer/ide/platform-codes.yaml | rg -i 'kilocodemodes|legacy_targets'Repository: bmad-code-org/BMAD-METHOD
Length of output: 112
🏁 Script executed:
# Get the exact checklist content around lines 213-214
sed -n '208,220p' tools/docs/native-skills-migration-checklist.mdRepository: bmad-code-org/BMAD-METHOD
Length of output: 740
🏁 Script executed:
# Get full kilo platform config to see what legacy_targets actually contains
rg -A 30 '^\s+kilo:' tools/installer/ide/platform-codes.yaml | head -60Repository: bmad-code-org/BMAD-METHOD
Length of output: 653
🏁 Script executed:
# Search for any reference to kilocodemodes in tests or config
rg -i 'kilocodemodes' tools/Repository: bmad-code-org/BMAD-METHOD
Length of output: 920
🏁 Script executed:
# Check Suite 22 tests to see what legacy cleanup assertions exist
rg -B 5 -A 10 'suite.*22|describe.*22' test/test-installation-components.js | head -100Repository: bmad-code-org/BMAD-METHOD
Length of output: 51
🏁 Script executed:
# Look for legacy cleanup assertions in Suite 22
rg -B 3 -A 3 'kilocode.*legacy|legacy.*kilocode' test/test-installation-components.jsRepository: bmad-code-org/BMAD-METHOD
Length of output: 1192
🏁 Script executed:
# Get the full Suite 22 to see what's being tested
sed -n '1000,1150p' test/test-installation-components.jsRepository: bmad-code-org/BMAD-METHOD
Length of output: 6834
Test Suite 22 does not verify .kilocodemodes cleanup despite implementation.
The checklist accurately states that legacy cleanup covers both .kilocode/workflows and .kilocodemodes. However, the two are handled by different mechanisms: .kilocode/workflows is removed via legacy_targets (tested in Suite 22), while .kilocodemodes has separate cleanup code in _config-driven.js that strips BMAD-owned modes. Suite 22's test setup pre-populates only .kilocode/workflows and verifies its removal, leaving the .kilocodemodes cleanup path untested. Add a test fixture and assertion for .kilocodemodes cleanup:
// Pre-populate legacy kilocodemodes
await fs.writeFile(path.join(tempProjectDir22, '.kilocodemodes'), 'bmad_owned_mode\n');
// After setup, verify cleanup occurred (or clarify if this cleanup is optional)🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@tools/docs/native-skills-migration-checklist.md` around lines 213 - 214, Add
a test case to Test Suite 22 that pre-populates a legacy .kilocodemodes file and
asserts the _config-driven.js cleanup logic removes or strips BMAD-owned modes;
specifically, in the Suite 22 setup (where tempProjectDir22 and legacy_targets
are used) write a .kilocodemodes fixture (e.g., containing a bmad_owned_mode
entry) before running the setup, then after setup assert the file is deleted or
its BMAD entries are removed to cover the cleanup path implemented in
_config-driven.js.
Kilo Code now supports Agent Skills. Remove the suspended flag, restore it in the IDE picker, and replace the suspended test suite with a full native-skills installation test (10 assertions covering config, IDE picker visibility, install, skill output, legacy cleanup, and reinstall).