How Tools Work
brewdata 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.
Tool Workflow
Describe what you want to accomplish in natural language, and brewdata will:
- Select the appropriate tool based on your request
- Present the tool with its parameters for your review
- Execute the approved tool and show you the results
- Continue this process until your task is complete
Tool Safety and Approval
Every tool use requires your explicit approval. When brewdata proposes a tool, you'll see:
- A "Save" button to approve and execute the tool
- A "Reject" button to decline the proposed tool
- An optional "Auto-approve" setting for trusted operations
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.
Core Tools Reference
Tool Name | Description | Category |
---|---|---|
read_file | Reads the content of a file with line numbers | Read |
search_codebase | Searches relevant files from the codebase based on RAG | Read |
search_files | Searches for text or regex patterns across files | Read |
list_files | Lists files and directories in a specified location | Read |
write_to_file | Creates new files or overwrites existing ones | Edit |
apply_diff | Makes precise changes to specific parts of a file | Edit |
execute_command | Runs commands in the VS Code terminal | Execute |
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 |