Packages
A package is a ready-made set: several skills, commands, subagents and MCP servers gathered together. Collections usually travel in this shape — “everything for a product manager”, or Claude plugins. onplate understands packages, plugins and whole plugin marketplaces, and installs them into any supported AI tool.
Packages live in Skill storage — switch the Type filter to “Packages” or find them in the “Packages” group.
How a package gets into storage
There is no separate “Import package” button any more. Everything is added through one entrance — the Add button in storage — and onplate decides what kind of entry it is:
A folder with a manifest goes to “Packages” as a whole, together with its commands and hooks. A standalone
SKILL.mdbecomes a skill.
So “adding a package” means picking a folder with a manifest, a plugin or a marketplace, or connecting a Git repository.
When you connect a repository the import runs in stages, with progress:
- Cloning the repository — the download;
- Parsing and adding packages — onplate finds every package inside;
- Fetching external plugins — if the marketplace points at plugins in other repositories, those are pulled too.
The repository is added to Repositories and watched from then on: when the author ships an update you will see it on the Dashboard.
The package card
A package row expands into the package contents — a file tree by kind: commands, skills, subagents, MCP servers, hooks and rules. Each entry carries its scanner verdict.
Besides the contents you can see:
- the security summary — “N safe · N suspicious · N dangerous” across every resource in the package, with a Show why this verdict button;
- where the package came from — a folder, a repository or a marketplace;
- how the package is installed — the “as a plugin: …” mark lists the AI tools where the package is registered as a native plugin. The same package can be a plugin in one tool and loose resources in another, which is why the mark lists targets instead of saying yes or no;
- plugin containers — if there is such an entry inside, it is marked “view only”: it is not installed by itself, and the supported nested resources are installed separately.
Adding a package to an AI tool
The Add button opens the install dialog:
- Contents — exactly what will be installed. Resources that do not suit the chosen targets are marked “will not install for the chosen targets” — no surprises.
- How to install — loose resources or a native plugin (see below).
- Targets — which AI tools, several at once if you like.
- Scope — Global or Project, with a folder picker.
- Security — the summary across resources. A dangerous resource requires a justification. A separate warning appears if the package adds hooks — commands that run automatically.
After the install Orbi shows the outcome: how many resource copies were confirmed, how many writes went through and what was skipped as incompatible. Writing a file is not by itself a confirmed install: onplate re-reads the local state and checks the result.
If Orbi reports an undetermined or partial result, the package may have installed only some of its resources. Refresh the package card and Bindings, check every chosen target, and do not re-run the install blindly.
Loose resources or a native plugin
Claude Code and Codex have their own plugin registries, and a package can be installed there as a whole. The “How to install” switch offers two modes:
- Loose resources in AI folders — the default: skills, commands and subagents are placed into the AI folders individually. Works with every target.
- As a native plugin, where the AI supports it — the package is registered in
the AI tool's own plugin registry. It shows up in the plugin list
(
claude plugin list,codex plugin list), it can be disabled as a whole, and the skills reach the model namespaced aspm-toolkit:privacy-policy— commands from two different marketplaces no longer clobber each other by name.
The switch does not appear at all if none of the package's targets has a native registry. If only some of the chosen targets have one, onplate says so: these targets get the plugin, the rest get loose resources. An AI tool's plugin registry is user-level and never project-level, so with the Project scope everything is installed as loose resources — the hint under the switch says so.
A separate hint appears when both claude and opencode are selected:
OpenCode reads Claude's skill folders by default and de-duplicates by name, so
the second copy of a skill is written but will not be used. The copy is still
written — it becomes the only working one if external sources are disabled in
OpenCode through OPENCODE_DISABLE_EXTERNAL_SKILLS or
OPENCODE_DISABLE_CLAUDE_CODE_SKILLS.
Quarantine is stricter in plugin mode. A plugin travels to the AI tool whole — including resources onplate would not install individually — so dangerous content of any kind requires an explicit justification, and nothing is written to disk until it is given.
Exporting to a foreign format
A package can be built so that it works without onplate on the other side: Export to a foreign format → “Build as a Claude plugin”, “as a Codex plugin” or “as a Cursor plugin”.
This is not an install: nothing is connected and nothing in your AI tools changes. onplate simply puts the files into a folder you choose — you can send it to a colleague or commit it to a repository. Before building you can see what will be included and what will not: MCP servers, for instance, cannot be carried into the Codex format, because there they are declared by connector id rather than by a launch command. Hooks are not carried into the Cursor format: its schema has not been measured on a live client, and shipping a foreign schema would mean handing over a file that is known not to work.
Updating and rolling back
- Update — re-fetch the package from its source repository, or pick a folder with the newer version. If the package came from a folder, onplate remembers it and offers to update from there.
- Roll back — restore the previous version from a snapshot if the update broke something. onplate asks for confirmation first.
Every package operation is written to the Activity log.
Deleting
- Delete (the install) — remove the package from every AI tool and from disk; the storage entry stays.
- Delete from storage — the package goes to the trash: it is removed from disk but can be restored.
Restoring brings back the package, its resources, files and snapshots, but does not redeploy the installs that were removed. After restoring, pick the AI tools you need and install the package again.