Skip to content

feat: add Kiro CLI/IDE platform support#364

Open
smjeong84 wants to merge 2 commits into
Egonex-AI:mainfrom
smjeong84:feat/add-kiro-platform-support
Open

feat: add Kiro CLI/IDE platform support#364
smjeong84 wants to merge 2 commits into
Egonex-AI:mainfrom
smjeong84:feat/add-kiro-platform-support

Conversation

@smjeong84

Copy link
Copy Markdown

Add Kiro CLI / IDE Platform Support

Summary

Adds Kiro (AWS AI IDE & CLI) as a supported platform for Understand-Anything.

Changes

install.sh

  • Added kiro|$HOME/.kiro/skills|per-skill to platforms_table
  • Added Kiro-specific post-install: generates ~/.kiro/agents/understand.json (orchestrator agent with SKILL.md as prompt + agent MDs as resources)
  • Added cleanup in cmd_uninstall() to remove the agent JSON

.kiro-plugin/plugin.json (new)

  • Auto-discovery metadata for Kiro IDE (same pattern as .copilot-plugin/ and .cursor-plugin/)

README.md

  • Added Kiro to Platform Compatibility table
  • Added Kiro to one-line install platform list
  • Added dedicated Kiro installation section
  • Added kiro to supported platform values

Installation

curl -fsSL https://raw.githubusercontent.com/Lum1104/Understand-Anything/main/install.sh | bash -s kiro

After installation:

  • Kiro CLI: kiro-cli chat --agent understand "Analyze this project"
  • Kiro IDE: Open the cloned repo — auto-discovered via .kiro-plugin/plugin.json

How it works

  • Skills: Symlinked to ~/.kiro/skills/ (per-skill style, same as Codex/Gemini)
  • Agent: ~/.kiro/agents/understand.json references SKILL.md as the system prompt and agent MDs as resources, enabling the full analysis pipeline
  • Auto-discovery: .kiro-plugin/plugin.json points to skills/ and agents/ (same pattern as Copilot/Cursor)

Testing

  • install.sh kiro — 8 skill symlinks + agent JSON created
  • install.sh --uninstall kiro — all artifacts removed
  • ✅ No impact on existing platforms (install.sh changes are additive)
  • .kiro-plugin/plugin.json valid JSON

Impact on existing platforms

None. All changes are additive:

  • New platform entry in platforms_table (existing entries unchanged)
  • New .kiro-plugin/ directory (other .*-plugin/ directories unchanged)
  • README additions only (no existing content modified)

- Add kiro to install.sh platforms_table (per-skill symlinks to ~/.kiro/skills/)
- Generate ~/.kiro/agents/understand.json on install for full pipeline support
- Clean up agent JSON on uninstall
- Add .kiro-plugin/plugin.json for IDE auto-discovery
- Update README with Kiro in platform table, one-line install list, and dedicated section
@smjeong84

Copy link
Copy Markdown
Author

Verification Report

All tests were performed on macOS with Kiro CLI v1.x after running ./install.sh kiro from the feature branch.


1. Agent Discovery

Why: Confirms that Kiro CLI recognizes the generated ~/.kiro/agents/understand.json and lists it as an available agent — the most basic requirement for the install to be functional.

Result: ✅ PASS

$ kiro-cli agent list
  understand              Global        Analyze codebase into interactive knowledge graph — Understand Anything

2. Agent Schema Validation

Why: Ensures the generated JSON conforms to Kiro's agent configuration schema. Invalid JSON or missing required fields would cause a runtime error when attempting to use the agent.

Result: ✅ PASS

$ kiro-cli agent validate --path ~/.kiro/agents/understand.json
(no output = valid)

3. Skill Symlink Accessibility

