deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:says693/dsh-composer-dynamic-island
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
English | 简体中文
Collapse selected DeepSeek Harness Web composer controls into a compact, upward-expanding island without moving their DOM nodes or changing the host React tree.
dsh-TUI · A DeepSeek Harness ecosystem plugin.
This package has two deliberately separate layers:
src/index.ts (published as lib/types/index.js) and dsh-plugin.json form
a headless Community v0.15 host facet. It requires no contracts, permissions,
credentials, browser, or GUI.lib/client.js is an optional DSH Web compatibility adapter. Community
v0.15 does not define a client facet, so the adapter is not represented as
one and is not claimed as cross-host UI conformance.See docs/COMPATIBILITY.md for the exact boundary.
The adapter detects controls from an active DSH input or composer surface and lets the user choose which controls collapse into an upward-expanding island. It discovers:
conversation.input.left,
conversation.input.right, and conversation.input.model;conversation.input.* or composer.*
slots;data-plugin, data-plugin-id,
data-extension, data-extension-id, or data-contribution;Discovery stays inside a confirmed input/composer surface. Text-entry widgets such as text/search inputs, textareas, contenteditable regions, and ARIA textboxes are never collapsed, even when they carry a plugin marker. Search, settings, and ordinary form controls outside the composer are not scanned.
Defaults collapse left-side plugin controls and the WebUI team-mode selector. Native tools, permission controls, model controls, and send/stop remain in their original positions. Existing controls remain owned by their original React parent; the adapter changes presentation attributes and styles without moving nodes to another parent.
Open DSH Settings and select 输入灵动岛 to change the detected controls.
Selections apply immediately and remain in browser local storage. Hover or
focus the three-dot handle to open, click to pin on touch devices, move away to
close, or press Escape to close and restore focus.
The plugin deliberately does not provide drag-and-drop, coordinate storage, or any other user-facing button-position editor. Panel placement is calculated only to render the island beside its fixed composer trigger.
This repository is currently distributed from GitHub:
dsh plugin add github:says693/dsh-composer-dynamic-island
Alternatively, add dsh-composer-dynamic-island to a target profile and enable
its bundle. cordis.patch.yml contains the portable Cordis row. If the DSH Web
slot service or composer surface is unavailable, the browser adapter is not a
supported target and the host facet remains a no-op.
Older stored layout coordinates and cached control labels are removed when the adapter next loads.
Remove dsh-composer-dynamic-island from the profile bundles and dependencies,
then restart DSH. Browser settings are intentionally preserved unless the
site's local storage key dsh-composer-dynamic-island-config-v1 is removed.
Requires Node.js ^22.19 || >=24 and pnpm 10.
The package root follows the dsh-TUI plugin-template contract and exports
name, typed Config, and apply without a default export. The optional DSH
Web adapter remains a separate, explicitly non-standard client layer.
corepack pnpm install --frozen-lockfile
corepack pnpm build
corepack pnpm verify
This plugin is written and maintained solely by says693.
The Community v0.15 metadata is a community draft compatibility declaration, not an official DSH certification. The optional Web adapter must be tested on each supported DSH Web host.
Released under the MIT License.
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。