Skip to content

AI — ассистент, агенты, фоновые задачи, модели и MCP ​

Простыми словами: группа в боковом меню называется AI Studio. Обзор — её главная страница: схема того, из чего складывается агент, как им пользуются и чего в этом пространстве не хватает, плюс максимум три следующих шага. Чат — где ты разговариваешь с (обычным) агентом. Агенты — список AI-исполнителей пространства; каждый либо обычный (чат), либо по расписанию (фон), и никогда и то, и другое — см. Обычный агент или по расписанию — и у каждого своя страница со всеми его настройками. Запуски — то, что выполнялось без тебя. Настройки AI держат общее для всех агентов пространства: провайдеров моделей, для которых подключён свой ключ (Модели), внешние инструменты, которые агентам можно выдать (Подключения), и во что всё это обошлось (Расход).

Переименовано и перегруппировано дважды: «Модели» и «Подключения» переехали в Настройки AI 09.09.2026 (/org/:slug/models и /org/:slug/mcp продолжают работать — они редиректят); Обзор появился, а «Задачи» стали Запусками 16.09.2026 — после того как первый честный обход раздела показал пять пунктов меню, названных по внутренним таблицам, которые ничего не говорили о том, что с чем связано.

Всё здесь ограничено одним рабочим пространством. Агент, чат, MCP-подключение и ключ провайдера принадлежат тому пространству, в котором были созданы, и из другого не видны — с одним исключением, помеченным значком Платформенный в списке агентов: это встроенные агенты, которые платформа даёт каждому пространству.

AI работает в отдельном приложении (apps/intelligence), а не в core-api. Оно никогда не решает само, что тебе можно видеть: оно спрашивает у core-api «что этому человеку разрешено в этом пространстве» и применяет ответ. Именно поэтому права ниже выглядят как обычные права рабочего пространства, хотя ни один роут core-api их не проверяет — см. Модель прав.

Как сделать... ​

Сгруппировано так же, как технические разделы ниже — иконка помощи каждой страницы ведёт прямо в свою группу, а не во весь этот список.

Обзор ​

Понять, как это устроено — AI Studio → Обзор. Главная страница раздела — схема, а не список: из модели и подключённых инструментов складывается агент; чат, разовая задача и расписание — три способа его использовать; на выходе получаются запуски. В каждом блоке написано, что в этом пространстве есть сейчас, а клик открывает страницу, где это меняют.

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

Понять, что делать дальше — под схемой блок «Что можно сделать сейчас» превращает то же состояние в максимум три действия, самое срочное первым: сначала упавший запуск, потом недостающая часть, потом просто спросить ассистента. Шаг, на который у тебя нет прав, не показывается вовсе.

Ассистент ​

Спросить что-нибудь — Ассистент в боковом меню → набери текст в поле внизу → Enter. Ответ печатается по мере генерации; кнопка со стрелкой на это время превращается в кнопку остановки, и нажатие на неё сохраняет всё, что уже пришло.

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

Прикрепить фото — скрепка в поле сообщения. Только изображения и только в чате — фоновая задача принимает текстовую инструкцию. Будет ли картинка реально учтена, зависит от модели, на которой работает текущий агент.

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

Начать новый чат или вернуться к старому — список чатов слева. На телефоне это выдвижная панель: значок панели слева вверху чата открывает её. У каждого чата своя история, + создаёт пустой.

Переименовать или удалить чат — строка чата в этом списке.

Очистить переписку — значок корзины справа вверху. Он очищает то, что на экране, для текущего чата; удаление самого чата — это действие в строке списка выше.

Агенты ​

Создать агента — Агенты → + (на телефоне — меню ⋮ → Создать агента). Первый вопрос формы — какого агент типа: см. Обычный агент или по расписанию ниже, позже это не поменять. См. гайд по полям.

Начать с готового агента — Агенты → вкладка Готовые агенты, рядом с Ваши агенты. Три, которые работают с доской команды: ночная сводка по проектам, разбор задач, созданных со вчера, и наблюдатель за задачами, к которым неделю никто не притрагивался. Вкладка, а не пункт меню + (16.09.2026): за «плюсом» никто не понимал, что ему предлагают, а тот, который никто не открывает, всё равно что не существует. Использовать заполняет обычную форму создания — вместе с инструкциями, типом и расписанием — и ничего не создаёт, пока не нажать Создать агента: сначала читаешь, что именно агенту сказано, и только потом он появляется.

