Skip to content

feat(desktop): add Kiro CLI as a supported terminal agent - #3571

Closed
Kcrong wants to merge 2 commits into
ParadevAI:mainfrom
Kcrong:add-kiro-cli-agent
Closed

Kcrong wants to merge 2 commits into
ParadevAI:mainfrom
Kcrong:add-kiro-cli-agent

Conversation

@Kcrong

@Kcrong Kcrong commented Apr 19, 2026 •

Copy link
Copy Markdown

Description

Adds Kiro CLI (AWS's agentic CLI for spec-driven coding) to the list of built-in terminal agents, joining Amp, Claude, Codex, Copilot, Cursor Agent, Gemini, Mastracode, OpenCode, and Pi. It maps onto the existing terminal-agent contract via --trust-all-tools (interactive) and --no-interactive (headless, prompt passed as the [INPUT] positional).

Kiro is appended to the end of every list (BUILTIN_TERMINAL_AGENTS, PRESET_ICONS, README table, docs list, marketing demo) instead of slotted alphabetically, so no existing entry is reordered. No changes to the desktop agent-wrappers — Kiro runs as a plain terminal agent, same shape as Pi / Cursor Agent.

Related Issues

None.

Type of Change

  • Bug fix
  • New feature
  • Documentation
  • Refactor
  • Other (please describe):

Testing

  • bun run format:check / bun run lint / bunx sherif / bun run typecheck — all clean.
  • bun test — 2646 pass; the 9 failures are pre-existing and unrelated (DOM-less sanitizeTerminalFontFamily, NotificationManager, etc.).
  • Verified the flags against the installed kiro-cli chat --help: -a, --trust-all-tools, --no-interactive, and the [INPUT] positional all exist. The generated prompt launch — kiro-cli chat --trust-all-tools --no-interactive "$(cat <<EOF…EOF)" — parses as three arguments (two flags + prompt body) in a shell sanity-check.

Screenshots (if applicable)

Main project view

image

In Settings/Agents tab

image

Additional Notes

  • The Kiro icon ships as a single SVG rendered on a #9046FF background, so no dark-mode variant is needed (same as claude, gemini, amp).
  • The kiroIcon import in preset-icons/index.ts stays alphabetical because Biome's organizeImports enforces it; PRESET_ICONS and the re-export block keep Kiro at the end.
  • Happy to adjust the commit scope (e.g. feat(shared):) or drop Kiro from the default terminal presets if you'd prefer.

Summary by CodeRabbit

  • New Features

    • Added Kiro CLI as a fully supported built-in agent with interactive and non-interactive terminal support.
  • Documentation

    • Updated supported-agents docs and readme to list Kiro CLI.
  • UI

    • Added Kiro to the agent compatibility demo and included its icon in the preset icons.

Adds AWS Kiro CLI (https://kiro.dev/cli/) to the list of built-in
terminal agents alongside Amp, Claude, Codex, Copilot, Cursor Agent,
Gemini, Mastracode, OpenCode, and Pi.

- packages/shared/src/builtin-terminal-agents.ts: register kiro entry
  (command: `kiro-cli chat --trust-all-tools`, prompt command adds
  `--no-interactive` for headless launches)
- packages/ui/src/assets/icons/preset-icons: add kiro.svg, register in
  PRESET_ICONS, re-export kiroIcon
- apps/marketing/public/app-icons/kiro.svg: add marketing icon
- apps/marketing/.../UniversalCompatibilityDemo.tsx: include Kiro in
  the demo agent list
- README.md: add Kiro CLI row to Supported Agents table
- apps/docs/content/docs/agent-integration.mdx: add Kiro CLI to the
  supported agents list

No changes to desktop agent wrappers — Kiro CLI runs as a plain terminal
agent (no per-agent hook or settings file needed).
@coderabbitai

coderabbitai Bot commented Apr 19, 2026 •

Copy link
Copy Markdown
Contributor

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 70fa82dd-9ef5-478e-a003-c775a47c6404

📥 Commits

Reviewing files that changed from the base of the PR and between 09eff59 and ee43cf3.

📒 Files selected for processing (3)
  • apps/marketing/src/app/components/FeaturesSection/components/UniversalCompatibilityDemo/UniversalCompatibilityDemo.tsx
  • packages/shared/src/builtin-terminal-agents.ts
  • packages/ui/src/assets/icons/preset-icons/index.ts
🚧 Files skipped from review as they are similar to previous changes (3)
  • apps/marketing/src/app/components/FeaturesSection/components/UniversalCompatibilityDemo/UniversalCompatibilityDemo.tsx
  • packages/ui/src/assets/icons/preset-icons/index.ts
  • packages/shared/src/builtin-terminal-agents.ts

📝 Walkthrough

Walkthrough

Added Kiro CLI across docs, UI, built-in terminal agent definitions, and icon assets; no behavioral or runtime control-flow changes were introduced.

Changes

Cohort / File(s) Summary
Documentation
README.md, apps/docs/content/docs/agent-integration.mdx
Added Kiro CLI to supported-agents documentation and agent-integration page as a supported agent.
Marketing UI
apps/marketing/src/app/components/FeaturesSection/components/UniversalCompatibilityDemo/UniversalCompatibilityDemo.tsx
Appended a Kiro entry to the AGENTS constant (name, icon path, size).
Built-in Terminal Agents
packages/shared/src/builtin-terminal-agents.ts
Added kiro manifest to BUILTIN_TERMINAL_AGENTS (label, description, command, promptCommand, includeInDefaultTerminalPresets) and updated derived types/records to include the new id.
Preset Icons
packages/ui/src/assets/icons/preset-icons/index.ts
Imported kiro.svg, exported kiroIcon, and registered "kiro" in PRESET_ICONS for light/dark variants; added doc comment to getPresetIcon.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰 A little hop, a new name in the list,
Kiro joins the garden, gleaming in the mist,
Icons snugly placed, docs and agents sing,
A tiny change that makes the vireo spring,
Hooray — another buddy for our CLI nest! 🥕

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately and concisely describes the main change: adding Kiro CLI as a supported terminal agent, which is reflected throughout the changeset.
Description check ✅ Passed The description is comprehensive and follows the template structure, covering description, related issues, type of change, testing, screenshots, and additional notes.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

@Kcrong
Kcrong marked this pull request as ready for review April 19, 2026 06:07
Copilot AI review requested due to automatic review settings April 19, 2026 06:07
@greptile-apps

greptile-apps Bot commented Apr 19, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR adds Kiro CLI (AWS's spec-driven coding agent) as a new built-in terminal agent alongside the existing lineup (Claude, Amp, Codex, Gemini, etc.). The change is straightforward and consistent with how other agents are registered: a createBuiltinTerminalAgent entry in builtin-terminal-agents.ts, SVG icons for both the UI package and marketing app, documentation/README updates, and a marketing demo entry.

Key implementation details:

  • Interactive command: kiro-cli chat --trust-all-tools — correct flag per the CLI's --help
  • Headless command: kiro-cli chat --trust-all-tools --no-interactive with argv transport (default), so the prompt is passed as "$(cat <<'DELIMITER'...)" positional argument — matches the [INPUT] positional documented in the CLI
  • Icons: Identical SVG used for light/dark (same approach as Claude, Gemini, Amp), no dark-mode variant needed since it has a self-contained colored background
  • includeInDefaultTerminalPresets: true — consistent with all other fully-supported agents except cursor-agent

Confidence Score: 5/5

Safe to merge — clean, self-contained feature addition with no modifications to existing agents or core logic.

The implementation follows the exact same pattern as all other built-in terminal agents. The command/promptCommand split correctly handles interactive vs headless modes, the default argv transport matches how the [INPUT] positional works in kiro-cli, icons are properly wired up in all required locations, and documentation is consistent. No existing agent definitions are reordered or modified, tests pass, and linting is clean.

No files require special attention.

Important Files Changed

Filename Overview
packages/shared/src/builtin-terminal-agents.ts Adds Kiro agent entry with correct interactive command, headless promptCommand, and argv transport; consistent with other agent definitions
packages/ui/src/assets/icons/preset-icons/index.ts Imports kiro.svg alphabetically (Biome-enforced), appends to PRESET_ICONS and re-exports at the end; light and dark variants both point to the same icon
apps/marketing/src/app/components/FeaturesSection/components/UniversalCompatibilityDemo/UniversalCompatibilityDemo.tsx Adds Kiro entry to the marketing demo agent list with correct icon path and size
README.md Appends Kiro CLI to the supported agents table with correct link and "Fully supported" status
apps/docs/content/docs/agent-integration.mdx Adds Kiro CLI to the built-in agents list in the documentation

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[User launches Kiro agent] --> B{Interactive or Headless?}
    B -->|Interactive| C[kiro-cli chat --trust-all-tools]
    B -->|Headless with prompt| D[kiro-cli chat --trust-all-tools --no-interactive]
    D --> E[buildPromptCommandString with argv transport]
    E --> F[Prompt embedded as heredoc positional INPUT arg]
    C --> G[Kiro interactive terminal session]
    F --> H[Kiro runs non-interactively with injected prompt]
Loading

Reviews (1): Last reviewed commit: "feat(desktop): add Kiro CLI as a support..." | Re-trigger Greptile

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

Pull request overview

Adds Kiro CLI as a first-class, built-in terminal agent option across the desktop app’s agent catalog, UI preset icons, and supporting docs/marketing materials.

Changes:

  • Add a new built-in terminal agent definition for Kiro (kiro-cli chat) including interactive and headless (prompt) command variants.
  • Add Kiro preset/app icons for the desktop UI and marketing site demos.
  • Update documentation and README supported-agent lists to include Kiro CLI.

Reviewed changes

Copilot reviewed 5 out of 7 changed files in this pull request and generated no comments.

Show a summary per file
File Description
packages/ui/src/assets/icons/preset-icons/kiro.svg Adds Kiro SVG icon for UI preset rendering.
packages/ui/src/assets/icons/preset-icons/index.ts Registers kiro in PRESET_ICONS and re-exports kiroIcon.
packages/shared/src/builtin-terminal-agents.ts Adds kiro built-in terminal agent with appropriate command/promptCommand flags.
apps/marketing/src/app/components/FeaturesSection/components/UniversalCompatibilityDemo/UniversalCompatibilityDemo.tsx Adds Kiro to the marketing “Universal Compatibility” demo agent list.
apps/marketing/public/app-icons/kiro.svg Adds Kiro SVG icon for marketing site usage.
apps/docs/content/docs/agent-integration.mdx Updates supported agents list to include Kiro CLI.
README.md Updates supported agents table to include Kiro CLI.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

No issues found across 7 files

CodeRabbit's docstring coverage check flagged 0% coverage on the files
modified in this PR. Add JSDoc comments to the public function
`getPresetIcon`, the `UniversalCompatibilityDemo` component, and the
internal helpers in `builtin-terminal-agents.ts` so the files touched by
this change meet the 80% docstring coverage threshold.
@Kcrong

Kcrong commented Apr 20, 2026

Copy link
Copy Markdown
Author

@Kitenite

Due to the CodeRabbit AI comment about insufficient docstring coverage, I've added docstrings to the files changed in this PR. If the comment isn't a hard blocker for PR review/merge, please let me know and I'll revert the commit.

image

@DaniBedz

Copy link
Copy Markdown

Super keen to use this. Great work.

@Kcrong

Kcrong commented Apr 29, 2026

Copy link
Copy Markdown
Author

@Kitenite
Gentle reminder - could you kindly look into this? Since our project team members use Kiro, it would be great if Superset supported Kiro by default before I introduce this amazing tool.

@Kitenite

Copy link
Copy Markdown
Member

Hey @Kcrong apologies for delay will add this

@Kcrong

Kcrong commented May 2, 2026

Copy link
Copy Markdown
Author

@Kitenite Let me know if I need to add/address something. Thanks for checking.

@ksg97031

ksg97031 commented Jul 1, 2026

Copy link
Copy Markdown

@Kitenite Could you share any updates on this PR?

Kitenite added a commit that referenced this pull request Aug 24, 2026
Adds AWS's Kiro CLI (`kiro-cli`) to BUILTIN_TERMINAL_AGENTS, with its
preset icon, README row, docs bullet, and marketing demo entry.

Rebased by hand from #3571 onto the current manifest shape: the prompt
launch now seeds the interactive chat via the `[INPUT]` positional
instead of `--no-interactive` (headless mode needs KIRO_API_KEY, which
most interactive users do not have), resume uses `--resume-id`, and the
headless form lives in nonInteractiveCommand.

Kiro runs as a plain terminal agent, same shape as Pi / Cursor Agent, so
no agent-setup target is needed.

Co-authored-by: Hyunwoo Kim <13450715+Kcrong@users.noreply.github.com>

Claude-Session: https://claude.ai/code/session_01DuAhw6Ao5Cru3acdkrzx9f
Kitenite added a commit that referenced this pull request Aug 24, 2026
* feat(shared): add Kiro CLI as a built-in terminal agent

Adds AWS's Kiro CLI (`kiro-cli`) to BUILTIN_TERMINAL_AGENTS, with its
preset icon, README row, docs bullet, and marketing demo entry.

Rebased by hand from #3571 onto the current manifest shape: the prompt
launch now seeds the interactive chat via the `[INPUT]` positional
instead of `--no-interactive` (headless mode needs KIRO_API_KEY, which
most interactive users do not have), resume uses `--resume-id`, and the
headless form lives in nonInteractiveCommand.

Kiro runs as a plain terminal agent, same shape as Pi / Cursor Agent, so
no agent-setup target is needed.

Co-authored-by: Hyunwoo Kim <13450715+Kcrong@users.noreply.github.com>

Claude-Session: https://claude.ai/code/session_01DuAhw6Ao5Cru3acdkrzx9f

* feat(desktop): expose Kiro in the icon picker, settings search, and preset docs

Follow-ups from review on #6765: icon-picker entry so custom agents can pick the Kiro icon, settings-search keywords, and the terminal-presets doc line, matching kimi/grok.

Co-authored-by: Ishaan Bansal <35862574+bshaan77@users.noreply.github.com>

Claude-Session: https://claude.ai/code/session_01DuAhw6Ao5Cru3acdkrzx9f
@Kitenite

Copy link
Copy Markdown
Member

Kiro is now on main — landed via #6765 (squash 9cacc38) with your Co-authored-by credit. Thank you again @Kcrong for the original work; this PR can be closed whenever you like.

@Kcrong Kcrong closed this Aug 24, 2026
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.

5 participants