y83 code / справочник

Интеграции

Здесь хранятся учётные данные внешних сервисов, которыми пользуется агент: токен GitHub для поиска по коду, адрес и токен поискового сервера, токен генерации картинок и ключ документации библиотек. Четыре блока с токенами и карточка-переход на экран GitLab; блоки независимы, но сохраняются одним нажатием.

раздел
Подсистемы приложения
пунктов возможностей
27
источник
docs/about/tools.md

В Хабе инструментов карточка лежит в секции «Приложение», на главном экране её тайл называется «Интегр.». В отличие от большинства других настроек, эти данные лежат не в телефоне, а на сервере.

Возможности

  • Секции и терминальная шапка. Шапка y83@tools показывает, сколько интеграций и токенов заполнено; блоки разложены по секциям: «поиск и код» (GitHub, AgentSearch), «медиа», «документация» и «git» (карточка GitLab).
  • Кнопка «i» у каждого блока — окно с нумерованной инструкцией: где взять токен, какой scope отметить, чем это грозит. Внизу окна — кнопка перехода на страницу выдачи (GitHub, Context7, GitLab) или на сайт сервиса (картинки); страница открывается во встроенном браузере.
  • GitHub — токен для поиска по коду на GitHub. Поле с подсказкой формата, кнопка-глаз показывает введённое значение.
  • AgentSearch — адрес поискового сервера и его токен. Это основной веб-поиск приложения и агента. Адрес должен быть полным, со схемой: ввод без неё отклонит сохранение.
  • Генерация изображений — адрес сервиса картинок и его токен.
  • Context7 — ключ документации библиотек. Инструкция с тремя шагами и кнопкой «Открыть страницу токенов» живёт в окне «i».
  • GitLab — карточка показывает адрес сервера и состояние токена и ведёт на экран GitLab, где настраивается подключение и публикуются репозитории.
  • Строка состояния под каждым блоком. Это цветная точка и подпись: «Токена нет», «Токен сохранён» (рядом маска с сервера) или «новый, не сохранён», пока введённое значение ещё не записано.
  • Кнопка Test у каждого блока. Делает настоящий запрос во внешний сервис и показывает результат: зелёная галочка с сообщением об успехе или красный значок ошибки с причиной. Работает и с только что введённым значением, и с давно сохранённым, поэтому токен можно проверить до сохранения.
  • Кнопка Remove у каждого блока, у которого уже есть ключ. Спрашивает подтверждение обычным диалогом и после согласия сразу сохраняет.
  • Кнопка Save в закреплённом подвале — одна на весь экран, сохраняет все блоки разом и активна только при несохранённых правках (подвал подписывает «есть несохранённые правки»). Пока идёт сохранение, в кнопке крутится спиннер.
  • Выход с несохранённым токеном (стрелка «назад» или системная кнопка) спрашивает «сохранить или выйти» — введённое значение не теряется молча.
  • Строка статуса под шапкой: короткое сообщение «Настройки сохранены» и, если что-то перезапускалось, дописка «перезапущено: <компонент>». Ошибки висят до закрытия, успех гаснет сам.
  • Ошибка загрузки показывается отдельной карточкой с кнопкой «Повторить»: если сервер не ответил, экран не остаётся пустым.

Технические данные

ПараметрЗначение
Блоков на экране5: GitHub, AgentSearch, картинки, Context7 и карточка GitLab
Блоков с адресом сервера2: поиск и картинки
Состояний у строки ключа3: ключа нет, ключ сохранён, ключ введён
Инструкций «как получить токен»5: по одной на блок (окно по кнопке «i»)
Языков интерфейса2: русский (дефолт) и английский
Таймаут проверки ключадо 20 секунд
Размер ответа при проверкене больше 1 МиБ
Формат ключа Context7начинается с ctx7sk
Что перезапускается при сохранениитолько Codex, если менялся ключ Context7
Полных ключей в ответе серверанет, наружу уходят только маски
Где хранитсяфайл настроек на сервере, ключ Context7 ещё и в конфиге агента
Сейчас на устройствезаполнены все четыре блока с токенами

Что агент умеет

  • Открыть экран командой моста и посмотреть на него снимок — так агент проверяет, какие ключи сохранены и какие маски видны.
  • Работать с экраном как с обычным интерфейсом: вписать значение в поле, нажать «глаз», нажать Test или Save. Отдельных команд моста для чтения и записи ключей нет.
  • Открыть инструкцию по токену — нажать «i» у нужного блока: окно с шагами покажет, где в сервисе выдают токен и какие scope отметить.
  • Проверить, что сохранено, по маскам — прочитать их можно и через экран, и через обычный запрос к серверу.
  • Чего агент не может: увидеть сами ключи. Приложение и сервер отдают только маску из четырёх последних символов, полное значение не покидает сервер даже по запросу.

Ограничения

  • Главная ловушка: пустое поле при сохранении стирает ключ. У GitHub и AgentSearch пустая строка означает «записать пустое», поэтому если нажать Save, не вписав токен заново, сохранённый ключ будет удалён. Кнопка Remove делает ровно то же самое, только с подтверждением.
  • Ключи не читаются обратно. После сохранения поле пустое, видна только маска. Чтобы убедиться, что ключ живой, нужно нажать Test.
  • Пустое поле у картинок и Context7 означает «не трогать». Это не то же самое, что у GitHub: там, чтобы стереть ключ, нужно нажать Remove.
  • Ключ Context7 проверяется только на сервере. Если вписать ключ не того формата, сохранение покажет ошибку в строке статуса под шапкой, а не под полем.
  • Без ключа Context7 работает анонимно — с ограничением по частоте. Такой результат проверки это не поломка.
  • Адрес поискового сервера должен быть полным, с префиксом. Ввод вроде «localhost:8080» блокирует сохранение всего экрана.
  • Ошибка в одном поле может остановить сохранение. Кнопка одна на все блоки. Битый адрес поиска блокирует всё ещё до запроса, а вот если сервер забракует ключ Context7, токен GitHub к этому моменту уже записан.
  • Перезапуск сервисов бывает только один. Если перезапуск не удался, сохранение всё равно считается успешным, а ошибка уходит в лог — про неработающую документацию можно узнать только по косвенным признакам.

Источник: docs/about/tools.md. Страница собрана из документации проекта при сборке сайта — без пересказа.