Skip to content

feat(ai-autopilot): personas + prompts library (stack-aware knowledge)#102

Merged
suleimansh merged 2 commits into
mainfrom
suleimansh/feat/ai-autopilot-personas
Jul 2, 2026
Merged

feat(ai-autopilot): personas + prompts library (stack-aware knowledge)#102
suleimansh merged 2 commits into
mainfrom
suleimansh/feat/ai-autopilot-personas

Conversation

@suleimansh

Copy link
Copy Markdown
Member

Closes #98. First child of epic #97.

What

Adds the persona layer to @gemstack/ai-autopilot — the stack-aware knowledge that makes autopilot opinionated about the GemStack stack (Vike + universal-orm) instead of generic. The Supervisor stays stack-agnostic; personas carry the opinion.

A Persona is data (name + role + system prompt + skills + tools), so it can be inspected and listed without building an agent. It materializes into an ai-sdk agent on demand.

  • definePersona(spec) — validated, frozen persona
  • personaAgent(persona) — materialize one into a worker agent
  • personaWorkers(personas) — a Record<name, Agent> ready for Supervisor.workers
  • personaRoster(personas) — a planner-facing prompt fragment so plans route each subtask to a role
  • Skills compose over @gemstack/ai-skills (reuses its instruction/tool/middleware composition)

Built-in personas

  • vikePageBuilder — Vike + file conventions, renderer-agnostic
  • universalOrmModeler — schema-first data, derived migrations, typed queries
  • uiIntentDesigner — the "declare intent, decouple implementation" guardrail: express UI as intent so an AI can't hardcode the wrong markup

Test

10 new tests (define + compose); full package suite 34/34 green. Typecheck + build clean.

Scope

Personas + prompts only. Runner (#99), surfaces (#100), and Flue teardown (#101) are separate children.

vitepress build fails on dead internal links (the docs config ignores only
localhost links), so a docs job on every PR doubles as a link check.

Closes #59
Add the persona layer that makes autopilot opinionated about the GemStack
stack (Vike + universal-orm) instead of generic:

- definePersona() — a validated, frozen Persona (systemPrompt + skills + tools)
- personaAgent()/personaWorkers() — materialize personas into Supervisor workers
- personaRoster() — describe personas to a planner so plans route by role
- Built-ins: vikePageBuilder, universalOrmModeler, uiIntentDesigner (the
  declare-intent/decouple-implementation UI guardrail)

Skills compose over @gemstack/ai-skills. First child (#98) of epic #97.
@suleimansh suleimansh added enhancement New feature or request priority: high Should be addressed soon labels Jul 1, 2026
@suleimansh suleimansh self-assigned this Jul 1, 2026
@suleimansh suleimansh merged commit 7fde5fc into main Jul 2, 2026
2 checks passed
@suleimansh suleimansh deleted the suleimansh/feat/ai-autopilot-personas branch July 2, 2026 08:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request priority: high Should be addressed soon

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ai-autopilot: personas + prompts library (stack-aware knowledge)

1 participant