Plugins

Plugin System Overview

StudioBrain’s plugin system lets you extend the application with custom UI panels, backend routes, entity tabs, creative tools, and AI integrations. Plugins are distributed through the Plugin Marketplace and run in a sandboxed environment that protects your data while giving plugins the access they need.

What Plugins Can Do

Plugins hook into StudioBrain at multiple levels:

Extension PointDescriptionExample
Sidebar panelsCustom UI rendered in the entity editor sidebarRelationship graph, AI writing assistant
Entity tabsFull-width tabs on entity pagesVersion history, analytics dashboard
Standalone pagesDedicated pages under /plugins/{id}Kanban board, bulk export tool
Menu itemsEntries in the Tools menu or context menus”Export to PDF”, “Sync to Jira”
Backend routesCustom REST API endpoints under /api/plugins/{id}/Webhook receivers, external service bridges
Event handlersReact to entity lifecycle eventsAuto-tag on create, validate on save
AI integrationsUse the AI generation service for content creationCharacter backstory generator, description enhancer
Field widgetsCustom form inputs in the entity editorGradient picker, map coordinate selector

Plugin Runtimes

StudioBrain supports two plugin runtimes with different tradeoffs:

WebAssembly plugins run in a memory-safe sandbox on all platforms. This is the primary runtime for all new plugins and the only runtime allowed on StudioBrain Cloud.

PropertyDetails
PlatformsCloud, Desktop, Core (self-hosted)
SandboxingFull memory isolation. No host access unless explicitly granted via capabilities.
PerformanceNear-native. 5-20ms cold start.
LanguagesRust, Python (via componentize-py), TypeScript (via javy), C/C++, Go
DistributionSingle .wasm binary, no runtime dependencies

Python / Lua (Legacy)

Python and Lua plugins run natively on the host machine. They have full access to the filesystem and network unless restricted by the OS. These runtimes are available only on Desktop and Core (self-hosted) editions.

⚠️

Python and Lua plugins are considered unsafe because they execute outside the WASM sandbox. They cannot be distributed through the Community Marketplace and are not available on StudioBrain Cloud. New plugins should use WASM.

PropertyDetails
PlatformsDesktop, Core (self-hosted) only
SandboxingNone. Runs as a native process with host-level access.
PerformanceInterpreted. 100-500ms cold start.
LanguagesPython 3.10+, Lua 5.4
DistributionRequires Python/Lua runtime on the host machine

Where Plugins Appear

Plugins declare where their UI renders in the plugin.json manifest. The host application loads plugin panels into the appropriate slots:

+--------------------------------------------------+
|  Entity Editor                                    |
|                                                   |
|  +------------------+  +----------------------+   |
|  |  Main Content    |  |  Sidebar             |   |
|  |                  |  |                      |   |
|  |  [entity fields] |  |  [plugin panels]     |   |
|  |                  |  |  - AI Assistant       |   |
|  |                  |  |  - Relationships      |   |
|  +------------------+  +----------------------+   |
|                                                   |
|  Tabs: Overview | Relations | [Plugin Tabs...]    |
|  +----------------------------------------------+ |
|  |  [plugin tab content]                        | |
|  +----------------------------------------------+ |
+--------------------------------------------------+

Panel locations declared in plugin.json:

LocationWhere it renders
entity-sidebarRight sidebar of the entity editor
entity-tabAs a tab on the entity page
entity-footerBelow the main content area
pageAs a standalone page accessible from navigation
tools-menuAs an entry in the Tools dropdown menu

Official vs Community Plugins

The Plugin Marketplace has two catalogs:

Official Plugins

Maintained by Biloxi Studios. Verified, tested against every release, and covered by StudioBrain support. Official plugins include creative tools (ComfyUI, Voice Forge), export plugins (PDF, Unity, Unreal), and integrations (Jira, Discord, Google Sheets).

Community Plugins

Created by third-party developers and submitted to the studiobrain-community-plugins repository. Community plugins must use the WASM runtime. They go through automated validation and optional manual review before appearing in the marketplace.

Community plugins are not covered by StudioBrain support. Review the plugin’s source code, permissions, and author reputation before installing.

Platform Compatibility

Not all plugins run on all platforms. The platforms field in plugin.json declares compatibility:

PlatformWASM PluginsPython/Lua Plugins
Cloud (app.studiobrain.ai)YesNo
Desktop (Tauri app)YesYes (with consent dialog)
Core (self-hosted)YesYes (with consent dialog)

The marketplace filters plugins by your current platform automatically. Cloud users only see WASM plugins. Desktop and Core users see all compatible plugins.

Security Model

Plugins declare the capabilities they need in plugin.json. The host enforces these declarations at runtime:

  • Auto-granted capabilities (entity_read, asset_read, ai_generate) are safe and enabled by default.
  • Consent-required capabilities (entity_write, asset_write, http_request) show a permission dialog before the plugin can use them.
  • Platform-restricted capabilities (file_read, file_write) are blocked entirely on Cloud.

See the Permissions Reference for the complete capability matrix.

Next Steps