Как передать файлы и документы Hermes Agent: все способы

Hermes Agent умеет работать с файлами и документами: PDF, Word, Excel, изображениями, архивами и таблицами. В этой статье — все способы передать файл агенту: через Telegram, Discord, Slack и WhatsApp, через терминал и рабочую папку, какие форматы поддерживаются, какие лимиты размеров действуют и как получить готовый файл обратно.

Что такое передача файлов в Hermes Agent

Передача файлов в Hermes Agent — это механизм, который позволяет пользователю отдавать агенту документы, изображения и данные для обработки, а агенту — возвращать готовые файлы обратно в чат. Работает она в двух направлениях: пользователь прикрепляет файл к сообщению в мессенджере или указывает путь к файлу на компьютере, а агент читает его встроенными инструментами и отвечает результатом — текстом, таблицей или готовым документом.

Hermes Agent — это открытый AI-агент от Nous Research (лицензия MIT), который запускается локально и умеет подключаться к более чем 20 мессенджерам: Telegram, Discord, Slack, WhatsApp, Signal и другим. Файлы для агента — такой же способ общения, как текст: вы можете скинуть ему договор в PDF и попросить найти ключевые условия, отдать Excel-таблицу для анализа или попросить построить график и вернуть его картинкой.

Какие форматы файлов понимает Hermes Agent

Агент читает документы через встроенный инструмент read_file, который автоматически конвертирует файл в читаемый текст (Markdown). Поддерживаемые форматы делятся на две группы: те, что работают всегда, и те, для которых конвертер доустанавливается автоматически при первом использовании.

Формат Расширения Конвертер Доступность
Jupyter-ноутбуки `.ipynb` Встроенный Всегда
Документы Word `.docx` Встроенный Всегда
Книги Excel `.xlsx` Встроенный Всегда
PDF `.pdf` `firecrawl-anydoc` Автоустановка при первом использовании*
Старые офисные форматы `.doc`, `.ppt`, `.xls`, `.pptx` `firecrawl-anydoc` Автоустановка при первом использовании*
OpenDocument `.odt`, `.ods`, `.odp` `firecrawl-anydoc` Автоустановка при первом использовании*
RTF и электронные книги `.rtf`, `.epub` `firecrawl-anydoc` Автоустановка при первом использовании*

\* Дополнительный конвертер firecrawl-anydoc устанавливается автоматически (лениво) при первом обращении к такому файлу, если в конфигурации config.yaml разрешены установки (security.allow_lazy_installs). Без него работают три встроенных формата — .ipynb, .docx, .xlsx, — а остальные файлы агент не сможет открыть и сообщит об этом.

Результат конвертации — текст в формате Markdown. Длинные документы агент читает постранично (как файлы в редакторе), а документы тяжелее 50 МБ отклоняет, чтобы не раздувать обработку.

Как передать файл через Telegram

Самый простой и популярный способ — отправить файл боту как обычное вложение. Если Hermes подключён к Telegram как бот, просто прикрепите файл к сообщению: PDF, фото, документ Word или архив. Бот скачает его и передаст агенту на обработку.

