Plugins and configuration

DataMind Oda is built from plugins, and a bundle groups plugins together. This page, for plugin authors, covers installing a bundle from a folder and where a plugin's configuration is described. Managing the bundles a profile runs from inside the app is on Plugins and bundles.

Install a bundle from a folder

A bundle you build or receive as a folder on this computer joins a profile through the profile's plugin command, giving the folder's absolute path as a file: address.

  1. Run the profile's plugin command, naming the profile and the folder's own absolute path.
  2. Start the profile again. A running profile keeps the bundle set it started with, so a change to its packages applies at the next start.

Keep a change you make in Creator mode

Creator mode extends Oda through conversation: Oda can write a plugin that adds a feature or a UI. The two inspection calls it uses are read-only, so looking never changes anything; a change that should outlast the chat is authored as a bundle and installed the way any bundle is.

Where a plugin's configuration is described

A plugin's settings arrive through its entry in the composition: the profile's layers and your own settings file write the same entries, and the last write wins (The profile settings file covers the file your changes live in). The reference for what each entry can set is the plugin configuration catalogue:

To read the exact schema a running installation has mounted, use the inspection tools: filter the config directory by the plugin's name, then query with the entry's id. The answer carries the entry's status and, when it has one, its exact JSON schema; Inspect and manage extensions covers the calls.

Questions, answered

Can I install a bundle straight from a folder on this computer?

Yes. From a command line, add the folder to a profile with the profile's plugin command, giving the folder's absolute path as a file: address. Start the profile again afterwards; a running profile keeps the bundle set it started with.

Why does adding a bundle need pnpm?

The command manages packages from outside Oda by forwarding its arguments to the package manager, so that work needs pnpm on your PATH. Oda profiles and launchers covers the command in full.

How do I keep a change I made in Creator mode?

Make it a bundle. The inspection calls are read-only, so a change is never kept by looking; author it as a plugin bundle and install it the way any bundle is installed, from inside the app or from a command line. See Plugins and bundles.

Where do I find what settings a plugin accepts?

In the plugin configuration catalogue: for every plugin it shows the config: block a composition entry can set. The catalogue is generated from the plugins' own source, so it describes what a build actually accepts.

What does a Requires: line tell me?

The service keys the plugin declares. They are resolved before the plugin starts: a declared service whose provider is away parks the plugin instead of failing a later call.

Can a plugin need no configuration at all?

Yes. Plugins that load and take no configuration are listed under Loadable plugins with no config.

Why are some entries in the catalogue not loadable?

Because they are not plugins you load by themselves. The Seam packages (not directly loadable) and Library packages (no plugin entry) sections keep them apart from the loadable plugins.

How do I find a plugin's schema in a running installation?

Filter the config directory by the plugin's name, then query with the entry's id; the answer carries its status and, when it has one, its exact JSON schema. Inspect and manage extensions covers the calls.

Where do I switch a bundle on after installing it?

On the Plugins page; Plugins and bundles covers switching, removing and the states a row can show. A newly installed package loads at the next start.