101 lines
4.4 KiB
Markdown
101 lines
4.4 KiB
Markdown
# Kiro Tools Documentation
|
|
|
|
This document lists all the tools available to Kiro for assisting with development tasks.
|
|
|
|
## File System Operations
|
|
|
|
### executePwsh
|
|
Execute PowerShell or CMD commands on Windows systems.
|
|
- **Parameters**: command (required), path (optional), ignoreWarning (optional)
|
|
- **Usage**: Run shell commands, but avoid long-running processes like dev servers
|
|
- **Note**: Never use 'cd' command - use path parameter instead
|
|
|
|
### listDirectory
|
|
List directory contents in long format (similar to `ls -la`).
|
|
- **Parameters**: path (required), depth (optional), explanation (required)
|
|
- **Usage**: Explore file structure, can do recursive listing with depth parameter
|
|
|
|
### readFile
|
|
Read content from a single file with optional line range specification.
|
|
- **Parameters**: path (required), explanation (required), start_line (optional), end_line (optional)
|
|
- **Usage**: Read entire files or specific line ranges
|
|
|
|
### readMultipleFiles
|
|
Read content from multiple files simultaneously with optional line ranges.
|
|
- **Parameters**: paths (required array), explanation (required), start_line (optional), end_line (optional)
|
|
- **Usage**: Efficiently read multiple files at once
|
|
|
|
### fsWrite
|
|
Create new files or overwrite existing files with content.
|
|
- **Parameters**: path (required), text (required)
|
|
- **Usage**: Create files, limit to ~50 lines then use fsAppend for larger content
|
|
|
|
### fsAppend
|
|
Append text content to the end of existing files.
|
|
- **Parameters**: path (required), text (required)
|
|
- **Usage**: Add content to existing files, handles newline formatting automatically
|
|
|
|
### deleteFile
|
|
Delete files at specified paths with graceful error handling.
|
|
- **Parameters**: targetFile (required), explanation (required)
|
|
- **Usage**: Remove unwanted files safely
|
|
|
|
### strReplace
|
|
Replace specific text strings in files with exact matching.
|
|
- **Parameters**: path (required), oldStr (required), newStr (required)
|
|
- **Usage**: Make precise edits to existing files, requires exact whitespace matching
|
|
|
|
## Search and Discovery
|
|
|
|
### fileSearch
|
|
Fast fuzzy file search based on file path patterns.
|
|
- **Parameters**: query (required), explanation (required), excludePattern (optional), includeIgnoredFiles (optional)
|
|
- **Usage**: Find files when you know part of the path but not exact location
|
|
|
|
### grepSearch
|
|
Fast text-based regex search within files using ripgrep.
|
|
- **Parameters**: query (required), explanation (optional), caseSensitive (optional), includePattern (optional), excludePattern (optional)
|
|
- **Usage**: Search for text patterns across files, supports regex and glob patterns
|
|
|
|
## Code Analysis
|
|
|
|
### getDiagnostics
|
|
Get compile, lint, type, and semantic issues in code files.
|
|
- **Parameters**: paths (required array)
|
|
- **Usage**: Check for syntax errors, linting issues, and type problems
|
|
- **Note**: Use this instead of bash commands for error checking
|
|
|
|
## Tool Usage Guidelines
|
|
|
|
### Best Practices
|
|
- Use `readMultipleFiles` instead of multiple `readFile` calls
|
|
- Use `getDiagnostics` for code validation instead of shell commands
|
|
- Avoid long-running commands like `npm run dev`, `yarn start`, `webpack --watch`
|
|
- Use `fsWrite` for initial file creation, then `fsAppend` for additional content
|
|
- Include sufficient context in `strReplace` operations for unique matching
|
|
|
|
### Windows-Specific Notes
|
|
- Commands are adapted for Windows cmd/PowerShell environment
|
|
- Use `;` as command separator in PowerShell instead of `&&`
|
|
- File paths use Windows conventions
|
|
|
|
### Search Patterns
|
|
- **Regex patterns**: Use Rust regex syntax for `grepSearch`
|
|
- **Glob patterns**: Use standard glob syntax (* for wildcards, ** for recursive)
|
|
- **File search**: Fuzzy matching against file paths
|
|
- Always escape special regex characters: `( ) [ ] { } + * ? ^ $ | . \`
|
|
|
|
### Error Handling
|
|
- Tools fail gracefully with appropriate error messages
|
|
- File operations check for existence and permissions
|
|
- Search operations are capped to prevent overwhelming output
|
|
|
|
## Integration with Kiro Features
|
|
|
|
These tools integrate with Kiro's key features:
|
|
- **Autopilot/Supervised modes**: File modification tools respect user's autonomy settings
|
|
- **Chat context**: Tools work with #File, #Folder, #Problems, #Terminal, #Git Diff, #Codebase
|
|
- **Specs**: Tools support structured feature development workflows
|
|
- **Hooks**: Tools can be triggered by IDE events
|
|
- **Steering**: Tools respect workspace-specific guidelines in `.kiro/steering/`
|
|
- **MCP**: Tools can interact with Model Context Protocol configurations |