A2UI Catalog Extractor
Use this skill when a task involves authoring, updating, debugging, or generating A2UI catalog JSON from TSX/TypeScript component interfaces.
Workflow
- Mark only the catalog-facing TypeScript interface with
@a2uiCatalog <ComponentName>. - Use only standard TypeDoc-supported tags besides
@a2uiCatalog: summaries,@remarks,@defaultValue, and@deprecated. - Keep catalog-facing shapes inline in the marked interface. The extractor consumes TypeDoc reflection data and does not parse source files itself.
- Generate component catalog files with:
a2ui-catalog-extractor --catalog-dir src/catalog --out-dir dist
Supported Type Shapes
string,number,boolean- string literal unions, emitted as JSON Schema
enum - mixed unions, emitted as
oneOf - arrays with
T[],Array<T>, orReadonlyArray<T> - inline object type literals
Record<string, T>
Developers should not write JSON Schema in comments. If extraction fails because a reference is unsupported, inline the component's catalog contract in the marked interface.