Skip to content

chore(kiro): refresh mirror to latest Kiro CLI features (v1.3.0)#7

Open
theagenticguy wants to merge 1 commit into
mainfrom
chore/kiro-mirror-refresh-latest-cli
Open

chore(kiro): refresh mirror to latest Kiro CLI features (v1.3.0)#7
theagenticguy wants to merge 1 commit into
mainfrom
chore/kiro-mirror-refresh-latest-cli

Conversation

@theagenticguy
Copy link
Copy Markdown
Owner

Refreshes the kiro/ Claude Code → Kiro CLI mirror so it tracks the latest Kiro CLI features, backed by a /research pass over kiro.dev docs (as of 2026-05-29). The research found the mirror was already fairly current (5 hook events, 4-subagent cap, includeMcpJson, the explorer agent), so this is a targeted refresh, not a rewrite.

Tool-name modernization (the bulk of the diff)

All three agent JSONs and every hook matcher now emit the canonical built-in names, not the deprecated Q-era aliases:

Q-era alias Canonical
fs_read read
fs_write write
execute_bash shell
use_aws aws

The old names still resolve, but canonical is forward-safe. kiro_validate_packet.py accepts both spellings at runtime so the hook keeps firing regardless of which name Kiro passes.

Capability corrections (from the research)

  • Dropped the experimental delegate tool from the orchestrator + researcher — Kiro is replacing it with the official subagent tool (already wired).
  • postToolUse packet validation is advisory — Kiro postToolUse cannot block, so a malformed .erpaval/ packet is warned, not rejected. Documented across KIRO-COMPATIBILITY, AGENTS, the SKILL mirror, and context-packets, with preToolUse + exit-2 noted as the hard-rejection path.
  • KIRO-COMPATIBILITY headline + hook table rewritten for the nuanced map: shell-only hooks (no prompt-based hooks), preToolUse+exit-2 as the single blocking path, and the four Claude Code events with no Kiro home (SessionEnd, SubagentStop, PreCompact, Notification). Added a dated "re-check the changelog" caveat and a KIRO_HOME note.

New features adopted

  • Orchestrator prompt now states the 4-subagent-per-DAG-level cap, prefers v2.5.0 in-pipeline review loops for the Act→Validate→re-Act cycle (a subagent runs once, so there's no live re-message channel), and surfaces the v2.3 $AGENT_DISPLAY_OUT / $AGENT_CONTEXT_OUT progress side-channels alongside wc -l / Ctrl+G.

Lessons-store corrections

  • The literal "No result" subagent string is flagged as an empirical observation, not documented in current kiro.dev docs (the Q ancestor used "Summary unavailable…") — don't pattern-match on the exact string.
  • /spawn --name labels the session, not a custom agent (already reflected in the runbook; reinforced here).

Housekeeping

  • Synced kiro/install.sh ERPAVAL_VERSION (was stranded at 1.1.1).
  • gitignored the research/ working artifacts (kept local, not committed).
  • Version bump 1.2.0 → 1.3.0 across plugin.json + marketplace.json + install.sh.

Validation

mise run build passes — lint:md, fmt:check, and validate (I1–I4, version-sync at 1.3.0).

Scope notes

  • Claude Code side (/skills, /agents, /hooks) untouched — this PR is kiro/ + version metadata only.
  • The kiro mirror's own assets/session/task-skeleton.md naming is left as-is; aligning it with the Claude Code side's worklog-skeleton rename is a separate mirror-sync concern, not a CLI-feature refresh.

Backed by a /research pass over kiro.dev docs (as of 2026-05-29).

- Modernize built-in tool names across all 3 agent JSONs + hook matchers:
  fs_read→read, fs_write→write, execute_bash→shell, use_aws→aws.
  validate_packet runtime check accepts both spellings.
- Drop experimental `delegate` tool (Kiro replacing it with `subagent`).
- Document postToolUse packet validation as advisory (Kiro postToolUse
  cannot block); note preToolUse+exit-2 as the hard-rejection path.
- Orchestrator prompt adopts 4-per-DAG-level cap, v2.5.0 review loops for
  Act→Validate, and v2.3 $AGENT_DISPLAY_OUT/$AGENT_CONTEXT_OUT monitoring.
- Rewrite KIRO-COMPATIBILITY headline + hook table for the nuanced map
  (shell-only hooks, single blocking path, prompt-hook gap) + dated caveat.
- Correct two lessons-store assumptions: "No result" string is empirical
  not documented; /spawn --name labels the session, not an agent.
- Sync install.sh ERPAVAL_VERSION (was stranded at 1.1.1).
- gitignore research/ working artifacts.
- Bump 1.2.0 → 1.3.0 (plugin.json + marketplace.json + install.sh).
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.

1 participant