You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Make The Framework modular, similar to Vike: installed framework-* packages self-register instead of the CLI hardcoding the list.
Decisions (settled)
Agnostic core. Nothing is Vike-gated. Capabilities are framework-agnostic.
Framework = a skill. A framework isn't a special adapter package. It's just a skill = a pointer to its llms.txt (e.g. https://vike.dev/llms.txt for Vike, the equivalent for Next). The old "adapter" axis is gone.
Flat naming.framework-sentry, not framework-tracking-sentry.
So the model is two things: capabilities (auth, data, ...) that self-register + skills (doc pointers for framework/domain knowledge). Skills are the shared unit with #204.
Where it's hardwired today
packages/framework/src/run.ts pins the composition:
The registry and the extension list are pinned in code, so no third party can publish framework-next or framework-drizzle and have it auto-compose. The substrate is already there (Preset detection + Persona capabilities + registries in @gemstack/ai-autopilot), it just isn't exposed.
What to build
A public FrameworkExtension unit (capability) that bundles:
detection signals (deps/files) that decide when it activates
persona(s) it contributes to the agent frame
optional serve / checklist / deploy contributions
optional skill(s) it pulls in (e.g. a data extension can register the ORM's llms.txt)
The CLI discovers installed framework-* packages, registers them, and composes whatever matched, instead of hardcoding vikeExtensionPersonas. Framework knowledge comes in as a skill, not a gate.
Scope
Define the FrameworkExtension SPI (defineFrameworkExtension)
Define the skill unit (pointer to an llms.txt) and how extensions/presets register skills
Make The Framework modular, similar to Vike: installed
framework-*packages self-register instead of the CLI hardcoding the list.Decisions (settled)
llms.txt(e.g. https://vike.dev/llms.txt for Vike, the equivalent for Next). The old "adapter" axis is gone.framework-sentry, notframework-tracking-sentry.So the model is two things: capabilities (auth, data, ...) that self-register + skills (doc pointers for framework/domain knowledge). Skills are the shared unit with #204.
Where it's hardwired today
packages/framework/src/run.tspins the composition:The registry and the extension list are pinned in code, so no third party can publish
framework-nextorframework-drizzleand have it auto-compose. The substrate is already there (Preset detection + Persona capabilities + registries in@gemstack/ai-autopilot), it just isn't exposed.What to build
A public
FrameworkExtensionunit (capability) that bundles:llms.txt)The CLI discovers installed
framework-*packages, registers them, and composes whatever matched, instead of hardcodingvikeExtensionPersonas. Framework knowledge comes in as a skill, not a gate.Scope
FrameworkExtensionSPI (defineFrameworkExtension)llms.txt) and how extensions/presets register skillsframework-*packages (plus explicit opt-in via config)run.ts, drop the hardcodedvikeExtensionPersonas/ Vike gateframework-*extensionRelated: #204 (Open Loop), #186 (compose framing), #110 (AI framework epic).