# 5. Справочник инструментов

🔵 Инструменты — это YAML-файлы в `config/agents/<agent>/tools/`. Поле `kind:`
выбирает движок. Ниже — сводная таблица всех движков со ссылками на разделы,
чтобы не читать лишнего.

## Таблица движков

| Движок | Что делает | Раздел |
|---|---|---|
| [`site_tool`](05-tools-data.md#54-site_tool) | HTTP-скрап + извлечение полей + формат | [Сбор и поиск данных](05-tools-data.md) |
| [`archive_tool`](05-tools-data.md#55-archive_tool) | поиск по локальному архиву | [Сбор и поиск данных](05-tools-data.md) |
| [`json_tool`](05-tools-data.md#56-json_tool) | поиск по предзагруженному JSON | [Сбор и поиск данных](05-tools-data.md) |
| [`rss_tool`](05-tools-data.md#57-rss_tool) | поиск по RSS-лентам | [Сбор и поиск данных](05-tools-data.md) |
| [`pdf_tool`](05-tools-data.md#58-pdf_tool) | чтение PDF постранично | [Сбор и поиск данных](05-tools-data.md) |
| [`geo_tool`](05-tools-data.md#515-geo_tool) | геокодинг и места (OpenStreetMap) | [Сбор и поиск данных](05-tools-data.md) |
| [`state_tool`](05-tools-state.md#511-state_tool) | хранилище состояния со скоупом | [Состояние, базы и визуализация](05-tools-state.md) |
| [`duckdb_tool`](05-tools-state.md#517-duckdb_tool) | своя DuckDB-база для агента | [Состояние, базы и визуализация](05-tools-state.md) |
| [`chart_tool`](05-tools-state.md#512-chart_tool-и-table_tool) / [`table_tool`](05-tools-state.md#512-chart_tool-и-table_tool) | статичные график/таблица | [Состояние, базы и визуализация](05-tools-state.md) |
| [`visualize_tool`](05-tools-state.md#513-visualize_tool) | графики/таблицы из произвольных данных | [Состояние, базы и визуализация](05-tools-state.md) |
| [`script_tool`](05-tools-compute.md#510-script_tool) | скрипт Rhai или JavaScript | [Вычисления и действия](05-tools-compute.md) |
| [`subagent_tool`](05-tools-compute.md#514-subagent_tool) | делегировать задачу субагенту | [Вычисления и действия](05-tools-compute.md) |
| [`email_tool`](05-tools-compute.md#516-email_tool) | отправить письмо (SMTP) | [Вычисления и действия](05-tools-compute.md) |
| [`vk_tool`](05-tools-compute.md#517-vk_tool) | вызов VK API от имени сообщества (посты, сообщения, поиск) | [Вычисления и действия](05-tools-compute.md) |
| [`shell_tool`](05-tools-compute.md#518-shell_tool) | запустить команду CLI | [Вычисления и действия](05-tools-compute.md) |
| [`workflow_tool`](05-tools-compute.md#519-workflow_tool) | запустить воркфлоу | [Вычисления и действия](05-tools-compute.md) |
| [`file_tool`](05-tools-compute.md#520-file_tool) | отправить файл пользователю | [Вычисления и действия](05-tools-compute.md) |
| [`trace_tool`](05-tools-observe.md#59-trace_tool) | запросы к трейсам агентов | [Наблюдение и отладка](05-tools-observe.md) |
| `http_fetch` / `fs_read` / `job_done` | встроенные инструменты | [Основы](05-tools-core.md#53-встроенные-инструменты) |
| общие поля, `ui`, блоки, `warnings` | общая механика YAML | [Основы](05-tools-core.md#51-общие-поля) |
| шаблоны и переменные | MiniJinja | [Основы](05-tools-core.md#52-шаблоны-и-переменные) |
| локальное тестирование | `site_tool <yaml> '<args>'` | [Наблюдение и отладка](05-tools-observe.md#521-тестирование-локально) |

## Разделы

- [Основы](05-tools-core.md) — общие поля, шаблоны, встроенные инструменты.
- [Сбор и поиск данных](05-tools-data.md) — `site_tool`, `archive_tool`,
  `json_tool`, `rss_tool`, `pdf_tool`, `geo_tool`.
- [Состояние, базы и визуализация](05-tools-state.md) — `state_tool`,
  `duckdb_tool`, `chart_tool`/`table_tool`, `visualize_tool`.
- [Вычисления и действия](05-tools-compute.md) — `script_tool`,
  `subagent_tool`, `email_tool`, `vk_tool`, `shell_tool`, `workflow_tool`, `file_tool`.
- [Наблюдение и отладка](05-tools-observe.md) — `trace_tool`, локальное
  тестирование.
