Loading image...Kiro

Product

  • About Kiro
  • IDE
  • CLI
  • Web
  • Mobile
  • Pricing
  • Downloads

For

  • Enterprise
  • Startups
  • Students

Community

  • Overview
  • Ambassadors
  • Discord
  • Events
  • Powers
  • Shop
  • Showcase

Resources

  • Docs
  • Blog
  • Changelog
  • FAQs
  • Report a bug
  • Suggest an idea
  • Billing support

Social

Site TermsLicenseResponsible AI PolicyLegalPrivacy PolicyCookie Preferences
Loading image...Kiro
  • CLI
  • IDE
  • Web
  • Mobile
  • Enterprise
  • Pricing
  • Docs
SIGN INDOWNLOADS
Loading image...Kiro

Get Started

InstallationAuthenticationYour first project

Models

OverviewAvailable modelsReasoning effort

Features

How Kiro works
Specs
Steering
Hooks
MCP
Permissions
Custom agents
Agent Skills
Powers
CompactionKiroignoreCheckpoints and rewind
Built-in tools
Configuration scopes

IDE 1.x

What's new in 1.0
Setup & First Run
Editor
Chat
Autopilot
Slash commands
Agent notifications
Dockable chat
Export sessions
Terminal
Dev servers
Experimental
Troubleshooting0.x reference

CLI

What's new in 3.0
Setup & First Run
Terminal UI
Chat
Headless modeACPAuto complete
Experimental
2.x reference

Web - Preview

Setup & First RunIdentity Center
Connect your repositories
Working with the agent
Autonomous modeAutomations
Sandbox

Mobile - Preview

Overview

Commands and Reference

CLI commandsSlash commandsBuilt-in toolsExit codesSettingsIDE keyboard shortcuts

Billing

OverviewManaging your subscriptionUpgrading your planDowngrading your planCancelling your planPurchasing add-on creditsManaging your paymentsManaging usage notificationsManaging your taxesContacting billing supportDeleting your accountRelated questions

Enterprise

ConceptsOnboarding quickstart
Connecting your identity provider
Subscribe your teamManage subscriptions
Governance
Monitor and track
SettingsManaged updatesBillingIAMSupported regions

Privacy and Security

OverviewData protectionCode referencesCompliance validationInfrastructure securityIAM permissionsFirewalls, proxies, and data perimetersVPC endpoints (AWS PrivateLink)

Guides

Overview
Language support
Learn by playing

Migration

Migrating from Q DeveloperMigrating from VSCodeUpgrading from Q CLI
  1. Docs
  2. IDE 1.x
  3. Chat

Chat


Kiro offers a chat panel where you can interact with your code through natural language conversations. Just tell Kiro what you need. Ask questions about your codebase, request explanations for complex logic, generate new features, debug tricky issues, and automate repetitive tasks—all while Kiro maintains complete context of your project.

View transcript: Tour of the Kiro chat panel

Key features

Contextual Understanding
Ask questions about your entire codebase, get explanations, or request edits with full awareness of your project structure
Autopilot
Toggle between autonomous execution and supervised approval of every change
Checkpoints
Rewind your codebase and conversation to any earlier point when an approach doesn't work out
Starting a session
Start with free-flow chat or pick a structured workflow — and switch agents at any point mid-session
Dev Servers
Run long-running processes in the background without blocking your workflow

Getting started

Accessing chat

There are multiple ways to access the chat in your development environment:

  1. Keyboard Shortcut: Press Cmd+L (Mac) or Ctrl+L (Windows/Linux) to open the chat panel
  2. Command Palette: Press Cmd+Shift+P (Mac) or Ctrl+Shift+P (Windows/Linux) and search for "Kiro: Open Chat"
  3. Secondary Side Bar: Click the Kiro chat icon toggle using Cmd+Opt+B (Mac) or Ctrl+Alt+B in the top bar on the right to open the chat panel

Multi-language support

Kiro chat supports conversations in multiple natural languages. Supported languages include Mandarin, French, German, Italian, Japanese, Spanish, Korean, Hindi, and Portuguese, with more languages available. You can start a conversation in your preferred language, and Kiro will automatically detect it and respond in the same language. This capability is powered by the underlying large language model (LLM) used.

Your first conversation

Once the chat panel is open, you'll see the "Let's build" welcome screen with an optional workflow selector.

Choosing a workflow

When starting a new session, you can optionally select a workflow to switch the agent into a specialized mode:

WorkflowDescription
SpecStructured feature development — generates requirements, design, and tasks
PlanPlan-only mode — breaks ideas into an implementation plan without making changes
Bug FixStructured bug-fix workflow — investigate, diagnose, and resolve bugs
Quick SpecFast spec workflow — clarify, then auto-generate requirements, design, and tasks

Selecting a workflow is optional. If you skip it, the session uses the Default agent for general coding assistance (vibe mode).

