Skill
Reusable know-how — guidance, and optionally tools — packaged so MIRA can apply it on demand.
Packages
MIRA can discover and install packages that add skills, tools, channels and apps. Official packages install Verified out of the box — and because every install is checked per artifact, trusting a source never means trusting a download blindly.
What they are
A package extends MIRA with a new capability. They're distributed as signed .mirapkg / .miraskill artifacts — each one carries its publisher's signature and a content hash.
Reusable know-how — guidance, and optionally tools — packaged so MIRA can apply it on demand.
An MCP tool server, so an external service shows up to the agent as a set of tools.
A CPP (Channel Provider Protocol) provider that bridges another messaging system in as a channel.
A packaged in-MIRA app.
The trust model
Trusting a source by default doesn't weaken anything, because the source only helps you find packages — it never gets to decide what's allowed to install. That decision is made again, per artifact, at install time.
MIRA fetches a signed catalog (index.json) from each configured source and verifies the catalog's signature against that source's pinned public key. Verified entries appear in-app under Plugins → Browse.
As of v0.356.0 the first-party Vexillon source is enabled by default, and MIRA bundles and auto-pins the Vexillon publisher key — so official packages install as Verified with no setup. The source is admin-disableable at any time.
A community package is signed with the author's own key and shows as Untrusted until an admin explicitly pins that key. Nothing from an unpinned publisher is treated as trusted.
The authoritative check happens at install time, on the artifact itself: MIRA re-checks the artifact's sha256 and its embedded publisher signature against the trust store before anything is installed.
A tampered or unsigned catalog can never cause an unsigned or untrusted artifact to install silently. The catalog signature exists only to stop a catalog from redirecting a trusted package id to a malicious download — it is not what authorises an install. Per-artifact verification gates every install, whatever the source.
Available now
Published in the Vexillon index today. Both require MIRA ≥ 0.356.0 and install as Verified. The catalog is young and will grow.
Nextcloud Files + Calendar as agent tools, over MCP (stdio).
Bridges Nextcloud Talk to MIRA as an external channel (CPP).
Browse the full, signed index at github.com/Vexillon-ai/mira-packages.
Admins open Plugins → Browse in the MIRA web UI and install from there. The Vexillon source is on by default on 0.356.0 and later, so official packages are ready to browse with no setup.
For reliable Browse-based install, run 0.356.2 or later — earlier 0.356.x had install-path bugs that these patches fix.
On an older release? Update first — the installers always pull the latest:
$ mira upgrade New to MIRA? See the installation guide for the one-line installers.
Packages are submitted by pull request to the mira-packages repo: add your signed artifact under packages/<id>/<version>/ and an entry in index.json. CI validates catalog integrity, and a maintainer reviews and merges.
Your package is signed with your own key, so it stays Untrusted (trust-on-first-use) on each instance until an admin pins your key — exactly as it should be.
Full flow, layout and signing steps are in the repo README.
Official packages install Verified out of the box — and every install is checked per artifact, whatever the source.