# Tools Reference

The following tools can be specified in the `tools.list` field of an agent YAML. Use `allowlist` mode to restrict an agent to only the tools it needs.

***

### Filesystem

| Tool                           | Description                               |
| ------------------------------ | ----------------------------------------- |
| `read_file`                    | Read the contents of a file in the repo   |
| `write_file`                   | Write or overwrite a file in the repo     |
| `search_files_and_directories` | List and navigate the repo file structure |
| `ripgrep_search`               | Fast text search across files             |

***

### Web

| Tool                  | Description                            |
| --------------------- | -------------------------------------- |
| `execute_web_search`  | Search the web for current information |
| `extract_url_content` | Fetch and read the content of a URL    |
| `perplexity_search`   | AI-powered web search via Perplexity   |

***

### SQL & Terminal

| Tool                                    | Description                                         |
| --------------------------------------- | --------------------------------------------------- |
| `run_sql_query`                         | Execute a SQL query against the connected warehouse |
| `run_terminal_command`                  | Run a shell command (e.g. dbt™ commands)            |
| `get_snowflake_query_performance_stats` | Deep-dive into a specific Snowflake query by ID     |
| `get_bigquery_query_performance_stats`  | Deep-dive into a specific BigQuery job by its ID    |

***

### Orchestration

| Tool                    | Description                                         |
| ----------------------- | --------------------------------------------------- |
| `invoke_agent`          | Spawn a child agent defined in `agents_squad`       |
| `notify_parent_session` | Wake a parent agent waiting on a callback           |
| `run_subagent`          | Run a lightweight sub-task without a full agent pod |

***

### Integrations

| Tool                  | Description                                       |
| --------------------- | ------------------------------------------------- |
| `post_slack_message`  | Post a message to a Slack channel                 |
| `get_linear_issue`    | Read a Linear issue (requires Linear integration) |
| `list_bolt_schedules` | List Bolt schedules in the workspace              |
| `get_bolt_run_logs`   | Fetch logs from a Bolt run                        |

***

### Data Warehouse

Warehouse tools are automatically available based on your workspace's connected data warehouse. Supported warehouses:

* Snowflake
* BigQuery
* Redshift
* Databricks
* Trino
* SQL Server
* ClickHouse
* Microsoft Fabric

***

### Related

* [YAML Configuration](/app-help/products/dino-ai/programmable-agents/yaml-configuration.md) — How to use `tools.mode` and `tools.list`
* [Agent-to-Agent Delegation](/app-help/products/dino-ai/programmable-agents/agent-to-agent-delegation.md) — Using `invoke_agent` and `notify_parent_session`
* [Examples](/app-help/products/dino-ai/programmable-agents.md)  — See tutorials on how to get started deploying agents


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.paradime.io/app-help/products/dino-ai/programmable-agents/tools-reference.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
