feat(kiro): add Kiro IDE support via Power + native Skills#618
feat(kiro): add Kiro IDE support via Power + native Skills#618zmwaiworld wants to merge 2 commits intoobra:mainfrom
Conversation
Add full Kiro IDE support using a Knowledge Base Power (.kiro-power/POWER.md) that bootstraps on activation with the "Using Superpowers" workflow, tool mapping, and onboarding that symlinks skills into ~/.kiro/skills/ for global / slash command access. New files: - .kiro-power/POWER.md — Power manifest with onboarding, bootstrap context, and Claude Code → Kiro tool mapping - .kiro-power/INSTALL.md — Installation, usage, and troubleshooting - .kiro/steering/superpowers-dev.md — Dev steering for contributors Updated: - README.md — Added Kiro installation section
📝 WalkthroughWalkthroughAdds Kiro-specific documentation and steering files: a new Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Tip Try Coding Plans. Let us write the prompt for your AI agent so you can ship faster (with fewer bugs). 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: 3
🧹 Nitpick comments (1)
.kiro-power/INSTALL.md (1)
97-105: Add Windows verification commands alongside bash examples.The verification section currently assumes Unix shell; include PowerShell/CMD equivalents to match the rest of this guide.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.kiro-power/INSTALL.md around lines 97 - 105, The verification section currently shows Unix commands "ls ~/.kiro/skills/brainstorming/SKILL.md" and "ls ~/.kiro/skills/"; add equivalent Windows instructions: for PowerShell, show using Test-Path to verify the file path and Get-ChildItem (or gci) to list the skills directory, and for classic CMD, show using if exist to check the file and dir to list the directory; update the INSTALL.md verification block to include clearly labeled "PowerShell" and "CMD" examples alongside the existing bash examples so Windows users can perform the same checks.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.kiro-power/INSTALL.md:
- Around line 28-30: Replace the plain recursive copy in the Unix/Git Bash
install loops (the for loop beginning with "for skill in
~/.kiro/superpowers/skills/*/; do" that uses "cp -R") with a replace-before-copy
approach: remove the destination directory if it exists before copying each
skill so stale files are not retained; apply the same change to the other bash
loops that follow the same pattern (the other "for ...
~/.kiro/superpowers/skills/*/; do" occurrences) to match the Windows behavior
and ensure deterministic installs/updates.
In @.kiro-power/POWER.md:
- Around line 23-25: Add Windows PowerShell equivalents for the Unix onboarding
checks in .kiro-power/POWER.md: for the single-file check next to the bash `ls
~/.kiro/skills/brainstorming/SKILL.md` add a PowerShell `Test-Path
"$env:USERPROFILE\.kiro\skills\brainstorming\SKILL.md"` example, and for the
directory listing shown by `ls ~/.kiro/skills/` add a PowerShell `Get-ChildItem
"$env:USERPROFILE\.kiro\skills" -Directory | Select-Object -ExpandProperty Name`
example; ensure both PowerShell blocks are placed alongside the corresponding
bash blocks and follow the existing code-block formatting.
- Around line 33-36: Replace-before-copy: in the installation loop that uses
mkdir -p ~/.kiro/skills and iterates for skill in
<path-to-superpowers-repo>/skills/*/ to cp -R "$skill"
~/.kiro/skills/"$(basename "$skill")", remove the destination skill directory
first so stale files are cleared before copying; update the loop to delete the
target (~/.kiro/skills/"$(basename "$skill")") prior to the cp -R step (use a
safe recursive remove) so the Unix flow mirrors the Windows behavior.
---
Nitpick comments:
In @.kiro-power/INSTALL.md:
- Around line 97-105: The verification section currently shows Unix commands "ls
~/.kiro/skills/brainstorming/SKILL.md" and "ls ~/.kiro/skills/"; add equivalent
Windows instructions: for PowerShell, show using Test-Path to verify the file
path and Get-ChildItem (or gci) to list the skills directory, and for classic
CMD, show using if exist to check the file and dir to list the directory; update
the INSTALL.md verification block to include clearly labeled "PowerShell" and
"CMD" examples alongside the existing bash examples so Windows users can perform
the same checks.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: 0b5c91c8-a3a5-49a7-9b49-9eb628ddd5b8
📒 Files selected for processing (4)
.kiro-power/INSTALL.md.kiro-power/POWER.md.kiro/steering/superpowers-dev.mdREADME.md
| ```bash | ||
| ls ~/.kiro/skills/brainstorming/SKILL.md 2>/dev/null | ||
| ``` |
There was a problem hiding this comment.
Onboarding checks are Unix-only; add Windows equivalents.
The default verification commands use bash/ls, which won’t work for PowerShell users during onboarding.
Suggested doc addition
### Step 2: Check if skills are already installed
@@
```bash
ls ~/.kiro/skills/brainstorming/SKILL.md 2>/dev/null+powershell +Test-Path "$env:USERPROFILE\.kiro\skills\brainstorming\SKILL.md" +
@@
Step 4: Verify
@@
ls ~/.kiro/skills/+powershell +Get-ChildItem "$env:USERPROFILE\.kiro\skills" -Directory | Select-Object -ExpandProperty Name +
</details>
Also applies to: 53-55
<details>
<summary>🤖 Prompt for AI Agents</summary>
Verify each finding against the current code and only fix it if needed.
In @.kiro-power/POWER.md around lines 23 - 25, Add Windows PowerShell
equivalents for the Unix onboarding checks in .kiro-power/POWER.md: for the
single-file check next to the bash ls ~/.kiro/skills/brainstorming/SKILL.md
add a PowerShell Test-Path "$env:USERPROFILE\.kiro\skills\brainstorming\SKILL.md" example, and for the
directory listing shown by ls ~/.kiro/skills/ add a PowerShell Get-ChildItem "$env:USERPROFILE\.kiro\skills" -Directory | Select-Object -ExpandProperty Name
example; ensure both PowerShell blocks are placed alongside the corresponding
bash blocks and follow the existing code-block formatting.
</details>
<!-- fingerprinting:phantom:triton:hawk -->
<!-- This is an auto-generated comment by CodeRabbit -->
Clear destination skill directory before copying to avoid retaining stale files from prior versions. Aligns macOS/Linux behavior with the Windows PowerShell sections that already do Remove-Item before Copy-Item. Made-with: Cursor
76461e8 to
0a5b1cc
Compare
There was a problem hiding this comment.
♻️ Duplicate comments (1)
.kiro-power/POWER.md (1)
23-25:⚠️ Potential issue | 🟡 MinorAdd PowerShell equivalents for onboarding verification checks.
Both verification steps are still Unix-only, which creates friction for Windows-first Kiro users during onboarding.
Suggested doc patch
### Step 2: Check if skills are already installed ```bash ls ~/.kiro/skills/brainstorming/SKILL.md 2>/dev/null+
powershell +Test-Path "$env:USERPROFILE\.kiro\skills\brainstorming\SKILL.md" +Step 4: Verify
ls ~/.kiro/skills/+
powershell +Get-ChildItem "$env:USERPROFILE\.kiro\skills" -Directory | Select-Object -ExpandProperty Name +</details> Also applies to: 55-57 <details> <summary>🤖 Prompt for AI Agents</summary>Verify each finding against the current code and only fix it if needed.
In @.kiro-power/POWER.md around lines 23 - 25, Add Windows PowerShell
equivalents alongside the existing bash verification snippets in
.kiro-power/POWER.md: next to the bash line "ls
~/.kiro/skills/brainstorming/SKILL.md" insert a powershell fenced block with
Test-Path "$env:USERPROFILE.kiro\skills\brainstorming\SKILL.md"; likewise, next
to the "ls ~/.kiro/skills/" snippet in the "Step 4: Verify" section add a
powershell fenced block with Get-ChildItem "$env:USERPROFILE.kiro\skills"
-Directory | Select-Object -ExpandProperty Name; ensure both are added wherever
the original bash snippets appear (including the other occurrence noted) and use
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Duplicate comments:
In @.kiro-power/POWER.md:
- Around line 23-25: Add Windows PowerShell equivalents alongside the existing
bash verification snippets in .kiro-power/POWER.md: next to the bash line "ls
~/.kiro/skills/brainstorming/SKILL.md" insert a powershell fenced block with
Test-Path "$env:USERPROFILE\.kiro\skills\brainstorming\SKILL.md"; likewise, next
to the "ls ~/.kiro/skills/" snippet in the "Step 4: Verify" section add a
powershell fenced block with Get-ChildItem "$env:USERPROFILE\.kiro\skills"
-Directory | Select-Object -ExpandProperty Name; ensure both are added wherever
the original bash snippets appear (including the other occurrence noted) and use
```powershell fences.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: fe6bdc3a-d137-456b-afdd-4d2d230a212a
📒 Files selected for processing (4)
.kiro-power/INSTALL.md.kiro-power/POWER.md.kiro/steering/superpowers-dev.mdREADME.md
|
Hiya!
I think this would be ideal. I would love to not have duplicate boilerplate if we can avoid it. I've tried really hard to avoid cp -R or symlinking individual skills directly into a harness's |
Closes #503
Add full Kiro IDE support using a Knowledge Base Power
(
.kiro-power/POWER.md) that bootstraps on activation with the"Using Superpowers" workflow, tool mapping, and onboarding that
copies skills into
~/.kiro/skills/for global/slash command access.New files:
.kiro-power/POWER.md— Power manifest with onboarding, bootstrapcontext, and Claude Code → Kiro tool mapping
.kiro-power/INSTALL.md— Installation, usage, and troubleshooting.kiro/steering/superpowers-dev.md— Dev steering for contributorsUpdated:
README.md— Added Kiro installation sectionMotivation and Context
Superpowers currently supports Claude Code, Cursor, Codex, and OpenCode.
This adds Kiro IDE as a fifth platform, using Kiro's native Power and
Skills systems.
Design rationale:
skills/directory. Adding or removing a skill requires no extra stepsfor Kiro support.
~/.kiro/skills/and areavailable as
/slash commands in every Kiro workspace.workflow (skill priority, red flags table, decision flowchart) plus a
tool mapping table.
(
.claude-plugin/,.cursor-plugin/,.opencode/,.codex/) eachhave a single bootstrap/manifest file.
.kiro-power/POWER.mdfollowsthis convention.
On
keywords: POWER.md uses akeywordsfield in its frontmatter.This is a standard Kiro Power mechanism that drives automatic activation
when the user mentions terms like "debug", "tdd", or "brainstorm".
Confirmed across official powers (Stripe, Neon, Arm) in
kirodotdev/powers. An earlier
version also added
keywordsto SKILL.md files, butkeywords/tagson skills are reserved for Amazon internal tooling
(
builder-mcp --skill-tag-filter) and have no effect in public Kiro, soexcluded from this PR.
On
skills-core.js: This approach doesn't depend onskills-core.jsas it uses Kiro's native skill system. Compatible with eventual
retirement of that module.
Open question: POWER.md currently inlines the full "Using Superpowers"
content (~80 lines) with Kiro-specific adaptations. Kiro doesn't support
@references for document transclusion. An alternative is to slimPOWER.md down to onboarding + tool mapping + a
discloseContextcall toload the skill on demand. Happy to go either direction.
Subagent-dependent skills: All 14 skills load and work in Kiro. A few
(
subagent-driven-development,dispatching-parallel-agents) rely on subagents.Kiro added
invokeSubAgentbut it's still early-stage (sequential, not truly parallel).The agent degrades gracefully; skills like
executing-plansalso offer a non-subagent path.How Has This Been Tested?
Automated tests
test-skills-core.shpasses — frontmatter parsing, skill discovery,path resolution all work with no regressions
test-plugin-loading.shfailure is pre-existing onmain(ESMsyntax check bug, unrelated to this PR)
Kiro IDE manual testing
branch
feat-kiro-support→ path.kiro-power) on macOS and Windowsautomatically
~/.kiro/skills//slash commands show available skills in chatNot yet tested
discloseContext,invokeSubAgent,executeBash)Issue found during testing
Kiro Powers Panel URL parser: Splits branch names containing
/incorrectly (e.g.,
feat/kiro-support→ branchfeat, pathkiro-support/.kiro-power). Workaround: use branch names withoutslashes. This is a Kiro IDE bug, not a superpowers issue.
Kiro Skills don't support nested directories: Skills must be
placed directly under
~/.kiro/skills/(e.g.,~/.kiro/skills/brainstorming/SKILL.md). A parent folder like~/.kiro/skills/superpowers/brainstorming/is not recognized.This is why the onboarding copies each skill individually rather
than linking the entire
skills/directory as a single subfolder.Kiro IDE does not follow symlinks in
~/.kiro/skills/:Per-skill symlinks (e.g.,
~/.kiro/skills/brainstorming→.../superpowers/skills/brainstorming) are visible in Finderand contain valid SKILL.md files, but Kiro IDE does not discover
them. Copying skill directories with
cp -Rworks. POWER.mdonboarding and INSTALL.md use
cp -Ras a workaround. Thismeans skills won't auto-update on
git pulland users need tore-run the copy step to pick up changes.
Breaking Changes
None. No existing files modified except
README.md(added Kiro installsection). No changes to shared skill files.
Types of changes
Checklist
Additional context
Kiro CLI compatibility: Skills installed to
~/.kiro/skills/alsowork in Kiro CLI. However, Kiro CLI does
not support
/slash commands. Users need to explicitly tell the agentwhich skill to use (e.g., "use the brainstorming skill" or "load the
systematic-debugging skill") instead of typing
/brainstormingin chat.This PR is an alternative approach to #527 (steering wrappers). Key
differences: uses Kiro's Power mechanism instead of per-skill steering
files, provides global availability via
~/.kiro/skills/instead ofproject-local
.kiro/steering/, includes tool mapping and full bootstrapcontext, and requires zero maintenance when adding new skills.