Switching agents mid-session

You can swap agents without losing your train of thought. The agent selector sits in the chat input bar at the bottom of the panel, alongside the model picker, showing the name of your currently active agent. Click it to open the dropdown, where available agents are grouped by source:

  • Built-in — Default, Spec, Quick Spec, Bug Fix, Plan
  • User — Custom agents from ~/.kiro/agents/
  • Workspace — Custom agents from .kiro/agents/ in your project

Select an agent to switch the session to that agent's configuration. The switch takes effect immediately for your next message. If you always want to start new sessions with a specific agent, set it as your default from the selector — the choice persists across restarts.

What changes when you switch:

AspectBehavior
System promptChanges to the new agent's prompt
Available toolsSwitches to the new agent's tools configuration
PermissionsUser and workspace permissions persist
MCP serversAgent-defined MCP servers load; shared servers remain
Conversation historyPreserved. The agent sees prior messages
Info

The agent selector is disabled while the agent is actively executing a multi-step workflow. You can only switch agents when the agent is idle and waiting for your next message.

Starting a conversation

Once you've chosen a workflow (or skipped it):

  1. Type your question or request in natural language in the chat input
  2. Press Enter to send your message
  3. Kiro will analyze your request and respond appropriately

Example requests to get started:

Ask about your code

"Explain how authentication works in this project"

Generate new code

"Create a React component for a user profile page"

Fix issues

"Help me fix the error in this function"

Exporting a conversation

To export a chat conversation with Kiro, right-click the tab of the conversation you wish to export and select Export Conversation. This will export the conversation in markdown (.md) format.

Smart intent detection

Kiro intelligently analyzes your messages to understand whether you want information or action. When you ask questions like "How does this work?" or "What's the purpose of this code?", Kiro recognizes this as an information request and responds with explanations and documentation without modifying your code. When you use directives like "Create a component" or "Fix this bug", Kiro identifies this as an action request and will propose or implement the necessary code changes, execute commands, or manage files accordingly. This seamless intent recognition allows for natural conversation without requiring explicit commands to switch between information and action modes.

Context management

Kiro's power comes from its deep understanding of your codebase context. It automatically analyzes open files in the editor, including their dependencies and structure, but you can also explicitly provide additional context.

Context providers

Use the # symbol in the chat input to access context providers:

ProviderDescriptionExample
#codebaseAllow Kiro to automatically find relevant files across your project#codebase explain the authentication flow
#fileReference specific files in your codebase#auth.ts explain this implementation
#folderReference a specific folder and its contents#components/ what components do we have?
#git diffReference the current Git changes#git diff explain what changed in this PR
#terminalInclude recent output from your active terminal and command history#terminal help me fix this build error
#problemsInclude all problems in the current file#problems help me resolve these issues
#urlInclude web documentation#url:https://docs.example.com/api explain this API
#codeInclude specific code snippets in the context#code:const sum = (a, b) => a + b; explain this function
#repositoryInclude a map of your repository structure#repository how is this project organized?
#currentReference the currently active file in the editor#current explain this component
#steeringInclude specific steering files for guidance#steering:coding-standards.md review my code
#docsReference documentation files and content#docs:api-reference.md explain this API endpoint
#specReference all files from a specific spec (requirements, design, tasks)#spec:user-authentication update the design file to include password reset flow
#mcpAccess MCP tools, prompts, and resource templates from connected servers#mcp:aws-docs how do I configure S3 buckets?

You can combine multiple context providers in a single request:

#codebase #auth.ts explain how authentication works with our database
Tip

The #terminal context provider is particularly powerful for debugging and troubleshooting. When you include #terminal in your message, Kiro can access your recent command history, outputs, and error messages to provide targeted assistance.

Common scenarios:

  • Build failures: #terminal My build is failing, what's the issue?
  • Test debugging: #terminal These tests aren't passing, help me understand why
  • Git issues: #terminal I'm stuck on this merge conflict
  • Dependency problems: #terminal npm install is throwing errors

Kiro can analyze the actual terminal output, understand error patterns, and suggest specific solutions based on what happened in your terminal session. For detailed examples and best practices, see the Terminal Integration guide.

Sessions and history

Kiro maintains conversation history within sessions, allowing for continuous context-aware interactions.

Managing sessions

  • Create New Sessions: Start fresh conversations for different topics or projects. Click on + icon in the chat panel to start a new session
  • Switch between Sessions: Easily navigate between ongoing conversations through the tab switcher
  • View History: Access previous interactions and their outcomes through the History button
  • Task Tracking: Monitor the progress of ongoing and completed tasks through the Task list button

Execution history

Kiro maintains a detailed history of sessions that includes actions taken such as code changes, commands executed, search results, file operations, and more. You can search, restore, or delete a specific session.

Loading image...Kiro Execution History
Page updated: August 4, 2026
Extension registry
Autopilot