Loading image...Kiro

Product

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

For

  • Enterprise
  • Startups
  • Students

Community

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

Resources

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

Social

Site TermsLicenseResponsible AI PolicyLegalPrivacy PolicyCookie Preferences
Kiro
  • Agents
  • Enterprise
  • Pricing
  • Docs
SIGN INDOWNLOADS
Kiro

Get Started

InstallationAuthenticationYour first project

Models

OverviewAvailable modelsReasoning effortAWS GovCloud (US) models

Features

How Kiro worksLocal command sandboxACP integrations
Specs
Steering
Hooks
MCP
Permissions
Custom agents
Workflows
Agent Skills
Powers
Cloud sessionsMemoryCompactionKiroignoreCheckpoints and rewind
Built-in tools
Configuration scopes

IDE 1.x

What's new in 1.0
Setup & First Run
Editor
Chat
Experimental
Troubleshooting0.x reference

CLI

What's new in V3
Setup & First Run
Terminal UI
Chat
Fullscreen modeVoice modeHeadless modeACPAuto complete
Experimental
2.x reference

Crew

Quick startInstallationRunning 24/7
Chat
Agent Capabilities
Features
Interfaces
Apps
System & storageConfigurationSecurityTroubleshooting

Web

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

Mobile - Preview

Overview

Commands and Reference

CLI commandsSlash commandsBuilt-in toolsExit codesSettings

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
Deployment optionsSubscribe your teamManage subscriptions
Governance
Monitor and track
SettingsManaged updatesTLS inspection compatibilityBillingIAMSupported regions
AWS GovCloud (US)

Privacy and Security

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

Guides

OverviewRunning Kiro in the cloud
Language support
Learn by playing

Migration

Migrating from Q DeveloperMigrating from VSCodeUpgrading from Q CLI
  1. Docs
  2. Crew
  3. Configuration
View as Markdown

Configuration

View as Markdown

Most configuration is managed from Settings in the dashboard. The Gateway watches config.json and config.local.json, so most changes take effect as soon as they are saved. Fields such as the Slack slash command and mcp.honour_auto_approve carry a Changes need a restart badge. Credential changes also require a restart before the affected integration reconnects.

Settings panel

SectionWhat you configure
OverviewQuick status, coding hours, and system information
Import / ExportData from another AI agent, and backup or restore of Kiro Crew configuration, optionally with chat history
Agent HarnessWhich agent new sessions start, Subagent Settings, and Pre-started Sessions
ChatMemory mode, models, composer behavior, link patterns, and timeouts
DisplayTheme, typography, zoom, terminal, and layout
VoiceDictation provider, microphone, TTS voice, and speed
NotificationsBanner and desktop-alert preferences
SecretsWrite-only credentials for managed integrations, including WakaTime
ShortcutsKeyboard shortcut customization
SkillsSkill discovery and trigger-injection limits
Messaging ChannelsSlack, Discord, Telegram, Teams, Webex, WeCom, WeChat, and other channels
BrowserBrowser automation settings
Computer UseNative desktop automation
Remote CrewSSH, AWS SSM, and Fargate connections
SecuritySandbox, denied commands, and governance
DeveloperAgent backends, telemetry, and Feature Previews
AboutVersion, release channel, and updates

Agent and crewmate configuration lives outside Settings, under Customize in the sidebar (labeled Agent Capabilities before 0.9). Subagent Settings and the Pre-started Sessions card (formerly Warm Pool) moved to Settings → Agent Harness.

Import / Export

Settings → Import / Export backs up Kiro Crew configuration to an archive and restores it. Check Include chat history to add every chat in your Sessions list to the export. Incognito and Temporary chats are never included. Chats keep anything pasted into them, such as passwords or keys, so keep the archive private.

Older chats that do not fit in the archive are left out, and the export names them. On import, chats that are Incognito, Temporary, or unreadable are withheld and named.

Chat settings

  • Settings → Chat → Transcript → Response Verbosity sets how terse the agent's prose is. A new install starts at Answer only; an existing config keeps its stored level. The former Ultra level is retired, and a config that stored it behaves as Answer only. At every level, code, commands, and error strings stay verbatim.
  • Settings → Chat → Advanced → Compaction Time Limit (seconds) (session.compact_wait_secs) is the longest a compaction may run. 0 means the default of 300 seconds; otherwise 60 to 3,600 seconds, and a value outside that range is clamped. What happens past the limit depends on who started the compaction: automatic compaction and the task runner's compaction restart the session, a chat channel's near-limit compaction gives up and keeps the session, and a manual /compact reports that it timed out.
  • Settings → Chat → Sessions → Dim Inactive Panes fades split-view panes without keyboard focus. Turn it off to keep every pane at full brightness; the accent border still marks the focused pane.

Coding hours with WakaTime

The WakaTime integration is off by default. When enabled, Kiro Crew sends coding-activity heartbeats to WakaTime and reads the account's statistics.

  1. Set wakatime.enabled to true in $KIROCREW_HOME/config.json (by default ~/.kiro/crew/config.json).
  2. Open Settings → Secrets and save the WakaTime API key under Used automatically by Kiro Crew. The WAKATIME_API_KEY credential is vault-only; Kiro Crew does not read it from .env or config.json.
  3. Open Settings → Overview.

The card defaults to Last 7 days. Choose Today, Last 7 days, Last 30 days, or Last 6 months to see total coding time, daily average, active projects, and language and project breakdowns. Export hours (CSV) and Export hours (JSON) download project-grouped hours for the selected date range.

Get an API key from WakaTime account settings.

CLI and file editing

bash
kirocrew config get kirocrew config get agent.sandbox kirocrew config set dashboard.bot_name "X" kirocrew config set --local dashboard.bot_name "X" kirocrew config edit

