Extensions can access persistent databases and routing mechanisms. Use the StorageManager to query state, or the mainIpc parameter to invoke core app functions.
Persistent storage manager
The StorageManager singleton controls database get/set operations, migrations, and encryption. Retrieve the storage manager during initialization:
Custom data scopes
If your extension requires custom persistent key-value configuration data, use getCustomData and setCustomData.
If your key begins with a module identifier followed by double colons (e.g. myModule::myKey), the storage manager isolates this data in a dedicated configuration file: myModule.config.
Core database configuration
You can read or update the host application’s core settings (e.g., app, terminal, browser, performance, plugin, cards, cardsConfig):
Encrypted browser history
The application encrypts browser history entries on disk using Chromium’s safeStorage API. You must decrypt browser records before reading them:
Card lifecycle management
Use the storage manager to update card registries, pinned lists, or terminal settings:
Core IPC namespaces (mainIpc)
The mainIpc parameter exposes direct wrappers to core application IPC channels. Use these namespaces to access background functionalities:
lynxIpc: Main app configuration, plugin loading, and logger utilities.
application: Window layout controls (minimize, maximize, close, relaunch).
browser: Controls browser tabs, download panels, and navigation.
contextMenu: Context menus and system tray options.
dialogWindow: System alert dialog prompts and file selection panels.
downloadManager: Queries download indicators and file sizes.
files: File operations (validate directories, list paths, delete/trash).
git: Git repository operations (shallow clone, pull, checkout branch).
pty: PTY process spawning, input writing, resizing, and exit hooks.
storage: Direct database operations.
storageUtils: Storage helper operations.
user: Retrives user profiles and options.
utils: Executes shell commands, activates Conda, and validates Python.
Last modified on June 21, 2026