ClipSaver for XiaoHongShu

Adds a download button to XiaoHongShu note media that opens a download launcher

Overview

ClipSaver for XiaoHongShu is a userscript that overlays a download button on the media area of a XiaoHongShu note and hands the current note to an online download service. A companion panel page can trigger a download and display progress and runtime logs. It runs only on xiaohongshu.com.

XiaoHongShu note pages do not provide a built-in way to save a note's media. This script puts a one-click download control on the note and connects it to an external download service, so you no longer have to copy the note URL and hunt for a downloader yourself.

Users who browse notes on xiaohongshu.com and want a convenient way to hand the current note to a download service, and who are comfortable installing a userscript and letting it open the companion panel and download pages.

Key features

  • Adds a floating download button directly over the note's media container.
  • Downloads the note you are currently viewing without copying its URL.
  • Shows an animated rainbow hover ring with a built-in download icon; styling is injected only once.
  • Companion panel page with a scan-interval setting and download actions.
  • Panel actions report running / done / error status back to the panel.
  • Uses GM storage when available and falls back to localStorage.
  • Runs only on xiaohongshu.com and injects only on /explore/ note pages.

Supported sites

  • www.xiaohongshu.com

Permissions

This script requests the following userscript-manager permissions. Review them before installing.

  • GM_openInTab
  • GM.openInTab
  • GM_addStyle
  • GM_setValue
  • GM_getValue

How to install & use

  1. Install a userscript manager such as Tampermonkey or Violentmonkey for your browser.
  2. Click the "Download / install" button to open the script source on GitHub and install it with your userscript manager.
  3. Open the target site and use the script as documented.

How to use

  1. Install the userscript in a userscript manager that supports GM_openInTab, GM_addStyle, GM_setValue and GM_getValue.
  2. Open a XiaoHongShu note page under the /explore/ path.
  3. Wait for the round download button to appear over the note media.
  4. Click the button (or use "Download current note" in the panel) to open the download service for that note.
  5. Open the companion panel to adjust the scan interval or trigger a download.
  6. Check the panel status line to see running, done, or failed results.

Limitations

  • Only operates on xiaohongshu.com; other sites are untouched.
  • Button injection depends on specific selectors (#noteContainer and .media-container) and on /explore/ note pages; layout or DOM changes may stop it working.
  • Actual downloading is performed by an external online service, so it requires network access and can fail if that service is unavailable.
  • The panel is opened with window.open on first run, which a popup blocker may prevent.
  • The panel's enable switch is written into the script config, but the script still injects the button whenever a note media container is found.
  • The injected button scans the page repeatedly at the configured interval (default 777 ms).

FAQ

Where does the button appear?

It is injected into the media container of a XiaoHongShu note page, near the top-right of the media area.

Does the script download the file itself?

No. It passes the current note URL to an external download service, which performs the download.

Can I close the button?

You can adjust the scan interval in the companion panel; the panel's enable switch does not currently stop the button from being injected.

What settings are stored?

Only a one-time "panel connected" flag is persisted, using GM storage when available or localStorage otherwise.

Safety & privacy

The script runs only on xiaohongshu.com and is marked @noframes, so it does not execute inside embedded frames. It requests GM_openInTab, GM_addStyle, GM_setValue and GM_getValue: opening tabs is used only to open the download service and the companion panel, styling is injected into the local page, and storage keeps only a one-time connection flag (falling back to localStorage). To complete a download, the current note URL is sent to the external download service. Panel messaging is scoped to a task channel, cross-origin messages are accepted only from the panel origin, and duplicate messages are de-duplicated. Runtime logs are kept in a small in-memory ring buffer (up to 200 entries) that is cleared on reload and is neither persisted nor redacted. The script does not read or transmit account credentials.