Skip to content

Plugins

Chris Smashe edited this page Jun 17, 2026 · 4 revisions

Plugins

TypeWhisper for Linux uses the shared plugin model from the TypeWhisper codebase. Plugins add transcription engines, LLM providers, actions, post-processing, memory storage, and companion behavior to the app.

The Plugins page listing installed extensions (32 installed, 4 enabled), grouped by category

Plugin categories

This branch uses the following plugin categories:

Category What it does Examples
Transcription engines Add local or cloud speech-to-text engines. See [[Transcription engines
LLM providers Add an LLM for prompt processing, cleanup, and memory. See [[LLM providers
Action plugins Run custom actions from transcriptions or prompt results. Linear, Obsidian
Post-processing plugins Transform text after transcription. Script
Memory storage plugins Persist and recall extracted memory entries. FileMemory, OpenAiVectorMemory
Companion plugins Observe app/plugin events and react. Webhook
TTS providers Add spoken-feedback voices that read text back. Supertonic TTS (local), OpenAI, xAI

See Action, post-processing, memory & companion plugins for details on the action, post-processing, memory, companion, and TTS plugins.

The manifest category values are transcription, llm, memory, action, utility, and tts; the "Companion" and "Post-processing" groups above are host UI groupings rather than distinct manifest categories.

Where plugins are loaded from

Plugins are loaded from the user plugin directory:

  • ~/.local/share/TypeWhisper/Plugins/ on typical Linux setups

See Data and file paths for the full set of TypeWhisper data locations.

How bundled plugins are deployed

Bundled plugins live as source projects under plugins/ and reach the user plugin directory like this:

  • Release builds run scripts/deploy-linux-plugins.sh to publish and bundle the Linux-capable plugins.
  • The install script also bundles plugins into the published app.
  • On first run, bundled plugins are copied into the user plugin directory if they are missing.

Per-plugin collection settings

Plugins that own user-editable collections — Webhook and Script — expose per-plugin collection settings under:

  • PluginData/<plugin-id>/

Keeping the collections here means their entries survive plugin reinstalls, and the host can edit them through the settings UI without round-tripping a plugin process.

Known plugin gaps

  • Marketplace/store browsing is intentionally not active in the Linux UI right now.
  • Plugin update handling is limited compared with the intended full marketplace workflow.
  • Some plugins may depend on external binaries, API keys, local model files, or services that must be configured separately.
  • Plugins have been ported but are not all used day to day, so they are not guaranteed to all work 100%. If you find one with issues, open an issue or a pull request.

Related pages


Changelog

Date Change
2026-06-17 Initial version.
2026-06-17 Added Plugins page screenshot.
2026-06-17 Added TTS provider category row; noted manifest category values vs. host UI groupings.

Clone this wiki locally