diff --git a/.changeset/export-composer-personas.md b/.changeset/export-composer-personas.md new file mode 100644 index 0000000..b22e570 --- /dev/null +++ b/.changeset/export-composer-personas.md @@ -0,0 +1,7 @@ +--- +'@gemstack/ai-autopilot': minor +--- + +Export the vike-rbac / vike-crud / vike-shell composer personas individually + +`vikeAuthComposer` and `vikeDataModeler` were re-exported individually from the package root, but their three peers `vikeRbacComposer`, `vikeCrudComposer`, and `vikeShellComposer` were only reachable through the `vikeExtensionPersonas` array. They are now exported individually too, so a consumer building a custom persona roster can cherry-pick any of the built-in extension composers uniformly. No runtime change. diff --git a/packages/ai-autopilot/src/index.ts b/packages/ai-autopilot/src/index.ts index 58580ea..72ddff2 100644 --- a/packages/ai-autopilot/src/index.ts +++ b/packages/ai-autopilot/src/index.ts @@ -110,6 +110,9 @@ export { uiIntentDesigner, vikeAuthComposer, vikeDataModeler, + vikeRbacComposer, + vikeCrudComposer, + vikeShellComposer, sharedPersonas, vikeExtensionPersonas, stackPersonas, diff --git a/packages/ai-autopilot/src/personas/index.ts b/packages/ai-autopilot/src/personas/index.ts index d3f5bb1..8143e48 100644 --- a/packages/ai-autopilot/src/personas/index.ts +++ b/packages/ai-autopilot/src/personas/index.ts @@ -23,6 +23,9 @@ export { uiIntentDesigner, vikeAuthComposer, vikeDataModeler, + vikeRbacComposer, + vikeCrudComposer, + vikeShellComposer, sharedPersonas, vikeExtensionPersonas, stackPersonas, diff --git a/packages/framework/src/run.ts b/packages/framework/src/run.ts index b578571..15a62d8 100644 --- a/packages/framework/src/run.ts +++ b/packages/framework/src/run.ts @@ -77,10 +77,13 @@ export interface RunFrameworkOptions { /** Signals for preset detection (deps/files). Default: none, so the flagship preset wins. */ signals?: FrameworkSignals /** - * Compose the vike-* extensions (currently: vike-auth for authentication) - * instead of hand-rolling them. Frames the agent with the extension personas. - * Opt-in and Vike-only: the extensions resolve inside the vike-data workspace, - * so the default (hand-rolled + Prisma) path stays publish-safe. + * Compose the vike-* extensions instead of hand-rolling them: vike-auth for + * auth, the universal-orm data layer for domain data, vike-rbac for + * roles/permissions, vike-crud/vike-admin for the CRUD+admin UI, and + * vike-themes/vike-layouts for styling and the app shell. Frames the agent + * with the extension personas. Opt-in and Vike-only: the extensions resolve + * inside the vike-data workspace, so the default (hand-rolled + Prisma) path + * stays publish-safe. */ composeExtensions?: boolean /** Max full-fledged passes. Default {@link DEFAULT_MAX_PASSES} (5). */ @@ -161,7 +164,8 @@ export async function runFramework(opts: RunFrameworkOptions): Promise