@nonamelego/dsh-catppuccin 0.4.2-beta.0 → 0.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.en.md ADDED
@@ -0,0 +1,302 @@
1
+ <h3 align="center">
2
+ <img src="https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/logos/exports/1544x1544_circle.png" width="100" alt="Logo"/><br/>
3
+ <img src="https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/misc/transparent.png" height="30" width="0px"/>
4
+ Catppuccin for <a href="https://github.com/deepseek-ai/deepseek-harness">DeepSeek Harness</a>
5
+ <img src="https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/misc/transparent.png" height="30" width="0px"/>
6
+ </h3>
7
+
8
+ <p align="center">
9
+ <a href="https://github.com/NoNameLeGo/dsh-catppuccin-theme/stargazers"><img src="https://img.shields.io/github/stars/NoNameLeGo/dsh-catppuccin-theme?colorA=363a4f&colorB=b7bdf8&style=for-the-badge"></a>
10
+ <a href="https://github.com/NoNameLeGo/dsh-catppuccin-theme/issues"><img src="https://img.shields.io/github/issues/NoNameLeGo/dsh-catppuccin-theme?colorA=363a4f&colorB=f5a97f&style=for-the-badge"></a>
11
+ <a href="https://github.com/NoNameLeGo/dsh-catppuccin-theme/contributors"><img src="https://img.shields.io/github/contributors/NoNameLeGo/dsh-catppuccin-theme?colorA=363a4f&colorB=a6da95&style=for-the-badge"></a>
12
+ <a href="https://www.npmjs.com/package/@nonamelego/dsh-catppuccin"><img src="https://img.shields.io/npm/v/@nonamelego/dsh-catppuccin?colorA=363a4f&colorB=a6da95&style=for-the-badge"></a>
13
+ <a href="https://www.npmjs.com/package/@nonamelego/dsh-catppuccin"><img src="https://img.shields.io/npm/dt/@nonamelego/dsh-catppuccin?colorA=363a4f&colorB=f5a97f&style=for-the-badge"></a>
14
+ </p>
15
+
16
+ **English** | [中文](README.md)
17
+
18
+ > A theme & glassmorphism plugin for [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) — Catppuccin flavours for the **Web GUI**, **DSH Desktop** and **dsh-TUI**, plus a switchable frosted-glass skin. Listed on [Awesome DSH Plugin](https://awesome-dsh-plugin.com/p/NoNameLeGo__dsh-catppuccin-theme/).
19
+
20
+ ## Contents
21
+
22
+ - [Introduction](#introduction)
23
+ - [Features](#features)
24
+ - [Previews](#previews)
25
+ - [Installation](#installation)
26
+ - [Usage](#usage)
27
+ - [Glassmorphism](#glassmorphism)
28
+ - [Development](#development)
29
+ - [🙋 FAQ](#-faq)
30
+ - [💝 Credits](#-credits)
31
+
32
+ <p align="center">
33
+ <img src="assets/previews/combined.png" width="100%" alt="DeepSeek Harness under the four Catppuccin flavours"/>
34
+ <br/><br/>
35
+ <img src="assets/previews/glass-combined.png" width="100%" alt="Glass skin · Latte & Mocha"/>
36
+ </p>
37
+
38
+ ## Introduction
39
+
40
+ A [Catppuccin](https://github.com/catppuccin/catppuccin) theme plugin for
41
+ [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) — one package that fits
42
+ the **Web GUI** (`dsh web`), **DSH Desktop** and **dsh-TUI** alike: full recolouring plus a
43
+ glass skin on Web / Desktop, and the four official theme palettes auto-synced to the TUI.
44
+
45
+ It ships all four Catppuccin flavours — **Latte**, **Frappé**, **Macchiato**, **Mocha** —
46
+ remapping the whole interface to the matching palette, with a **Catppuccin** row right below
47
+ **Settings → General → Appearance** for one-click switching. Your choice is persisted and
48
+ restored after restarts.
49
+
50
+ It also includes an optional **glassmorphism** skin: the top bar, sidebar, composer,
51
+ stats line, trajectory view, chat bubbles and the new-session button become frosted-glass
52
+ cards, with adjustable blur, frost and backdrop brightness. Glass colours follow the active
53
+ Catppuccin theme automatically.
54
+
55
+ ## Features
56
+
57
+ - 🎨 Four themes: Latte (light), Frappé / Macchiato / Mocha (dark)
58
+ - 🧩 Registered into the official theme system, on a par with the built-in light / dark / system themes
59
+ - 🎯 Full-UI colour coverage — not just one or two accent colours
60
+ - ⚙️ One-click switch in Settings, persisted and restored across restarts
61
+ - 🌐 Bilingual UI (Chinese / English, follows the system language)
62
+ - 🪟 **Glass skin**: frosted glass for the top bar / sidebar / composer / stats line /
63
+ trajectory view / chat bubbles / new-session button, one-click toggle in Settings;
64
+ mica & compatibility modes, adjustable blur, frost and backdrop brightness
65
+ (interaction reference: [DSH-Transparent-UI-Plugin](https://github.com/WYH66666666/DSH-Transparent-UI-Plugin))
66
+ - 🌫️ **Glass details**: gradient blur bands at the top/bottom page edges, a floating glass
67
+ rail when the sidebar is collapsed, a solid background in the theme's own base colour —
68
+ content softens as it scrolls under the panes
69
+ - 🎨 Glass colours follow the current Catppuccin theme
70
+ - 🔄 **Update check**: one-click "Check for updates" in Settings compares the latest npm
71
+ version and gives you a copyable upgrade command
72
+ - 💻 **dsh-TUI terminal themes**: one command installs into dsh-TUI; the four themes sync to
73
+ `~/.dsh-tui/themes/` automatically (see [Installation · dsh-TUI](#dsh-tui-terminal-themes))
74
+
75
+ ## Previews
76
+
77
+ Actual screenshots from a local GUI (the header image is a diagonal blend of the four):
78
+
79
+ <details>
80
+ <summary>🌻 Latte (light)</summary>
81
+ <img src="assets/previews/latte.png"/>
82
+ </details>
83
+ <details>
84
+ <summary>🪴 Frappé (dark)</summary>
85
+ <img src="assets/previews/frappe.png"/>
86
+ </details>
87
+ <details>
88
+ <summary>🌺 Macchiato (dark)</summary>
89
+ <img src="assets/previews/macchiato.png"/>
90
+ </details>
91
+ <details>
92
+ <summary>🌿 Mocha (dark)</summary>
93
+ <img src="assets/previews/mocha.png"/>
94
+ </details>
95
+
96
+ ### Glass skin (Mica mode)
97
+
98
+ The frosted-glass effect in light (Latte) and dark (Mocha): the top bar, sidebar,
99
+ chat bubbles, composer and stats line are all glass cards; messages soften as they scroll
100
+ past the page edges; the background is the theme's solid base colour:
101
+
102
+ <details>
103
+ <summary>🌻 Latte (light glass)</summary>
104
+ <img src="assets/previews/glass-latte.png"/>
105
+ </details>
106
+ <details>
107
+ <summary>🌿 Mocha (dark glass)</summary>
108
+ <img src="assets/previews/glass-mocha.png"/>
109
+ </details>
110
+
111
+ ## Installation
112
+
113
+ ### Option 1: from npm (recommended)
114
+
115
+ ```sh
116
+ dsh plugin --profile web add @nonamelego/dsh-catppuccin
117
+ ```
118
+
119
+ Restart `dsh web` after installing — `dsh plugin` adds it to the profile's bundles.
120
+ Use the profile name of your choice in place of `web` (e.g. `headless`).
121
+
122
+ **[DSH Desktop](https://github.com/anywhere-labs/deepseek-harness-desktop)**: the desktop build's
123
+ active profile is named `desktop`, so run:
124
+
125
+ ```sh
126
+ dsh plugin --profile desktop add @nonamelego/dsh-catppuccin
127
+ ```
128
+
129
+ Run it in the DSH terminal of the desktop app (`dsh plugin` defaults to the active profile).
130
+ Installing from the repo works the same way: `dsh plugin --profile desktop add https://github.com/NoNameLeGo/dsh-catppuccin-theme`.
131
+
132
+ ### Option 2: from the repository
133
+
134
+ ```sh
135
+ dsh plugin --profile web add https://github.com/NoNameLeGo/dsh-catppuccin-theme
136
+ ```
137
+
138
+ When installing from git, pnpm may ask you to allow build scripts — follow pnpm's prompt
139
+ and add the package to the profile's `pnpm-workspace.yaml` `allowBuilds`, then run it again.
140
+
141
+ ### dsh-TUI (terminal) themes
142
+
143
+ The same package covers the TUI. Install it into the dsh-tui profile:
144
+
145
+ ```sh
146
+ dsh plugin --profile dsh-tui add @nonamelego/dsh-catppuccin
147
+ ```
148
+
149
+ Installing from the repository works the same way (use the git form while the npm release
150
+ is pending). The package ships a tiny theme-sync plugin row
151
+ (`dsh-catppuccin-tui-themes`, no service dependencies): on every dsh-TUI start it syncs the
152
+ four theme JSONs to `~/.dsh-tui/themes/`, so upgrades pick up the new palettes. After
153
+ installing, launch `dsh --profile dsh-tui` and pick the theme with `/theme` —
154
+ **Catppuccin Latte / Frappé / Macchiato / Mocha**, or jump straight to it with
155
+ `/theme catppuccin-mocha` (your choice persists across restarts).
156
+
157
+ > 💡 Already installed the plugin for the Web GUI and also use dsh-TUI? No need to install
158
+ > it twice: every Web start auto-syncs the themes to `~/.dsh-tui/themes/` (only when the
159
+ > directory already exists).
160
+
161
+ > 📁 Prefer not to install the package? Copy `themes/*.json` into
162
+ > `~/.dsh-tui/themes/` (Windows: `%USERPROFILE%\.dsh-tui\themes\`) by hand — you just won't
163
+ > get updates automatically.
164
+
165
+ > ⚠️ `catppuccin-*.json` belongs to this plugin and is overwritten on sync; rename the files
166
+ > if you want custom themes.
167
+
168
+ > 💡 TUI themes only style the TUI itself — the terminal background is up to your terminal.
169
+ > Pairing it with the matching Catppuccin flavour (see the
170
+ > [Catppuccin ports list](https://github.com/catppuccin/catppuccin#-ports)) looks best.
171
+
172
+ ## Usage
173
+
174
+ 1. Open the Web GUI (default `http://127.0.0.1:3080`), or the DSH Desktop app.
175
+ 2. Go to **Settings → General**.
176
+ 3. Find the **Catppuccin** row below **Appearance** and pick a flavour:
177
+ **Latte** (light), **Frappé**, **Macchiato** or **Mocha** (dark).
178
+ 4. Choosing **Follow system** reverts to the official theme — it restores the preference
179
+ you had before enabling Catppuccin (light / dark / follow system) instead of forcing a reset.
180
+
181
+ ### Glass skin
182
+
183
+ Right below the **Catppuccin theme** row in **Settings → General** you'll find the **Glass** row:
184
+
185
+ - **Master switch**: on — the top bar, sidebar, composer, stats line and trajectory view
186
+ become frosted glass; off — the UI reverts to stock instantly (no refresh needed).
187
+ - **Mode**: **Mica** turns the interface into floating frosted cards; **Compatibility** keeps
188
+ the stock layout and swaps only the material.
189
+ - **Presets**: **Clear / Standard / Frosted** one-click presets; fine-tune with the sliders
190
+ afterwards (a preset lights up when the current knob values match it).
191
+ - **Blur** (0–40 px) and **Frost** (0–100%): the blur radius and opacity of the glass.
192
+ - **Backdrop brightness**: dark mode darkens 0–50, light mode brightens 50–100 (50 = as-is),
193
+ mixed straight into the solid background.
194
+
195
+ Glass colours follow the active theme live; all settings persist across restarts.
196
+
197
+ ### Check for plugin updates
198
+
199
+ In **Settings → General**, right below the **Glass** row:
200
+
201
+ - Clicking **Check for updates** compares the latest npm version with the installed one:
202
+ up to date → shows the current version; newer → shows the new version plus a copyable
203
+ upgrade command (the profile name is detected automatically, falling back to `web`).
204
+ - Locally linked / source installs (`link:` / `file:` / git) don't show an npm upgrade
205
+ command — you'll be told to `git pull` or rebuild instead.
206
+ - Channel policy: stable builds follow the `latest` tag; prereleases follow both `latest`
207
+ and `beta` (the upgrade command automatically carries `@beta`). Offline or network
208
+ failures show the reason and offer a retry.
209
+
210
+ ## Glassmorphism
211
+
212
+ **Glassmorphism** is a visual style in which panels look like frosted glass — translucent
213
+ fills, backdrop blur (`backdrop-filter: blur()`), and glass details (rim, inner highlight,
214
+ soft shadow) — letting the content behind show through, softened.
215
+
216
+ What this plugin does:
217
+
218
+ - **Seven glass areas**: top bar, sidebar, composer, stats line, trajectory view, chat
219
+ bubbles and the new-session button; in Mica mode they become rounded floating cards and
220
+ chat content scrolls *under* the glass, blurred; the collapsed sidebar becomes a
221
+ floating rail at the edge of the chat area;
222
+ - **Page-edge gradient blur**: a blur band at the top and bottom of the viewport so
223
+ messages are softened as they melt past the edges (borrowed from
224
+ [DSH-Transparent-UI-Plugin](https://github.com/WYH66666666/DSH-Transparent-UI-Plugin)'s
225
+ Aqua skin);
226
+ - **Theme-following colours**: Latte is light glass, Mocha dark glass — switching flavours
227
+ recolours instantly. The page ground is the theme's solid colour; the brightness knob
228
+ mixes white/black straight into it;
229
+ - **One-click toggle**: off restores the stock UI exactly; uninstalling the plugin leaves
230
+ nothing behind.
231
+
232
+ ## Development
233
+
234
+ ```sh
235
+ pnpm install
236
+ pnpm typecheck # tsc --noEmit type check
237
+ pnpm test # vitest palette-coverage tests
238
+ pnpm build # tsdown build -> lib/index.js (host) + lib/client.js (browser)
239
+ ```
240
+
241
+ Palettes are produced by a generator script — after editing
242
+ `scripts/generate-palettes.mjs`, rerun:
243
+
244
+ ```sh
245
+ node scripts/generate-palettes.mjs
246
+ ```
247
+
248
+ The changelog draft is generated from your conventional commits (bilingual `EN:` support
249
+ in commit bodies):
250
+
251
+ ```sh
252
+ pnpm changelog:gen # print the draft since the last tag
253
+ pnpm changelog:gen -- --write # write it into the [Unreleased] section
254
+ ```
255
+
256
+ ### Local link debugging
257
+
258
+ Clone the repo, link it into a profile and add it to the bundles (use your own paths):
259
+
260
+ ```sh
261
+ pnpm --dir C:\Users\LeGo\.dsh\profiles\web add link:D:\Vibe-Coding\dsh-catppuccin
262
+ ```
263
+
264
+ Then add `@nonamelego/dsh-catppuccin` to the profile's `package.json`
265
+ `dsh.profile.bundles` and restart `dsh web`. For DSH Desktop use
266
+ `~/.dsh/profiles/desktop` instead.
267
+
268
+ ## 🙋 FAQ
269
+
270
+ - **Q: "Why don't I see the Catppuccin themes in the Appearance row?"**\
271
+ A: The stock Appearance row only lists the built-in light / dark / follow-system
272
+ preferences. The four flavours live in the **Catppuccin** row right below it.
273
+ - **Q: "How is my theme choice remembered?"**
274
+ A: The choice persists in `catppuccin-state.json` under the DSH home (shared across
275
+ every DSH instance on the machine), with localStorage as an in-browser cache and
276
+ cross-tab sync. So plain `dsh web`, `dsh web --port <custom>`, and **DSH Desktop**
277
+ (which boots on a fresh random loopback port every launch) all restore the preference
278
+ automatically. The glass switch and every knob persist the same way.
279
+ - **Q: "How do I know if this plugin has a new version?"**
280
+ A: Settings → General → **Check Catppuccin plugin updates** compares against npm in one
281
+ click and gives a copyable upgrade command; or run
282
+ `dsh plugin --profile web update @nonamelego/dsh-catppuccin` manually (re-`add` the
283
+ latest version works too). In [DSH Desktop](https://github.com/anywhere-labs/deepseek-harness-desktop),
284
+ use `desktop` as the profile name, or just run `dsh plugin update` in the app's DSH terminal.
285
+
286
+ ## 💝 Credits
287
+
288
+ - [Catppuccin](https://github.com/catppuccin/catppuccin) for the palettes and port templates
289
+ - [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) for the plugin system
290
+ - [DSH-Transparent-UI-Plugin](https://github.com/WYH66666666/DSH-Transparent-UI-Plugin)
291
+ for the glass-skin interaction and implementation reference (mica / compatibility modes,
292
+ blur / frost / brightness knobs)
293
+
294
+ &nbsp;
295
+
296
+ <p align="center">
297
+ <img src="https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/footers/gray0_ctp_on_line.svg?sanitize=true" />
298
+ </p>
299
+
300
+ <p align="center">
301
+ Copyright &copy; 2021-present <a href="https://github.com/catppuccin/catppuccin" target="_blank">Catppuccin Org</a>
302
+ </p>
package/README.md CHANGED
@@ -13,6 +13,8 @@
13
13
  <a href="https://www.npmjs.com/package/@nonamelego/dsh-catppuccin"><img src="https://img.shields.io/npm/dt/@nonamelego/dsh-catppuccin?colorA=363a4f&colorB=f5a97f&style=for-the-badge"></a>
14
14
  </p>
15
15
 
16
+ **中文** | [English](README.en.md)
17
+
16
18
  ## 目录
17
19
 
18
20
  - [简介](#简介)