Обычный агент или по расписанию — выбор один раз и навсегда ​

Каждый агент — одного из двух типов, выбранного на форме создания и зафиксированного навсегда (24.09.2026):

  • Обычный агент — отвечает в чате. Никогда не может быть поставлен на расписание и никогда не появится на странице Запуски — ни разово, ни регулярно.
  • Агент по расписанию — противоположное разделение, а не надмножество: он работает сам, вручную или по таймеру, и никогда не предлагается в чате — кнопки «Поговорить» нет нигде, ни на карточке, ни на его странице. При создании task prompt становится обязательным (это единственная инструкция, которую он получит, когда никто не смотрит), а первое расписание создаётся тем же шагом — агент по расписанию можно поставить на паузу, но нельзя оставить без единого расписания: тогда не осталось бы того, что делает его этим типом.

Третьего варианта нет, и превратить один тип в другой нельзя; если обычному агенту вдруг понадобилось работать без присмотра, его придётся создать заново — уже по расписанию.

Открыть агента — нажми на карточку. Всё про одного агента живёт на его собственной странице: Обзор (каким он настроен, только чтение) и Конфигурация (все настройки) — и, только у агента по расписанию, третья вкладка, Запуски (что он делал). Вкладка входит в адрес — по ссылке страница откроется сразу на ней.

Изменить любую настройку — страница агента → Конфигурация. Пять блоков, каждый сохраняется сам по себе: Название и описание, Поведение, Модель, Инструменты, Эталонные изображения — и шестой, Автоматизация (само расписание и то, что возвращает запуск), только у агента по расписанию: у обычного агента там просто нечего настраивать. На широком экране список слева перепрыгивает между ними.

Дать агенту рисунок — форма создания или Конфигурация → блок с названием → Загрузить рисунок. Необязательно: агент без рисунка носит цвет и знак, выведенные из него самого, так что список агентов в любом случае не выглядит рядом одинаковых роботов.

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

Изменить то, что сказано агенту — Конфигурация → Поведение. Инструкции — это то, что модель читает перед каждым ответом, и в чате, и в фоновом запуске. Task prompt — инструкция по умолчанию для запуска, начатого без своей; в чате не используется, а если оставить его пустым, каждый фоновый запуск должен приносить инструкцию с собой.

Сменить модель — Конфигурация → Модель. Выбрать можно любую модель, даже ту, для которой пространство ещё не подключило ключ — это законная заготовка на будущее, а не ошибка; селектор просто подпишет её — нужен ключ. Под селектором — свойства самой модели: провайдер, умеет ли читать изображения, цена за миллион токенов. Они одинаковы во всех рабочих пространствах и задаются в каталоге платформы, а не здесь; ключи провайдеров живут в Настройках AI и никогда не на агенте.

Настроить, как именно отвечает модель — Конфигурация → Модель → Параметры генерации, под селектором. Temperature, Top P и Максимум токенов ответа — показываются только те, что принимает текущая модель: переключишься на модель, которая что-то из этого отклоняет, — поле исчезнет вместе с сохранённым значением, а не уйдёт к провайдеру и не вернётся ошибкой. Пустое поле — значит используется значение модели по умолчанию.

Дать агенту доступ к инструменту — Конфигурация → Инструменты → отметь подключения, которыми ему можно пользоваться → Сохранить. Это намеренно делается для каждого агента отдельно: подключение MCP-сервера к пространству не раздаёт его всем агентам (см. MCP-подключения). Блок ниже перечисляет то, что любой агент умеет и без настройки.

Закрепить эталонные изображения — Конфигурация → Эталонные изображения → Добавить эталонное изображение. Картинки, с которыми агент сравнивает каждое новое присланное фото: выкладка на полке, правильная упаковка продукта. Сохраняются сразу при добавлении. Если выбранная модель не умеет читать изображения, блок так и говорит — закреплённое до неё просто не дойдёт.

Выбрать, что возвращает фоновый запуск — у агента по расписанию Конфигурация → Автоматизация → Структурированный результат. Оставить Свободный текст — результатом запуска будет то, что агент написал; выбрать форму — запуск вернёт заполненные поля, а это и есть разница между результатом, который может прочитать другая система, и результатом, который приходится читать человеку.

