frostming/dsh-hongguo
Media & DesignA DSH sidebar plugin that streams short dramas while a coding agent works, with history and task-aware prompts.
What it does
dsh-hongguo is a plugin for DSH (the cordis-based agent environment) that adds a 摸鱼短剧 tab to the right sidebar so you can watch short dramas while the agent runs. It provides a recommended series card, a searchable series list, episode pages and a player with in-video controls. It also adds a 短剧 button at the bottom of the left sidebar and a small prompt above the input box when the agent is working, from which you can open a drama directly README lines 21–33.
Playback history is stored per series, remembering the episode and second reached, with one-click resume and single-entry removal. When the agent goes from running to idle, the plugin pauses playback and shows an on-screen notice.
How it works
The plugin has two halves. The host half (index.js) loads the openhongguo SDK, keeps an anonymous device profile, and exposes same-origin routes under /api/hongguo/ for the feed, series, playback, search, manifest, media, stream, config and running state. The client half (client.js) registers the sidebar tab, the sidebar button and the input-dock prompt README lines 34–38.
CENC-encrypted HEVC video cannot be decoded by the browser directly. The host uses the content key from the SDK to call the local ffmpeg and remux the video into a normal MP4 with -c copy (no re-encoding), caching up to 40 episodes in the plugin data directory. The browser only receives a same-origin /api/hongguo/media URL; the key never reaches the page README lines 51–56.
Sources and requirements
There are two sources, switched by the icon next to the title; lists, episodes and history are independent between them README lines 39–50:
hongguo(default): data from openhongguo, an unofficial SDK for a third-party short-drama platform using anonymous devices and no login. CENC video is decrypted by the host.hg2(fallback): reverse-engineered interface from acom.hg2.two_zero_oneAPK, using HLS + AES-128; some series require purchase or membership. The fallback SDK ships undersdk/hg2/and can be tried standalone withnode sdk/hg2/cli.js search <keyword>. See the reverse-engineering notes.
ffmpeg is a hard requirement for the default source. Install it with brew install ffmpeg on macOS, winget install Gyan.FFmpeg on Windows, or the system package manager elsewhere. Covers are HEIC-only from the CDN and are converted with sips on macOS or ffmpeg on other platforms; without ffmpeg on Windows/Linux, posters fall back to placeholders.
Configuration
In cordis.patch.yml, the hongguo row's config accepts autoPrompt (default true, whether to show the prompt while the agent runs), panelWidth (default 480 px), profilePath (anonymous device profile file; deleting it switches device) and searchTerms (default 总裁/重生/逆袭, used to supplement recommendations) README lines 57–66.
The project is for personal study and research only; content copyright belongs to the rights holders. No license is declared in the repository.
HotRepo's take
The repository entered the JavaScript new-project list on 2026-11-05 with 100 stars and 13 forks gained in a window starting 2026-11-04, but there is no recorded GitHub all-language daily rank. That is a single new-project snapshot, so it supports only the initial interest, not a trend. The notable engineering choice is keeping the decryption key on the host and streaming only remuxed MP4 to the browser.
Written by AI from the project's README, updated . The project's own docs are the source of truth.