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
Capability-based permissions
Hooks
Agent config changes
Improved compaction
Setup & First Run
Editor
Chat
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. What's new in 1.0
  4. Agent config changes

Agent config changes


Overview

Agent profiles are backward-compatible — existing configs continue to work. The unified agent harness adds new optional fields and a Markdown format option.

Format options

JSON — new fields to add to existing .kiro/agents/*.json configs:

json
{ "excludedTools": ["knowledge"], "includeMcpJson": true, "includePowers": false, "resources": ["file://./ARCHITECTURE.md", "skill://backend-patterns"], "permissions": { "rules": [ { "capability": "shell", "match": ["npm *", "node *"], "effect": "allow" } ] }, "welcomeMessage": "Ready to work on the backend. What do you need?" }

(All other fields — name, description, prompt, model, tools, mcpServers — are unchanged.)

Both formats support identical fields. Use Markdown when your system prompt is long or benefits from human readability; JSON works well for programmatic generation. Mixing formats across agents in the same workspace is supported.

Markdown (.kiro/agents/my-agent.md) — front matter for config, body for system prompt:

markdown
--- name: my-agent description: Specialized for backend work model: claude-sonnet-4-20250514 tools: ["read", "write", "shell", "web_fetch"] excludedTools: ["knowledge"] includeMcpJson: true includePowers: false mcpServers: db-server: command: npx args: ["-y", "@org/db-mcp"] env: DB_URL: "${DATABASE_URL}" resources: - file://./ARCHITECTURE.md - skill://backend-patterns permissions: rules: - capability: shell match: ["npm *", "node *"] effect: allow - capability: fs_write match: ["src/**"] effect: allow welcomeMessage: "Ready to work on the backend. What do you need?" --- You are a backend engineer focused on Node.js and TypeScript services. ## Guidelines - Use async/await, never callbacks - All database queries must be parameterized - Write tests for every new function

Field reference

FieldTypeNew in 1.0Description
namestringAgent identifier
descriptionstringShown in agent picker
promptstringSystem prompt — inline string or file:// URI (JSON only; in Markdown, use the body)
modelstringModel override (e.g., claude-sonnet-4-20250514)
toolsstring[] | "*"Allowed tools. "*" = all available
excludedToolsstring[]✓Tools to exclude even if tools allows them
includeMcpJsonboolean✓Include workspace .kiro/settings/mcp.json servers
includePowersboolean✓Include IDE-installed powers
mcpServersobjectEmbedded MCP server definitions (stdio or HTTP)
resourcesstring[]✓URIs to load into context: file://, skill://
permissionsobject✓Inline policy rules (agent scope, supports all effects)
welcomeMessagestring✓Custom greeting on session start
hooksobject✓CLI only — inline hook definitions (same schema as .kiro/hooks/). IDE ignores agents containing this field.

MCP server config

Stdio servers:

json
{ "command": "npx", "args": ["-y", "@org/server"], "env": {}, "timeout": 30000 }

HTTP/SSE servers:

json
{ "url": "https://api.example.com/mcp", "headers": { "Authorization": "Bearer ${TOKEN}" } }

Environment variables use ${VAR} syntax and are expanded at runtime.

Resources

The resources field loads context into the agent at session start:

URI schemeExampleLoads
file://file://./docs/ARCH.mdFile content relative to workspace root
skill://skill://backend-patternsSkill from .kiro/skills/backend-patterns/SKILL.md

What's unchanged

These fields work exactly as before — no behavior changes:

  • name, description, prompt, model, tools, mcpServers

Migration notes

  • Existing JSON configs work without modification
  • New fields are all optional — adopt incrementally
  • excludedTools is useful when tools: "*" but you want to block specific tools
  • permissions embedded in an agent profile uses agent scope (supports deny, ask, and allow)
  • resources replaces manually copying context into the prompt — the harness loads and refreshes them
Page updated: August 4, 2026
Hooks
Improved compaction