Skip to content

Plugins

OxideTerm’s native plugin host discovers packages from the active configuration directory. A plugin declares its identity and contributions in plugin.json; it does not load JavaScript into a browser surface.

Supported runtime kinds are:

  • process for an executable managed by the host over versioned JSON Lines.
  • wasm for a Wasm module managed by the integrated runtime.
  • manifest-only for contributions that need no executable runtime.

Legacy JavaScript entries are not executed by the native application.

Use the desktop Plugin Manager to browse, install, enable, disable, update, and configure plugins. For local development, place a package under the active configuration directory:

<config-dir>/plugins/<plugin-id>/
├── plugin.json
└── plugin.wasm or bin/<executable>

Run oxideterm paths --json to inspect the active configuration directory. The CLI can list, enable, disable, and inspect plugin settings; installation and updates belong to the desktop manager.

Plugins can declare tabs, sidebar panels, settings, commands, keybindings, context menus, status items, terminal hooks, event subscriptions, AI tools, and supported transports. Tabs and panels provide declarative schemas; GPUI owns rendering and interaction.

The host validates manifests and paths, passes the effective capabilities and allowed host APIs during activation, and keeps plugin diagnostics separate from protocol output. Review a plugin’s identity, permissions, settings, and declared surfaces before enabling it.

Read the Plugin Development Guide for a native manifest and runtime walkthrough.