Capabilities System
How GenMB decides which built-in services your app needs, then injects the matching SDKs into your generated code, no configuration required.
What Capabilities Are
A capability is a built-in GenMB service with three things: a JSON definition, a backend proxy, and a client SDK. The capability registry loads every definition at startup and exposes them to the code generation pipeline so the AI knows what is available.
See the full list of 12 built-in capabilities on the Services & SDKs page. The capability system is what wires those services into your app automatically.
api/services/definitions/ and a matching SDK under api/static/sdk/.How Detection Works
Detection runs after code generation. It scans your prompt and the generated source for hint patterns defined in each capability JSON, then reconciles the result against any manual overrides from the Services panel.
Each capability lists positive phrases (e.g., "voice booking", "talk to AI") that strongly imply the service is needed.
Negative phrases (e.g., "voice memo" for the Voice Agent) prevent false positives when the prompt mentions adjacent but unrelated features.
A capability you toggled in the Services panel takes precedence over auto-detection on the next code save.
Capabilities that require a paid plan are still injectable in code, but the SDK calls fail at runtime with a plan-gated error if the owner is on the wrong tier.
Injection Order & Markers
Each capability declares an injection priority so dependent services can rely on earlier ones. Auth must inject before RBAC, for example.
The injector wraps inserted code in HTML comment markers - <!-- GenMB Capabilities START --> and <!-- GenMB Capabilities END -->. On regeneration, the injector strips everything between the markers before re-injecting, so SDK code is never duplicated.
Overriding Auto-Detection
The Services panel in the app editor sidebar shows every capability and its current state - auto-detected, manually enabled, or disabled.
- Toggle a service on to inject its SDK regardless of detection.
- Toggle a service off to suppress injection even if the detector flagged it.
- Manual choices persist across regenerations.
- Re-enable auto-detection by clearing the manual override on a service.
Capabilities vs Plugins
The two systems look similar but solve different problems. Knowing which one a feature belongs to helps you find the right docs.
Capabilities
GenMB-operated services with built-in SDKs and proxies. File storage, auth, AI chatbot, vector DB, voice agent, etc. No third-party accounts or API keys.
View Services & SDKs →Plugins
Third-party integrations configured per app. Stripe, Supabase, Clerk, OpenAI, Shopify, and 70+ more. Bring your own keys; we inject the snippets.
View Plugins & Integrations →FAQs
How is the Capabilities System different from Plugins?▾
Can I disable auto-detection?▾
What happens if the detector picks the wrong service?▾
Are capabilities loaded on every page?▾
Ready to build?
Create your first app for free, no credit card required.