- Accueil
- Plugins
- Thèmes et apparence
- dsh-theme-cutout-clash
dsh-theme-cutout-clash
yrracowl/dsh-theme-cutout-clash
Thèmes néobrutalistes et pop art sélectionnables pour DeepSeek Harness Web, avec des surfaces de lecture apaisées. La version 0.5.10 corrige la bannière de messages en attente et le bouton de pièce jointe du compositeur dans toutes les variantes.
Installer
dsh plugin --profile web add github:yrracowl/dsh-theme-cutout-clashREADME
dsh-theme-cutout-clash
English
Cutout Clash is a selectable neo-brutalist/pop-art theme bundle for DeepSeek Harness Web. It keeps conversation content calm while adding expressive shell, Composer, Goal, and transition surfaces. The Client Store compatibility path targets DSH 0.1.2+, with a legacy runtime fallback for older RC hosts.
中文
Cutout Clash 是面向 DeepSeek Harness Web 的可选择新粗野主义 / 波普艺术主题包:保持会话内容安静易读,同时增强 Shell、Composer、Goal 和转场表面。优先使用 DSH 0.1.2+ 的 Client Store,并为旧版 RC 保留 runtime 回退。
Cutout Clash 0.5.10 is a standalone selectable DSH Web theme bundle built around original neo-brutalist and pop-art composition. It is a companion to dsh-theme-acid-noir; neither plugin replaces or patches the other.
Visual system
The theme follows Loud edge, calm center:
- Sidebar, selection, Composer, Goal, and the transient theme transition carry the expressive geometry.
- Conversation text, Markdown, terminals, diffs, code metrics, scroll geometry, and streaming content remain level and quiet.
- Tool and Think surfaces use a narrow semantic state rail instead of a heavy shadow on every card.
- Semantic states cover Goal/Todo text, inline code, distinct workspace-expanded and active-session states, Subagent popup hover, task-management hover, Settings navigation, Composer command controls, and the context dialog without relying on CSS-module hash names.
- Settings content buttons retain their plugin-owned semantic foregrounds: a theme never flattens every dialog button to ordinary label text, so primary Save/Upgrade controls preserve the foreground paired with their fill token.
- Produced-file chips keep their own controls, but the row behind them is transparent so the deliverables line does not read as another selected state.
- Inline links are scoped to the conversation prose plane and use variant-specific, explicitly underlined link pairs: bright cyan/yellow on Night and deep blue/red on Pop. The explicit decoration line is required because DSH's base Markdown link style resets
text-decoration-linetonone; setting only decoration color and thickness does not render a highlight. Navigation, buttons, file chips, and plugin chrome are not recolored as prose links. - DSH's official Markdown renderer automatically turns an inline-code token whose complete value is an absolute HTTP(S) URL into
<code><a></a></code>, including inside tight or loose list items. The theme therefore pairs everycode:not(pre code) a[href]with the code chip foreground without assuming a paragraph parent. - When DSH's file-mention provider recognizes an inline-code path, the same renderer emits
<code><button type="button" title aria-label></button></code>. The theme targets this stable semantic structure—not its CSS-module hash—so clickable file paths inherit the code chip foreground and retain an explicit underline in normal and hover states. - The Composer never receives a transform on hover, so its native context dialog retains DSH's original containing block and placement.
- No external fonts, images, audio, network assets, game marks, or character assets are included.
Install
dsh plugin --profile web add dsh-theme-cutout-clash
Restart the existing DSH Web process afterwards: the Host scans the browser plugin roster at startup, so the three themes appear only after that restart. Then open Settings → General → Cutout Clash theme.
Local development, from the parent directory of this checkout:
dsh plugin --profile web add .\dsh-theme-cutout-clash
Either form records the package in the profile's dsh.profile.bundles, which is what serves the client bundle.
Available choices:
- Default appearance — follow the DSH built-in appearance.
- Cutout Clash — warm paper, lime action, pink events, cyan signal.
- Night Cutout — ink-blue Voltage palette with yellow and cyan hierarchy; filled yellow controls use dark foregrounds, while dark selected navigation uses light text.
- Pop Signal — warm Press palette with print blue, red, and yellow.
Motion and lifecycle
- DSH currently exposes no public
app/ready,shell/ready, orboot/readyClient event.shell.overlayis declared by AppFrame and therefore cannot cover the frame before AppFrame's first render. - A saved Cutout theme installs a small viewport-fixed early curtain as soon as the Client bundle script executes. The curtain is already present before
[data-dsh-frame]mounts; after Theme Runtime restores the saved tokens and the official shell Slot is available, it reveals and removes itself. - Ordinary theme switches keep an additive
shell.overlaylifecycle anchor, while the visual Plate is mounted directly underdocument.body. At a normalz-index: 90it escapes AppFrame's stacking context and covers shell content, yet sits below DSH's popup bands (menus at100, dialogs at1000, toasts at1100), so menus, dialogs, toasts, and third-party overlays can cover the transition. - Boot reveal cleanup has its own timer channel, so a simultaneous Theme Runtime event cannot cancel removal and leave an opaque curtain over the restored application. The pre-Cordis curtain also owns an independent 2.5-second watchdog that performs the same reveal and removal if any Client plugin load failure prevents the Cutout Fiber from applying.
- Two geometric plates and one registration band perform a short non-blocking cover/reveal sequence.
- The overlay is always
pointer-events: none. - A monotonically increasing generation cancels stale timers during rapid switching.
- Motion is selectable in Settings: 完整转场 / Full motion, 跟随系统 / Follow system, or 关闭转场 / Motion off. Existing Cutout users default to Full motion so a browser-level reduced-motion flag does not silently hide the requested theme effect; users can choose Follow system at any time.
prefers-reduced-motion: reduceis honored when Follow system is selected; Full motion is an explicit user override, and Motion off is synchronous.- No transcript node, code line, terminal output, diff, or streamed token receives entrance motion.
- Theme registrations, Slot entries, style nodes, timers, and body markers all belong to the plugin lifecycle and are removed on stop/unload.
Preference coordination
Acid Noir and Cutout Clash now share the versioned browser record dsh.theme.preference.v1. Legacy keys are read only for migration. A selected theme writes one record, and Default clears it, so a DSH restart has one unambiguous custom-theme owner instead of two competing restorers.
DSH's built-in appearance scope can re-emit its durable light / dark / system preference when any Settings section is saved. If that refresh transiently replaces an active Cutout theme, the plugin restores the still-selected custom preference on the next task without requiring F5. This administrative recovery path is explicitly silent: it cancels any pending Plate and never plays the cover/reveal animation. Only cold boot and an intentional theme change animate. An explicit click on a built-in appearance choice or either theme family's Default button clears the custom record first, so intentional switching is never fought.
The motion choice is stored separately as dsh-theme-cutout-clash.motion.
Plugins associés
dsh-wallpaper-engine
elysia395/dsh-wallpaper-engine
dsh-deep-whale (maid-atelier)
small-tailqwq/dsh-deep-whale
dsh-deep-whale
small-tailqwq/dsh-deep-whale
dsh-claude-style
nwflower/dsh-claude-style