Добавить ещё одно расписание или изменить существующее — у агента по расписанию Конфигурация → Автоматизация → Добавить время, либо ⋮ у уже добавленного. Переключатель в строке ставит одно расписание на паузу, не удаляя его — но последнее расписание у агента этого типа удалить нельзя, только поставить на паузу: агент такого типа не может остаться совсем без расписаний.

Удалить агента — страница агента → ⋮ → Удалить, либо меню ⋮ на карточке в списке.

Поговорить с агентом — ⋮ на карточке → Поговорить, либо Поговорить с этим агентом на его странице — только у обычного агента. У агента по расписанию такой кнопки нет нигде: он не создан отвечать в живом разговоре — по типу, а не по недосмотру.

Что можно у платформенного агента ​

Карточка со значком Платформенный — это агент, которого платформа выдаёт каждому пространству: один общий агент, а не копия на организацию. Он обычного типа — общий агент не может владеть расписанием (см. Что нельзя изменить и почему) — поэтому у его страницы только Обзор, где видно, как он настроен: ни вкладки «Конфигурация», ни вкладки «Запуски». Изменить отсюда ничего нельзя и удалить тоже: API отказывает в этих записях для платформенного агента, потому что правка одной организации легла бы на всех. Говорить с ним можно как с любым обычным агентом.

Но бесхозным он не является. Его название, инструкции и модель настраивает администратор платформы в разделе «Администрация платформы» → AI-ассистенты (как), а у кого есть право platform:ai_assistants:read, тот получает ссылку на неё прямо с этой страницы — Настроить, если право менять есть, и Открыть его настройки, если можно только смотреть. Каждое такое изменение пишется в журнал аудита платформы, потому что ложится сразу на все пространства.

Какие настройки существуют ​

Всё, что у агента есть, и ничего, чего нет.

НастройкаГдеЧто делает
ТипТолько форма созданияОбычный или по расписанию — см. Обычный агент или по расписанию. Навсегда.
Название, ОписаниеКонфигурация → Название и описаниеКак люди узнают агента. Модели не отправляется.
ИнструкцииКонфигурация → ПоведениеТо, что модель читает перед каждым ответом. Обязательно.
Task promptКонфигурация → ПоведениеИнструкция для фонового запуска. Обязательна у агента по расписанию; в чате не используется.
МодельКонфигурация → МодельКакая модель отвечает. Из каталога платформы или своя, пространства.
Параметры генерацииКонфигурация → МодельTemperature, Top P, максимум токенов ответа. Показаны только те, что принимает текущая модель. Пусто — по умолчанию модели.
MCP-подключенияКонфигурация → ИнструментыКакими подключениями пространства этот агент может пользоваться. По умолчанию — никакими.
Эталонные изображенияКонфигурация → Эталонные изображенияКартинки, с которыми сравнивается каждое новое фото. Нужна модель, умеющая читать изображения.
Структурированный результатКонфигурация → АвтоматизацияВ какой форме фоновый запуск возвращает результат. Только у агента по расписанию.
РасписанияКонфигурация → АвтоматизацияКогда он запускается сам — минимум одно, всегда. Только у агента по расписанию.

При создании обычного агента спрашиваются Тип, Название, Описание, Инструкции и Модель — пять вещей, без которых его не бывает. При создании агента по расписанию — то же самое, плюс task prompt и его первое расписание, прямо на той же форме: оба создаются вместе с агентом, одним шагом, чтобы он не остался без чего-то из этого.

Запуски агентов ​

Запустить агента в фоне — Запуски в боковом меню → вкладка Запуски → + → выбери агента по расписанию, при желании впиши инструкцию → Запустить задачу. Она продолжает работать после закрытия страницы, а таблица следит за ней сама — Обновить есть, если хочется, а не потому что без неё никак. См. гайд по полям.

Узнать о завершении, не сидя на странице — когда твой запуск заканчивается, приходит уведомление — и при успехе, и при ошибке. Включать ничего не нужно; если не хочется их получать, группа называется Запуски агентов в Аккаунт → Уведомления.

