Agent Orchestrator plugin that adds Kiro CLI as an agent backend.
ao plugin install @codeatlasdev/ao-plugin-agent-kiroOr add to your agent-orchestrator.yaml:
defaults:
agent: kiro
plugins:
- name: kiro
source: npm
package: "@codeatlasdev/ao-plugin-agent-kiro"Spawns Kiro CLI (kiro-cli chat) sessions inside AO-managed tmux worktrees.
Uses Kiro's native ACP session files (~/.kiro/sessions/cli/*.jsonl) as the primary activity signal. The .jsonl event log is only written when Kiro actually does something — its mtime is a reliable proxy for real activity, enabling accurate stuck detection.
Falls back to terminal output parsing for actionable states (waiting_input, blocked) that require immediate attention.
Automatically discovers and maps AO sessions to Kiro sessions by matching workspace paths. The mapping is persisted in AO session metadata and enables:
- Real session summaries (from Kiro's
titlefield) - Kiro session ID tracking (
agentSessionId) - mtime-based activity detection
Recognizes both Kiro TUI v2 (Ink/React) and legacy CLI v1 output patterns:
| Kiro Output | Detected State |
|---|---|
ask a question or describe a task |
ready |
Kiro is working · type to queue a message |
active |
Allow this action? [y/n] |
waiting_input |
Trust exact command: ... |
waiting_input |
fatal: ... / error: ... |
blocked |
> (legacy prompt) |
ready |
- Post-launch prompt delivery (keeps Kiro in interactive mode)
--wrap neverfor consistent terminal parsing--modelpassthrough from AO config--resumefor session restore- PATH wrapper hooks for
gh/gitmetadata interception - Eager binary resolution on plugin load
- Path traversal prevention on session ID validation
| AO Mode | Kiro CLI Flag |
|---|---|
| permissionless | --trust-all-tools |
| auto-edit | --trust-all-tools |
| default | (none) |
| suggest | (none) |
- Kiro CLI installed and authenticated (
kiro-cli login) - Agent Orchestrator >= 0.2.0
- Dashboard web: The AO web dashboard does not load third-party plugins (#1135). The CLI (
ao status) works correctly. - Cost tracking: Kiro CLI does not expose token usage data. Cost estimates are not available.
- Subagent sessions: Kiro's
use_subagenttool creates additional ACP session files with the samecwd. The plugin selects the main session by largest.jsonlfile size.
bun install
bun run build
bun testMIT