Kilo Code uses tools to interact with your code and environment. These specialized helpers perform specific actions like reading files, making edits, running commands, or searching your codebase. Tools provide automation for common development tasks without requiring manual execution.
Describe what you want to accomplish in natural language, and Kilo Code will:
| Category | Purpose | Tool Names |
|---|---|---|
| Read | Access file content and code structure | read_file, search_files, list_files, list_code_definition_names |
| Edit | Create or modify files and code | apply_diff, delete_file, write_to_file |
| Execute | Run commands and perform system operations | execute_command |
| Browser | Interact with web content | browser_action |
| Workflow | Manage task flow and context | ask_followup_question, attempt_completion, switch_mode, new_task |
Here's how a typical tool interaction works:

The tool approval interface shows Save/Reject buttons and Auto-approve options.
User: Create a file named greeting.js that logs a greeting message
Kilo Code: (Proposes the write_to_file tool as shown in the image above)
<write_to_file>
<path>greeting.js</path>
<content>
function greet(name) {
console.log(`Hello, ${name}!`);
}
greet('World');
</content>
<line_count>5</line_count>
</write_to_file>
User: (Clicks "Save" in the interface)
Kilo Code: (Confirms file creation)
Every tool use requires your explicit approval. When Kilo proposes a tool, you'll see:
This safety mechanism ensures you maintain control over which files are modified, what commands are executed, and how your codebase is changed. Always review tool proposals carefully before saving them.
| Tool Name | Description | Category |
|---|---|---|
read_file |
Reads the content of a file with line numbers | Read |
search_files |
Searches for text or regex patterns across files | Read |
list_files |
Lists files and directories in a specified location | Read |
list_code_definition_names |
Lists code definitions like classes and functions | Read |
write_to_file |
Creates new files or overwrites existing ones | Edit |
apply_diff |
Makes precise changes to specific parts of a file | Edit |
delete_file |
Removes files from the workspace | Edit |
execute_command |
Runs commands in the VS Code terminal | Execute |
browser_action |
Performs actions in a headless browser | Browser |
ask_followup_question |
Asks you a clarifying question | Workflow |
attempt_completion |
Indicates the task is complete | Workflow |
switch_mode |
Changes to a different operational mode | Workflow |
new_task |
Creates a new subtask with a specific starting mode | Workflow |
For more detailed information about each tool, including complete parameter references and advanced usage patterns, see the Tool Use Overview documentation.