Plugin Configuration
Settings UI panels
Plugins can register a settings panel that appears under Settings > Plugins > [Plugin Name]. The panel is defined in the plugin's manifest and rendered by the OmniLux web UI.
Plugin settings are stored in the SQLite database via the PluginSettings API.
Accessing settings in code
typescript
// Read a setting
const apiKey = await context.settings.get<string>('apiKey');
// Write a setting
await context.settings.set('apiKey', 'my-api-key');
// Read with default value
const timeout = await context.settings.get<number>('timeout') ?? 30;
// Delete a setting
await context.settings.delete('apiKey');Environment variable overrides
Some plugins may support environment variable overrides for settings that need to be set before the plugin loads (e.g., API keys, connection strings). Check the individual plugin's documentation for supported env vars.
The general convention is:
OMNILUX_PLUGIN_<PLUGIN_NAME>_<SETTING_NAME>=valueConfiguration priorities
- Environment variables (highest priority)
- Database settings (set via UI or API)
- Default values from the plugin manifest (lowest priority)