Расширения панели
Просмотр установленных и онлайн-расширений
- Откройте Настроить правую панель в полосе вкладок правой панели.
- Раскройте Расширения под разделителем.
- Используйте Поиск расширений для поиска в едином списке установленных дополнений и официального онлайн-каталога. Наведите указатель на запись или установите фокус для метаданных.
Раздел изначально свёрнут при каждом открытии настройки. Установленные и онлайн-записи объединяются по ID расширения; отдельного окна управления или режима установленных/онлайн нет. Просмотр метаданных каталога не загружает и не выполняет код панели автора. Каталог поддерживается в CodeNomad Extensions; включение в него и заявленные имена авторов — не подписи и не доказательство доверия.
Если каталог недоступен, установленные расширения и Установить из ZIP… остаются доступны. Обновите для повторного обнаружения. Сворачивание или закрытие окна прекращает текущий просмотр/подтверждение в интерфейсе; оно ничего не устанавливает незаметно.
Проверка и установка без активации
- Выберите Установить… у записи каталога или Установить из ZIP… для отдельно полученного пакета.
- Проверьте ID пакета, автора, репозиторий, версию, API/разрешения и дайджест SHA-256. При необходимости раскройте технические подробности.
- Проверьте издателя и, где возможно, сравните дайджест по доверенному каналу.
- Только если доверяете коду, отметьте Я доверяю этому пакету и его автору, затем Установить без активации.
Инспекция загружает/перепроверяет выбранный пакет; код автора при этом не выполняется. Дайджест идентифицирует точные байты, не личность автора. Пакеты каталога поступают из точно объявленного ресурса релиза GitHub, не произвольного URL. Ручные пакеты — ZIP только с manifest.json и самодостаточным panel.html; неверные или неподдерживаемые пакеты отклоняются.
Установка не требует перезапуска OpenCode и никогда автоматически не даёт активацию. Сбой проверки, конфликт или ошибка хранения не разрешают повтор с другими байтами. Заново проверьте пакет перед новой попыткой установки.
Активация и область действия
- Вернитесь к строке дополнения над разделом Расширения в Настроить правую панель. Установленные отключённые дополнения остаются в списке.
- Отметьте флажок для активации. Снимите тот же флажок для отключения.
Этот флажок — единственное управление активацией: нет дополнительного переключателя менеджера или отдельного допуска видимости окна. Активация действует на всю конфигурацию во всех проектах, не на папку. При удалённом подключении влияет на хранилище расширений сервера, не только устройство просмотра.
Хранилище расширений — panel-extensions/ рядом с выбранной конфигурацией CodeNomad. Отдельные настольные профили данных не изолируют расширения, если используют тот же каталог конфигурации. И наоборот, открытие другой конфигурации не разрешает запуск дополнения, установленного в другом месте. Различия см. в разделе Настольные окна и данные.
Включённая панель может монтироваться при выборе; скрытие может уничтожить временное состояние интерфейса. Отключение отзывает активацию. Сбросить в настройке восстанавливает только встроенную раскладку и не включает, не отключает и не удаляет расширения.
Замена или удаление
- Используйте Сменить версию… или проверьте другой ZIP с тем же ID для замены установленного пакета.
- Проверьте новый дайджест и разрешения, подтвердите доверие, затем установите без активации.
- Снова активируйте обычным флажком только после решения доверять замене.
- Для удаления используйте Удалить… и Подтвердить удаление после проверки цели.
Каждая замена отзывает активацию во всех проектах, даже при неизменном списке разрешений. Сбой проверки/конфликта/хранения сохраняет установленный пакет. Скрытых обновлений расширений нет. Удаление убирает пакет и настройки активации, не сессии OpenCode или файлы проекта. Для восстановления после нежелательного кода сначала отключите его; переустанавливайте только проверенный доверенный пакет.
Контекст, согласие на ресурсы и ограничения песочницы
| Контракт | Что разрешает активация |
|---|---|
API 1 / session.context |
Идентификатор текущей сессии (или его отсутствие), язык и оформление интерфейса. Без текста переписки и доступа к файловой системе. |
API 2 / session.assets.read плюс контекст |
Явно проверенное разрешение перечислять ограниченные метаданные изображений/вложений результатов инструментов текущей сессии и читать поддерживаемые встроенные байты. Не общий доступ к переписке, файлам или URL. |
Доступ к ресурсам следует текущему смонтированному хосту/сессии, не выбранной автором сессии. Локальные/удалённые ссылки могут перечисляться как недоступные; API ресурсов не загружает произвольные удалённые URL и не открывает локальные файлы. Смена сессии, отключение или отзыв согласия аннулируют старый доступ.
Код автора работает в ограниченном iframe, не в доверенном процессе отображения приложения. Он не получает мост к нативному окружению/OpenCode, учётные данные, общий RPC, формы, всплывающие окна или загрузки; сетевые API и внешние ресурсы ограничены. Расширения — дополнения интерфейса, не плагины OpenCode.
Песочница не изолирует процесс/CPU и не обещает безвредность одобренного кода. Враждебное расширение может нарушить работу своего процесса отображения. Устанавливайте только доверенных авторов, не передавайте секреты и отключите/удалите дополнение при неожиданном поведении.