Посмотреть, что агент делал — кликни по строке запуска, она раскроется: выданная инструкция, шаги (галочка, крутилка или крестик у каждого) и результат.

Посмотреть стоимость запуска — в той же раскрытой строке, внизу. Видно только с правом org:billing:read; если запуск завершился до того, как записался расход, будет так и сказано, а не ноль.

Повторять запуск автоматически — вкладка Расписания → +. Либо каждые N минут, либо cron-выражение, плюс часовой пояс, в котором его читать. Сама вкладка есть только у тех, кто может управлять агентами — см. гайд по полям.

Если у расписания написано «Не запустится» — у модели его агента нет подключённого ключа или она отключена. Это не отказ в создании: агент по расписанию на такой модели всё равно создаётся — с уже отключённым первым расписанием, и тост в момент создания честно об этом говорит, так что агент существует и готов включиться, как только ключ подключат. Чего сломанное расписание правда не может — это включиться, а запуск вручную тоже не стартует: экран сразу говорит, чего не хватает, в момент нажатия. Уже застрявшее расписание показывает причину на своей карточке и место, где это чинится: Подключить ключ открывает настройки AI, Сменить модель открывает агента. Выключить расписание или поменять его время можно всегда. Модели OpenRouter собственный ключ не нужен; если у установки его нет, администратор задаёт его в Администрировании платформы → AI-модели.

Приостановить или убрать расписание — переключатель на карточке расписания переводит его между Включено и Отключено, ничего не открывая; ⋮ → Удалить убирает его насовсем. В обоих случаях уже случившиеся запуски остаются на вкладке Запуски.

Запустить задачу — гайд по полям ​
  • Агент — в списке только агенты по расписанию (см. Обычный агент или по расписанию). Если список пуст, начинать нужно именно с этого — создать такого агента, или сделать существующую работу таким агентом, на странице Агенты.
  • Инструкция (необязательно) — оставь пустым, и будет использован task prompt самого агента, который у агента по расписанию есть всегда.
Создать/отредактировать расписание — гайд по полям ​
  • Агент — у агента по расписанию первое расписание уже есть с момента создания; этот диалог — для добавления второго, либо для правки уже существующего.
  • Повтор — Каждые N минут для простого интервала или Cron-выражение для всего, что завязано на календарь (стандартный синтаксис из 5 полей, например 0 9 * * 1 — каждый понедельник в 09:00).
  • Часовой пояс — cron-выражение без него бессмысленно; это пояс, в котором читается выражение, а не пояс твоего браузера.
  • Помнить прошлые запуски — по умолчанию выключено, и лучше так и оставить, если задаче это правда не нужно. Включено — все запуски этого расписания идут в одном диалоге, и ежедневный дайджест может знать, о чём уже отчитывался, вместо того чтобы каждое утро начинать с нуля. Плата за это — диалог растёт, а вместе с ним и стоимость каждого запуска. Настройка принадлежит расписанию, а не агенту: два расписания на одном агенте помнят раздельно.
  • Переключатель Включено находится на карточке расписания, а не в этом диалоге. Отключённое расписание сохраняется, просто перестаёт порождать запуски.

Провайдеры моделей ​

Использовать собственный API-ключ — Настройки AI в боковом меню → вкладка Модели → Подключить у Anthropic, OpenAI, Google или OpenRouter → вставь ключ → Подключить. В диалоге есть ссылка на страницу, где провайдер выдаёт ключ, и подсказка, как этот ключ обычно выглядит. Дальше открой агента и выбери у него модель этого провайдера: один ключ ничего не меняет — агент работает на той модели, которая указана на его странице. После этого всё, что агенты запускают на этом провайдере, оплачивается с твоего аккаунта, а не идёт через общий шлюз платформы. OpenRouter — единственное исключение: платформа и так ходит туда по общему ключу за всех, так что подключение своего меняет только то, на чей счёт это падает — без подключения ничего не перестанет отвечать.

Добавить свою модель — после подключения провайдера, + Добавить модель на его карточке → выбери точный id модели → Добавить. Это твоя строка: она появляется в выборе модели у любого агента только этого пространства, оплачивается с твоего ключа, и изменить или убрать её можешь только ты — см. Свои модели ниже на странице. Общий каталог платформы (список администратора в Администрировании платформы) при этом не затрагивается.

