Skip to content

feat(kiro): add Kiro IDE support via Power + native Skills#618

Open
zmwaiworld wants to merge 2 commits intoobra:mainfrom
zmwaiworld:feat-kiro-support
Open

feat(kiro): add Kiro IDE support via Power + native Skills#618
zmwaiworld wants to merge 2 commits intoobra:mainfrom
zmwaiworld:feat-kiro-support

Conversation

@zmwaiworld
Copy link

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, 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

Motivation 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:

  • Zero maintenance overhead. Kiro discovers skills directly from the
    skills/ directory. Adding or removing a skill requires no extra steps
    for Kiro support.
  • Global availability. Skills install to ~/.kiro/skills/ and are
    available as / slash commands in every Kiro workspace.
  • Richer agent context. POWER.md includes the full "Using Superpowers"
    workflow (skill priority, red flags table, decision flowchart) plus a
    tool mapping table.
  • Follows the platform pattern. Other platforms
    (.claude-plugin/, .cursor-plugin/, .opencode/, .codex/) each
    have a single bootstrap/manifest file. .kiro-power/POWER.md follows
    this convention.

On keywords: POWER.md uses a keywords field 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 keywords to SKILL.md files, but keywords/tags
on skills are reserved for Amazon internal tooling
(builder-mcp --skill-tag-filter) and have no effect in public Kiro, so
excluded from this PR.

On skills-core.js: This approach doesn't depend on skills-core.js
as 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 slim
POWER.md down to onboarding + tool mapping + a discloseContext call to
load 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 invokeSubAgent but it's still early-stage (sequential, not truly parallel).
The agent degrades gracefully; skills like executing-plans also offer a non-subagent path.

How Has This Been Tested?

Automated tests

  • test-skills-core.sh passes — frontmatter parsing, skill discovery,
    path resolution all work with no regressions
  • test-plugin-loading.sh failure is pre-existing on main (ESM
    syntax check bug, unrelated to this PR)

Kiro IDE manual testing

  • Install power via Powers Panel ("Import from GitHub" → fork URL →
    branch feat-kiro-support → path .kiro-power) on macOS and Windows
  • Power activates on keyword mention — POWER.md context loaded
    automatically
  • Onboarding runs and installs all 14 skills to ~/.kiro/skills/
  • / slash commands show available skills in chat
  • Manual install path (clone + copy) on macOS

Not yet tested

  • Manual install path on Windows
  • Tool mapping in extended session (discloseContext, invokeSubAgent,
    executeBash)
  • Cross-platform regression (Claude Code, Cursor, Codex, OpenCode)

Issue found during testing

  1. Kiro Powers Panel URL parser: Splits branch names containing /
    incorrectly (e.g., feat/kiro-support → branch feat, path
    kiro-support/.kiro-power). Workaround: use branch names without
    slashes. This is a Kiro IDE bug, not a superpowers issue.

  2. 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.

  3. Kiro IDE does not follow symlinks in ~/.kiro/skills/:
    Per-skill symlinks (e.g., ~/.kiro/skills/brainstorming
    .../superpowers/skills/brainstorming) are visible in Finder
    and contain valid SKILL.md files, but Kiro IDE does not discover
    them. Copying skill directories with cp -R works. POWER.md
    onboarding and INSTALL.md use cp -R as a workaround. This
    means skills won't auto-update on git pull and users need to
    re-run the copy step to pick up changes.

Breaking Changes

None. No existing files modified except README.md (added Kiro install
section). No changes to shared skill files.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update

Checklist

  • I have read the MCP Documentation
  • My code follows the repository's style guidelines
  • New and existing tests pass locally
  • I have added appropriate error handling
  • I have added or updated documentation as needed

Additional context

Kiro CLI compatibility: Skills installed to ~/.kiro/skills/ also
work in Kiro CLI. However, Kiro CLI does
not support / slash commands. Users need to explicitly tell the agent
which skill to use (e.g., "use the brainstorming skill" or "load the
systematic-debugging skill") instead of typing /brainstorming in 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 of
project-local .kiro/steering/, includes tool mapping and full bootstrap
context, and requires zero maintenance when adding new skills.

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
@coderabbitai
Copy link

coderabbitai bot commented Mar 5, 2026

📝 Walkthrough

Walkthrough

Adds Kiro-specific documentation and steering files: a new .kiro-power/POWER.md and .kiro-power/INSTALL.md for installing and managing the Superpowers power, a .kiro/steering/superpowers-dev.md development conventions doc, and README additions describing Kiro Powers Panel installation.

Changes

Cohort / File(s) Summary
Kiro Power docs
.kiro-power/POWER.md, .kiro-power/INSTALL.md
Adds a POWER.md describing the Superpowers power and a detailed INSTALL.md with prerequisites, multi-OS/manual install instructions, verification, usage, update and uninstall procedures, troubleshooting, and examples.
Kiro steering / dev guidance
.kiro/steering/superpowers-dev.md
New development conventions and repo structure guidance for Superpowers within Kiro (YAML frontmatter, skill metadata, tooling and layout conventions).
Repository README
README.md
Adds a "Kiro IDE (via Powers Panel)" section with instructions and the GitHub subdirectory URL for importing the Kiro power, plus link to .kiro-power/INSTALL.md.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Poem

🐰✨ I hopped through docs to clear the way,
New POWER and INSTALL help you play,
Steering notes laid out the dev trail,
Kiro doors open — follow the trail! 🚪🌿

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely summarizes the main change: adding Kiro IDE support via Power and native Skills.
Description check ✅ Passed The description is comprehensive and directly related to the changeset, detailing the new files, motivation, testing, and known issues with Kiro integration.
Linked Issues check ✅ Passed All coding objectives from issue #503 are met: .kiro-power directory with POWER.md, installation documentation, steering configuration, and README updates for seamless Kiro integration [#503].
Out of Scope Changes check ✅ Passed All changes are in scope: new documentation files (.kiro-power/POWER.md, .kiro-power/INSTALL.md, .kiro/steering/superpowers-dev.md) and README.md update directly address #503 requirements.
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 unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Tip

Try Coding Plans. Let us write the prompt for your AI agent so you can ship faster (with fewer bugs).
Share your feedback on Discord.


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: 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

📥 Commits

Reviewing files that changed from the base of the PR and between e4a2375 and 76461e8.

📒 Files selected for processing (4)
  • .kiro-power/INSTALL.md
  • .kiro-power/POWER.md
  • .kiro/steering/superpowers-dev.md
  • README.md

Comment on lines +23 to +25
```bash
ls ~/.kiro/skills/brainstorming/SKILL.md 2>/dev/null
```
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

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
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.

♻️ Duplicate comments (1)
.kiro-power/POWER.md (1)

23-25: ⚠️ Potential issue | 🟡 Minor

Add 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

📥 Commits

Reviewing files that changed from the base of the PR and between 76461e8 and 0a5b1cc.

📒 Files selected for processing (4)
  • .kiro-power/INSTALL.md
  • .kiro-power/POWER.md
  • .kiro/steering/superpowers-dev.md
  • README.md

@obra
Copy link
Owner

obra commented Mar 6, 2026

Hiya!

"POWER.md down to onboarding + tool mapping + a discloseContext call"

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 skills directory because it's kind of a maintenance nightmare, especially if we withdraw a skill. Do you have any sense of whether Kiro has another mechanism here?

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.

Add Support for Kiro CLI as an AI Provider

2 participants