Loading the documentation…
DataMind Oda is put together from plugins, and a bundle groups plugins into one package. The Plugins page is where you manage them: switch a plugin or a bundle on or off, see what a pack contains, install more from a package name, a repository address or a folder on this computer, and open the settings a plugin brings. The page is part of Oda's developer surface, so it stays hidden until its feature switch is on.
The sidebar entry and the page exist only while that feature is on. Memory, skills and connectors shows where the switch sits among Oda's settings.
While the page reads, it shows Reading plugins…. If it cannot read everything, it says Could not read all plugins, possibly due to a network problem and offers Retry. When this installation runs without a manageable profile, it reads This deployment runs without a manageable profile, so plugins cannot be installed or switched here., and both installing and switching stay unavailable. An installation with nothing to show reads No plugins are installed yet.
Plugin management needs it; it cannot be switched off or uninstalled.The change takes effect at the next start. How changes apply and what start-up reports covers the timing.{name} was saved, but a higher-priority configuration overrides it, so it is not in effect.Could not enable: {reason}, Could not disable: {reason}, or, for a part, Could not enable the component: {reason}.Open a card to see the plugin's own page; the crumb reads Plugins, Back to plugins returns to the list, and Back to {name} appears when you came from another plugin's page.
3 total · 3 off.No component matches., and a pack that brings no parts reads This plugin pack contains no components.Some plugins and bundles bring settings you edit from their page.
for example @acme/ datamind-plugin.The dialog carries the warning Install only plugins you trust: they run with your permissions and can damage DataMind Oda or leak your data.
Before anything downloads, the check refuses an address it cannot accept. The sentence shows under the field, the address stays editable, and nothing is installed:
This is not a package name or address that can be installed: {reason}This plugin is already installedNo such plugin was foundThe path does not exist or is not a valid plugin packageThis package declares no bundle, so it cannot be installed as a plugin: {reason}The plugin registry could not be reached; check the network and try againNo registry could be reached (tried: {registries}); check the network or proxy settings, or change the registryhttp:/ / or https:/ /; anything else is refused with Enter an address starting with http:/ / or https:/ /. A hint explains that private sources belong here, and where a source's login credentials go.{previous} could not serve the package; retrying through {registry} (registry {index} of {total}).exit code {code}, and Copy, Copied and Collapse controls. A long log folds after 12 lines, keeping the start and the end.Installation cancelled; the plugin is not enabled, and downloaded files may remain.Installation status unconfirmed and offers Check installation status.Some dependencies want to run their own install scripts. Oda does not run them on its own; the failed screen lists the packages and explains:
These packages have install scripts that pnpm did not run.Once allowed, the scripts run here with your permissions, and the permission is saved in this profile.Allow only packages you trust.In place of Retry, the screen offers Allow these scripts and retry, which allows the scripts still waiting and retries the install. The permission is saved for those packages, so a later install does not ask again, and the finished screen reads Install scripts allowed for {names}.
Install finished with no new dependency. or Installed; it loads at the next start.The failed screen shows one line, and Show install details holds the full output. Retry runs the install again; Change registry appears when the source was the problem and no scripts are waiting for permission, and choosing it returns you to the address with the source options open.
The network connection failedNo registry could be reached (tried: {registries}). Check the network or proxy settings, or change the registry and retry.{host} could not be reached. A GitHub address or a . tgz link is not fetched through the registry: this machine must reach it directly or through a proxy. If the plugin is also published to npm, enter its package name instead.No version matches the requestThe disk is full; the install stoppedNo write permission; the plugin cannot be installedThe downloaded package failed its integrity checkThe install timed outSomething went wrong during the install; the details say whatA failed or cancelled install puts the package records back, so the app is as it was; files already downloaded can stay.
Uninstall "{name}"? and explains What it provides goes away once it is uninstalled.Oda unloads the plugin before the package is removed.
Other configuration still uses this bundle's components; switch them off first.Could not uninstall: {reason}.You can ask Oda in a chat to install, switch or remove a plugin. Every one of these actions needs Full access or your approval for that single action; approving does not change the chat's access mode, and a declined, cancelled or unavailable approval changes nothing. Installing runs plugin code with your permissions, so allow only what you trust. Plugins and bundles covers that chat side, and When Oda needs more access covers approvals.
Oda performs the install and the bundle selection itself; do not install the package with package manager commands in the chat. A switch, an install or a replaced package can report one of these states:
| State | What it means | What to do |
|---|---|---|
failed | The plugin could not load, and it needs diagnosis. | Keep the message it reports, and repair the same bundle instead of installing another copy of it. |
overridden | A higher-priority setting on this computer decides the plugin's state. | Change the setting that decides it, or leave it as it is. |
restart-required | The change is not live yet. | Restart DataMind Oda. Replacing an installed package always needs a restart before its new code is used. |
An MCP server gives Oda the tools of another service, and a bundle can carry such a connection. Ask Oda to set up the connection as part of a bundle; to add and manage servers yourself, see MCP servers.
A bundle you build or receive as a folder on this computer can also join a profile through the profile's plugin command, giving the folder's absolute path as a file: address.
Managing packages from outside Oda needs pnpm on your PATH; the command forwards its arguments to the package manager, so removing or updating a bundle uses the same form. Oda profiles and launchers covers profiles and the command in full, and Install a plugin covers installing from inside the app.
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, from inside the app or from a command line. Installing is a managed operation with the same approvals as any other install, and a newly installed package loads at the next start. Inspect and manage extensions covers the read-only calls.
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 Oda settings file covers the file your changes live in). The reference for what each entry can set is the plugin configuration catalogue:
config: block a composition entry can set: its fields and their shape. It is generated from the plugins' own source, so it describes what a build actually accepts.Requires: lines. A Requires: line lists 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.Loadable plugins with no config section lists plugins that load and take no configuration.Seam packages (not directly loadable) and Library packages (no plugin entry) sections keep packages that are not plugins you load apart from the loadable ones.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.
The page is part of Oda's developer surface, so it stays hidden until the Plugins page feature is on in Settings > Developer > Advanced features. Advanced features covers the switch and its risks.
A plugin is one of the parts Oda is built from; a bundle is a package that groups parts together under one switch. A bundle's page lists its Components, and switching the bundle moves those parts together, while a part's own Enable component switch changes only that part and leaves the rest of the bundle untouched.
A row's state is one of Waiting for dependencies, Loading, Running, Unloading, Problem or Not running. A Beta tag marks a beta package, and a Problem tag comes with the reason the row could not be read; a row in that state cannot be switched on until it is repaired.
Your saved choice, not whether the plugin loaded. That is why a broken bundle keeps its saved choice on the switch while its row shows the problem. The choice belongs to this installation and applies to every chat; where live apply is off, it takes effect at the next start. When a higher-priority configuration decides the plugin's state, that configuration wins and the notice says your choice is not in effect.
Open its card: the Components section lists the parts, with a count for the states (3 total · 3 off), and each part's own state and switch. Filter components narrows the list; a pack that brings no parts reads This plugin pack contains no components.
The one chosen in Registry: Default registry, a mirror this installation offers, or a Custom address. Your last choice starts the next dialog, and a custom address must start with http:/ or https:/.
A dependency of the package wants to run its own install scripts, and Oda does not run them on its own. The screen lists the packages, Allow these scripts and retry allows the scripts still waiting and retries, and the permission is saved for later installs. Allowed scripts run with your permissions, so allow only packages you trust.
Open its page and choose Uninstall, then confirm in the dialog. Oda unloads the plugin before the package is removed, and it refuses to remove what it manages itself or a bundle whose parts another configuration still uses. Until you uninstall it, a plugin you installed stays part of this installation, with your switch choices saved.
Yes. You can ask Oda to install, switch or remove a plugin, and every such action needs Full access or your approval for that single action. Installing runs plugin code with your permissions, so allow only what you trust. A change Oda reports as restart-required is not live until you restart Oda. When Oda needs more access covers approvals.
Yes. In the app, enter the folder's path in Package name or address. From a command line, add the folder to a profile with the profile's plugin command, giving its absolute path as a file: address, then start the profile again; a running profile keeps the bundle set it started with.
Yes. A connection can bundle a server that answers at an HTTP address, or a local command that runs on this computer. Ask Oda to set the connection up for you, and check it by asking Oda to call one of the server's tools.
In the plugin configuration catalogue: for every plugin it shows the config: block a composition entry can set, generated from the plugins' own source. In a running installation, filter the config directory by the plugin's name and query with the entry's id to read its exact schema.