Skip to content

Commit 87eb0be

Browse files
committed
feat: add kiro agent provider support
Integrate Kiro CLI as a first-class provider, wire it through config/UI surfaces, and extend live-status harness coverage with kiro fixtures and tests.
1 parent 28dcdca commit 87eb0be

File tree

27 files changed

+672
-26
lines changed

27 files changed

+672
-26
lines changed
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
---
2+
name: kiro-cli-skill
3+
description: Reference guide for integrating and operating Kiro CLI in Ode, focused on non-interactive chat sessions, trust flags, session management, and diagnostics.
4+
---
5+
## What I do
6+
- Summarize Kiro CLI command surface for agent integrations.
7+
- Recommend automation-safe invocation patterns for `kiro-cli chat`.
8+
- Document session lifecycle (`--resume`, session listing/deletion) and troubleshooting commands.
9+
- Highlight auth, MCP, and logging commands relevant to debugging provider issues.
10+
11+
## When to use me
12+
Use this when implementing or debugging the `kiro` provider in Ode, especially CLI command construction, session behavior, and non-interactive scripting.
13+
14+
## Recommended invocation pattern for Ode
15+
- Base command: `kiro-cli chat --no-interactive --trust-all-tools [--resume] [--agent <agent>] <prompt>`
16+
- Use `--resume` for follow-up turns in the same project directory.
17+
- Use `--no-interactive` in automation to print the first response to stdout and exit.
18+
- Prefer explicit `kiro-cli` binary; optionally fall back to `kiro` alias if installed.
19+
20+
## Key CLI references
21+
- Global flags: `--verbose`, `--agent`, `--help`, `--version`, `--help-all`.
22+
- Session management: `kiro-cli chat --resume`, `--resume-picker`, `--list-sessions`, `--delete-session <ID>`.
23+
- Auth: `kiro-cli login`, `kiro-cli logout`, `kiro-cli whoami`.
24+
- Health checks: `kiro-cli doctor`, `kiro-cli diagnostic`.
25+
- Config management: `kiro-cli settings list`, `kiro-cli settings <key> <value>`, `kiro-cli settings --delete <key>`.
26+
- MCP tooling: `kiro-cli mcp add|remove|list|import|status`.
27+
28+
## Integration notes for Ode
29+
- Kiro does not require channel-level model selection in Ode config.
30+
- Keep model picker hidden/disabled when provider is `kiro`.
31+
- Preserve one Ode session per Slack thread, while Kiro conversation resume remains directory-scoped.
32+
- For live status, emit normalized session/text update events even if the CLI output is plain text.
33+
34+
## Logging and diagnostics
35+
- Kiro logs are in `$XDG_RUNTIME_DIR/kiro-log` (Linux fallback: `/tmp/kiro-log/`).
36+
- Set `KIRO_LOG_LEVEL` to `error|warn|info|debug|trace` for troubleshooting.
37+
38+
## Source
39+
- https://kiro.dev/docs/cli/reference/cli-commands/

packages/agents/index.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ const opencodeProvider = getAgentProvider("opencode");
1212
const claudeProvider = getAgentProvider("claudecode");
1313
const codexProvider = getAgentProvider("codex");
1414
const kimiProvider = getAgentProvider("kimi");
15+
const kiroProvider = getAgentProvider("kiro");
1516

1617
export const selectedAgent = agent.id;
1718
export const supportsEventStream = agent.supportsEventStream;
@@ -32,5 +33,6 @@ export async function stopAllServers(): Promise<void> {
3233
Promise.resolve().then(() => claudeProvider.stopServer()),
3334
Promise.resolve().then(() => codexProvider.stopServer()),
3435
Promise.resolve().then(() => kimiProvider.stopServer()),
36+
Promise.resolve().then(() => kiroProvider.stopServer()),
3537
]);
3638
}

0 commit comments

Comments
 (0)