enВойти в Senler

Приложения разработчика

Developer-приложения

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

Пункты внутри приложения

  • «Настройки» доступны у каждого типа: основные данные и опасная зона описаны ниже в этой статье.
  • «Участники» доступны у каждого типа и управляют командой самого приложения, а не участниками проекта.
  • «OAuth» показывается у типов «Интеграция на сайте» и «Инструмент».
  • «Готовое решение» показывается у одноимённого типа приложения.
  • «Инструменты» и «Встроенная страница» показываются у типа «Инструмент».
  • «Вебхуки» доступны у каждого типа.

Перед выдачей приложения пользователям проверьте название, описание, назначение, redirect URI и набор разрешений. Для приложения без OAuth проверяйте только параметры, которые действительно показаны в его меню.

Общие настройки

  • аватар и удаление аватара доступны после создания приложения;
  • название и описание задаются при создании и редактируются позже;
  • website URL указывается в настройках созданного приложения;
  • тип приложения выбирается при создании и после этого не меняется;
  • кнопка «Создать» сохраняет новое приложение.

Тип приложения

Тип выбирается при создании приложения и после этого не меняется. Если нужен другой сценарий, создайте новое приложение подходящего типа.

  • выберите один вариант карточкой;
  • Интеграция на вашем сайте использует OAuth-настройки;
  • Готовое решение не использует OAuth и показывается в каталоге готовых решений;
  • для типа «Инструмент» после создания отдельно настраиваются действия агента и встроенная страница; можно включить одну возможность или обе, а OAuth доступен этому типу;
  • ссылка "Документация" ведет на справку по выбранному назначению.

Список приложений

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

Поле «Поиск приложений» ищет по названию, описанию, адресу сайта, типу и статусу публикации. Если совпадений нет, очистите или уточните запрос.

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

В меню действий можно открыть приложение. Пункт «Перейти на сайт» появляется только тогда, когда в настройках приложения указан website URL.

Как создать приложение

Откройте список приложений разработчика.

  1. Нажмите «Создать приложение».
  2. Заполните название и при необходимости описание.
  3. Выберите тип приложения. Изменить его после создания нельзя.
  4. Нажмите «Создать».

Настройки готового решения

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

Инструменты агента

У приложения типа «Инструмент» откройте раздел «Инструменты». Общий переключатель определяет, можно ли после установки добавлять эти инструменты агентам. Он не управляет встроенной страницей приложения.

Выбор способа подключения

Выберите один режим для всего приложения:

  • «Конструктор» — приложение содержит один или несколько HTTP-инструментов с отдельными URL и параметрами;
  • «MCP-сервер» — приложение подключает готовый MCP endpoint, а список его инструментов загружается с сервера.

После смены режима нажмите «Сохранить». Установленные проекты получают только текущий сохранённый режим.

Конструктор HTTP-инструментов

Нажмите «Добавить». В форме инструмента укажите:

  • системное имя, например find_customer;
  • URL обработчика с http или https;
  • описание для агента: когда и для чего вызывать действие;
  • в списке параметров — имя, тип string, number или boolean, понятное описание и обязательность каждого аргумента.

Для каждого нового аргумента нажмите «Добавить параметр». После заполнения формы используйте «Сохранить». Сохранённый инструмент в списке можно снова открыть и изменить. В форме существующего инструмента действие «Удалить» требует подтверждения и окончательно убирает его из приложения. Системное имя и описание должны однозначно отличать действие от других инструментов приложения.

Инструменты агента. Отмеченные элементы: 1. «Добавить»; 2. инструмент в списке

При вызове обработчик получает JSON такого вида:

{
  "event_id": "019d0000-0000-7000-8000-000000000001",
  "event_type": "tool_call",
  "timestamp": "2026-07-30T12:00:00.000Z",
  "app_id": "app-id",
  "installation_id": "installation-id",
  "project_id": "project-id",
  "tool_name": "find_customer",
  "arguments": {
    "customer_id": "123"
  }
}

Используйте event_id как ключ идемпотентности: автоматический или ручной повтор может отправить то же действие снова.

Режимы выполнения и повторы

В режиме выполнения выберите:

  • «Мгновенное выполнение» — агент ждёт один HTTP-ответ и получает его тело как результат инструмента; автоматических повторов нет;
  • «Ожидание результата» — запрос ставится в очередь, агент приостанавливает этот шаг и продолжает после успешного результата;
  • «Фоновая операция» — запрос ставится в очередь, но агент не ждёт и не использует ответ для продолжения текущего шага.