--local writes config.local.json, whose values override config.json and survive an update. Both files use standard JSON; omitted keys use the current shipped defaults. The live loader applies ordinary changes without restarting sessions. When a field is marked restart-required, restart after saving it.

json
{ "agent": { "approval_mode": "auto", "sandbox": "auto" }, "session": { "timeout_secs": 3600, "autocompact_pct": 70 }, "dashboard": { "default_memory_mode": "persistent" }, "skills": { "max_triggered": 0 } }

Runtime, chat, and preview settings

KeyDefaultMeaning
agent.chat_turn_timeout_secs14400Maximum wall-clock time for one chat turn
agent.subagent_timeout_secs10800Maximum wall-clock time for one subagent
agent.subagent_max_turns1000Tool-call budget per subagent, capped at 1000
agent.session_controltrueLets eligible agents create, read, message, and stop peer sessions
agent.refusal_fallback_model""Model used for one retry after a content-filter refusal; empty disables the retry
session.timeout_secs3600Idle-session timeout in seconds; 0 disables the idle sweep
session.autocompact_pct70Context-use percentage that starts automatic compaction
orchestrator.max_plan_duration_seconds7200Whole-plan limit for unattended auto-run plans; 0 removes it
agent.sandbox"auto"Chooses auto, strict, or off for new agent subprocesses; see Security
agent.sandbox_allow_unsandboxed_execfalseAllows execution without a sandbox only when explicitly enabled
agent.deepseek_env{}Maps DeepSeek Harness environment variable names to secret:// vault references
dashboard.default_memory_mode"persistent"Memory mode for new dashboard chats: persistent, incognito, or temporary
dashboard.model_picker_hidden_models[]Models hidden by Selectable Models; Auto and the active model stay visible
dashboard.link_patterns[]JavaScript regex and absolute URL-template pairs used by Text Link Patterns
dashboard.title_refresh_every_turns0Rechecks an auto-generated title every N turns; 0 keeps the built-in schedule
dashboard.terminal.completion.enabledtrueEnables terminal command and path completion
memory.persistence_enabledtrueEnables automatic memory writes and consolidation
memory.inject_memorytrueAdds stored memory to new-session context
memory.inject_lessonstrueAdds learned corrections to new-session context
memory.inject_activitytrueAdds recent projects, history, task facts, and past episodes
mcp.honour_auto_approvetrueHonors owner-written autoApprove lists in MCP and agent files; app lists remain ignored. Requires a Gateway restart
monitoring.max_runtime_secs604800Operator ceiling for a new or updated monitor, up to thirty days
skills.max_triggered0Maximum matched skills injected per message; 0 disables trigger injection, not discovery
wakatime.enabledfalseEnables coding-hours reporting after the API key is stored in the secrets vault
telemetry.enabledfalseEnables local latency and fault-rate metrics; it does not export them
auto_updatetrueChecks source installs for updates at startup and every twelve hours
instances.enabledfalseEnables remote-crew and multi-instance management
instances.warm_set_cap0Fixed warm-tunnel limit; 0 sizes it automatically, capped at 8
capabilities.publishDisabledGovernance capability for public artifact publishing
publish.allowed_destinations[]Providers allowed below the publishing governance ceiling

Decisions with Jev (Preview)

Enable Settings → Developer → Feature Previews → Decisions (Jev) only after reviewing the destination and data categories shown on the card. Consent is stored outside config.json, so an agent cannot enable the transfer by editing settings.

Turning on the main switch does not arm every behavior. Choose Auto (Jev) in a chat's model picker for per-turn model routing and Auto (Jev) on the busy send button for Steer-or-Queue decisions. Automatic skill selection also requires skills.max_triggered above zero; that setting globally enables per-message trigger injection, not only Jev. Recalled-memory filtering and the optional tool-risk and compaction measurements each have their own consent switch.

Relevant settings:

KeyDefaultMeaning
decisions.bucket100Percentage of otherwise-eligible sessions included in the stable sample
decisions.history_budget_chars0Maximum prior-conversation characters sent with a decision; 0 sends none
decisions.model_route.simple""Model for messages Jev classifies as simple; empty keeps the current model
decisions.model_route.medium""Model for medium messages
decisions.model_route.complex""Model for complex messages

A concrete model selection always wins over Auto (Jev). Scheduled jobs, subagents, app requests, and remote-crew turns keep their own model settings.

Themes, zoom, and language

Choose a theme, typography, and interface language under Settings → Display. The interface ships in English, German, Spanish, French, Italian, Portuguese, Russian, Hindi, Bengali, Chinese, Korean, and Japanese. The agent's response language follows your conversation rather than this display setting.

In the desktop app, Settings → Display → Zoom Level accepts a typed exact percent, clamped to 50 to 300 percent. A browser tab cannot set the browser's own zoom, so the setting shows the keyboard shortcut hint instead.

Channel credentials

Channel credentials live in the encrypted secrets vault or ~/.kiro/crew/.env, not in config.json. Configure them under Settings → Messaging Channels. The .env file is owner-readable and owner-writable only.

Environment variables

VariableDefaultPurpose
KIROCREW_HOME~/.kiro/crewData directory for configuration, memory, logs, and credentials
KIROCREW_PORT5476Gateway port
KIROCREW_CREW_LOGenabled when unsetSet to 0 before Gateway start to disable the default redacted Crew log and session ledger

Set these before starting the Gateway. Use --port to override KIROCREW_PORT for one invocation.

Data home

Persistent state lives under ~/.kiro/crew/, unless KIROCREW_HOME points elsewhere. See Installation for the directory layout.

Page updated: October 20, 2026
System & storage
Security