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
-
In a Claude Code session, add the marketplace and install the plugin:
/plugin marketplace add tonhowtf/omniget /plugin install omniget@omniget -
Run
/omniget:setup. It checks foryt-dlpandffmpeg, installs what is missing after one confirmation (Homebrew on macOS, winget or scoop on Windows, the system package manager on Linux), and downloadsomniget-clifor your system. -
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 setOnly 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.
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:
- captions: the platform’s own subtitles, through
yt-dlp. - local:
whisper-cli(whisper.cpp), offline. - mlx:
mlx_whisperon Apple Silicon, offline. - gemini: needs
GEMINI_API_KEY. - 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.
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.