Back to home@lffrom0303

dsh-window98-theme

A faithful Windows 98 skin for the DeepSeek Harness web GUI, derived from the classic 98.css design system.

Stars
0
Language
JavaScript
Created
Sep 8, 2026
Updated
Sep 8, 2026
GitHub repo

Introduction

dsh-window98-theme

A faithful Windows 98 skin for the DeepSeek Harness (DSH) web GUI, derived from the classic 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:

dsh plugin --profile web add github:lffrom0303/dsh-window98-theme

Restart dsh web for the plugin to take effect.

To remove:

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 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

KeyValuesDefaultDescription
modewindow98 / stockwindow98Enable 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

Links