Одна попытка ждёт ответ 10, 30, 60 или не более 120 секунд — значение выбирается в поле «Таймаут HTTP-попытки». Для двух асинхронных режимов выберите окно повторов:

  • 5 минут — 5 попыток: сразу, через 15 секунд, 1, 3 и 5 минут;
  • 3 часа — 8 попыток: сразу, через 1, 5, 15, 30 минут, 1, 2 и 3 часа;
  • 1 день — 12 попыток: сразу, через 1, 5, 15, 30 минут, 1, 2, 4, 8, 12, 18 и 24 часа.

MCP-сервер

В MCP-режиме укажите URL сервера и, если требуется, имя и значение заголовка авторизации. Сохранённый секрет повторно не показывается: его можно заменить новым значением или отметить удаление сохранённого значения, а затем сохранить настройки.

Инструменты агента. Отмеченные элементы: 1. раздел «Инструменты»; 2. Общий переключатель; 3. «Конструктор»; 4. «MCP-сервер»; 5. «Сохранить»; 6. URL сервера; 7. имя; 8. значение заголовка авторизации; 9. отметить удаление сохранённого значения

В установленном проекте нужные действия включаются отдельно в настройках каждого агента. Отключение инструментов у приложения делает их недоступными агентам, но не отключает встроенную страницу.

Встроенная страница

У приложения типа «Инструмент» откройте раздел «Встроенная страница». Переключатель доступности определяет, смогут ли пользователи установленного проекта открыть страницу; инструменты приложения продолжают работать независимо.

Основной URL и режим разработчика

В «Основном URL» укажите полный адрес с http или https. Для обычной публикации используйте HTTPS. Страница должна разрешать открытие во фрейме и не должна рассчитывать на переход всего верхнего окна.

Включите «Режим разработчика», чтобы участники команды приложения открывали страницу с отдельного URL для разработчиков. Здесь можно указать http://localhost или отдельное тестовое окружение. Обычные пользователи установленного приложения продолжают открывать основной URL.

Встроенная страница. Отмеченные элементы: 1. раздел «Встроенная страница»; 2. Переключатель доступности; 3. «Основном URL»; 4. «Режим разработчика»; 5. URL для разработчиков; 6. кнопку сохранения

Тестирование и контекст проекта

Нажмите «Протестировать» и выберите доступный проект. Если режим разработчика включён, тест откроет developer URL, иначе основной. Тестирование доступно и при выключенной публикации страницы.

Кабинет добавляет к URL параметры контекста:

  • senler_context_version=1 — версия формата;
  • senler_mode=test при проверке и senler_mode=installed после установки;
  • senler_app_id и senler_project_id;
  • senler_installation_id — только у установленной страницы.

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

Сохраните изменения через кнопку сохранения. Если тест не открывается, проверьте URL, заголовки Content-Security-Policy/X-Frame-Options, доступность локального сервера из браузера и ошибки внутри iframe.

Опасная зона

  • удаление приложения;
  • предупреждение: установки и токены будут отозваны;
  • действие опасное и требует подтверждения.

OAuth-настройки

OAuth-настройки доступны для типов «Интеграция на вашем сайте» и «Инструмент». Для готового решения этот экран не используется.

В блоке OAuth-ключей находятся Client ID и Client Secret. Client ID идентифицирует приложение; его можно перенести в интеграцию кнопкой копирования Client ID. Client Secret подтверждает подлинность приложения: не публикуйте его и не вставляйте в клиентский код. При необходимости покажите или скройте значение либо используйте копирование Client Secret.

Регенерация Client Secret

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

После подтверждения покажите или скопируйте новый Client Secret и обновите все интеграции, которые использовали прежнее значение. Пока они не обновлены, OAuth-запросы со старым секретом будут завершаться ошибкой.

Redirect URI

В разделе Redirect URIs перечислены адреса, на которые можно вернуть пользователя после авторизации. Нажмите «Добавить URI», заполните новое поле адреса полным URL и при необходимости используйте удаление строки.

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

Разрешения

В разрешениях приложения задаётся максимальный набор действий, который приложение сможет запросить у проекта. Для каждой группы выберите только необходимый уровень доступа. Базовое разрешение, без которого приложение не может работать с проектом, закреплено и не снимается.

Кнопка «Выбрать все» или «Снять все» меняет необязательные группы; перед выдачей приложения лучше проверить их по отдельности. Изменения разрешений и Redirect URI вступают в силу после сохранения OAuth-настроек. Регенерация Client Secret выполняется отдельно и не ждёт этой кнопки.

Участники приложения

На странице участников можно приглашать разработчиков и смотреть приглашения. Фильтр статуса помогает отделить ожидающие, принятые, отклоненные, истекшие и отмененные приглашения.

Получатель открывает страницу приглашения в developer-приложение. На ней видны приложение, пригласивший и роль. Ожидающее приглашение можно принять или отклонить; после принятия кабинет открывает приложение, а для истёкшего или уже обработанного приглашения показывает соответствующее состояние.

Участники приложения. 1. страницу приглашения в developer-приложение