Bundle
dsh-deepshub
Pornhub-style parody reskin for the DeepSeek Harness web UI: charcoal-black + orange pill-button theme (follows system light/dark), rounded Baloo-2 'Deephub' wordmark, 18+ entry gag, HD badges, and a 'today's hot pick' sidebar card. 纯整活主题,不含任何露骨内容。
- Source
- 01Virex
- License
- MIT
- Updated
- Updated 7 hours ago
Readme
# dsh-deepshub
> **English** | [中文](./README_ZH.md)
[](https://www.npmjs.com/package/dsh-deepshub)
[](https://www.npmjs.com/package/dsh-deepshub)
[](https://github.com/01Virex/dsh-deepshub)
[](LICENSE)
[](https://www.npmjs.com/package/dsh-deepshub)
```bash
# One-line install
dsh plugin --profile web add dsh-deepshub
```
**v0.3.2 — stable release**
> ⭐ **If this made you smile, give it a star** — it keeps the memes flowing.
A **Pornhub-style parody reskin** for the DeepSeek Harness (dsh) Web UI — **pure meme, no explicit content whatsoever**: charcoal/near-black + PH orange palette (follows system light/dark), pill buttons, a rounded orange **"Deephub"** parody wordmark (bundled Baloo 2 ExtraBold), 18+ entry gate, "HD 1080p" / "🔴 LIVE" badges, a "today's hot pick" sidebar card — all through the official `--dsw-*` design tokens, so **no functional copy changes** and it uninstalls cleanly.
## Installation
Two ways to install: the recommended `dsh plugin add` command, or the manual copy. Either way, you need to restart `dsh web` once after first install.
### Option A: `dsh plugin add` (recommended)
The plugin's `package.json` declares a `dsh.bundle.patch` manifest, so it's recognized automatically after install — no extra flags needed. The command syntax is `dsh plugin --profile <name> add <package>` (e.g. `--profile web`):
- **From npm** (easiest): `dsh plugin --profile web add dsh-deepshub` ← always installs the latest release
- **From a clone**: `dsh plugin --profile web add ./dsh-deepshub`
- **From a release package**: download the packaged tarball from the Release page, then `dsh plugin --profile web add /path/to/dsh-deepshub-<version>.tgz`.
### Option B: manual install
1. Put this project directory under your profile's node_modules (default `C:\Users\<you>\.dsh\profiles\node_modules\dsh-deepshub\`);
2. Insert the following into the profile's `cordis.patch.yml`:
```yaml
- insert:
- id: deepshub
name: dsh-deepshub
```
3. Restart `dsh web` and hard-refresh the browser (Ctrl+F5) — once the plugin's node half (`lib/index.js`) is enabled, the Host scans and loads the browser half (`lib/client.js`).
## Features
- **PH-off palette**: charcoal/near-black + `#ff9000` (dark mode) and PH-style light gray + orange (light mode) — follows system theme, never overrides your preference;
- **Pill buttons**: every `button` becomes a PH-style capsule;
- **Parody wordmark**: the DeepSeek wordmark SVG → self-drawn **"Deephub"** in rounded orange type (Baloo 2 ExtraBold latin subset, auto-served by the node half); favicon + tab title follow;
- **"18+ entry gate"**: every DSH page load pops the classic 「This site contains high-intensity programming content」 confirm screen (dismissed per page session);
- **Code-block badges**: "HD 1080p" corner tag on every code block; "🔴 直播中" (LIVE) on running tool blocks (stable `data-running` hook);
- **"Today's hot pick"**: a PH-style promo sidebar card (locale-text heuristic anchor under the "New session" button, floating fallback, dismissible via ×);
- Full `--dsw-alias-*` / `--dsw-specific-*` / `--dsw-static-deepseek-*` token coverage — scrollbars, code, selection, bubbles and sidebar hovers all tinted orange.
## Configuration
Built-in defaults give the full effect out of the box. Three override sources, highest priority first:
1. **localStorage** (live debugging from the devtools console): `window.dshDeepHub.setConfig({ accent: "#ff5500" })` / `window.dshDeepHub.reset()`
2. **config.json**: copy `config.example.json` to `config.json` in the plugin root — the node half auto-serves it at `/plugins/dsh-deepshub/config.json` (for a `link:` install that IS the source directory, so a refresh applies it).
3. Built-in defaults (see `config.example.json`).
Key fields:
| Field | Default | Description |
| --- | --- | --- |
| `enabled` | `true` | Master switch |
| `accent` / `accentHover` / `accentText` | `#ff9000` / `#ffa72e` / `#ffffff` | PH orange primary / hover / text on primary |
| `wordmark` / `logoText` | `true` / `Deephub` | Wordmark toggle and text |
| `favicon` | `true` | Swap favicon |
| `title` | `true` | Tab title |
| `pillButtons` | `true` | Pill buttons |
| `ageGate` | `true` | "18+ entry gate" (every page load) |
| `codeBadges` | `true` | "HD 1080p" / "🔴 直播中" badges |
| `recommendCard` | `true` | "Today's hot pick" sidebar card |
| `debug` | `false` | Console logs `[dsh-deepshub]` |
Uninstall: `dsh plugin --profile web remove dsh-deepshub`, or disable temporarily via the profile's `cordis.patch.yml`:
```yaml
- id: deepshub
name: dsh-deepshub
disabled: true
```
## Package layout
```
dsh-deepshub/
├─ package.json # dsh.client (web) + dsh.bundle.patch declarations
├─ cordis.patch.yml # inserts the dual-face plugin row into the cordis tree
├─ lib/
│ ├─ index.js # node half: serves config.json + the wordmark font
│ └─ client.js # browser half: tokens + pills + wordmark/favicon/title + gags
├─ assets/
│ ├─ deephub-bold.woff2 # Baloo 2 ExtraBold latin subset (wordmark font, OFL)
│ └─ OFL.txt # Baloo 2 license
├─ config.example.json # config template
└─ scripts/ # dev-only: validate / smoke-test / package-release
```
## How it works (briefly)
The browser half is pure DOM/CSS and uses no ctx services:
- Everything themes through the official design tokens (`--dsw-alias-*` etc.), redefined per theme on `body{}` (light) and `body[data-ds-dark-theme]{}` (dark), all `!important` — wins regardless of injection order;
- The accent color runs through the plugin's own custom properties (`--dsh-deepshub-accent-*` on `:root`), so config changes re-theme instantly;
- The wordmark is located via the stable `#dsh-wordmark-*` clipPath ids inside the official wordmark SVG — no build-hash classnames; a MutationObserver re-applies it if React re-renders the logo;
- The 18+ gate, promo card and badges are self-built nodes / pure CSS hooks (`pre::after`, `[data-running]::before`) — nothing depends on hashed classes;
- Unloading removes the style, restores title/favicon, disconnects the observer, and clears injected nodes via `ctx.effect`.
## License
The plugin itself is MIT. The wordmark and palette are a parody and are unaffiliated with Pornhub; the bundled Baloo 2 font is used under the SIL Open Font License.
Install
dsh plugin --profile web add github:01Virex/dsh-deepshub
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install dsh-deepshub from the hub
- This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.