Файлы
Как EVA хранит файлы чатов и пространств, как модель с ними работает и как файлы ходят между EVA и внешними MCP-сервисами по ссылкам.
Хранение
- Метаданные файла в базе: путь относительно корня чата или пространства и метка вида.
- Содержимое на диске:
SESSION_FILES_DIR/<чат или spaces/<пространство>>/<путь>. - Метки
upload,working,artifactнужны только интерфейсу. Подпапок по видам нет, путь в пределах чата уникален, повторная запись перезаписывает файл. - Загрузка через API: до 1 ГБ, исполняемые файлы отклоняются.
- Читать файлы чужого чата нельзя.
Инструменты модели
| Инструмент | Что делает |
|---|---|
list_workspace_files, get_file_info | Список и сведения |
read_text, search_text, grep_workspace | Чтение и поиск |
write_file, replace_in_file, insert_text, delete_text, apply_patch | Запись и правка |
download_url | Скачать файл по ссылке в пространство |
upload_url | Отправить файл из пространства по ссылке |
В облаке модель не выходит за пределы дерева чата или пространства. В локальном режиме относительные пути ведут в пространство, абсолютные на диск пользователя.
Обмен с MCP по ссылкам
В 2.1 у MCP нет доступа к хранилищу EVA. Сервис выдаёт ссылки, а файл переносит сама EVA.
upload_urlпо умолчанию отправляетPOST multipartс полемfile. Для хранилищ в стиле S3 есть режимrawсPUT.- Файл передаётся потоком с диска, без загрузки целиком в память.
- Если сервис стоит за другим адресом, EVA может передать ему
X-Public-Base-Url, чтобы ссылки были абсолютными и правильными.
Desktop и облачные сервисы
Локальная EVA может не видеть сервис, доступный только из облачного контура. Тогда download_url и upload_url идут через файловый прокси облака с флагом viaCloud. При ошибке соединения EVA сама пробует противоположный режим: прямой или через облако.
Предпросмотр
Текст, Markdown, картинки, PDF и BPMN открываются в интерфейсе. Документы Office в облаке открываются через OnlyOffice: Document Server получает файл по короткоживущему токену, срок которого задаётся в настройках платформы.