Packages
A package is a ready-made set: several skills, commands, agents and MCP servers put 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.
Packages live in the Skill storage — switch the Type filter to “Packages” or find them in the “Packages” group.
Import a package
The Import package button offers two sources:
From a folder
Pick a folder on disk that holds a package, a plugin or a marketplace. onplate figures out the structure itself.
From a repository
Paste the https or ssh address of a Git repository. If the skills are not at the root of the repository, name the subfolder in the “Skills folder” field (plugins, for example).
Press Connect and import. The import runs with a progress indicator by stage:
- Cloning the repository — downloading;
- Parsing and adding packages — onplate finds every package inside;
- Fetching external plugins — if the marketplace points at plugins in other repositories, those are pulled in too.
The repository is added to the Repositories section and tracked from then on: when the author releases an update, you see it on the Dashboard.
The package card
For every package you can see:
- Contents — how many skills, commands, agents, MCP servers, hooks and rules are inside. onplate takes the compatibility of each type with the chosen AI into account and marks in advance what will be skipped for that target;
- Security summary — “N safe · N suspicious · N dangerous” across all the resources of the package, with a “show why this score” button;
- Resources and Package files — the full list of contents;
- where the package came from — a folder, a repository or a marketplace;
- how the package is installed — a “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 AI and an ordinary layout in another, so the mark lists the targets instead of just saying yes or no.
Add a package to an AI
The Add button opens the install dialog:
- Contents — what exactly will be installed. Resources that do not fit the chosen targets are marked “skipped” — no surprises.
- Install as — loose files in the AI directories, or a native plugin (see below).
- Targets — which AI tools to install into (several at once is fine).
- Scope — Global or Project (with a folder to pick).
- Security — a summary across the resources. If the package contains a dangerous resource, a warning appears and the install requires a justification. A separate warning is shown when a package adds hooks — commands that run automatically: that too needs an explicit confirmation.
After the install, Orbi shows the outcome: how many resource copies could be confirmed, how many writes were made 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 unconfirmed or partial result, the package may have installed only part of its resources. Refresh the package card and Bindings, check every chosen target, and do not re-run the install blindly.
Loose files or a native plugin
Claude Code and Codex have their own plugin registry, and a package can go in there whole. The “Install as” switch in the dialog offers two modes:
- Loose files in the AI directories — the way it always worked and the default: skills, commands and agents land in the AI directories one by one. Works with every target.
- Native plugin where the AI supports it — the package is registered in the plugin registry of the AI itself. It shows up in the plugin list (
claude plugin list,codex plugin list), it can be switched off as a whole, and the skills are handed to the model with a namespace likepm-toolkit:privacy-policy— commands from two different marketplaces no longer overwrite each other by name.
The switch does not appear at all when none of the package targets has a native registry. If only some of the chosen targets have one, onplate says exactly that: these targets get the plugin, the rest get the ordinary layout. An AI plugin registry is per-user and never per-project, so with the Project scope everything goes in as the ordinary layout — the hint under the switch warns you about it.
A separate hint appears when claude and opencode are both selected: OpenCode reads the Claude skill directories by default and deduplicates them by name, so the second copy of a skill is written but never used. The copy is written anyway — it becomes the only working one if external sources are disabled in OpenCode through the OPENCODE_DISABLE_EXTERNAL_SKILLS or OPENCODE_DISABLE_CLAUDE_CODE_SKILLS variables.
Quarantine is stricter in plugin mode. A plugin goes to the AI whole — together with resources onplate would not install one by one — so dangerous content of any kind requires an explicit justification, and nothing is written to disk before it.
Updating and rolling back
- Update — fetch the package again from its source repository, or pick a folder with the new version. If the package was imported from a folder, onplate remembers it and offers to update from the same place.
- Roll back — return the previous version from a snapshot if an update broke something. onplate asks for a confirmation first.
Every package operation is written to the Activity log.
Deleting
- Delete (the install) — remove the package from every AI and from disk; the record in storage stays.
- Delete from storage — the package moves to the trash: it is removed from disk, but it can be restored from the trash in the Storage.
Restoring brings the package, its resources, files and snapshots back to storage, but it does not redeploy the installs that were removed. After restoring, pick the AI tools you need and install the package again.