nailing10086-zx/dsh-custom-ui
Custom UI for DeepSeek Harness Web: right-side file-tree sidebar, workspace file open, balance meter.
Listed
0
Ui
Bundle verified
Preview
What it does
Right-side file-tree sidebar that opens workspace files, plus a DeepSeek account balance meter in the composer stats line.
Best for
- DSH Web users who frequently browse and open files from the current workspace.
- Users who want their DeepSeek account balance visible alongside composer statistics.
- Workflows that benefit from opening workspace files or folders in the system default application.
Not ideal for
- Non-Web DSH workflows, because the sidebar and composer meter require `dsh web`.
- Balance monitoring without a configured `DEEPSEEK_API_KEY`; the file tree still works, but the meter does not.
- Workflows that need a full editor or file manager rather than navigation and system-default opening.
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.
Frequently Asked QuestionsFAQ
Use the verified command dsh plugin --profile default add github:nailing10086-zx/dsh-custom-ui in a DSH-enabled shell. The command resolves the public package metadata and keeps the plugin attached to the catalog identity shown on this page.
Compatibility follows the bundle and profile status shown above. If a profile is not detected, keep the plugin disabled there and check the repository documentation before enabling it in production.
The GitHub link and activity metadata are the source of truth for releases and maintenance. Revisit this page after a new release to confirm the catalog has observed the latest version.