openjutsu
One-click character swap for videos: an open-source, local Higgsfield Genjutsu alternative built on ComfyUI and MiniMax H3, with FLUX.3 Klein relighting.
Paste a link from PornHub, xHamster, XVideos, RedGifs or 17 more adult sites and save the video as MP4. Free, no account, no pop-ups or redirects.
MediaJavaScriptGitHub @samrtulethtbOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Adds a Download button to video pages on PornHub, xHamster, XVideos, XNXX, RedGifs and 15 more adult sites. Opens the video in NSFWDL to save it as MP4. No tracking, no permissions.
Taken from the repository README
Loading the full README.
Read the full README ↗Download adult videos as MP4 without leaving the page. Open the panel, pick a real quality with its file size, watch the live progress, and the file goes straight to your browser's downloads. Powered by NSFWDL, the free downloader with no pop-ups.
GM_xmlhttpRequest.Each link opens that site's downloader on nsfwdl.com, which works without the script too.
Any other link: the universal downloader. Full list: supported sites.
Downloads are free, up to 30 a day in each browser. 720p and lower are always
free, and 1080p is free for the first 10 downloads of the day. More a day (300),
more 1080p, qualities above 1440p and files over 500 MB need a paid
NSFWDL Supporter key (passes from $2); the panel
shows those qualities with a 🔒, says why, and never starts them for a free session. This is
declared as @antifeature payment. Have a key? Enter it once in the panel's
⚙ Settings → Supporter key, and the locked qualities unlock in the script.
Activated it on nsfwdl.com in the same browser? With most managers the
script picks it up by itself (since 2.7.1).
@grant GM_xmlhttpRequest (+ GM.xmlHttpRequest) with
@connect nsfwdl.com and @connect dl.nsfwdl.com only: requests go to
NSFWDL and nowhere else./userscript marker so
NSFWDL can count downloads made from the script. Like any visit, they
reach NSFWDL from your IP address.X-NSFWDL-Supporter header. "Remove from this browser" ends the session.POST /api/supporter/link):
only while it has none, at most every 20 seconds when you open the panel
or come back to the tab. "Remove from this browser" also turns this off
until you enter a key in the script again.X-NSFWDL-Client header.
It is not derived from anything about you and not linked to an account or
your IP.GM_getValue/GM_setValue. None of it is ever sent anywhere.@grant GM_notification shows a notification when a download finishes
while the tab is in the background. Nothing else.innerHTML), inside a Shadow DOM.noopener, noreferrer and referrerPolicy="no-referrer".The script doesn't bypass logins, private videos or paywalls. Download only videos you are allowed to save.
node --test tests/frontend/userscript.test.mjs # logic and header limits
NODE_PATH=/path/to/node_modules CHROME_BIN=/usr/bin/google-chrome \
node tools/userscript/browser.test.cjs # mocked browser checks
The browser suite answers every page and NSFWDL API call in-process; it
never contacts an adult site or NSFWDL. The site list is generated from
NSFWDL's source registry (app/sources/registry.py), and
tests/test_seo_master.py::test_userscript_covers_exactly_the_registry_sources_and_routes
fails when they drift apart. Bump @version on every change, then run
tools/userscript/publish.sh. It copies the script, README, listing text
and browser test to the public repository and pushes it to GitHub (which
Sleazy Fork syncs from) and GitLab.
MIT