Перейти к содержанию

Прикреплять файлы к документам

Результат

Скриншоты, записи экрана, PDF, файлы Office и ZIP-архивы хранятся в самом документе, а не на CDN чужого сервиса. Картинки и видео видны в тексте — видео проигрывается на месте, — остальные файлы — ссылки на скачивание. Читатели публичной ссылки видят вложения той версии, которую им показывают.

Перед началом

  • Чтобы прикреплять файлы, нужна роль member или выше. Viewer их видит.
  • Один файл — не больше 120 МБ. Проект хранит до 20 ГБ вложений (оператор может изменить предел); один и тот же файл, прикреплённый дважды, хранится один раз.
  • AI-агенты прикрепляют файлы через MCP — см. раздел «Как агенту прикрепить файл» ниже.
  • Каждый файл до сохранения проверяет собственный антивирус сервера; во внешние сервисы файл не отправляется. Файл с вредоносным кодом не прикрепляется.

Прикрепить файл в редакторе

  1. Откройте документ и выберите Edit.
  2. Вставьте файл в текст (Ctrl+V / ⌘V) или перетащите его туда.
  3. Пока файл загружается, его место держит заглушка; для большого файла строка под текстом показывает, сколько уже загружено. Сохранение ждёт окончания загрузки.
  4. Когда загрузка закончится, заглушка станет ссылкой: ![имя](attachment://…) для картинки или видео, [имя](attachment://…) для любого другого файла.
  5. Выберите Save draft.

Предпросмотр показывает картинки, проигрывает видео и даёт ссылки на файлы так же, как документ.

Что можно прикрепить

Вид Типы Как показывается
Картинка PNG, JPEG, GIF, WebP картинкой
Видео MP4 (.mp4, .m4v), MOV, WebM видеоплеером
Документ PDF, Word (.docx), Excel (.xlsx), PowerPoint (.pptx) ссылкой на скачивание
Архив ZIP ссылкой на скачивание

Threadory определяет тип по содержимому файла, а не по имени:

  • имя должно совпадать с содержимым — картинка с именем .pdf или MP4 с именем .mov не принимаются;
  • SVG, HTML и текстовые файлы (CSV, TXT) не принимаются никогда;
  • файлы Office с макросами (.xlsm, .docm) не принимаются, в том числе переименованные в .zip;
  • видео проигрывается, только если браузер знает его кодек: MP4 с H.264 играет везде, .mov с HEVC с iPhone может не играть в Chrome.

Как агенту прикрепить файл

Агент, подключённый через MCP, не передаёт файл через разговор — это тратит его контекст и не работает ни для чего, кроме крошечных файлов. Вместо этого:

  1. Агент вызывает kb_prepare_attachment_upload с документом и именем файла и получает одноразовый адрес загрузки.
  2. Загружает файл одной командой, например curl -sS --fail-with-body -T screenshot.png '<upload_url>'. Адрес работает один раз и 30 минут; другого входа он не требует, поэтому его нельзя никому показывать.
  3. Вызывает kb_commit_attachment_upload и вставляет полученную ссылку в документ.

Если агент не может выполнять команды, он даст вам ссылку — см. следующий раздел.

Загрузить файл для агента

  1. Откройте ссылку, которую дал агент (…/attachments/upload/…). Если вы не вошли, вас попросят войти.
  2. Выберите файл или перетащите его на страницу. Полоса прогресса показывает загрузку.
  3. Когда загрузка закончится, вернитесь к агенту. Если сессию агента начали вы сами, страница сразу прикрепит файл и покажет ссылку на него; в любом случае агент закончит работу.

Страница работает только для участников проекта документа и только пока ссылка не истекла (30 минут).

Решение проблем

Что вы видите Почему Что делать
«The file is larger than 120 MB.» Предел одного файла Сожмите или разделите файл
«Only PNG, JPEG, … files can be attached.» Содержимое не относится к типам выше Сохраните файл в поддерживаемом формате
«The file's name doesn't match its contents» Расширение называет другой тип Переименуйте файл по его настоящему типу
«This project's storage for attachments is full.» Квота проекта исчерпана Попросите админа удалить неиспользуемые вложения или оператора — поднять квоту
«This upload link has expired.» / «was already used.» Ссылка загрузки работает один раз и 30 минут Попросите у агента новую
Агент сообщает too_many_open_uploads Не больше 5 незавершённых загрузок на человека и 20 на проект Пусть агент завершит (подтвердит) начатые загрузки, или подождите 30 минут, пока они истекут
«The server is receiving too many files right now» (или загрузка агента получает 429 too_many_uploads) Одновременно принимается лишь несколько файлов любого размера — на человека в редакторе, на адрес для ссылок загрузки и на весь сервер Повторите через несколько секунд (редактор сам повторяет в течение минуты); ничего не сохранилось. На странице загрузки просто выберите файл ещё раз; агент повторяет загрузку по той же ссылке
«The antivirus found malware in this file, so it was not attached.» Антивирус сервера нашёл известную угрозу (ссылка загрузки после этого израсходована) Не открывайте файл; возьмите чистую копию у источника. Если вы уверены, что файл чистый, сообщите оператору — возможно ложное срабатывание
«The file could not be checked by the antivirus — an encrypted (password-protected) archive or PDF, or an archive that is too large to check» Антивирус не может заглянуть в зашифрованный файл и при распаковке архива останавливается на пределе размера; файл, который нельзя проверить целиком, не прикрепляется Пришлите файл без пароля или разбейте очень большой архив на несколько. PDF, который открывается без пароля, проходит. ZIP или презентацию, где много фото или видео (больше примерно 60 МБ), антивирус не успевает проверить: прикрепите видео и фото напрямую — по отдельности они проверяются за секунды
«The file was not attached: the antivirus check is unavailable right now.» Антивирус не ответил, поэтому ничего не сохранилось — без проверки файлы не хранятся Повторите через несколько минут. Файл, отправленный по ссылке загрузки, остаётся принятым: агент прикрепит его, когда проверка снова заработает
Страница загрузки пишет «Checking … The antivirus check of a large file can take a few minutes.» Ответ не пришёл вовремя; теперь страница читает состояние загрузки Подождите на странице: она покажет вложение или причину отказа. Примерно через 5 минут она передаёт загрузку агенту
Видеоплеер есть, но видео не играет Браузер не поддерживает кодек Перекодируйте в MP4 с H.264