Skip to content

Installing plugins

A plugin extends Yttri without touching core code. Install from a file, a URL, or a developer folder; every plugin explicitly requests permissions.

Open Settings → Plugins and choose one of the following:

  • Install from file — a .yttri-plugin package.
  • From URL — a link to a package.
  • Developer folder — for fast iterations during development.

The marketplace catalog is on its way: the server side — publishing, signing and mandatory review — is already live, but installing straight from the catalog is not in the app yet. No manual workaround is needed; wait for the button.

  • A package from the catalog must be signed with the Yttri key. Signing happens during review: what is signed is exactly what passed attestation.
  • A package from a file or URL may be unsigned — it installs, but is flagged: nobody vouched for its origin.
  • A package with a broken signature does not install at all, from any source.
  • The signature sits next to the package as a separate .sig file, not inside it.
  • Before installing, Yttri shows which permissions the plugin requests: data domains, read or write access, network hosts, and the stated reason.
  • The plugin installs disabled. You enable it manually when you are ready.
  • The package is safety-checked before unpacking: structure, paths, and archive.

Updates show a permission diff: new rights require explicit consent. Yttri keeps a rollback snapshot, so the Roll back button restores the previous version.

On uninstall, you choose what happens to the plugin’s data: keep, delete, or export.

When you enable a plugin, Yttri first tries to load its code in the isolated process without running it. If the package does not load — incompatible with this app version, corrupted, or importing a missing module — the plugin stays off and the error states why. The verdict is remembered rather than recomputed on every start; it is bound to the exact code, platform, Yttri version and runtime revision, so updating any of them triggers a fresh check.