Built-In Tools
Tabnine CLI provides powerful built-in tools that the AI uses automatically to fulfill your requests.
How Tools work
You don't need to call tools directly. The AI automatically uses them when needed.
Example:
> What files are in the src directory?The AI automatically uses the list_directory tool.
Available tools
File operations
list_directory - List directory contents Lists files and subdirectories in a specified directory. Can filter using glob patterns and respects
.gitignore.
Example usage:
> What files are in the src directory?
> Show me all TypeScript files in @src/read_file - Read file contents Reads text files, images (PNG, JPG, SVG, etc.), audio files, and PDFs. Supports reading specific line ranges for large text files.
Example usage:
> Read @package.json and show the dependencies
> Show me lines 10-50 of @src/index.tswrite_file - Create or overwrite files Creates new files or overwrites existing ones. Creates parent directories if needed.
Example usage:
replace - Edit existing files Makes precise text replacements in files. Requires significant context to ensure correct edits. Includes multi-stage correction for reliability.
Example usage:
glob - Find files by pattern Finds files matching glob patterns (e.g.,
*.ts,src/**/*.js). Returns paths sorted by modification time (newest first).
Example usage:
search_file_content - Search file contents Searches for text patterns (regex) across files. Fast search powered by ripgrep. Can filter by glob patterns.
Example usage:
save_memory - Save information across sessions Saves facts and preferences that persist across CLI sessions.
Example usage:
write_todos - Task management Manages subtasks for complex requests. Helps track progress and organize multi-step operations.
Example usage:
Shell & web operations
run_shell_command - Execute shell commands Runs shell commands in your terminal. Always asks for confirmation before executing.
Example usage:
Built-In MCP tools
The following tools are powered by Tabnine's infrastructure.
Remote Code Search - Search across massive codebases using Tabnine's cloud indexing.
Example usage:
Coaching Guidelines - AI-powered best practices tailored to your code.
Example usage:
Learn more: Coaching Guidelines
Tool summary
Here's a complete list of all built-in tools:
list_directory
ReadFolder
List directory contents
read_file
ReadFile
Read file contents
write_file
WriteFile
Create or overwrite files
replace
Edit
Edit existing files
glob
FindFiles
Find files by pattern
search_file_content
SearchText
Search file contents
run_shell_command
Shell
Execute shell commands
save_memory
Memory
Save facts across sessions
write_todos
Todos
Manage task lists
Remote Code Search and Coaching Guidelines are Tabnine-specific tools. See Tabnine Tools for details.
Tool Configuration
View available tools
To see which tools are currently available and enabled:
This displays a list of all tools with their status (enabled/disabled).
Enable/disable tools
You can configure which tools are available, either open the /settings menu or edit your settings.json file and adding the following settings:
Enable Interactive Shell
tools.shell.enableInteractiveShell
Use node-pty for an interactive shell experience. Fallback to child_process still applies.
true
Show Color
tools.shell.showColor
Show color in shell output.
false
Auto Accept
tools.autoAccept
Automatically accept and execute tool calls that are considered safe (e.g., read-only operations).
false
Use Ripgrep
tools.useRipgrep
Use ripgrep for file content search instead of the fallback implementation. Provides faster search performance.
true
Enable Tool Output Truncation
tools.enableToolOutputTruncation
Enable truncation of large tool outputs.
true
Tool Output Truncation Threshold
tools.truncateToolOutputThreshold
Truncate tool output if it is larger than this many characters. Set to -1 to disable.
4000000
Tool Output Truncation Lines
tools.truncateToolOutputLines
The number of lines to keep when truncating tool output.
1000
Disable LLM Correction
tools.disableLLMCorrection
Disable LLM-based error correction for edit tools. When enabled, tools will fail immediately if exact string matches are not found, instead of attempting to self-correct.
false
Tool Confirmation
Tools that modify files or execute commands require confirmation:
Auto-approved: Read operations (list, read, search)
Requires confirmation: Write operations, edits, shell commands
When a tool requires confirmation, you'll see a diff or preview of the changes before they're applied.
Last updated
Was this helpful?
