Инструменты (Tools)
Инструменты (Tools) — это функции, расширяющие возможности агента Hermes Agent. Встроенный реестр включает десятки инструментов: от поиска в интернете и работы с файлами до автоматизации браузера и управления умным домом. Все инструменты сгруппированы в логические наборы (toolsets), которые можно включать и отключать для каждой платформы.
Основные категории
- Веб (Web) —
web_search,web_extract: поиск в интернете и извлечение содержимого страниц. - Терминал и файлы —
terminal,process,read_file,patch: выполнение команд и манипуляции с файлами. - Браузер (Browser) —
browser_navigate,browser_snapshot,browser_vision: автоматизация браузера с текстовой и визуальной поддержкой. - Медиа (Media) —
vision_analyze,image_generate,text_to_speech: мультимодальный анализ и генерация. - Оркестрация агентов —
todo,clarify,execute_code,delegate_task: планирование и делегирование задач. - Память (Memory) —
memory,session_search: постоянная память и поиск по сессиям. - Автоматизация —
cronjob,send_message: запланированные задачи и отправка сообщений. - Интеграции — Home Assistant, MCP-серверы, RL-обучение.
Управление инструментами
Toolsets — это группы инструментов, которые можно включать и отключать. Управление выполняется через CLI:
# Интерактивный curses-интерфейс для включения/отключения
hermes tools
# Показать все инструменты и их статус
hermes tools list
# Включить конкретный toolset
hermes tools enable NAME
# Отключить конкретный toolset
hermes tools disable NAME
# Запуск с определёнными toolsets
hermes chat --toolsets "web,terminal"
Важно: изменения toolsets вступают в силу только после /reset (новая сессия). Они НЕ применяются в текущей беседе, чтобы сохранить prompt caching.
Полная таблица Toolsets
| Toolset | Что включает | По умолчанию |
|---|---|---|
web |
Поиск в интернете и извлечение содержимого (web_search, web_extract) |
вкл |
search |
Только веб-поиск (подмножество web) |
вкл |
browser |
Автоматизация браузера (Browserbase, Camofox или локальный Chromium) | вкл |
terminal |
Команды shell и управление процессами | вкл |
file |
Чтение, запись, поиск и патч файлов | вкл |
code_execution |
Изолированное выполнение Python | вкл |
vision |
Анализ изображений | вкл |
image_gen |
Генерация изображений ИИ | вкл |
tts |
Преобразование текста в речь | вкл |
skills |
Просмотр и управление навыками | вкл |
memory |
Постоянная кросс-сессионная память | вкл |
session_search |
Поиск по прошлым беседам | вкл |
delegation |
Делегирование задач субагентам (delegate_task) |
вкл |
cronjob |
Управление запланированными задачами | вкл |
clarify |
Задавать уточняющие вопросы пользователю | вкл |
messaging |
Отправка сообщений между платформами (send_message) |
вкл |
todo |
Планирование и отслеживание задач внутри сессии | вкл |
rl |
Инструменты обучения с подкреплением (Reinforcement Learning) | выкл |
moa |
Mixture of Agents — смешанная оркестрация моделей | выкл |
homeassistant |
Управление умным домом через Home Assistant | выкл |
Терминальные бэкенды
Инструмент terminal поддерживает несколько сред выполнения: local (по умолчанию), docker (изолированные контейнеры), ssh (удалённый сервер), singularity (HPC-контейнеры), modal (серверless), daytona и vercel_sandbox (облачные песочницы).
Конфигурация
Настройка выполняется в ~/.hermes/config.yaml:
terminal:
backend: local # или: docker, ssh, singularity, modal
cwd: "."
timeout: 180
Для контейнерных бэкендов настраиваются ресурсы (CPU, память, диск) и безопасность. Управление фоновыми процессами — через инструмент process с действиями list, poll, wait, log, kill.