OmniGet:一款覆盖 1,800 多个站点的开源桌面下载与学习工具
英文标题:🔥 tonhowtf/omniget
开源桌面应用 OmniGet 支持下载 Udemy、Hotmart 课程,以及 YouTube、Instagram、X、Pinterest、TikTok 等 1,800 多个站点的内容,并集成 yt-dlp 作为下载引擎。该应用面向 Windows、macOS 和 Linux,提供课程播放器、PDF/EPUB 阅读器、音乐库、转录与格式转换等功能,无需终端操作。OmniGet 宣称不要求注册、没有广告或下载遥测,文件和相关数据均保留在用户本地电脑。对于开发者和高级用户,其浏览器扩展可转发登录 Cookie 与 Referer,以支持下载已登录的私密内容,并提供原生提取器、队列管理、自动规则和批量下载能力。
264.9 KB
279.5 KB
166.4 KB
341.2 KB
391.6 KB
243.2 KB
241.9 KB
224.7 KB
171.7 KB
中文
English · Português (BR) · Русский · 简体中文
下载 Udemy 和 Hotmart 课程,以及 YouTube、Instagram、X、Pinterest、TikTok 和其他 1,800 多个站点的内容。
然后对已保存的内容进行转录、转换、阅读和学习。一款免费桌面应用,无需终端。
免费。依据 GPL-3.0 开源。无需账户、没有广告,也不会对你的下载内容进行遥测。你的文件保留在自己的电脑上。
GitHub 星标数超过 9,500。它是 udemy-downloader、hotmart-downloader 和 course-downloader 主题中星标数最高的仓库。
你购买了一门课程,希望在平台下架前把它存到硬盘上。你保留着一份 yt-dlp 速查表,因为那些参数总是记不住。你有一个下载 Instagram Stories 的网站、一个下载 X 视频的网站、一个用于 Pinterest 的 Chrome 扩展、一个下载字幕的 Python 脚本,但它们没有一个能记住你的登录状态。
OmniGet 将这一切集中到一个文本框后面。粘贴链接,查看包含质量选项的预览,点击下载。随后,同一窗口还可以播放课程、阅读 PDF、转录音频并备份 Pinterest 看板。yt-dlp 和 FFmpeg 会自行安装并保持更新,因此无需配置,也无需打开终端。
| OmniGet | 单独使用 yt-dlp | 单站点网页下载器 | 付费课程下载器 |
|---|---|---|---|
| 站点 | 原生支持课程、Instagram、X、Pinterest、Bilibili、Telegram、种子下载;另通过 yt-dlp 支持 1,800 多个站点 | 1,800+ | 一个 |
| 配置 | 下载一个文件并打开 | Python、PATH、FFmpeg、参数 | 无 |
| 已登录内容 | 通过扩展从浏览器获取 Cookie | 手动导出 --cookies |
很少支持 |
| 队列 | 续传、带退避的重试、规则、已关注频道 | 一次执行一条命令 | 不支持 |
| 下载后功能 | 播放器、阅读器、闪卡、笔记、108 项工具 | 文件 | 文件,通常会被重新编码 |
| 价格和许可证 | 免费,GPL-3.0 | 免费,Unlicense | 免费但含广告 |
yt-dlp 是 OmniGet 所运行的引擎,没有它,OmniGet 就不会存在。如果你习惯使用终端且只想获取文件,单独使用 yt-dlp 就是正确的工具。
选择你的系统。所有构建版本均发布在 Releases 页面。更新会在应用内推送。
| 系统 | 下载内容 | 其他方式 |
|---|---|---|
| Windows 10 / 11 | omniget_x.y.z_x64-setup.exe(安装程序) |
|
omniget_x.y.z_x64-portable.exe(免安装,可从任意位置运行) |
||
omniget_x.y.z_x64_en-US.msi(适用于 IT 部署) |
winget install -e --id tonhowtf.OmniGet |
|
| macOS 10.15+ | 适用于 Apple Silicon(M1 及后续芯片)的 omniget_x.y.z_aarch64.dmg |
|
适用于 Intel Mac 的 omniget_x.y.z_x64.dmg |
brew install --cask tonhowtf/tap/omniget |
|
| Linux | 适用于 Debian 和 Ubuntu(amd64 与 arm64)的 .deb |
|
适用于 Fedora、openSUSE 和 RHEL 系列(x86_64 与 aarch64)的 .rpm |
||
适用于其他系统(amd64 与 aarch64)的 .AppImage |
AppImage 可通过 .zsync 文件自行更新 |
首次启动警告及其处理方法
OmniGet 未使用付费证书签名,因此每个系统首次启动时都会显示警告。这对于开源桌面应用是正常现象,而且只需处理一次。
**Windows。**SmartScreen 会显示蓝色提示框。点击 More info,然后点击 Run anyway。
**macOS。**Gatekeeper 会拒绝打开应用,并可能提示其“已损坏”。将 OmniGet 拖入 Applications 后,打开 Terminal(通过 Spotlight 搜索并输入“Terminal”),然后粘贴以下两行:
xattr -cr /Applications/omniget.app
codesign --force --deep --sign - /Applications/omniget.app
然后像平时一样从 Launchpad 打开 OmniGet。
**Linux:Debian 12+ 或 Ubuntu 24.04+ 上的 AppImage。**这些发行版不再包含 AppImage 所需的 FUSE 2。若文件因 libfuse 错误无法运行,请执行 sudo apt install libfuse2,或通过 ./omniget.AppImage --appimage-extract-and-run 启动。使用 .deb 则可完全避免这一问题。
在 Windows .exe 旁创建一个名为 portable.txt(或 .portable)的空文件,然后重新启动。设置、数据库、Cookie、插件、缓存、yt-dlp 和 FFmpeg 都将移至与可执行文件同级的 data 文件夹。不会有任何内容写入 AppData,因此整个安装可以放在 USB 闪存盘中。
一分钟完成首次下载
- 打开 OmniGet。设置界面会询问你的语言和主题,然后支持一键安装 yt-dlp 和 FFmpeg。yt-dlp 运行前会经过 SHA-256 校验。
- 复制任意链接:YouTube 视频、Instagram Reel、X 帖子、Pinterest 看板、磁力链接或直链文件 URL。
- 将链接粘贴到主页的输入框中。OmniGet 会识别站点,并显示标题、缩略图和可用质量。选择一种质量并按 Enter。
下载页面会直接显示来自下载器的速度、阶段和预计剩余时间(ETA),因此下载卡住时会明确呈现为卡住,而非显示“还剩 3 秒”却一动不动。中断的下载可从停止位置继续。遇到限速站点会采用退避策略重试,各站点的连接数也会自行适配:YouTube 最多可获得 16 个并行分片,而返回 429 的站点则会减少连接数。当系统中存在 Python 3.10 或更高版本时,yt-dlp 会以 zipapp 方式在其上运行,启动耗时不到一秒,而不必每次启动都解包内置二进制文件。
在系统任意位置复制链接,然后按 Ctrl+Shift+D(macOS 上为 Cmd+Shift+D)。OmniGet 会读取剪贴板并在后台开始下载。第二个热键 Ctrl+Shift+M 可仅提取音频,因此无需打开任何界面,就能将 YouTube 链接转为 MP3。该功能默认关闭,需手动启用;两个快捷键都可在 Settings → Downloads → Clipboard & hotkeys 中重新绑定。
OmniGet 为用户最常使用的平台提供原生提取器,其他内容则交由 yt-dlp 处理;后者覆盖约 1,800 个站点。
| 类别 | 站点与格式 |
|---|---|
| 在线课程 | 通过 Courses 插件支持 Hotmart、Udemy、Kiwify、Rocketseat 和 Meta-Analysis Academy。支持下载每节课、选择章节、下载附件,以及从上次停止的位置继续学习。 |
| 视频与音频 | YouTube(视频、播放列表、频道、从头开始的直播、章节、SponsorBlock)、Instagram、TikTok、X/Twitter、Reddit、Twitch(VOD、剪辑、直播)、Vimeo、Bluesky、Threads、Pinterest、抖音 |
| 已登录 Bilibili | 根据订阅权限支持 4K、HDR、Dolby Vision、高解析无损和 Dolby Atmos。弹幕评论可保存为 XML、ASS 或 JSON;支持为 Kodi 和 Jellyfin 生成 NFO 文件、自定义命名模板,以及 11 种 URL 类型,包括番剧、课程、收藏、稍后再看和历史记录。 |
| 图片画廊 | 通过 gallery-dl 下载来自 250 多个站点的完整画廊和个人主页,包括 DeviantArt、Pixiv、ArtStation、Flickr、Tumblr、Imgur、Kemono 等。 |
| 批量下载 | 可粘贴多个链接或加载 .txt 文件,下载整个 subreddit、Reddit 和 X 个人主页、Instagram 和 Pinterest 个人主页。 |
| 文件与传输 | 内置 BitTorrent 客户端,支持 .torrent 文件和磁力链接、直接 HTTP 文件、HLS 和 DASH 清单;还支持通过简短单词代码,在两台安装 OmniGet 的设备之间进行点对点传输。 |
| Telegram | 通过 Telegram 插件下载你所属任意频道或群组中的照片、视频、文件和音频。 |
一次设置后即可无需再管的选项包括:默认质量、仅音频格式(MP3、M4A、Opus、FLAC 或 WAV)、字幕语言和格式(SRT、VTT、ASS、嵌入式或附属文件)、嵌入缩略图和元数据、文件名模板、按平台整理、跳过已有文件、按章节拆分、速度限制、并发下载数和代理。规则可将特定频道或主机的内容自动发送至你选择的文件夹和质量设置,无需再次询问。后台会检查已关注频道,并可通过托盘通知自动下载新上传内容。
浏览器扩展:分步说明
该扩展承担两项工作。对于它能识别的站点(YouTube、Instagram、TikTok、X、Reddit、Twitch、Pinterest、Bluesky、Telegram、Vimeo、Udemy、Hotmart、Rocketseat、Bilibili、SoundCloud),可通过单击或按下 Alt+O 将当前页面发送到 OmniGet。对于其他任意站点,它会监控网络流量,寻找 MP4、HLS、DASH、WebM 和音频流,并在弹出窗口中列出它们。两种情况下,它都会转发你的 Cookie 和 Referer,这使 OmniGet 能够下载你已登录的私密内容,例如 Instagram Stories、付费课程或会员专属视频。Cookie 会按真实站点分组,因此巴西的 .com.br 域名会拥有独立条目,而不是与其他所有 .com.br 网站共用一个条目。弹出窗口还为 YouTube 提供 Force H.264 开关,适用于播放 VP9 和 AV1 时出现卡顿的电脑。
请选择与你的操作熟练度相匹配的方式。
级别 1:从应用内完成(无需下载文件,也无需 zip 文件)
- 打开 OmniGet;如尚未安装,请先安装。至少启动一次应用。
- 前往 Settings → Plugins → Browser extension。点击 Chrome 旁的 Update / Install。OmniGet 会将其内置扩展复制到一个文件夹,并为你打开该文件夹。
- 打开 Chrome(Edge、Brave 及其他 Chromium 浏览器的操作方式相同),在地址栏输入
chrome://extensions。 - 打开右上角开关以启用 Developer mode。
- 点击 Load unpacked,并选择 OmniGet 刚刚打开的文件夹。
- 工具栏中将出现 OmniGet 图标。选项页面会自动打开,并提示它正在寻找应用。
- 返回 OmniGet,仍在 Settings → Plugins → Browser extension 页面中,点击 Pair extension。数秒内应用将显示“Extension connected”。
English / 原文
English · Português (BR) · Русский · 简体中文
Download Udemy and Hotmart courses, YouTube, Instagram, X, Pinterest, TikTok and 1,800+ other sites.
Then transcribe, convert, read and study what you saved. One free desktop app, no terminal.
Free. Open source under GPL-3.0. No account, no ads, no telemetry on what you download. Your files stay on your computer.
9,500+ GitHub stars. The most starred repository in the udemy-downloader, hotmart-downloader and course-downloader topics.
You bought a course and want it on your disk before the platform pulls it. You keep a yt-dlp cheat sheet because the flags never stick. You have one site for Instagram stories, another for X videos, a Chrome extension for Pinterest, a Python script for subtitles, and none of them remember your login.
OmniGet puts all of that behind one text box. Paste a link, see a preview with quality options, click download. The same window then plays the course, reads the PDF, transcribes the audio and backs up the Pinterest board. yt-dlp and FFmpeg install themselves and stay updated, so there is nothing to configure and no terminal to open.
| OmniGet | yt-dlp alone | Single-site web downloaders | Paid course downloaders
---|---|---|---|---
Sites | Courses, Instagram, X, Pinterest, Bilibili, Telegram, torrents natively, plus 1,800+ through yt-dlp | 1,800+ | One | One or two platforms
Setup | Download one file, open it | Python, PATH, FFmpeg, flags | None | Installer, license key
Logged-in content | Cookies from your browser through the extension | Manual --cookies export | Rarely | Sometimes
Queue | Resume, retry with backoff, rules, followed channels | One command at a time | No | Varies
After the download | Player, reader, flashcards, notes, 108 tools | Files | Files, often re-encoded | Files
Price and license | Free, GPL-3.0 | Free, Unlicense | Free with ads | Subscription
yt-dlp is the engine OmniGet runs on, and OmniGet would not exist without it. If you live in a terminal and only want files, yt-dlp alone is the right tool.
Pick your system. Every build is published on the Releases page. Updates arrive inside the app.
| System | What to download | Other ways |
|---|---|---|
| Windows 10 / 11 | omniget_x.y.z_x64-setup.exe (installer) |
|
omniget_x.y.z_x64-portable.exe (no install, runs from anywhere) |
||
omniget_x.y.z_x64_en-US.msi (for IT deployments) |
winget install -e --id tonhowtf.OmniGet |
|
| macOS 10.15+ | omniget_x.y.z_aarch64.dmg for Apple Silicon (M1 and later) |
|
omniget_x.y.z_x64.dmg for Intel Macs |
brew install --cask tonhowtf/tap/omniget |
|
| Linux | .deb for Debian and Ubuntu (amd64 and arm64) |
|
.rpm for Fedora, openSUSE and RHEL family (x86_64 and aarch64) |
||
.AppImage for everything else (amd64 and aarch64) |
AppImage self-updates through the .zsync files |
The first launch warning, and how to clear it
OmniGet is not signed with a paid certificate, so each system shows a warning the first time. This is normal for open source desktop apps and you handle it once.
Windows. SmartScreen shows a blue box. Click More info , then Run anyway.
macOS. Gatekeeper refuses to open the app and may say it is "damaged". After you drag OmniGet into Applications, open Terminal (Spotlight, type "Terminal") and paste these two lines:
xattr -cr /Applications/omniget.app
codesign --force --deep --sign - /Applications/omniget.app
Then open OmniGet from Launchpad as usual.
Linux, AppImage on Debian 12+ or Ubuntu 24.04+. Those releases ship without FUSE 2, which AppImage needs. If the file fails with a libfuse error, run sudo apt install libfuse2, or launch it with ./omniget.AppImage --appimage-extract-and-run. The .deb avoids this entirely.
Create an empty file named portable.txt (or .portable) next to the Windows .exe and relaunch. Settings, the database, cookies, plugins, caches, yt-dlp and FFmpeg all move to a data folder next to the executable. Nothing touches AppData, so the whole install fits on a USB stick.
Your first download in one minute
- Open OmniGet. The setup screen asks for your language and theme, then installs yt-dlp and FFmpeg with one click. yt-dlp is checked against its SHA-256 before it runs.
- Copy any link: a YouTube video, an Instagram reel, an X post, a Pinterest board, a magnet, a direct file URL.
- Paste it in the box on the home screen. OmniGet detects the site and shows the title, thumbnail and available qualities. Pick one and press Enter.
The Downloads page shows speed, phase and ETA read straight from the downloader, so a stalled download looks stalled instead of frozen at "3 seconds left". Interrupted downloads resume where they stopped. Rate-limited sites get retried with backoff, and connections per site adapt on their own, so YouTube gets up to 16 parallel fragments while a site that answers 429 gets fewer. When a Python 3.10 or newer is present, yt-dlp runs as a zipapp on it and starts in under a second instead of unpacking the bundled binary on every launch.
Copy a link anywhere on your system and press Ctrl+Shift+D (Cmd+Shift+D on macOS). OmniGet reads the clipboard and starts the download in the background. A second hotkey, Ctrl+Shift+M , grabs audio only, so a YouTube link becomes an MP3 without opening anything. It is off until you enable it, and both shortcuts can be rebound in Settings → Downloads → Clipboard & hotkeys.
OmniGet has native extractors for the platforms people use most, and hands everything else to yt-dlp, which covers roughly 1,800 sites.
| Category | Sites and formats |
|---|---|
| Online courses | Hotmart, Udemy, Kiwify, Rocketseat and Meta-Analysis Academy through the Courses plugin. Every lesson, section selection, attachments, resume where you stopped. |
| Video and audio | YouTube (videos, playlists, channels, live from start, chapters, SponsorBlock), Instagram, TikTok, X/Twitter, Reddit, Twitch (VODs, clips, live), Vimeo, Bluesky, Threads, Pinterest, Douyin |
| Bilibili, signed in | 4K, HDR, Dolby Vision, Hi-Res lossless and Dolby Atmos according to your subscription. Danmaku comments as XML, ASS or JSON, NFO files for Kodi and Jellyfin, custom naming templates, 11 URL types including bangumi, courses, favorites, watch later and history |
| Image galleries | Whole galleries and profiles from 250+ sites through gallery-dl (DeviantArt, Pixiv, ArtStation, Flickr, Tumblr, Imgur, Kemono and more) |
| Bulk | Paste many links or load a .txt, download whole subreddits, Reddit and X profiles, Instagram and Pinterest profiles |
| Files and transfer | .torrent files and magnet links with a built-in BitTorrent client, direct HTTP files, HLS and DASH manifests, and person-to-person transfer between two OmniGet installs with a short word code |
| Telegram | Photos, videos, files and audio from any channel or group you belong to, through the Telegram plugin |
Options you set once and forget: default quality, audio-only format (MP3, M4A, Opus, FLAC or WAV), subtitle languages and format (SRT, VTT, ASS, embedded or sidecar), thumbnail and metadata embedding, filename template, organize by platform, skip existing files, split by chapters, speed limit, concurrent downloads, proxy. Rules send a given channel or host to a folder and quality of your choice without asking again. Followed channels are checked in the background and can download new uploads automatically with a tray notification.
The browser extension, step by step
The extension does two jobs. On sites it recognizes (YouTube, Instagram, TikTok, X, Reddit, Twitch, Pinterest, Bluesky, Telegram, Vimeo, Udemy, Hotmart, Rocketseat, Bilibili, SoundCloud) it sends the page to OmniGet with one click or with Alt+O. On any other site it watches network traffic for MP4, HLS, DASH, WebM and audio streams and lists them in its popup. In both cases it forwards your cookies and referer, which is what lets OmniGet download private content you are logged into, such as Instagram stories, a paid course, or a members-only video. Cookies are grouped by real site, so a Brazilian .com.br domain gets its own entry instead of sharing one with every other .com.br site. The popup also has a Force H.264 switch for YouTube, for computers that stutter on VP9 and AV1.
Pick the level that matches how comfortable you are.
Level 1: from inside the app (no downloads, no zip files)
- Open OmniGet and install it if you have not. Launch it once.
- Go to Settings → Plugins → Browser extension. Click Update / Install next to Chrome. OmniGet copies the extension that ships inside it to a folder and opens that folder for you.
- Open Chrome (Edge, Brave and other Chromium browsers work the same way) and type
chrome://extensionsin the address bar. - Turn on Developer mode with the switch in the top right corner.
- Click Load unpacked and pick the folder OmniGet just opened.
- The OmniGet icon appears in the toolbar. An options page opens on its own and says it is looking for the app.
- Back in OmniGet, still in Settings → Plugins → Browser extension , click Pair extension. Within a few seconds the app says "Extension connected" and the options page turns green. Done.
From now on, visit any supported page and click the icon. The page, its cookies and its title go to OmniGet and the download starts. Your cookies also show up in Settings → Cookies , where the Courses plugin and the Instagram, X and Pinterest tools reuse them.
Level 2: from the release zip
Every release ships omniget-chrome-extension-vX.Y.Z.zip. Download it from the latest release, unzip it, then follow steps 3 to 7 above pointing Load unpacked at the unzipped folder. Use this if you keep the app on one machine and the browser on another, or if you are installing for someone else.
Level 3: Firefox, other browsers and manual pairing
Firefox: Settings → Plugins → Browser extension → Update / Install next to Firefox, then open about:debugging#/runtime/this-firefox, click Load Temporary Add-on and pick manifest.json in the exported folder. Firefox drops temporary add-ons on restart, so repeat this until the extension is published on AMO. Safari is not supported yet because Safari extensions must ship through the App Store.
Manual pairing: if Pair extension times out, open the extension's options page (right-click the icon → Options), then in OmniGet reveal and copy the Pairing token and paste it into the options page. The endpoint URL is detected automatically. The app listens on 127.0.0.1 ports 47720 to 47729 and the token is generated per install, so nothing leaves your machine.
If the extension is installed but OmniGet is closed, clicks fall back to the omniget:// link scheme, which still queues the URL but cannot carry cookies. Tick "Always allow" the first time Chrome asks.
The Tools section: 108 tools in 16 categories
Tools is the part of OmniGet that grew beyond downloading. Each tile is one job: an isolated Rust command with JSON in and JSON out, which is also what lets AI agents drive them through the built-in MCP server. The hub has a search box that understands English and Portuguese ("legenda" finds subtitle tools) and a platform filter, and tools that only run on Windows say so on the tile and stay hidden elsewhere.
Status legend: no mark means ready, beta means it works but has not been tested against every account type, planned means the tile exists so you can see where things are going and does nothing yet.
-
Download video. Paste a link and pick quality, format and subtitles. Same engine as the home screen.
-
Metadata. Save the info, description and thumbnail without the video.
-
Thumbnails. Browse every cover image and save it at any resolution.
-
Subtitles. Download subtitles, or merge two languages into one bilingual file.
-
Comments and chapters. Fetch comments or chapter markers, filter them, export JSON or CSV.
-
Live chat. Save the chat replay of a stream as JSON or CSV.
-
Subtitle workshop. Edit, translate and re-time SRT, VTT and ASS files with a waveform, two-point sync, find and replace, an auto fix, and AI grammar and translation.
-
SponsorBlock. See sponsor, intro and outro segments and get the yt-dlp flags to skip them.
-
Dislikes. Likes, dislikes and rating from Return YouTube Dislike.
-
Real thumbnail. The frames the CDN already has at 25, 50 and 75 percent, instead of the clickbait cover.
-
Force H.264. A switch in the browser extension that keeps YouTube on H.264 instead of VP9 and AV1, for machines that stutter on newer codecs.
-
Transcribe. Audio or video to subtitles with whisper.cpp, offline. Models download on demand, Metal acceleration on macOS.
-
Text to speech. Natural voices from Microsoft Edge, free, with a synced subtitle file.
-
Translate subtitles. Translate an SRT with your AI provider or a LibreTranslate server, keeping the timing.
-
Dub from subtitles. Turn an SRT into a voice track that fits each line and optionally replace the video's audio. beta
-
Clone a voice , Design a voice and Isolate vocals through a VoiceStudio install running on your machine. beta
-
Dictation. Press a global shortcut, speak, and whisper types the text where your cursor is. beta
-
Cut a clip. Pick a video on disk and cut out a section. The result lands in the downloads queue.
-
Convert. Change container, codec or resolution, or compress, through the Convert plugin.
-
Auto captions and Text to speech open the speech tools above.
-
Record screen. Screen and system audio through FFmpeg, with a replay buffer that saves what just happened. beta
-
Timeline editor. planned
All of these run on your own Instagram session captured by the browser extension, so stories, close friends and your own lists work. Reads are paced and write actions stop on the first sign of a rate limit.
- Download post. Photo, video, reel, IGTV or carousel from a link, best quality.
- Download many links. Paste a list or a
.txtand get everything. - Reel audio. Keep only the sound, as M4A or MP3.
- Stories. Download stories, including close friends, without marking them as seen.
- Highlights. One highlight or every highlight of a profile.
- Who viewed my story. List and export viewers of each active story.
- Profile viewer. Bio, counts, HD photo and whether the account follows you.
- Profile picture in HD.
- Download a profile. All posts, reels, tagged or saved posts, with a limit you choose.
- Who doesn't follow back. Compare followers and following, protect accounts with a whitelist, unfollow at a safe pace.
- Fans. Accounts that follow you but you don't follow back, with the option to remove them.
- Mutuals.
- Who unfollowed me. Snapshots of your lists over time show who left and who arrived.
- Ghost followers. Followers who never like or comment, and the ones who engage the most.
- Whitelist. Accounts never suggested for unfollowing.
- Data export. Read Meta's "Download your information" zip offline: pending requests, close friends, blocked and more.
- Profile analytics. Engagement rate, cadence, best days and hours, hashtags and top posts of any public profile.
- Compare profiles. Up to six profiles side by side.
- Hashtag explorer. Post count, recent and top posts, related hashtags, download.
- Export comments. All comments of a post as CSV, with filter.
- Who liked. List and export the accounts that liked a post.
- Giveaway picker. Draw winners among the comments with rules for mentions, keyword and one entry per person.
- Publish. Photo, carousel, reel, video or story through your session or the official Graph API. beta
- Schedule posts. Queue posts for a date and time. OmniGet publishes them while it is open. beta
X / Twitter (10)
Public data comes through the FxTwitter API without login. Anything private (bookmarks, your follows, Grok on X) uses your X session from the cookie manager.
- Download post. Videos, images and GIFs from any post.
- Unroll thread. The whole thread on one page, exported as Markdown, HTML or text.
- Post to image. A clean PNG card of a post for sharing anywhere.
- Profile X-ray. Engagement, best time to post, top posts and hashtags of any account.
- Profile media. Every photo and video from a profile, original quality, in one go.
- Advanced search. Build queries with X operators, see trends, export results.
- Export bookmarks. All bookmarks with folders, to JSON, CSV, Markdown or HTML. beta
- Who doesn't follow back. Audit following vs. followers and unfollow safely with a whitelist. beta
- Your X archive. Open the data zip offline: stats, top posts, likes and follow lists.
- Grok. Ask Grok with live X search or summarize a thread, through the xAI API or your X session. beta
Works without login for anything public. Cookies are only needed for secret boards and for unsaving.
-
Download pin. Image in original quality, video as MP4, GIF, carousel or story pages.
-
Board backup. Every pin of a board or section with originals, videos, CSV/JSON and incremental sync.
-
Profile backup. All public boards of a profile, one folder per board, plus created pins.
-
Search without AI or ads. Filters that hide AI images, promoted pins and videos, then download.
-
Similar pins. The "More like this" of any pin, filterable and downloadable.
-
Find the source. Destination link, creator, dead-link check, Wayback Machine and reverse image search.
-
Duplicates in a board. Identical and near-identical pins, with optional unsave.
-
Color palette. Palette of a board or pin as hex, CSS or JSON.
-
Offline gallery, PDF, CSV. A board as a searchable HTML gallery, a PDF moodboard or a spreadsheet.
-
Keyword ideas. Search suggestions, refinements and the words top pins use.
-
Themes and colors. Customize the Spotify client with Spicetify themes. beta
-
Extensions. Install Spicetify extensions and custom apps from its Marketplace. beta
-
Merge. Join several PDFs into one, in the order you choose.
-
Split. Extract pages or break a PDF into parts.
-
Compress. Shrink a PDF while keeping it readable.
-
Convert. PDF to images or Word, and back.
-
OCR. Make scanned PDFs searchable. beta
-
Safe PDF. Rebuild a PDF from pixels to strip scripts and forms.
-
SlideShare to PDF. Every slide at the largest size, assembled into one PDF.
-
Google Docs export. Public Docs, Slides and Sheets as PDF, DOCX, PPTX or XLSX.
-
Calameo pages. Save the pages of a Calameo publication as SVG or JPG. beta
-
Image galleries. Whole galleries and profiles from 250+ sites with gallery-dl.
-
Scribd. Save readable books as PDF using your own session. planned
-
Upscale. Real-ESRGAN on any Vulkan GPU, 2x, 3x or 4x. beta
-
Resize images. Batch resize by width, height, fit or percent, converting the format if you want.
-
OCR. Copy the text out of images and slides. beta
-
Duplicates. Find identical files by hash and free space safely.
-
Bulk rename. Regex, counters and case changes with a preview before applying.
-
Find files. Instant search with Everything on Windows, Spotlight on macOS or fd on Linux.
-
Keep awake. Stop the computer from sleeping during long jobs.
-
Accelerated download. Big files with 16 connections, resume and checksum via aria2.
-
HLS / DASH manifest. Paste a
.m3u8or.mpdwith Referer and cookie. FFmpeg saves an MP4. -
Send to phone. Files, links and text to a paired KDE Connect device.
System (9, Windows-only items marked)
-
Clean caches. Temp files, logs and app caches with rules per operating system. You review the list before anything is deleted.
-
Disk analyzer. What takes space, as a treemap plus the largest files, with a send-to-trash button.
-
Startup manager. See what launches with the system and switch items off. beta
-
Uninstaller. Remove apps and the leftovers they leave behind. beta
-
Privacy shield. Control Windows telemetry, ad ID and tracking settings. Windows. beta
-
Harden Windows. Macros, AutoRun, script host, UAC and Defender settings from hardentools, reversible. Windows. beta
-
Debloat Windows. Remove preinstalled Store apps. Windows. beta
-
Registry cleaner. Orphaned entries, with a
.regbackup before removal. Windows. beta -
Software updater. Update programs in bulk through winget, Chocolatey and Scoop. Windows. beta
-
Auto clicker. Click at the exact speed you set, with a global hotkey, limits and random ranges. Windows, macOS and Linux. beta
-
Compare prices. The cost of the same model across providers, with prices from LiteLLM and models.dev.
-
AI spending. How much OmniGet spent on AI, by day, model and task, from a local ledger.
-
Local models (Ollama). See, download and remove local models and use them as a free provider.
-
Humanize text. Rewrite AI-sounding text so it reads like a person wrote it, without changing what it says. Runs on the AI provider you configured. beta
-
API keys. A local vault for keys and accounts, with a connection test, balance for OpenRouter, DeepSeek, SiliconFlow and New API, and export to Claude Code, Codex, Cherry Studio, opencode or a
.envfile. -
MCP server. OmniGet's tools exposed over the Model Context Protocol on the local bridge, 31 tools behind the same token the extension uses, with ready-made config snippets for Claude Code, Claude Desktop, Cursor, VS Code, Goose and Codex. beta
Every tool that talks to an AI uses the provider you set in Settings → AI : OpenAI, Anthropic, or any OpenAI-compatible local endpoint such as Ollama or LM Studio. The key is stored locally and never logged. The auto clicker, dictation and the replay buffer can each get a global shortcut of their own.
Plugins: Courses, Study, Telegram, Convert
Plugins are separate Rust libraries loaded at startup. OmniGet installs its official set on first launch and updates them by itself. The Marketplace page shows what is installed, what each plugin is allowed to do (events, notifications, settings, download folders, proxy, managed tools, download queue), and lets you hide, disable or uninstall any of them.
Sign in to Hotmart , Udemy , Kiwify , Rocketseat or Meta-Analysis Academy through a browser window inside the app, with saved cookies from the extension, or with email and password where the platform allows it. OmniGet lists your purchases, opens the course outline so you can tick the sections you want (it tells you how many lectures are DRM-protected and will be skipped), and downloads every lesson and attachment with continuous lecture numbers if you want them. Hotmart uses the current OIDC login flow, so it keeps working after Hotmart's 2026 auth change, and free courses and courses delivered outside Hotmart Club are listed too. Downloaded courses appear in Study automatically.
Study turns the folder of files you downloaded into something you can actually finish.
- Library and player. Point Study at your course folders (nothing is copied or moved). The player resumes to the second, and pressing N captures a note at the current timestamp that jumps back there when clicked.
- Reader. PDF, EPUB, DJVU, MOBI, AZW3, FB2, CBZ, CBR, TXT, RTF and HTML, with highlights, bookmarks, collections, a focus mode and a paper-like theme. Covers, titles and authors are pulled from the files.
- Notes. A Markdown and LaTeX editor with links between pages, a daily journal, templates, tags, a knowledge graph, and export to
.mdor PDF. Any note can become a flashcard. - Anki. Spaced repetition decks with import from
.apkg,.txtand CSV, filtered decks, presets, note types, tags, media, stats and a review log. - Focus. Pomodoro and deep-work timers with daily and weekly targets that pause the player when the session ends.
- Progress and achievements. Streaks, daily goals, a year heatmap and local XP with no leaderboard.
- Music. Your local library with covers, artists and albums, synced lyrics, favorites, history, playlists, genres, transcoding, and browsers for Spotify, SoundCloud and YouTube Music so playlists and likes sit next to your files.
Sign in with a QR code or your phone number. Browse every channel and group you belong to, filter by photo, video, document or audio, search files, and download one item or the whole chat with a progress list. Videos from channels can be imported straight into the Study library.
FFmpeg conversions with GPU acceleration where the machine has it: container, codec, resolution, bitrate and compression for video and audio, no internet required.
Built-in chat, off by default
OmniGet ships a Discord-style chat called OmniDisc for servers you host yourself with omnidisc-server. Text channels, direct messages, friends, roles and permissions, pins, search, voice, video and screen sharing. Direct messages and the files sent in them are end-to-end encrypted with MLS, and the key for an encrypted call is derived from the same group, so the server operator cannot listen in. Voice runs in Rust rather than the web view and screen sharing uses the machine's hardware encoder. Files sent through chat are encrypted at rest and deleted from the server after thirty minutes.
It is experimental and does nothing until you turn it on in Settings → Advanced → Chat (OmniDisc) and add a server.
For League of Legends players
A League menu sits in the sidebar. It reads your running League client locally, with no account and no third-party build site, and does nothing until the client is open. If you never play, switch it off in Settings → Advanced → League of Legends and the menu disappears.
Match scouting for both teams with rank, recent form, KDA and the champions each player actually plays. Win probability that shrinks win rates toward the baseline by sample size and always shows a range. Live gold, CS and level for all ten players. Goals per role you can edit. Runes and summoner spells recommended by the client itself, applied in one click and only ever replacing the page OmniGet created. Champion tiers by role. Player search by Riot ID. Opt-in automation: accept matches, pick and ban from your priority list, grab a champion off the ARAM bench. Every automation has its own switch.
New and marked beta or experimental: a Profile tab that edits what other players see (rank shown in chat, challenge medals and title, banner and crest, chat icon, bulk friend management); a skin, chroma and ward roulette that rolls an owned skin the moment you lock in, with rerolls; a champion and lane raffle for when you want the queue to decide, plus an optional random pick in champion select; full match history and ranked stats for any player through the client's own backend gateway, with replay download; and an AI coach that reviews a game, spots trends over your last matches or answers a question about the current champ select, using your configured AI provider and OP.GG's public data.
Everything else in the box
- Command palette (Ctrl+K or Cmd+K) that jumps to any page, setting or tool.
- Clipboard detection that offers to download a copied link with one click on a toast.
- Cookie manager that keeps sessions per site, captured by the extension or imported from a
cookies.txt, with a test button per domain. - Video summaries: paste a URL in Settings → AI , OmniGet fetches the subtitles and summarizes them in the length and language you choose.
- Send a file to someone: pick a file, share the word code, the other person pastes it in their OmniGet.
- Discord Rich Presence showing what you are listening to, watching or reading. Downloads stay private.
- Tray icon, start with system, start minimized, prevent sleep during downloads.
- Every download keeps the exact yt-dlp command it ran. Open it, edit a flag, retry.
- 14 themes, including Catppuccin (four flavors), Dracula, One Dark Pro, three e-ink variants and three Nyxvamp variants.
- 11 languages: English, Portuguese, Spanish, French, Italian, Greek, Russian, Japanese, Persian, Simplified and Traditional Chinese.
- Runs on Windows, macOS (Apple Silicon and Intel) and Linux (x86_64 and ARM64).
Privacy and what OmniGet refuses to do
Everything runs on your computer. There is no account, no server of ours in the middle, and no telemetry about what you download. Cookies and API keys live in your local profile. The only network calls OmniGet makes on its own are to the sites you asked it to download from, to GitHub for updates and plugins, and to the AI provider you configured, when you use an AI tool.
OmniGet downloads what your own logged-in session can already open. It does not bypass DRM, break paywalls, or share credentials, and DRM-protected lectures are skipped and reported. You are responsible for respecting copyright and each platform's terms of service. The full text is in the app under About → Terms and ethics.
Frequently asked questions
Is OmniGet free? Yes. GPL-3.0, no paid tier, no ads, no account.
Is OmniGet a yt-dlp GUI? Partly. yt-dlp handles the long tail of sites and OmniGet bundles it, verifies it and updates it. On top of that sit native extractors for courses, Instagram, X, Pinterest, Bilibili, Telegram and torrents, a queue with resume and retry, the Tools section, and the Study library.
Can OmniGet download a Udemy or Hotmart course I bought? Yes. Install the Courses plugin (it comes preinstalled), sign in through the app, pick the course and sections, and download. Lessons and attachments land in a folder per course and appear in Study. Kiwify, Rocketseat and Meta-Analysis Academy work the same way.
Can it download Instagram stories, close friends or highlights? Yes, using your own session captured by the browser extension. Stories are downloaded without being marked as seen.
Can it download an X video, a whole thread or all media from a profile? Yes. Public posts need no login. Bookmarks and your own follow lists need your X session.
Can it back up a Pinterest board in original quality? Yes, including videos, sections, secret boards with cookies, and incremental sync so you only fetch what is new.
Does it resume interrupted downloads? Yes. Partial files are kept and continued, and rate limits trigger retries with backoff.
Which formats can it save? Video as MP4, MKV or WebM. Audio as MP3, M4A, Opus, FLAC or WAV. Subtitles as SRT, VTT or ASS, embedded or beside the file.
Does it need Python, Node or a terminal? No. Download the app, open it, paste a link. The only terminal step is the one-time macOS Gatekeeper fix above.
macOS says the app is damaged. Run the two commands in the first launch section. It happens because the app is not notarized, and it happens once.
Can I transcribe a video to subtitles offline? Yes. Tools → Speech and subtitles → Transcribe uses whisper.cpp locally. Models download on demand.
Can I run it from a USB stick? Yes, on Windows, with a portable.txt file next to the executable.
Which Linux package should I pick? Debian and Ubuntu: .deb. Fedora, openSUSE, RHEL family: .rpm. Anything else: .AppImage. Both x86_64 and ARM64 are published. OmniGet is not on Flathub.
omniget-cli ships with every release for Windows, macOS (Intel and Apple Silicon) and Linux. Grab omniget-cli-<version>-<target> from the latest release.
omniget info <url> # title, formats and size, downloads nothing
omniget download <url> -q 1080 -o ~/Videos
omniget download <url> --audio-only --subs en,pt
omniget batch links.txt -m 3 # one URL per line, 3 at a time
omniget import-cookies cookies.txt # Netscape format
If you only want to use OmniGet, grab a release. To build it you need Rust (the exact toolchain is pinned in rust-toolchain.toml because the plugin ABI depends on it), Node.js 18+ and pnpm.
git clone https://github.com/tonhowtf/omniget.git
cd omniget
pnpm install
pnpm tauri dev
Linux build dependencies
sudo apt-get install -y libwebkit2gtk-4.1-dev build-essential curl wget file libxdo-dev libssl-dev \
libayatana-appindicator3-dev librsvg2-dev patchelf libasound2-dev libpipewire-0.3-dev clang libclang-dev
Production build:
pnpm tauri build --config '{"bundle":{"createUpdaterArtifacts":false}}'
Releases sign their updater artifacts with a private key only the maintainer holds, so a plain pnpm tauri build stops with "A public key has been found, but no private key". The flag above turns those artifacts off for a local build and changes nothing else.
The plugins live in their own repositories: omniget-plugin-courses, omniget-plugin-telegram, omniget-plugin-convert and omniget-study-release. The registry is omniget-plugins. pnpm plugins:deploy builds the sibling plugin checkouts and copies them into your local data folder.
Stack: Tauri 2, Rust, SvelteKit with Svelte 5, SQLite, yt-dlp, FFmpeg, librqbit for torrents, whisper.cpp, aria2, gallery-dl.
Contributing and translations
Bug reports and pull requests go to Issues and Pull requests. Questions and quick help live on Discord.
Translations are managed on Weblate. Pick your language and translate in the browser. New strings appear there a few hours after they land in main.
OmniGet is built on yt-dlp, FFmpeg, gallery-dl, whisper.cpp, aria2, SponsorBlock, Return YouTube Dislike, FxTwitter, Spicetify and Tauri. Thank you to everyone who maintains them.
Loop, the creature on the home screen, is OmniGet's mascot. Fan art is welcome. The original artwork may not be used commercially or redistributed modified.




