Tools Reference
All the tools agents can use to interact with your system.
Overview
Tools are capabilities agents use to interact with your system, files, browser, and other agents. This is the complete reference of all available tools.
Each agent can be configured with specific tool permissions based on the execution mode. Use this list to:
- Understand what tools your agents can access
- Create custom permission rules to allow/deny specific tools
- Plan what agents need for their tasks
Quick Tool Index
System & Web
- Bash — Execute terminal commands
- Browser — Control browser automation
- Screenshot — Capture screen
- WebFetch — Fetch & convert URLs to markdown
- WebSearch — Search the web
- Feedback — Send feedback to developers
Agent Workspace Files
- List — List files and directories in agent workspace
- Read — Read files from agent workspace
- Write — Write/create files in agent workspace
- Delete — Delete files from agent workspace
- Grep — Search for patterns in files
Secrets & Security
- vault_list — List secret names
- vault_save — Prompt for secret input
Agents
- agent_spawn — Create a sub-agent
- agent_message — Send message to agent
- agent_list — List all agents
- agent_delete — Delete an agent
- agent_rename — Rename an agent
- agent_context_compact — Compress history
Scheduling & Triggers
- schedule_once — Schedule one-time task
- schedule_list — List scheduled tasks
- schedule_cancel — Cancel scheduled task
- create_script_trigger — Create a script trigger
- list_script_triggers — List script triggers
- delete_script_trigger — Delete a script trigger
- create_webhook — Create a webhook trigger
- list_webhooks — List webhooks
- delete_webhook — Delete a webhook
- trigger_list — List available triggers
- trigger_subscribe — Subscribe to trigger
- trigger_unsubscribe — Unsubscribe from trigger
- trigger_subscriptions — List subscriptions
Planning & User Interaction
- update_planning_document — Update plan in plans directory
- finalize_plan — Finalize plan and request approval
- user_question — Ask user questions
- search_history — Search conversation history
- check_provider_status — Check AI provider status
System Tools
Shell (Bash)
Execute terminal commands on your machine.
| Parameter | Type | Description |
|---|---|---|
command |
string | Single command to execute |
commands |
array | Multiple commands (parallel by default) |
sequential |
boolean | Run commands sequentially |
Supports streaming output for long-running commands. Secrets from the vault are automatically masked in output.
Browser (Browser)
Control browser automation for web interactions.
| Parameter | Type | Description |
|---|---|---|
action |
string | Single action to perform |
actions |
array | Sequential actions |
Available Actions:
navigate— Go to a URLclick— Click an elementtype— Type text into an elementscroll— Scroll the pageget_content— Extract page contentwait— Wait for element or condition
Screenshot (Screenshot)
Capture a screenshot of the display.
Requires explicit user approval. No parameters needed.
Web Fetch (WebFetch)
Fetch content from a URL and convert to markdown.
| Parameter | Type | Description |
|---|---|---|
url |
string | URL to fetch |
Returns the page content converted to markdown format.
Web Search (WebSearch)
Search the web using DuckDuckGo.
| Parameter | Type | Description |
|---|---|---|
query |
string | Search query |
max_results |
number | Maximum results (default 10, max 25) |
Returns search results with titles, URLs, and snippets.
Feedback (Feedback)
Send feedback to Fleet developers.
| Parameter | Type | Description |
|---|---|---|
message |
string | Feedback message |
screenshot_path |
string | Optional screenshot path |
Agent Workspace Tools
Each agent has a dedicated workspace directory for files. These tools only operate on files within the agent's workspace — they cannot access files outside the workspace directory.
List Files (List)
List files and directories in the agent's workspace only.
| Parameter | Type | Description |
|---|---|---|
path |
string | Relative path (default: workspace root) |
Cannot access files outside the workspace directory.
Read Files (Read)
Read files from the agent's workspace only.
| Parameter | Type | Description |
|---|---|---|
path |
string | Single file path |
paths |
array | Multiple file paths (batch read) |
For batch reads, each item should have id and path fields. Cannot access files outside the workspace directory.
Write Files (Write)
Write or overwrite files in the agent's workspace only.
| Parameter | Type | Description |
|---|---|---|
path |
string | File path to write |
content |
string | Content to write |
Creates parent directories automatically. Cannot write files outside the workspace directory.
Delete Files (Delete)
Delete files or directories from the agent's workspace only.
| Parameter | Type | Description |
|---|---|---|
path |
string | Path to delete |
recursive |
boolean | Delete directories recursively |
Cannot delete files outside the workspace directory.
Vault Tools
Agents can securely manage secrets stored in the Secure Vault. Secrets are encrypted, never exposed to the LLM provider, and never appear in conversation history.
See Secure Vault for details on storing and managing secrets manually.
List Secrets (vault_list)
List all available secret names in the vault.
Returns only the names of secrets, never their values. The agent can use this to discover what credentials are available.
Save Secret (vault_save)
Request the user to securely input a new secret.
| Parameter | Type | Description |
|---|---|---|
keys |
array | List of secret names to request |
key |
string | Single secret name (deprecated) |
When called, the user receives a secure prompt to input the secret value. The value:
- Is encrypted using your system keychain
- Never appears in chat history
- Is never sent to the LLM provider
- Can be used immediately in subsequent tool calls via
{{vault:SECRET_NAME}}
Example: An agent deploying an application might call vault_save to securely request AWS credentials if they're not already stored.
Agent Management Tools
Spawn Agent (agent_spawn)
Create a new sub-agent to delegate work.
| Parameter | Type | Description |
|---|---|---|
name |
string | Name for the sub-agent |
prompt |
string | Initial instructions |
objective |
string | What the sub-agent should accomplish |
Returns the sub-agent ID. The parent waits for the sub-agent to complete.
Message Agent (agent_message)
Send a message to any agent in the system.
| Parameter | Type | Description |
|---|---|---|
recipient_id |
string | Target agent ID |
content |
string | Message content |
Messages wake up idle agents. Use agent_list to discover agent IDs.
List Agents (agent_list)
List all agents in the system with their hierarchy.
Returns a tree view showing:
- Agent IDs and names
- Current state (running, idle, etc.)
- Parent/child relationships
Delete Agent (agent_delete)
Permanently delete an agent.
| Parameter | Type | Description |
|---|---|---|
sub_agent_id |
string | Agent to delete |
Removes the agent, its logs, and workspace. Irreversible.
Rename Agent (agent_rename)
Change an agent's name.
| Parameter | Type | Description |
|---|---|---|
name |
string | New name |
Compact Context (agent_context_compact)
Compress conversation history to free token space.
| Parameter | Type | Description |
|---|---|---|
summary |
string | Optional custom summary |
Useful for long-running agents approaching token limits.
Scheduling Tools
Schedule Once (schedule_once)
Schedule a one-time task for future execution.
| Parameter | Type | Description |
|---|---|---|
name |
string | Name for the task |
prompt |
string | Message to send when triggered |
trigger_at |
string | ISO 8601 timestamp |
target_agent_id |
string | Target agent (optional, defaults to self) |
List Schedule (schedule_list)
List pending scheduled tasks.
Cancel Schedule (schedule_cancel)
Cancel a scheduled task.
| Parameter | Type | Description |
|---|---|---|
task_id |
string | ID of the task to cancel |
Trigger Tools
Create Script Trigger (create_script_trigger)
Create a local script trigger that runs on poll or daemon mode.
| Parameter | Type | Description |
|---|---|---|
name |
string | Unique trigger name (required) |
mode |
string | poll or daemon (required) |
script |
string | Bash script content (required) |
description |
string | What the trigger monitors |
interval |
string | Poll interval, e.g., "5m" (poll mode only) |
cooldown |
string | Throttle time, e.g., "30s" (daemon mode only) |
env |
object | Environment variables. Use {{vault:SECRET}} for secrets |
List Script Triggers (list_script_triggers)
List all script triggers with their status (enabled/disabled).
Delete Script Trigger (delete_script_trigger)
Delete a script trigger.
| Parameter | Type | Description |
|---|---|---|
name |
string | Trigger name to delete |
Create Webhook (create_webhook)
Create a webhook URL for external services. Requires Fleet Gateway connection.
| Parameter | Type | Description |
|---|---|---|
name |
string | Descriptive name for the webhook |
Returns the webhook URL to give to external services.
List Webhooks (list_webhooks)
List all webhooks created by the agent.
Delete Webhook (delete_webhook)
Delete a webhook.
| Parameter | Type | Description |
|---|---|---|
webhook_id |
string | Webhook ID to delete |
List Triggers (trigger_list)
List all available triggers in the system.
Subscribe (trigger_subscribe)
Subscribe the agent to a trigger.
| Parameter | Type | Description |
|---|---|---|
trigger_name |
string | Trigger name (use webhook:<name> for webhooks) |
prompt_template |
string | Template with {{output}} placeholder |
Unsubscribe (trigger_unsubscribe)
Remove a trigger subscription.
| Parameter | Type | Description |
|---|---|---|
subscription_id |
string | Subscription to remove |
List Subscriptions (trigger_subscriptions)
List current trigger subscriptions for the agent.
Planning Tools
Update Planning Document (update_planning_document)
Update the planning document during plan mode.
| Parameter | Type | Description |
|---|---|---|
content |
string | New document content |
explanation |
string | Explanation of changes |
Finalize Plan (finalize_plan)
Mark the planning session as complete and ready for user approval.
| Parameter | Type | Description |
|---|---|---|
summary |
string | Brief 1-2 sentence description of the plan |
Signals that the plan document is complete and ready for the user to review and approve before execution begins.
User Interaction Tools
User Question (user_question)
Ask the user one or more questions.
| Parameter | Type | Description |
|---|---|---|
questions |
array | List of questions |
Each question has:
id— Unique identifiertext— Question texttype— Question type (single_choice,multiple_choice,text)options— Available choices (for choice types)
Returns the user's answers.
Provider Tools
Check Provider Status (check_provider_status)
Check the status of AI providers.
Returns information about which providers are configured and available.
Workspace Search
Grep (Grep)
Search for patterns in workspace files.
| Parameter | Type | Description |
|---|---|---|
pattern |
string | Pattern to search for |
path |
string | File or directory path (optional) |
context_lines |
number | Lines of context before/after matches |
max_matches |
number | Maximum matches to return |
History Tools
Search History (search_history)
Search the agent's conversation history.
| Parameter | Type | Description |
|---|---|---|
query |
string | Search query |
Returns matching messages from the conversation history.
Tool Results Storage
When tools produce large outputs, the results are automatically saved to disk in the agent's workspace under a tool_results folder. This includes:
- Large file reads
- Web page fetches
- Search results
- Screenshot captures
- Command outputs
This keeps the chat history lean while preserving full access to tool outputs in the workspace.
Batch Operations
Many tools support batch operations for efficiency:
Read multiple workspace files:
Read({ paths: [
{ id: "1", path: "file1.txt" },
{ id: "2", path: "file2.txt" }
]})
Execute commands in parallel:
Bash({ commands: ["npm test", "npm run lint"] })
Execute commands sequentially:
Bash({
commands: ["npm install", "npm build"],
sequential: true
})
Tool Permissions & Access Control
Tools are controlled by the execution mode (see Security & Permissions):
| Mode | Tools Available |
|---|---|
| Restricted | Bash (safe commands), Read, List, Screenshot, Browser (view only) |
| Read-Only | Above + Grep, WebFetch, WebSearch |
| Read/Write | Above + Write, Delete, agent tools, vault, schedule, triggers |
Custom Permission Rules
Beyond execution modes, you can create custom allow lists to fine-tune tool access. Use custom rules to:
- Expand permissions — Allow specific tools in restricted modes (e.g., allow
npmcommands in Restricted) - Restrict operations — Deny specific tools even in Open mode (e.g., prevent file deletion)
- Pattern matching — Allow tools only for specific paths or commands
See Custom Permission Rules for details on creating rules.
Tool Approval
Tools requiring approval will pause the agent and prompt you before executing. You can approve once, always allow (which creates a rule), or deny the operation.
MCP Tools
When MCP (Model Context Protocol) servers are connected, their tools become available to agents. MCP tools are prefixed with the server name:
mcp_<server>_<tool>
Examples:
mcp_github_create_issue— Create a GitHub issuemcp_filesystem_read_file— Read a file via filesystem servermcp_postgres_query— Query a PostgreSQL database
Configuring MCP Access
Control which MCP servers and tools agents can access in their AGENT.md:
mcp_servers:
- github
- filesystem
mcp_permissions:
github:
allowed_tools: ["*"]
denied_tools: ["delete_repo"]
mcp_approval_required:
- github_merge_pr
Common MCP Servers
| Server | Tools | Description |
|---|---|---|
| github | search_code, create_issue, get_pull_request, etc. |
GitHub API access |
| filesystem | read_file, write_file, list_directory |
File system access |
| postgres | query, list_tables, describe_table |
PostgreSQL database |
| slack | send_message, list_channels |
Slack messaging |
See MCP Servers for full configuration details.
Git Hook Tools
When agents are triggered by git hooks, they receive context about the git operation:
| Context Field | Description |
|---|---|
changed_files |
Files changed in the commit/push |
commit_msg |
Commit message (for commit hooks) |
branch |
Current branch name |
remote |
Remote name (for push hooks) |
Agents can use standard Bash commands with git:
git diff --cached
git log --oneline -5
git status
See Trigger Types - Git Hook for configuration.
File Watcher Context
When agents are triggered by file watchers, the trigger output contains:
| Field | Description |
|---|---|
path |
Path to the changed file |
event |
Type of change (created, modified, deleted) |
Access via the {{output}} template variable in trigger bindings.
See Trigger Types - File Watcher for configuration.