Что важно знать про Telegram:

  • Лимит размера — 20 МБ. Это ограничение самого Telegram Bot API: файлы больше 20 МБ бот скачать не сможет.
  • Текстовые файлы до 100 КБ (.md, .txt) подставляются прямо в текст сообщения — агент видит их содержимое мгновенно, без скачивания.
  • Голосовые сообщения распознаются автоматически — агент превращает их в текст (работают бэкенды local на базе faster-whisper, groq и openai).
  • Скачанные файлы попадают во временный кэш документа, который автоматически очищается через 24 часа.
  • Пример: вы отправляете боту файл dogovor.pdf с сообщением «Выпиши ключевые условия договора и даты платежей». Агент скачивает файл, открывает его через read_file, извлекает текст и отвечает структурированным результатом.

    Как передать файл через Discord, Slack и WhatsApp

    Hermes одинаково работает с файлами во всех популярных мессенджерах — механизм тот же: прикрепите файл к сообщению, и агент получит его. Отличаются только лимиты и способ скачивания:

  • Discord. Лимит вложения — 25 МБ (на серверах с бустом — 50–100 МБ). Бот скачивает файл через attachment.save() с CDN Discord.
  • Slack. Файлы скачиваются через API (files.info + авторизованный запрос). Лимиты Slack зависят от тарифа рабочего пространства.
  • WhatsApp. Работает через двухшаговое скачивание Graph API: бот получает ссылку на медиа, затем скачивает файл с токеном авторизации.
  • Signal, Matrix, Feishu и другие платформы из списка интеграций работают по тому же принципу.
  • Во всех случаях файл попадает во временный кэш документа на сервере, где запущен агент. Если вам нужно, чтобы файлы хранились постоянно, используйте способы из следующего раздела.

    Как передать файл через терминал и рабочую папку

    Если вы работаете с Hermes из терминала (команда hermes), передача файлов становится ещё проще: агент запущен на вашем компьютере или сервере и имеет доступ к файловой системе. Три рабочих способа:

  • Положить файл в рабочую папку агента. Рабочая папка (workspace) — это каталог, который агент считает «своим» (обычно ~/.hermes/workspace/). Положите туда файл и напишите агенту: «Открой report.xlsx из рабочей папки и посчитай итоги». Агент увидит файл сразу.
  • Указать абсолютный путь. В интерактивном чате напишите агенту полный путь к файлу: «Прочитай /home/user/documents/smeta.xlsx». Агент откроет его через read_file — так же, как открыл бы файл из чата.
  • Передать через командную строку. В CLI-режиме можно сразу запустить агента с задачей и указать путь к файлу в тексте запроса.
  • Отдельно стоит упомянуть команду hermes send — она отправляет файлы от агента в мессенджер, но использует тот же механизм MEDIA::

    hermes send --to telegram "MEDIA:/tmp/screenshot.png"
    hermes send --to telegram "График за сегодня MEDIA:/tmp/chart.png"
    hermes send --to discord:#ops "MEDIA:/tmp/report.pdf"
    

    Агент подставляет тег MEDIA: с путём к файлу, а шлюз (gateway) находит файл, забирает тег из текста и отправляет файл как нативное вложение платформы.

    Как агент читает PDF, сканы и изображения

    PDF — самый частый формат документов, поэтому стоит разобрать его отдельно. Агент извлекает из PDF только текстовый слой. Если документ сканированный (договоры, доверенности, факсы — типичные случаи), текстового слоя в нём нет, и страницы «превращаются в пустоту».

    Hermes не молчит об этом: если больше 20% документа или 10+ страниц не содержат текста, read_file выдаёт предупреждение о пробелах в извлечении с точными диапазонами страниц. Дальше два пути:

  • Несколько страниц — рендер + зрение. Агент конвертирует нужные страницы в картинки (например, командой pdftoppm -jpeg -r 150 -f 92 -l 94 document.pdf /tmp/page) и читает их vision-инструментом. Никаких дополнительных установок не нужно.
  • Много страниц — OCR. Для целых сканированных документов используется скилл ocr-and-documents на базе marker-pdf: распознаёт текст на 90+ языках, справляется с формулами и таблицами. Установка тяжёлая — около 3–5 ГБ, поэтому скилл подключают осознанно.
  • Изображения (JPG, PNG, WebP) агент не «конвертирует», а смотрит: в арсенале Hermes есть vision-инструменты, которые анализируют картинку, распознают текст на фото, таблицы и графики. Фото чека, скриншот ошибки, фотография документа — всё это можно отправить в чат и получить разбор.

    Как агент отдаёт файлы обратно

    Обратное направление — агент создаёт файл и отдаёт его вам — называется Deliverable Mode (режим артефактов). Когда Hermes работает внутри мессенджера (Slack, Discord, Telegram, WhatsApp, Signal), он может отдавать сгенерированные файлы прямо в чат как нативные вложения: график появится картинкой, PDF-отчёт — файлом для скачивания, таблица — как .xlsx.

    Как это работает: агент создаёт файл (инструментами execute_code для графиков matplotlib, скиллами docx, xlsx, pdf, image_generate для изображений, text_to_speech для аудио и т.д.), сохраняет его по абсолютному пути (/tmp/q3-revenue.png) и упоминает этот путь в ответе. Шлюз находит путь в тексте, убирает его из видимого сообщения и загружает файл как вложение. Пути внутри кодовых блоков игнорируются, чтобы не ломать примеры кода.

    Типы файлов и способ доставки:

    Категория Расширения Как доставляется
    Изображения `.png .jpg .jpeg .gif .webp .bmp .tiff .svg` Встроено в сообщение
    Видео `.mp4 .mov .avi .mkv .webm .3gp` Встроено (где поддерживается)
    Аудио `.mp3 .wav .ogg .opus .m4a .flac` Голосовое/аудио-вложение
    Документы `.pdf .docx .doc .odt .rtf .txt .md .epub` Файл для скачивания
    Данные `.xlsx .xls .ods .csv .tsv .json .xml .yaml .yml` Файл для скачивания
    Презентации `.pptx .ppt .odp .key` Файл для скачивания
    Архивы `.zip .tar .gz .tgz .bz2 .xz .7z .rar` Файл для скачивания
    Геоданные `.kmz .kml .geojson .gpx` Файл для скачивания

    Кстати, .py, .log и другие исходники намеренно исключены из автоотправки — код агент передаёт текстом в кодовых блоках, а не файлами.

    Чтобы агент чаще отдавал файлы, а не просто текст, достаточно прямо просить: «верни результат таблицей CSV», «сделай график по этим данным» или «оформи отчёт в PDF». В многоагентном режиме Kanban сотрудники могут прикреплять готовые файлы прямо к уведомлению о завершении задачи — человек получает и результат, и файл в одном сообщении.

    Какие лимиты нужно знать

    Где Лимит Комментарий
    Telegram (входящие) 20 МБ Ограничение Telegram Bot API
    Discord (входящие) 25 МБ 50–100 МБ на бустнутых серверах
    Чтение документов 50 МБ Документы тяжелее отклоняются
    Текстовые файлы в Telegram 100 КБ `.md` и `.txt` вставляются прямо в текст
    Временный кэш файлов 24 часа Файлы из чатов очищаются автоматически
    Cloudflare Quick Tunnel 100 МБ на файл Для будущей функции `/upload`

    Большие файлы (видео, тяжёлые архивы) лучше не отправлять в чат, а положить в рабочую папку агента на сервере или передать по ссылке — агент может скачать файл по URL через браузерные инструменты. Подробнее про работу агента с веб-страницами — в статье «Hermes Agent и браузер: как агент работает с веб-страницами».

    Если вам нужна загрузка крупных файлов «из ниоткуда» (например, с телефона на удалённый сервер), обратите внимание: функция /upload с временным туннелем (cloudflared Quick Tunnel, до 100 МБ на файл, ссылка живёт 5 минут) предложена сообществом в марте 2026 года как feature-запрос на GitHub (issue #532) и находится в разработке. Пока она не вышла, используйте рабочую папку или облако.

    Как передать файл агенту: пошаговая инструкция

    Шаг 1. Выберите способ передачи.

  • В мессенджере (Telegram, Discord, Slack): просто прикрепите файл к сообщению.
  • В терминале: положите файл в рабочую папку агента или укажите полный путь.
  • Через облако: если файл лежит в Google Drive или Notion, подключите сервис через MCP — и агент получит доступ к файлам без скачивания.
  • Шаг 2. Сформулируйте задачу.

    Не пишите просто «файл приложил». Конкретика ускоряет работу в разы: «Найди в договоре даты платежей и штрафы за просрочку», «Посчитай в таблице средний чек по месяцам», «Сделай из этих данных график и верни картинкой». Если документ сканированный, предупредите: «Это скан, возможно, понадобится OCR».

    Шаг 3. Проверьте результат и попросите файл обратно.

    Агент ответит текстом — а если попросить, вернёт результат файлом: таблицей CSV, отчётом PDF или графиком PNG. Готовый файл придёт прямо в чат как вложение.

    FAQ

    Можно ли передать Hermes Agent файл PDF?

    Да. Отправьте PDF в чат (Telegram, Discord, Slack) или укажите путь к файлу в терминале. Агент извлечёт текстовый слой через read_file. Если PDF сканированный, потребуется OCR — для нескольких страниц агент сконвертирует их в картинки и прочитает зрением, для целых документов подключит скилл ocr-and-documents.

    Какой максимальный размер файла можно передать?

    В Telegram — 20 МБ (лимит Bot API), в Discord — 25 МБ. Документы для чтения не должны превышать 50 МБ. Крупные файлы лучше класть в рабочую папку агента на сервере или передавать по ссылке.

    Куда сохраняются файлы, отправленные в чат?

    Во временный кэш документа на сервере, где запущен агент. Кэш автоматически очищается через 24 часа, поэтому важные файлы стоит сразу попросить агента сохранить в рабочую папку или в постоянное хранилище.

    Как получить от агента готовый файл?

    Попросите прямо: «верни результат таблицей», «сделай PDF-отчёт», «построй график». Агент создаст файл и отдаст его в чат как нативное вложение через Deliverable Mode. Через CLI можно отправить файл командой hermes send --to telegram "MEDIA:/путь/к/файлу".

    Поддерживает ли Hermes голосовые сообщения?

    Да. В Telegram голосовые сообщения автоматически распознаются в текст (локальный faster-whisper, Groq или OpenAI), а ответы агент может озвучить и вернуть голосовым сообщением. Подробнее — в статье «Hermes Agent и голосовой помощник: как настроить озвучку ответов».

    Куда двигаться дальше

  • Память AI-агента: как Hermes запоминает контекст между сессиями — куда агент складывает знания из ваших документов
  • Плагины Hermes Agent: как расширить функционал агента — дополнительные инструменты для работы с файлами
  • MCP-протокол в Hermes: подключение внешних инструментов и сервисов — доступ к Google Drive, Notion и другим хранилищам
  • Hermes Agent и Google Sheets: работа с таблицами и данными — если данные живут в Google-таблицах
  • Как подключить Telegram-бота к Hermes и автоматизировать общение — настройка бота для приёма файлов
  • Hermes Agent и электронная почта: автоматизация email-переписки — приём документов по почте