CLI 3.0 is built on the same unified agent harness that powers the Kiro IDE and Kiro Web. Every improvement to the harness (new tools, better planning, smarter tool selection) now ships to all clients simultaneously, and your .kiro configuration is portable across all surfaces.
Spec-driven development — the Spec agent brings structured development to the terminal. Define requirements, generate designs, execute task plans. Use /spec new <name> to start. Learn more →
Capability-based permissions — declare structured policies in permissions.yaml for fine-grained, auditable control. One rule can allow or deny an entire category of operations across all tools. Learn more →
Enhanced hooks — standalone .kiro/hooks/*.json files with two action types (shell commands and agent prompts), new triggers, and a versioned schema. Learn more →
Enhanced agent config — tag-based tool selection, unified permissions block, Markdown format, inline MCP servers. Learn more →
Tangent — branch your conversation into side-conversations that inherit your context, explore freely, then jump back to exactly where you left off. Use /tangent to branch. Learn more →
| Feature | Status | Change from 2.x | Action needed |
|---|---|---|---|
| Chat (Default mode) | ✅ Available | Renamed from "Vibe" | None |
| Spec-driven development | ✅ New | Built-in Spec agent | None |
| Plan mode | ✅ New | New built-in agent (Shift+Tab) | None |
| Tangent | ✅ New | Named, nestable side-conversations | None |
| Custom agents | ⬆️ Enhanced | Tags replace tool IDs; toolsSettings → permissions | ⚠️ Migrate |
| Steering | ✅ Available | Front matter metadata added | None |
| Hooks | ✅ Available | New JSON schema, standalone files | ⚠️ Migrate |
| Permissions | ✅ New | Replaces trust flags | ⚠️ Migrate |
| MCP servers | ✅ Available | OAuth, disabledTools, autoApprove added | None |
| Skills | ✅ Available | Unchanged | None |
| Powers | ✅ Available | Auto-pickup from IDE | None |
| Sub-agents | ✅ Available | Single-agent UI (was multi-monitor) | None |
| Compaction | ✅ Available | Manual /compact + improved auto | None |
| Session export | ✅ New | New capability | None |
| Trusted workspaces | ✅ New | New capability | None |
| Code Intelligence | ✅ Available | Client-vended LSP tool | None |
| Knowledge | ✅ Available | Semantic indexing | None |
| Todo | ⚠️ Gated | Available but visualization pending | None |
| aws_tool | ❌ Removed | Use MCP servers | ⚠️ Migrate |
| Change | Previous (2.x) | New (3.0) | Impact |
|---|---|---|---|
aws_tool removed | Built-in AWS tool | Use MCP servers for AWS access | High |
| Session format changed | v2 session format | v3 session format (not backward-compatible) | High — back up ~/.kiro/sessions/ before upgrading |
| Hook format changed | Hooks embedded in agent config | Standalone .kiro/hooks/*.json files | High |
| Hook trigger names | camelCase (agentSpawn) | PascalCase (SessionStart) | High |
| Tool IDs standardized | camelCase (readFile, writeFile) | snake_case with short aliases | Medium |
| Sub-agent UI simplified | Multi-agent monitor (Ctrl+G) | Single-agent UI — sub-agents run in background | Medium |
| Trust model replaced | --trust-all-tools, /tools trust | Capability-based permissions.yaml | High |
| "Vibe" concept removed | N/A for CLI | "Default" mode is the standard name | Low |
Follow these steps in order. The most impactful changes are permissions and hooks — both require manual migration.
permissions.yaml, behavioral changes.kiro/hooks/, trigger name mapping| Gap | Detail |
|---|---|
| AL2 not supported | CLI 3.0 does not run on Amazon Linux 2. Use CLI 2.x if your environment requires AL2. |
| Classic mode not supported | The legacy non-TUI mode (kiro-cli chat without the TUI) does not support the v3 engine. Use the TUI. |
| Session resume | V3 sessions cannot be resumed in V2. If you switch back to the V2 engine, previously created V3 sessions will not be available. |
kiro-cli diagnostic — diagnostics and environment validationkiro-cli issue — file a bug report
What's new in CLI 3.0