Bundle
dsh-window98-theme
A faithful Windows 98 skin for the DeepSeek Harness web GUI: teal desktop, silver beveled panels, navy accents, pixelated MS Sans Serif, beveled buttons, sunken inputs and checkerboard scrollbars — derived from the classic 98.css design system.
- Source
- lffrom0303
- License
- MIT
- Updated
- Updated 16 hours ago
Readme
# dsh-window98-theme
A faithful **Windows 98 skin** for the DeepSeek Harness (DSH) web GUI, derived from the classic [98.css](https://jdan.github.io/98.css/) design system.
Teal desktop, silver beveled panels, navy accents, pixelated MS Sans Serif, raised 3-D buttons, sunken text fields, and checkerboard scrollbars — with a matching dark variant ("Win98 night") that keeps the retro bevels on dark gray surfaces.
## Features
- **Complete token remap** — overrides the full `--dsw-alias-*` design-token layer (≈90 tokens) in both light and dark modes, so every component (buttons, hovers, code blocks, chat bubbles, sidebar, tooltips, scrollbars) follows the Win98 palette.
- **Classic chrome** — 98.css-style beveled buttons (pressed state included), sunken inputs with the original dropdown arrow, beveled `<pre>`/`<fieldset>`, dotted focus outlines, navy `::selection`.
- **Pixelated typography** — loads the 98.css "Pixelated MS Sans Serif" webfont and disables font smoothing for that authentic bitmap look.
- **Checkerboard scrollbars** — the original 98.css checkerboard track, beveled thumb and four arrow buttons.
- **Square corners everywhere** — global `border-radius`/`corner-shape` reset plus modern shadows, blur and transitions removed.
- **Theme picker entries** — registers `window98` (light) and `window98-dark` (night) themes in the DSH theme picker.
- **Careful exclusions** — view tabs, breadcrumb titles, brand pills, badges/chips/tags stay flat, so navigation and headers keep their native look.
- **Instant apply + persistence** — the Client half hot-applies tokens through the theme service (no refresh); the Host half injects the full stylesheet into every served `index.html`, so the skin survives reloads.
## Installation
Requires DeepSeek Harness with the web profile enabled. Install from GitHub:
```sh
dsh plugin --profile web add github:lffrom0303/dsh-window98-theme
```
Restart `dsh web` for the plugin to take effect.
To remove:
```sh
dsh plugin --profile web remove dsh-window98-theme
```
### Dynamic plugin (one-click, no install)
You can also use it as a dynamic Cordis plugin without installing anything:
1. Open the dynamic plugin editor in DSH.
2. Paste the whole content of [`plugin.dynamic.js`](plugin.dynamic.js) into the Client code box.
3. Run it — the skin applies immediately and reverts when the plugin stops.
## Usage
- The skin is applied automatically. Pick `window98` or `window98-dark` in the theme picker to pin a mode.
- To disable the skin for the package form, edit `cordis.patch.yml` and set `config.mode: stock`.
### Config reference
| Key | Values | Default | Description |
| ------ | -------------------- | ----------- | --------------------------------- |
| `mode` | `window98` / `stock` | `window98` | Enable or disable the skin |
## How it works
- **Host half (`index.js`)** — registers a `webServer.tapIndex` transform through the official seam; every served `index.html` gets a `<style id="dsh-window98-theme">` block with the full skin (token maps for `html body` light and `html body[data-ds-dark-theme]` dark, plus the chrome CSS).
- **Client half (`client.js`)** — the official web-shell closure factory; registers the two themes and hot-applies the core 13-token override layer through the theme service (`ctx.theme.overrideTokens`), so switching takes effect without a reload.
- **Dynamic form (`plugin.dynamic.js`)** — the same skin as a single self-contained Client function body using `theme.register` + `theme.overrideTokens` + `styles.insert`.
The design follows 98.css values: teal `#008080`, silver `#c0c0c0`, dialog gray `#d4d0c8`, navy `#000080`, bevel shadows `#dfdfdf`/`#808080`/`#0a0a0a`.
## Compatibility
- DeepSeek Harness web profile (tested on the current `dsh web` release line).
- Chromium-based browsers for the checkerboard/arrow scrollbar chrome (other browsers fall back to token-colored scrollbars).
- Node `>= 22.19.0` for the package form.
## License
[MIT](LICENSE)
## Links
- [98.css](https://jdan.github.io/98.css/) — the original Windows 98 design system
- [Other DSH theme plugins](https://github.com/BeiZi6/dsh-theme-plugin) — the reference architecture this repo follows
Install
dsh plugin --profile web add github:lffrom0303/dsh-window98-theme
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-window98-theme from the hub
- This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.