Перестать использовать свой ключ — Отключить. Агенты, привязанные к модели этого провайдера, перестанут работать до повторного подключения — молчаливого переезда на другую модель не происходит. Любая своя модель на этом ключе уйдёт вместе с ним.

MCP-подключения ​

Подключить готовый коннектор — Настройки AI в боковом меню → вкладка Инструменты → Предустановленные коннекторы → Подключить у нужного (сегодня это Google Workspace). Тебя отправят на страницу авторизации самого сервиса и обратно; ключ вставлять не нужно.

Подключить свой MCP-сервер — + (на телефоне — меню ⋮ → Добавить подключение). См. гайд по полям.

Отключить подключение, не удаляя — меню ⋮ на карточке → Отключить. Карточка остаётся, но блёкнет, а её инструменты исчезают у всех агентов до Включить.

Разрешить агенту пользоваться подключением — на этой странице это не делается. Иди в Агенты, открой агента и отметь подключение на вкладке Инструменты.

Добавить/изменить MCP-подключение — гайд по полям ​
  • Название — твоё, показывается на карточке.
  • URL сервера — адрес MCP-сервера.
  • Авторизация — Без авторизации либо Авторизация через заголовок с Названием заголовка и Значением заголовка. Значение хранится в зашифрованном виде и больше не показывается: при редактировании пустое поле означает «оставить как есть».
  • Включено — то же самое, что действие Отключить выше.

Расход ​

Посмотреть, во что обошёлся AI — Расход в боковом меню. Выбери период и группировку: по модели, по агенту или по дням.

Прочитать оговорку к итогу — модель без заданной цены даёт токены, но не даёт стоимости, и в строке написано цена не задана, а не $0.00. Тогда к итогу добавляется пометка: это нижняя граница, а не весь счёт. Цены задаются для каждой модели в каталоге платформы.

Модель прав ​

ПравоЧто открывает
ai:chat:useАссистент и разовые запуски в Запусках
ai:agents:manageАгенты и Провайдеры моделей, а также вкладка Расписания
ai:mcp:manageMCP-подключения
org:billing:readРасход и строку стоимости внутри раскрытого запуска

Настройки AI — один пункт меню на два права: он появляется при наличии либо ai:agents:manage, либо ai:mcp:manage, открывается на той вкладке, которую это право покрывает, и показывает только те вкладки, которые реально есть. У кого только ai:mcp:manage, видит Инструменты и не видит вкладку Модели — объединение двух пунктов не объединило два права.

В предустановленных ролях OWNER и ADMIN держат все четыре, MEMBER — только ai:chat:use. То есть участник может общаться в чате и запустить один запуск уже существующего агента по расписанию, но не может создать агента ни одного из типов, подключать инструменты, подписывать пространство на регулярные расходы и видеть, сколько всё это стоило. Одна намеренная асимметрия внутри этого набора: запустить один запуск у уже существующего агента по расписанию — это ai:chat:use, как и чат, а создать такого агента или добавить ему расписание (бессрочное обязательство тратить) — уже ai:agents:manage.

Эти четыре — единственные права во всём каталоге, которые не проверяет ни один роут core-api. apps/intelligence получает их через GET /organizations/:id/access и применяет сам, поэтому для гвардов core-api они и невидимы. См. docs/ai/ADR-001-ai-platform-architecture.md, Решение 3, и docs/iam/PERMISSIONS_CATALOG.md.

Ассистент (/org/[slug]/assistant) ​

Страница чата: список чатов слева (ниже md — выдвижная панель), переписка по центру, поле ввода внизу и текущий агент в выпадающем списке справа вверху. Заголовок всегда читается как Ассистент платформы, какого бы агента ни выбрали — кто отвечает на самом деле, говорит соседний выпадающий список. (До 2026-09-06 вся страница была захардкожена по-английски; сейчас переведена целиком — заголовок, подсказки пустого состояния, список чатов и ошибки стрима.)

История сообщений не хранится вручную: за треды и сообщения отвечает собственная Memory библиотеки Mastra (на Postgres, в отдельной базе postgres-intelligence). Своя запись ThreadMeta держит только то, к чему Memory безразлична: какому пространству и пользователю принадлежит чат, его заголовок и какой агент сейчас назначен. Последнее поле и делает смену агента посреди треда незаметной операцией — тот же идентификатор треда просто передаётся другому агенту.

