← ClaudeAtlas

webiny-skill-generatorlisted

Generate, update, and maintain abstraction catalogs from the Webiny platform's public API. Use this skill whenever you need to: scan the `webiny` package to discover exported EventHandlers and UseCases, regenerate catalog JSON files after a platform release, check which abstractions are available, or add support for a new abstraction type.
webiny/webiny-js · ★ 7,982 · Web & Frontend · score 83
Install: claude install-skill webiny/webiny-js
# Webiny Skill Generator Generates per-category **catalog JSON files** from the `webiny` npm package's public API. Each catalog lists all UseCase and EventHandler abstractions in a category with their resolved source file paths. LLMs read source files on demand for exact, up-to-date types — no enrichment phase needed. ## How It Works ```bash yarn generate-skills ``` The script: 1. **Discovers** all EventHandler and UseCase exports from `packages/webiny` 2. **Resolves** the actual source file path for each export via ts-morph 3. **Writes** one catalog JSON per category to `skills/catalogs/` That's it. No skeletons, no enrichment, no templates. ## Output ``` skills/ ├── catalogs/ │ ├── api-cms.json # 82 entries │ ├── api-security.json # 37 entries │ ├── api-website-builder.json │ ├── api-tenancy.json │ ├── api-file-manager.json │ ├── api-aco.json │ ├── api-scheduler.json │ └── api-system.json └── patterns/ ├── use-case.md # Generic UseCase pattern doc └── event-handler.md # Generic EventHandler pattern doc ``` Each catalog entry looks like: ```json { "className": "CreateTenantUseCase", "importPath": "webiny/api/tenancy", "type": "use-case", "typeLabel": "UseCase", "humanName": "Create Tenant", "entity": "Tenant", "operation": "create", "sourceFilePath": "packages/api-core/src/features/tenancy/CreateTenant/index.ts", "description": "Programmatically create tenant." } ``` ## How LLMs Use Catalogs