nailing10086-zx/dsh-custom-ui
Custom UI for DeepSeek Harness Web: right-side file-tree sidebar, workspace file open, balance meter.
已收录
0
Ui
Bundle 已验证
预览
功能介绍
右侧文件树侧栏,可打开工作区文件;并在输入框状态行显示 DeepSeek 账户余额。
适合
- 经常在当前工作区浏览并打开文件的 DSH Web 用户。
- 希望在输入框状态行直接查看 DeepSeek 账户余额的用户。
- 需要用系统默认应用打开工作区文件或文件夹的工作流。
不适合
- 非 Web DSH 工作流;侧栏和余额状态需要 `dsh web`。
- 未配置 `DEEPSEEK_API_KEY` 却需要余额监控的场景;文件树仍可使用,但余额表不会工作。
- 需要完整编辑器或文件管理器,而不只是导航和调用系统默认应用打开文件的工作流。
README
dsh-custom-ui
Custom UI plugin for DeepSeek Harness Web.
Adds a right-side file-tree sidebar, workspace file open, and a DeepSeek account balance meter in the composer stats line.
Features
-
Balance meter — shows the DeepSeek account balance in the composer stats line. The API key is resolved server-side only through the credentials seam (
credentialReffrom@deepseek-ai/dsh-credentials) — it never crosses the wire to the browser. - File tree sidebar — a right-side workspace file tree for quick navigation, with collapse/expand and a floating toggle button.
- Workspace file open — open files/folders with the system default application (workspace-rooted; path traversal guarded).
Install
dsh plugin --profile web add dsh-custom-ui
Then restart dsh web. If installed from a local checkout instead, link it via pnpm link (or "dsh-custom-ui": "link:<path>" in the profile’s package.json) and rebuild.
Requirements
- DeepSeek Harness Web (
dsh web) -
DEEPSEEK_API_KEYconfigured in the harness credentials (for the balance meter; the file tree works without it)
Host routes
| Route | Purpose |
|---|---|
GET /api/custom-ui/balance |
DeepSeek account balance (via DEEPSEEK_API_KEY through the credentials seam) |
GET /api/custom-ui/fs/list |
Directory listing (workspace-rooted) |
GET /api/custom-ui/fs/open |
Open a file/folder with the system default |
Development
# host half (server routes)
node lib/index.js # or run through dsh plugin dev flow
# client half (browser UI) — HMR while `pnpm run dev:web` runs in the DSH checkout
# client-plugin changes reload without a refresh only while the dev:web watcher is running
Build the client bundle with your DSH toolchain, then restart dsh web.
Security
- The API key is resolved server-side only; the browser client never receives it.
- File routes are workspace-rooted:
resolve()+ prefix check against the workspace root blocks path traversal. - Review
lib/index.jsandlib/client.jsbefore installing if you did not clone from the official repo.
License
MIT — see LICENSE.
常见问题常见问题
在启用了 DSH 的终端中执行已验证命令 dsh plugin --profile default add github:nailing10086-zx/dsh-custom-ui。命令会解析公开 package 元数据,并保持插件与本页展示的目录身份一致。
兼容性以页面上展示的 bundle 与 profile 状态为准。如果某个 profile 尚未检测到,请先保持禁用,并在生产启用前阅读仓库文档。
GitHub 链接和 activity 元数据是 release 与维护状态的来源。新版本发布后重新查看本页,确认目录已经观察到最新版本。