Прикреплённое фото сначала загружается в core-api (POST /organizations/:id/chat-attachments, обычное файловое хранилище платформы), а в сообщение попадает ссылкой по id — сама картинка через запрос чата не идёт.

Прежде чем отвечать на вопрос о самой платформе, ассистент ищет в вики (search-help/read-help-section, оба MCP-сервера) и даёт ссылку на страницу, которую использовал, а не отвечает из общих представлений модели о софте, которого она не видела.

Открывается по праву ai:chat:use.

Агенты (/org/[slug]/agents) ​

Агент — это настраиваемый AI-исполнитель, а не бот с характером: набор настроек, которые кто-то выбрал, а платформа исполняет.

Каждый агент — одного из двух типов, выбранного один раз при создании и никогда не меняющегося (Agent.kind, 24.09.2026) — см. Обычный агент или по расписанию для практики. Обычный агент только отвечает в чате. Агент по расписанию только работает без присмотра — вручную, по таймеру или и так, и так — и никогда не предлагается в чате вовсе. Эти два множества не пересекаются, и ничто не превращает одно в другое: это настоящая, хранимая колонка, а не выведенное состояние, и именно на ней в итоге держится каждое другое правило в этом разделе, зависящее от типа, — вкладка «Запуски», блок «Автоматизация», выпадающий список в чате, кнопка «Поговорить».

В списке две вкладки — Ваши агенты и Готовые агенты (три встроенных, подставляются в форму создания, см. Как сделать...). По карточке на агента, и на каждой одни и те же вещи в одном порядке, чтобы две карточки рядом можно было сравнить: модель, на которой он работает, и — у агента по расписанию — значок часов и чем закончился его последний запуск. Какими MCP-подключениями пользуется каждый агент — намеренно нет на карточке: это читается только по одному агенту за раз, и запрос на карточку ради одной строки того не стоит.

Агент — это шесть вещей, важных для модели: инструкции, модель, её параметры генерации, отмеченные MCP-подключения, закреплённые эталонные изображения и — только у агента по расписанию — task prompt, минимум одно расписание и необязательная форма структурированного результата, — и две вещи, важные только для людей: название и описание. Описание намеренно никогда не отправляется модели.

Открывается по праву ai:agents:manage. Удалить убирает агента из списка и, для обычного агента, из выпадающего списка в каждом чате; отменить это в интерфейсе нельзя (сама запись удаляется мягко, поэтому прошлые запуски со ссылкой на него остаются читаемыми). Открытый чат, который пользовался удалённым агентом, сохраняет историю — чтобы продолжить, выбери в списке другого агента.

До чего агент дотягивается ​

Любой агент может посмотреть на саму платформу — кто ты, в каких пространствах состоишь, кто в них есть, какие там роли и подписки, — и может искать в этой вики, как платформа устроена на самом деле, со ссылкой на страницу, которую использовал. Ничего настраивать не нужно, MCP-подключение не требуется: эти инструменты есть всегда.

Если ты в команде P4P, агент вдобавок умеет работать с её вещами — отделы, проекты, задачи и их статусы, лента активности, HR-пул — и отдельно читать твой календарь. Что именно ему достанется, решает твой доступ, а не агент: инструмент виден агенту, только если ты и сам мог бы им воспользоваться, а создать или изменить задачу требует того же права, что и от тебя. У человека, который не может открыть доску команды, агент тоже не может — и не падает с ошибкой, инструментов просто нет.

Два из этих инструментов существуют для агентов, которые работают с доской, а не отвечают на вопросы о ней. Первый отдаёт доску сводкой — по каждому проекту: что создано и что трогали за последнее время, что просрочено, что никто не взял, что неделю не двигалось, — вместо того чтобы тянуть все задачи целиком; именно это делает ночную сводку достаточно дешёвой, чтобы гонять её каждую ночь. Второй пишет в обсуждение проекта, поэтому написанное агентом оказывается там, где и так сидят люди, которых оно касается, вместе с обычным уведомлением, а не в журнале запусков, куда никто не заглядывает.

