Overview
Avante.nvim provides a comprehensive set of tools that AI agents can use during code generation and analysis. These tools enable agents to read files, execute commands, search code, and perform various development tasks.Tools are enabled by default in agentic mode. You can disable them globally or selectively per provider.
Available Tools
Here’s the complete list of available tools:File Operations
read_file
read_file
Read the contents of a file.Usage: The AI can read any file in your project to understand context or analyze code.Example: “Read the authentication module to understand the login flow.”
read_file_toplevel_symbols
read_file_toplevel_symbols
Read top-level symbols (functions, classes, etc.) from a file without reading the entire content.Usage: Quickly scan file structure without loading full content.Example: “What classes are defined in user.py?”
create_file
create_file
Create a new file with specified content.Usage: Generate new files based on requirements.Example: “Create a new test file for the authentication module.”
edit_file
edit_file
Edit an existing file (used with Fast Apply feature).Usage: Apply precise code modifications.Example: “Update the login function to add rate limiting.”
delete_path
delete_path
Delete a file or directory.Usage: Remove obsolete files or directories.Example: “Remove the old migration files.”
move_path
move_path
Move or rename a file or directory.Usage: Reorganize project structure.Example: “Move the utility functions to a utils folder.”
copy_path
copy_path
Copy a file or directory.Usage: Duplicate files or create templates.Example: “Copy the base controller to create a new API controller.”
create_dir
create_dir
Create a new directory.Usage: Set up new directory structures.Example: “Create a components directory for React components.”
Search Operations
glob
glob
Search for files using glob patterns.Usage: Find files matching specific patterns.Example: “Find all TypeScript test files.”Pattern Examples:
**/*.ts- All TypeScript filessrc/**/*.test.js- All test files in src
search_keyword
search_keyword
Search for keywords in file contents using regex.Usage: Find specific code patterns or text.Example: “Find all usages of the deprecated API.”
rag_search
rag_search
Perform semantic search using the RAG service.Usage: Find relevant code based on semantic similarity.Example: “Find code related to user authentication.”Requires: RAG service to be enabled
Execution Tools
bash
bash
Execute bash commands.Usage: Run shell commands, scripts, or build tools.Example: “Run the test suite to verify the changes.”
python
python
Execute Python code.Usage: Run Python scripts or perform data analysis.Example: “Analyze the log file and extract error patterns.”
Git Operations
git_diff
git_diff
Show git diff of changes.Usage: Review uncommitted changes.Example: “What changes have been made since the last commit?”
git_commit
git_commit
Create a git commit.Usage: Commit changes with an AI-generated message.Example: “Commit these authentication improvements.”
Web Operations
web_search
web_search
Search the web for information.Usage: Find documentation, solutions, or recent information.Example: “Search for the latest React hooks best practices.”Requires: Web search provider configured (Tavily, SerpAPI, etc.)
fetch
fetch
Fetch content from a URL.Usage: Retrieve web content or API responses.Example: “Fetch the API documentation from the endpoint.”
Disabling Tools
Disable All Tools
To disable all tools for a provider:Some LLM models don’t support tools. Disable them if you encounter errors.
Disable Specific Tools
To disable only certain tools:Common Use Cases for Disabling
Security Concerns
Security Concerns
Disable execution tools in sensitive environments:
Prevent Web Access
Prevent Web Access
Disable web-related tools:
Read-Only Mode
Read-Only Mode
Disable all modification tools:
Tool Permissions
Control how tools are approved:Permission Modes
- Auto-Approve All (Default)
- Auto-Approve Specific
- Manual Approval
Confirmation UI Style
Choose how permission prompts are displayed:Custom Tools
You can define your own custom tools:Custom Tool Example: Database Query
Tool Usage in Agentic Mode
In agentic mode, the AI automatically uses tools to complete tasks:Legacy Mode (No Tools)
To use the old planning method without tools:Best Practices
Security First
Carefully review which tools are auto-approved, especially
bash and python.Selective Disabling
Disable tools you don’t need to reduce security surface area.
Monitor Usage
Watch which tools the AI uses to understand its decision-making process.
Custom Tools
Create custom tools for project-specific operations to enhance AI capabilities.
Related Documentation
ACP Support
Agent Client Protocol integration
Agentic Workflow
Understanding autonomous agents
Web Search
Configure web search tools