Эксперименты
Протокол адаптации и конфигурации
Цель: общие интерфейсы адаптации и конфигурации для CLI, приложения macOS и Web UI.
Компоненты
- Движок мастера настройки (общая сессия + подсказки + состояние адаптации).
- Адаптация в CLI использует тот же поток мастера, что и UI-клиенты.
- Шлюз RPC предоставляет эндпоинты для мастера и схемы конфигурации.
- Адаптация в macOS использует модель шагов мастера.
- Web UI рендерит формы конфигурации из JSON Schema + UI-подсказок.
Шлюз RPC
wizard.startпараметры:{ mode?: "local"|"remote", workspace?: string }wizard.nextпараметры:{ sessionId, answer?: { stepId, value? } }wizard.cancelпараметры:{ sessionId }wizard.statusпараметры:{ sessionId }config.schemaпараметры:{}config.schema.lookupпараметры:{ path }pathпринимает стандартные сегменты конфигурации плюс идентификаторы плагинов через слэш, напримерplugins.entries.pack/one.config.
Ответы (структура)
- Мастер:
{ sessionId, done, step?, status?, error? } - Схема конфигурации:
{ schema, uiHints, version, generatedAt } - Поиск схемы конфигурации:
{ path, schema, hint?, hintPath?, children[] }
UI-подсказки
uiHintsс ключами по пути; опциональные метаданные (label/help/group/order/advanced/sensitive/placeholder).- Чувствительные поля отображаются как поля ввода пароля; слой цензуры отсутствует.
- Неподдерживаемые узлы схемы откатываются к сырому JSON-редактору.
Примечания
- Этот документ является единственным местом для отслеживания рефакторинга протокола для адаптации/конфигурации.