То же правило действует, когда никто не смотрит. Плановый запуск работает с доступом того, кто создал расписание, дотягивается ровно до того же, что и он, и перестаёт работать, если тот доступ теряет. Каждый такой вызов записывается, так что у вопроса «что агент сделал от моего имени» есть ответ.

Возвращает агенту меньше, чем видишь на экране: имена и роли, а не почтовые адреса команды; твой аккаунт, а не твой телефон и адрес. Всё, что ассистент сказал модели, остаётся в том разговоре, и забрать это обратно нельзя — поэтому ответ содержит ровно то, что нужно для вопроса.

Запуски агентов (/org/[slug]/agent-tasks) ​

Две вкладки. Запуски — таблица всего, что запускалось: агент, статус (Ожидает, Выполняется, Успешно, Ошибка), триггер (Вручную или По расписанию), время создания и завершения. Каждая строка раскрывается в выданную инструкцию, шаги, результат и — для обладателей org:billing:read — потраченные токены и стоимость. Расписания — регулярная часть, и эта вкладка появляется только при ai:agents:manage. Обе вкладки предлагают только агентов по расписанию — см. Обычный агент или по расписанию; обычный агент не появится на этой странице вовсе, ни в одной из вкладок.

Страница существует потому, что агент по расписанию работает только пока за ним никто не смотрит. Запуск продолжается после закрытия страницы, а таблица — это запись того, что происходило без тебя.

Список обновляется сам, и частота зависит от того, происходит ли что-нибудь: раз в несколько секунд, пока запуск выполняется, и заметно реже, когда таблица пустует, — но не «никогда», потому что расписание может стартовать запуск при открытой странице, и узнать об этом больше неоткуда. Если опрос не нашёл ничего нового, таблица остаётся ровно такой же, так что она не поедет под руками во время чтения. Держать страницу открытой вообще не обязательно: о завершении запуска приходит уведомление тому, для кого он выполнялся.

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

Провайдеры моделей (/org/[slug]/ai-settings/models) ​

Четыре карточки — Anthropic (Claude), OpenAI (ChatGPT), Google (Gemini), OpenRouter — каждая либо Подключено, либо Не подключено.

По умолчанию платформа ходит во все модели через один шлюз (OpenRouter) со своим ключом, и на этой странице пространству вообще ничего не нужно. Подключение собственного ключа меняет только то, как для этого пространства достигаются те же модели: напрямую и за твой счёт. Ключ хранится зашифрованным и обратно не показывается — чтобы заменить, отключи и подключи заново. OpenRouter — единственная карточка с платформенным ключом про запас; у остальных трёх его нет — агент на Claude без подключённого ключа Anthropic просто не сможет работать, потому что общеустановочного ключа Claude не существует.

Этот ключ шлюза принадлежит установке, а не пространству: он задаётся один раз на весь деплой, в Администрировании платформы → AI-модели. Установка без заданного ключа не отвечает нигде — провайдер возвращает пустой ответ, а не ошибку, и ассистент просто молчит. Страница в этом случае говорит об этом прямо, а подключение своего ключа — способ обойтись без чужой помощи.

Подключение ключа само по себе ничего не переключает. Каждый агент работает на модели, которая выбрана на его собственной странице; новый ключ лишь делает модели этого провайдера доступными для выбора там. Карточка «Модели ваших агентов» наверху этой страницы показывает, на какой модели каждый агент, у какого провайдера она работает и чьим ключом оплачивается — платформы или твоим, — плюс значок часов рядом с именем агента по расписанию (он никогда не появится в чате, и это тут стоит подсказки).

После подключения провайдера можно добавить и свою модель поверх него (24.09.2026) — кнопка + Добавить модель на карточке провайдера, список — в Своих моделях ниже. Эта строка принадлежит только тебе: она появляется в выборе модели у любого агента только этого пространства, оплачивается с твоего ключа по построению (у платформы просто нет ключа, на котором она могла бы работать), и изменить или удалить её может только это пространство. Общий каталог платформы — список, который курирует администратор в Администрировании платформы, — при этом не затрагивается и остаётся доступен рядом. Отключение ключа убирает и любую свою модель, построенную на нём.

Открывается по праву ai:agents:manage.

MCP-подключения (/org/[slug]/mcp) ​

