Поверхности
bb 0.43.3SDK 0.4.104пин e865697 (desktop-v0.43.3)
API плагинов включает 46 поверхностей, разбитых на семь групп. Их нумерация такая же, как во встроенном Plugin Guide. Поверхность в этом руководстве — это продуктовая группировка: объекты PluginSurface { id, title, summary, bullets, apiSymbols, … } внутри SurfaceGroup. Номер — это индекс внутри группы плюс один (SURFACE_NUMBERS); у группы headless номеров нет.
Визуальная карта
На странице /map/ эти же номера наложены на реальный интерфейс bb (App shell · Quick palette · Home · Settings → страница плагина · страница Plugins). Ниже — табличный указатель с символами SDK и ссылками.
В каждой строке указаны id поверхности, её символы SDK, использующие её плагины из поставки bb и место в интерфейсе. Из строки можно перейти к визуальной карте и карточке слота или неймспейса, реализующего эту поверхность.
Окно приложения bb
Главное окно bb: боковая панель, переписка и правая панель. Плагин может добавлять строки, элементы управления, вкладки панели и содержимое сообщений в пронумерованные области.
- Навигация в боковой панелиэкспериментальный Заменяет элементы навигации bb над списком тредов компонентом, который отрисовывает ваш плагин. С её помощью плагин может: на макете зон
- Панели на всю страницустабильный Добавляет в боковую панель bb строку, которая открывает страницу плагина там, где обычно показываются треды. С её помощью плагин может: на макете зон
- Статус строки тредаэкспериментальный Небольшой статус, который bb может показать в строке треда в боковой панели. С её помощью плагин может: на макете зон
- Список тредовэкспериментальный Заменяет список тредов в боковой панели bb компонентом, который отрисовывает ваш плагин. С её помощью плагин может: на макете зон
- Элементы подвала боковой панелиэкспериментальный Добавляет внизу боковой панели bb элемент-иконку, который отрисовывает хост. С её помощью плагин может: на макете зон
- Элементы управления в шапке тредаэкспериментальный Добавляет элемент управления в верхнюю панель открытого треда. С её помощью плагин может: на макете зон
- Элементы управления в панели инструментов Browserэкспериментальный Добавляет элемент управления плагина в панель инструментов каждой открытой вкладки Browser. С её помощью плагин может: на макете зон
- Содержимое записей таймлайнаэкспериментальный Рендерит развёрнутое содержимое записей таймлайна, которыми владеет плагин; шапку и элементы управления каждой записи bb оставляет за собой. С её помощью плагин может: на макете зон
- Встраиваемые компоненты в сообщенияхстабильный Рендерит ваш компонент внутри ответа агента вместо маркера, оставленного агентом в тексте сообщения. С её помощью плагин может: на макете зон
- Действия с сообщениемстабильный Добавляет действие к отдельным сообщениям в треде. С её помощью плагин может: на макете зон
- Формы в тредестабильный Приостанавливает выполнение агента посреди хода, чтобы задать вопрос пользователю, и передаёт ответ обратно агенту. С её помощью плагин может: на макете зон
- Рендереры кода и диффовэкспериментальный Заменяет рендерер исходного кода или диффов в bb везде, где встречается такое содержимое. С её помощью плагин может: на макете зон
- Вкладки правой панели тредастабильный Добавляет вкладку в панель, которая открывается справа от треда. С её помощью плагин может: на макете зон
- Просмотрщики и редакторы файловстабильный Регистрирует просмотрщик для указанных вами типов файлов, и bb открывает такие файлы в нём вместо встроенного предпросмотра. С её помощью плагин может: на макете зон
- Оверлеи приложенияэкспериментальный Монтирует плавающий интерфейс плагина поверх всего приложения bb, вне областей раскладки, которыми владеют маршруты. С её помощью плагин может: на макете зон
- Скрипты приложениястабильный Выполняет код плагина прямо в окне bb без отрисовки собственного интерфейса. С её помощью плагин может: на макете зон
Палитра команд
Меню команд bb с поиском. Плагин может добавлять действия, которые находятся поиском, ранжируются и запускаются наравне с собственными командами bb.
- Действия палитры командстабильный Регистрирует команду через app.commands.register и добавляет строку в раздел Plugins быстрой палитры команд bb. С её помощью плагин может: на макете зон
Композер
Поле ввода, в котором начинают тред и отвечают внутри него. Плагин может добавлять в него баннеры, пункты меню и кнопки действий, отвечать на поиск упоминаний, подсвечивать черновик промпта и предоставлять агента, который выполнит сообщение.
- Баннерыстабильный Отрисовывает баннер над полем ввода. С её помощью плагин может: на макете зон
- Упоминаниястабильный Добавляет результаты в меню, которое открывается, когда в поле ввода набирают символ-триггер. Если bb сам не использует этот триггер, меню открывает и ведёт ваш плагин. С её помощью плагин может: на макете зон
- Подсветка черновика промптастабильный Стилизует диапазоны текста по мере набора промпта пользователем, не изменяя сам текст. С её помощью плагин может: на макете зон
- Состояние и блокировка черновикастабильный Читает черновик промпта и может блокировать ввод, пока плагин работает. С её помощью плагин может: на макете зон
- Меню +стабильный Добавляет пункты в меню, которое открывается кнопкой + рядом с полем ввода. С её помощью плагин может: на макете зон
- Провайдеры агентаэкспериментальный Добавляет агента в селектор моделей bb и исполняет запускаемые с ним треды. С её помощью плагин может: на макете зон
- Действия в поле вводастабильный Добавляет кнопку в панель управления внутри поля ввода, рядом с кнопками голосового ввода и отправки. С её помощью плагин может: на макете зон
Страница плагина
Страница, которую bb показывает для установленного плагина в разделе Plugins: что это за плагин, что он регистрирует и исправен ли он. Плагин может сообщить, что его нужно настроить, и bb скажет об этом вверху страницы.
- Статус конфигурациистабильный Сообщает, что плагин не может работать, пока его не настроят, чтобы bb показал это, а плагин не ломался молча. С её помощью плагин может: на макете зон
Бэкенд плагина
Части API плагинов без собственного интерфейса.
Команды и возможности агента
- Команды CLI bbстабильный Регистрирует команду верхнего уровня
bb <name>, доступную в терминале и агентам. С её помощью плагин может: на макете зон - Инструменты и скиллы агентастабильный Добавляет инструменты, скиллы и инструкции в сессии агентов bb. С её помощью плагин может: на макете зон
Выполнение и реакции
- Фоновая работастабильный Выполняет код на сервере bb, когда не открыто ни одного окна. С её помощью плагин может: на макете зон
- HTTP, WebSocket, RPC и realtimeстабильный Связывает между собой интерфейс плагина, его серверный код и внешние сервисы. С её помощью плагин может: на макете зон
- События жизненного цикла тредастабильный Выполняет серверный код при изменении состояния треда. С её помощью плагин может: на макете зон
- Хук диспетчеризацииэкспериментальный Отвечает на контрольной точке, через которую проходит каждое сообщение на пути к провайдеру. С её помощью плагин может: на макете зон
- Провайдеры окруженияэкспериментальный Предлагает места для выполнения треда, которые подготавливает плагин; их выбирают так же, как любое окружение. С её помощью плагин может: на макете зон
- Провайдеры машинэкспериментальный Добавляет машины, которые подготавливает плагин и которые сочетаются с провайдерами окружения. С её помощью плагин может: на макете зон
- Доступ машин к серверуэкспериментальный Регистрирует доступ к серверу для регистрации машин и их последующих запросов во время работы. С её помощью плагин может: на макете зон
- Хост-воркерыэкспериментальный Выполняет код плагина на зарегистрированной машине, а не только на сервере bb. С её помощью плагин может: на макете зон
Данные и платформа
- Хранилищестабильный Сохраняет данные плагина на сервере bb. С её помощью плагин может: на макете зон
- SDK bbстабильный Вызывает собственный API bb из серверного кода плагина. С её помощью плагин может: на макете зон
- Метаданные плагина в тредестабильный Хранит JSON плагина в его неймспейсе для треда и не показывает его модели автоматически. С её помощью плагин может: на макете зон
- Управление десктопным браузеромэкспериментальный Управляет выбранным окном на десктопе через bb.sdk.experimental_desktopBrowsers. С её помощью плагин может: на макете зон
- AI-сервисыэкспериментальный Позволяет плагину отвечать на вызовы вспомогательной модели самого bb — короткие вызовы, которые стоят за названиями тредов и сообщениями коммитов, — и на транскрипцию для кнопки микрофона. С её помощью плагин может: на макете зон
- Компоненты хостастабильный Рендерит переписку bb, поле ввода и общие иконки приложения внутри страниц плагина. С её помощью плагин может: на макете зон
Проверка
- Тестовые харнессыстабильный Тестирует плагин без запущенного bb. С её помощью плагин может: на макете зон
Главная страница
Экран, с которого открывается bb: композер нового треда и правая панель. Плагин может добавить секцию под композером и действие в этой панели, которое открывает собственную вкладку плагина.
- Секции главного экранастабильный Добавляет секцию на всю ширину на страницу, с которой открывается bb, под полем ввода. С её помощью плагин может: на макете зон
- Правая панель нового тредаэкспериментальный Добавляет вкладку плагина в правую панель на экране нового треда. С её помощью плагин может: на макете зон
Страница настроек плагина
Страница настроек, которую bb создаёт для каждого установленного плагина. Плагин может объявить поля, которые отрисует bb, и добавить под ними собственную секцию.
- Поля настроекстабильный Объявляет нужные плагину настройки как простые данные: bb сам строит для них форму на странице настроек плагина и хранит значения. С её помощью плагин может: на макете зон
- Собственная секция настроекстабильный Рендерит ваш React-компонент на странице настроек плагина под полями, сгенерированными bb. Нужна для всего, что не сводится к значению в форме. С её помощью плагин может: на макете зон