Why: Verifies that the per-skill symlinks point to real files with valid YAML frontmatter. Kiro loads skills by scanning ~/.kiro/skills/*/SKILL.md — broken symlinks would silently fail.

Result: ✅ PASS — All 8 skill symlinks resolve correctly, and understand/SKILL.md has proper frontmatter (name, description, argument-hint).


4. Prompt File Accessibility (45 KB)

Why: The agent JSON uses "prompt": "file://..." pointing to the 45 KB SKILL.md. This test confirms Kiro can resolve the file:// URI and the file is readable at the expected path.

Result: ✅ PASS — File exists at /Users/<user>/.understand-anything/repo/understand-anything-plugin/skills/understand/SKILL.md (45,719 bytes).


5. Resources (Agent MDs) Accessibility

Why: The agent JSON declares 7 agent definition files as resources. These must all be accessible so the AI can reference them when SKILL.md instructs "Dispatch a subagent using file-analyzer.md".

Result: ✅ PASS — All 7 files accessible:

Agent MD Size
project-scanner.md 16,467 bytes
file-analyzer.md 33,396 bytes
architecture-analyzer.md 22,245 bytes
tour-builder.md 21,020 bytes
graph-reviewer.md 11,709 bytes
assemble-reviewer.md 5,033 bytes
domain-analyzer.md 5,669 bytes

6. Core Package Build

Why: SKILL.md's Phase 0 checks for packages/core/dist/index.js and builds it if missing. The analysis pipeline's Node.js scripts (compute-batches, extract-import-map, etc.) import from @understand-anything/core. Without a successful build, the pipeline cannot proceed past Phase 1.

Result: ✅ PASS — pnpm install && pnpm --filter @understand-anything/core exec tsc succeeded. packages/core/dist/index.js present.


7. End-to-End: Phase 0 (Pre-flight) Execution

Why: The ultimate integration test — runs the actual agent via kiro-cli chat --agent understand in non-interactive mode and verifies it correctly follows SKILL.md's Phase 0 instructions step by step.

Command:

kiro-cli chat --agent understand --no-interactive --trust-all-tools \
  "Run /understand on this project. Only do Phase 0 (pre-flight) and report what you find."

Result: ✅ PASS — The agent executed Phase 0 flawlessly:

Step Action Output
1 git rev-parse HEAD aa3a220...
2 Worktree detection "Not a worktree" (correct)
3 Check existing graph NOT_FOUND
4 Check meta.json NOT_FOUND
5 Check config.json NOT_FOUND
6 Subdomain graphs NO_SUBDOMAIN_GRAPHS
7 Resolve PLUGIN_ROOT ~/.understand-anything-plugin
8 Core build check CORE_BUILT=yes
9 Collect project context README + manifest + dir tree (in progress)

The agent correctly:

  • Loaded the full 45 KB SKILL.md as its system prompt
  • Interpreted Phase 0's bash code blocks as commands to execute
  • Resolved PLUGIN_ROOT via the universal symlink (~/.understand-anything-plugin)
  • Made correct decisions at each conditional branch

8. Uninstall Cleanup

Why: Ensures ./install.sh --uninstall kiro properly removes all artifacts (skill symlinks + agent JSON) without leaving orphaned files.

Result: ✅ PASS

$ ./install.sh --uninstall kiro
→ Removing skill links for kiro
  ✓ removed /Users/<user>/.kiro/agents/understand.json
  ✓ removed /Users/<user>/.understand-anything-plugin

$ ls ~/.kiro/skills/ | grep understand
(empty)
$ ls ~/.kiro/agents/understand.json
No such file or directory

Summary

All 8 verification steps passed. The Kiro platform integration works end-to-end — from installation through agent discovery to actual pipeline execution.

@TomerAharoni-il

Copy link
Copy Markdown

hi , any update for this PR ?
its very welcome feature we want

@Lum1104

Lum1104 commented Jun 15, 2026

Copy link
Copy Markdown
Collaborator

@codex review this

Comment thread install.sh
"prompt": "file://$plugin_root/skills/understand/SKILL.md",
"tools": ["read", "write", "shell", "grep", "glob", "code", "subagent"],
"resources": [
"file://$plugin_root/agents/project-scanner.md",

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Hi, I would recommend do not hard code the agents, instead use loop of the repo dir.

Comment thread .kiro-plugin/plugin.json

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Use install.sh only is fine. If available, can you also consider adding install.ps1 for Windows user~

@Lum1104 Lum1104 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thanks for the helping, I would appreciate it if you can help address the comment~ Feel free to leave a message if any help is needed~

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ede10b9f12

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread README.md
### Kiro CLI / IDE

```bash
curl -fsSL https://raw.githubusercontent.com/Lum1104/Understand-Anything/main/install.sh | bash -s kiro

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Point Kiro installs at the canonical repo

This new Kiro-specific command downloads install.sh from Lum1104/Understand-Anything, while the rest of this README and the installer default to Egonex-AI/Understand-Anything. For users following this exact snippet, Kiro support depends on a different fork having the new kiro platform entry; if it lags, the script exits with Unknown platform: kiro before it ever clones the canonical repo. Point this at the same Egonex URL used above.

Useful? React with 👍 / 👎.

Comment thread README.md

After installation:
- **Kiro CLI**: `kiro-cli chat --agent understand "Analyze this project"`
- **Kiro IDE**: Open the cloned repo — auto-discovered via `.kiro-plugin/plugin.json`

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Do not claim Kiro auto-discovers .kiro-plugin

In the “open the cloned repo” path, nothing places these skills under Kiro's documented workspace scope (.kiro/skills/) or imports a specific skill folder/SKILL.md; the only new artifact is .kiro-plugin/plugin.json, which Kiro's skills/powers docs do not list as a discovery location. As a result, Kiro IDE users following this instruction will not see /understand until they run the installer or manually import/copy the skill folders.

Useful? React with 👍 / 👎.

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.

3 participants