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
Web tools
Code intelligence
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. Features
  3. Built-in tools
View as Markdown

Built-in tools

View as Markdown

Kiro's agent includes built-in tools for development tasks. These are provided by the unified agent harness and shared across surfaces. The default agent has access to all built-in tools - custom agents can restrict this.

At a glance:

Cross-surfaceFile read/write, shell, web search/fetch, sub-agents, context, introspect
IDE and CLIHook creation and on-demand MCP tool loading
IDE onlyBackground process control and output, dev-server orchestration, and editor code analysis (read_code, semantic rename)
IDE and WebPowers (kiro_powers)
CLI onlyCode intelligence (code) and knowledge (experimental)
CLI 2.x legacysession, tool_search (V2), thinking (experimental), use_aws (preferred alias aws), delegate, task (aliases todo, todo_list), goal; not V3 built-ins
ConfigurationUse custom agents tools field + permissions

Tool catalog

The catalog below covers built-in tools across Kiro surfaces. Availability can vary by surface and agent engine.

ToolCategoryDescription
read_fileFileRead a single file
list_directoryFileList directory contents
file_searchFileFuzzy file path search (glob)
grep_searchFileRegex content search
fs_writeFileCreate or overwrite a file
fs_appendFileAppend to an existing file
str_replaceFileTargeted text replacement
delete_fileFileDelete a file
execute_bashShellRun a shell command
remote_web_searchWebSearch the web (displayed as web_search)
web_fetchWebFetch content from a URL
invoke_sub_agentAgentDelegate tasks in parallel
disclose_contextContextActivate skills or steering
introspectContextAnswer questions about Kiro's own features from official docs

Surface availability

Some tools aren't available on every surface or agent engine yet. CLI V3 has no task-list tool, so the chat.enableTodoList setting has no effect there:

ToolIDECLIWebMobileStatus
control_bash_process / control_pwsh_process✓———GA
get_process_output✓———GA
list_processes✓———GA
kiro_powers✓—✓—GA
createHook✓✓——GA
code—✓——GA
session—2.x——CLI 2.x only
tool_search—V2——CLI V2 only
knowledge—✓——Experimental
thinking—2.x——CLI 2.x only
use_aws / aws—2.x——CLI 2.x only → use MCP servers
delegate—2.x——CLI 2.x only → use sub-agents
task (aliases todo, todo_list)—2.x——CLI 2.x only
goal—2.x——CLI 2.x only; reports verified completion of a /goal you set

The background-process tools (control_bash_process or control_pwsh_process, get_process_output, and list_processes) are available in the IDE, where they support dev servers. CLI V3 can start a command in the background through execute_bash (execute_pwsh on Windows) with run_in_background, but it does not register these process-control tools. The code tool (tree-sitter and LSP-based code intelligence) is provided to non-IDE clients; in the IDE, equivalent capabilities are built in as editor-native tools - read_code for AST analysis and semantic rename - riding the language servers the editor already runs.

Configuring tool access

Use the tools field of a custom agent to control which category tags and direct tool selectors are available:

json
{ "tools": ["read", "write", "shell", "web"] }

Common category mappings include:

CategoryCommonly includes
readread_file, list_directory, file_search, grep_search, code, tool_search (V2), introspect
writefs_write, fs_append, str_replace, delete_file, code
shellexecute_bash or execute_pwsh; IDE clients may also expose control_bash_process or control_pwsh_process, get_process_output, and list_processes
webweb_fetch, remote_web_search
subagentPer-agent dispatch tools (displayed as subagent/<agent>)

Some built-ins have no category tag, including knowledge and invoke_sub_agent. Select them by tool ID, or with @builtin or *. invoke_sub_agent can start any agent, so an agent with @builtin or * in its tools can start any sub-agent.

Special values:

ValueEffect
@builtinAll built-in tools
@mcpAll MCP server tools
*Everything (built-in + MCP)

Exclude specific categories: "excludedTools": ["web"]

Control what tools can do (not just which are visible) with permissions.

Tip

Need tools beyond the built-in set? Add custom tools via MCP servers - databases, APIs, cloud services, and any tool that speaks the Model Context Protocol.

File tools (read)

ToolDescription
read_fileRead a single file (text or image). Call it once per file to read several files. The CLI 2.x alias fs_read maps to the read tag during migration; it is not a Hook or runtime ID
list_directoryList directory contents in long format
file_searchFuzzy file path search (glob patterns). CLI 2.x name: glob
grep_searchRegex content search across files. CLI 2.x name: grep
codeAST-based code analysis - signatures, symbols, fuzzy search

All read tools apply permissions fs_read capability rules. .kiroignore support varies by surface; in CLI V3, matching direct reads are blocked, while file_search and grep_search filter ignored paths from results.

File tools (write)

ToolDescription
fs_writeCreate or overwrite a file. CLI 2.x name: write
fs_appendAppend content to the end of an existing file
str_replaceReplace exact text in a file (targeted edits)
delete_fileDelete a file

Write tools respect permissions fs_write capability rules.

Shell tools

ToolDescriptionSurfaces
execute_bashRun a shell command. CLI 2.x names: shell, execute_cmdIDE · CLI · Web
control_bash_process / control_pwsh_processStart/stop long-running background processesIDE
get_process_outputRead output from a background processIDE
list_processesList running background processesIDE

Shell tools respect permissions shell capability rules. Use match patterns to pre-approve common commands:

yaml
rules: - capability: shell match: ["git *", "npm *", "cargo *"] effect: allow - capability: shell match: ["rm -rf *", "sudo *"] effect: deny

Web tools

Detailed guide →

ToolDescription
remote_web_searchSearch the web for current information. Displayed as web_search
web_fetchFetch and extract text content from a URL

Limitations: 10 MB max per fetch, 30s timeout, text/HTML only. Retry behavior varies by surface; CLI V3 retries transient failures once.

Enterprise administrators can disable web tools from Settings > Shared settings. See Enterprise governance - Web tools.

Code intelligence

Detailed guide →

Tree-sitter based code understanding for 18 languages - symbol search, document symbols, pattern search, and AST-based rewriting. Optional LSP integration for find references, go-to-definition, rename, and diagnostics.

Supported languages: Bash, C, C++, C#, Elixir, Go, Java, JavaScript, Kotlin, Lua, PHP, Python, Ruby, Rust, Scala, Swift, TSX, TypeScript

Sub-agent delegation

ToolDescription
invoke_sub_agentDelegate a task to an agent running in isolated context

See Invoking as sub-agents for the full guide.

Context tools

ToolDescription
disclose_contextActivate skills or steering files into context
introspectSearch indexed Kiro documentation (semantic + BM25)
knowledgeSearch indexed knowledge bases (experimental)

Tool search

Detailed guide →

Kiro IDE 1.3 and later load MCP tools on demand. Local V3 sessions in Kiro CLI 2.31 and later do too. Kiro receives a compact tool list, loads the definitions it needs, then calls those tools through normal permission and Hook checks.

V3 activity can show tool_load before tool_call. V2 sessions can enable the legacy tool_search path. See the Tool Search guide.

Session tools

ToolDescriptionStatus
createHookCreate agent hooks from chatGA
kiro_powersList, activate, and use installed powersGA

Next steps

  • Web tools - detailed guide
  • Code intelligence - detailed guide
  • Custom agents - configure which tools agents can access
  • Permissions - control what tools can do
  • MCP - extend with external tools
  • Configuration scopes - where tool settings are stored
Page updated: October 31, 2026
Checkpoints and rewind
Web tools