# @brand-map/extension-builder

CLI и вспомогательные инструменты для сборки пакетов расширений Brand Map.

```sh
brand-map-extension scaffold my-extension
brand-map-extension operations
brand-map-extension typecheck
brand-map-extension build
brand-map-extension build --publish
brand-map-extension validate
brand-map-extension pack
brand-map-extension pack --publish
brand-map-extension test
```

`operations` выводит сервисы, операции, разрешения манифеста, типы входных данных и типы ответов из `@brand-map/extension-sdk/types`.

`build --publish` использует полную минификацию Bun и обфусцирует `dist/extension.js` перед проверкой манифеста. `pack` запускает эту сборку для публикации перед созданием `.tgz`; `pack --publish` поддерживается как явная форма.

`validate` и `pack` отклоняют неподдерживаемые разрешения, дублирующиеся обработчики, CommonJS-бандлы, приватные импорты Brand Map, утечки путей репозитория, TypeScript-спецификаторы исходников, удаленные legacy-вызовы операций и прямые вызовы операций без разрешений в манифесте.
