dsh-web-ui
by zunyan
DSH Web UI 插件 — 专注界面:针对 harness web 配置文件的 Codex 风格右侧停靠文件面板。左侧文件树,右侧只读预览,从…打开
DSH Web UI plugin — one focused surface: a Codex-style right-docked file panel for the harness web profile. File tree on the left, read-only preview on the right, opened from a…
安装
dsh plugin --profile web add github:zunyan/dsh-web-uiGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗
安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。
README
DSH Web UI plugin — one focused surface: a Codex-style right-docked file panel for the harness web profile. File tree on the left, read-only preview on the right, opened from a sidebar footer icon.
Surface
- Toggle — sidebar footer icon button (visible when the sidebar is open). Active state mirrors the panel's open/close.
- Panel — right-docked drawer, 420px wide. Slides in from the right edge.
- Header: file name + close button.
- Left: lazy file tree (workspace root → directories → files; directories collapse by default, click to expand).
- Right: read-only preview pane with file size + path footer.
- Hotkey —
Ctrl/Cmd + Shift + Rtoggles the panel.
Default state is closed; the user opens it via the toggle.
Install
dsh plugin --profile web add dsh-web-ui
The plugin resolves through the profile's node_modules; the
cordis.patch.yml inserts the plugin row into the profile's loader stack.
Wire contract
All host endpoints live under /api/dsh-web-ui/ and respond with the
envelope:
{ "ok": true, "value": ... }
{ "ok": false, "error": { "code": 403, "message": "..." } }
| Path | Method | Purpose |
|---|---|---|
/api/dsh-web-ui/fs/tree?path=<abs> |
GET | one-level listing (files + dirs, dirs first) |
/api/dsh-web-ui/fs/file?path=<abs> |
GET | file content (utf8 or binary flag), max 1 MB |
Both routes realpath-validate path against the active workspace root and
reject anything outside as 403. The plugin does not read arbitrary paths.
Build
pnpm install
pnpm build # tsc -p tsconfig.build.json && tsdown
pnpm typecheck
Why one client bundle
DSH plugins with a scoped npm name (@scope/pkg) ship two CJS bundles: one
registering as the package name (@scope/pkg, the official channel) and
one as the manifest id (scope/pkg/registry, the registry channel). For a
non-scoped plugin like this one, the two channels collapse to one id —
dsh-web-ui — so lib/client-registry.js is the single artifact and
dsh.plugin.json's client.main points at it.
License
MIT
原始 README: https://github.com/zunyan/dsh-web-ui/blob/main/README.md ↗
同类插件
查看全部 →
dsh-web-ui-all
DSH Web UI 插件与皮肤合集:任务看板、git 图、右侧面板、远程移动端 UI、桌宠、实时 token 统计与皮肤中心。

dsh-web-ui
DSH Web UI 插件与皮肤合集:任务看板、git 图、右侧面板、远程移动端 UI、桌宠、实时 token 统计与皮肤中心。

dsh-TUI
Claude Code 风格全屏终端 UI:像素鲸鱼顶栏、实时工作状态行、思考流式展开。

DSH-better-sidebar
侧边栏完整工作台:内置文件渲染编辑、终端、Git 与子代理,支持三方插件注册新 Tab。

working-activity
让 agent 的"工作状态行"活过来——实时工具动态与进度、俏皮文案、模型自述、上下文预警。同一套想法,适配两个平台: pi CLI 与 DeepSeek Harness(DSH) 。

deepseek-idesign
可视化设计工作室,支持网站、App 原型、海报、信息卡、报告和杂志的模板创建、元素编辑、选区级 AI 草稿衔接与导出。