# Claude Code plugin · OmniGet Docs

- URL: https://getomniget.com/docs/claude-plugin
- Updated: 2026-10-02
- OmniGet 1.0.0

> Free, open-source yt-dlp GUI for Windows, macOS and Linux. Paste a link to save video, audio and files from 1,000+ sites, or run AI coding agents.

---

AI agents

# Claude Code plugin

The OmniGet plugin for Claude Code lets you paste a video, audio or post link into Claude Code and get the file, its captions and a transcript, ready to summarize, quote or research. It can also connect Claude Code to the OmniGet desktop app, hand tasks to your OmniGet agents and share memory with them.

## Where it is

The plugin lives in the OmniGet repository and installs from Claude Code’s plugin marketplace. It works without the desktop app as long as `yt-dlp` and `ffmpeg` are on your computer; with the app installed, it reuses the tools the app already manages.

## How to use it

### Install

1.  In a Claude Code session, add the marketplace and install the plugin:

    ```
    /plugin marketplace add tonhowtf/omniget
    /plugin install omniget@omniget
    ```

2.  Run `/omniget:setup`. It checks for `yt-dlp` and `ffmpeg`, installs what is missing after one confirmation (Homebrew on macOS, winget or scoop on Windows, the system package manager on Linux), and downloads `omniget-cli` for your system.

3.  Optionally, add a transcription key. Captions and local Whisper need no key; for cloud transcription, run this in your own terminal (the input is hidden and the key never passes through Claude):

    ```
    bash claude-plugin/omniget/scripts/keys.sh set
    ```

    Only OpenAI and Gemini keys are supported for transcription.

### Connect to the desktop app

Run `/omniget:connect` with OmniGet open. OmniGet shows a request with a code; check that Claude Code shows the same code and click **Allow**. OmniGet then adds its MCP server to Claude Code. See [OmniGet as an MCP server](https://getomniget.com/docs/mcp-server).

## Commands

| Command | What it does |
| --- | --- |
| `/omniget:setup` | Install the missing tools and `omniget-cli` (one confirmation) and check API keys. `--local` also sets up an on-device Whisper engine and model. |
| `/omniget:fetch <url>` | Download the media to `~/Downloads/omniget`. `--audio` for audio only, `--quality` for the height. |
| `/omniget:transcribe <url or file>` | Transcribe, and summarize with `--summarize`. `--backend` and `--lang` choose the engine and language. |
| `/omniget:research <url>` | Captions and transcript distilled into a Markdown note with `[mm:ss]` references. |
| `/omniget:connect` | Connect Claude Code to the OmniGet desktop app (you click **Allow** in OmniGet). |
| `/omniget:doctor` | Report which tools, Whisper models and speech API keys this computer has, and how to add the missing ones. |

### Transcription order

With `--backend auto` (the default), the plugin uses the first engine that works:

1.  **captions**: the platform’s own subtitles, through `yt-dlp`.
2.  **local**: `whisper-cli` (whisper.cpp), offline.
3.  **mlx**: `mlx_whisper` on Apple Silicon, offline.
4.  **gemini**: needs `GEMINI_API_KEY`.
5.  **openai**: needs `OPENAI_API_KEY`.

Force one with `--backend local`, `mlx`, `gemini`, `openai` or `captions`. Keys are read from the environment or `~/.config/ai-keys.env` and never printed.

## Skills

The plugin adds four skills that Claude Code uses on its own:

| Skill | When it acts |
| --- | --- |
| `omniget-fetch` | You paste a media link and ask to download it. |
| `omniget-transcribe` | You ask to transcribe or summarize a video, or what it says. |
| `omniget-connect` | You ask Claude to connect to or set up OmniGet and the OmniGet tools are not available yet. |
| `omniget-agents` | Only when you explicitly ask to hand a task to one of your OmniGet agents. The desktop app must be running. It never delegates from inside an OmniGet job. |

## Memory hook

The plugin includes a hook that shares memory between Claude Code and OmniGet:

-   When you send a prompt, it asks OmniGet for related memories and adds them to the context.
-   When Claude finishes, it sends the last exchange to OmniGet to remember.

The hook does nothing until you set `OMNIGET_MEMORY_TOKEN` to the token of an MCP connection with the memory scopes (**Recall and reflect over what OmniGet remembers about you**, and **Teach OmniGet facts about you** to learn). It never blocks Claude Code; if OmniGet is closed, it stays silent. See [Agents, memory and skills](https://getomniget.com/docs/agents).

## Options

| Variable | What it does | Default |
| --- | --- | --- |
| `OMNIGET_DIR` | Output folder. | `~/Downloads/omniget` |
| `OMNIGET_COOKIES_FROM_BROWSER` | `chrome`, `firefox`, `safari` or `edge`, to use your own login for media that needs it. | Not set |
| `OMNIGET_KEYS_FILE` | Another file for the API keys. | `~/.config/ai-keys.env` |
| `OMNIGET_WHISPER_MODEL` | A specific Whisper model file for the local engine. | Not set |
| `OMNIGET_MEMORY_TOKEN` | Turns on the memory hook. | Not set |
| `OMNIGET_MCP_URL` | The OmniGet MCP address for the memory hook. | The first OmniGet port |

The plugin downloads only what you ask for and uses the session you already have. It does not break DRM or paywalls.

## Common problems

### `/omniget:doctor` says a tool is missing

Run `/omniget:setup`. On Linux it needs `sudo`, so run it where you can type your password, or follow the commands it prints.

### The `omniget-agents` skill cannot find `omniget`

The skill calls `omniget agent …`, but setup installs the binary as `omniget-cli`. Until this is fixed, create an alias or a link named `omniget` that points to `omniget-cli`.

### Transcription is slow or inaccurate

Captions are instant when the platform has them. Otherwise, a cloud key (OpenAI or Gemini) avoids downloading a local model.

[Previous**← Command line**](https://getomniget.com/docs/cli) [Next**The Canvas →**](https://getomniget.com/docs/canvas)