MCP (Model Context Protocol) — это то, как агент получает инструменты: прочитать почту, забрать документ, отправить сообщение, — вместо того чтобы только выдавать текст. У страницы две половины:

  • Предустановленные коннекторы — поддерживаются платформой и авторизуются через OAuth, поэтому никакого URL и секрета вводить не нужно. Сегодня это Google Workspace (Gmail и Drive).
  • Свои подключения — любой доступный тебе MCP-сервер: название, URL и либо отсутствие авторизации, либо один заголовок, значение которого хранится зашифрованным.

Подключение сервера здесь не даёт доступ к нему ни одному агенту. Это единственное правило страницы, которое стоит запомнить: доступ выдаётся отдельно каждому агенту на странице Агенты, отметкой в его собственном списке MCP-подключений. Запрет по умолчанию — и намеренно: иначе подключение на уровне организации молча расширяло бы возможности всех уже существующих агентов в момент добавления.

Открывается по праву ai:mcp:manage. Отключить убирает инструменты подключения сразу у всех агентов, сохраняя настройки; Удалить убирает его насовсем с точки зрения интерфейса (запись удаляется мягко, а агенты, у которых оно было отмечено, просто перестают видеть его инструменты).

Обратное направление — внешние AI-клиенты вроде ChatGPT или Claude Desktop, которые ходят внутрь P4P, — это не эта страница. Оно живёт в твоём аккаунте, в разделе Подключённые приложения.

Тестирование этого модуля ​

У каждой страницы раздела есть свой юнит-тест (pages/org/[slug]/{assistant,ai/index, agents/index,agents/[id],agent-tasks/index,ai-settings/{models,mcp,usage}}.test.ts).

scripts/e2e/ai-studio/ (overview.mjs, agents.mjs, settings.mjs, runs.mjs, platform-models.mjs, blocked-schedules.mjs, chat-model-fix.mjs) — постоянный, перезапускаемый e2e-набор, проверяющий каждый элемент управления в разделе на реальном dev-сервере, в собственном одноразовом пространстве (ai-studio-e2e). scripts/e2e/agent-runs/ проверяет личность фонового запуска и уведомление о завершении расписания через реальный вызов модели; scripts/e2e/assistant/guide.mjs задаёт реальному чату реальные вопросы и оценивает не только текст ответа, но и то, какие инструменты он реально вызвал, включая цитирование вики. scripts/e2e/mcp/ покрывает оба MCP-сервера (внутренний и внешний) по-настоящему, по HTTP. Ничего из этого не существовало до 12.08.2026.

Настоящий OPENROUTER_API_KEY локально работает, но два момента среды в первый раз стоят целой сессии отладки: OpenRouter не всегда доступен напрямую из некоторых сетей (прокси плюс NODE_USE_ENV_PROXY=1 на Node ≥ 24 чинит это — см. apps/intelligence/CLAUDE.md), а бесплатная модель платформы по умолчанию ограничена по часам на общем пуле, так что 429 там — не сломанный ключ.

Найдено и исправлено во время написания этого раздела (25.09.2026). Два настоящих пробела, не капризы тестов:

  • Сохранение любой правки на странице Администрирования платформы → AI-модели отвечало 503 — «Не удалось записать это изменение в журнал аудита, поэтому оно не было применено». Решение 20 добавило supportsTemperature/supportsTopP/supportsMaxOutputTokens в список того, что можно изменить правкой, но список полей, которые core-api разрешает записывать в журнал аудита (AI_MODEL_FIELDS), про три новых поля так и не узнал — поэтому сама же форма, которая их отправляет, спотыкалась о собственную защиту при каждом сохранении. Исправлено добавлением этих полей в список (apps/core-api/.../record-ai-model-change.dto.ts); подтверждено вживую и закреплено тестом platform-models.mjs.
  • runs.mjs и blocked-schedules.mjs появились раньше Agent.kind и собирали свои тестовые фикстуры по-старому — обычный агент либо allowAutomatedInvocation, выставленный вручную, — а такой агент больше не может нести расписание вообще. Переписаны на настоящую фикстуру-агента по расписанию (ensureScheduledAgent в _shared.mjs) и на реальное поведение из Решения 21: заблокированный агент по расписанию всё равно создаётся, просто на паузе — отказ остаётся только для второго расписания поверх него.