nailing10086-zx/dsh-custom-ui

Custom UI for DeepSeek Harness Web: right-side file-tree sidebar, workspace file open, balance meter.

Bundle verified MIT JavaScript Unknown
Bundle verified

Listed

0

Ui

Bundle verified

VersionUnknown
LanguageJavaScript
LicenseMIT
View on GitHub

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 (credentialRef from @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_KEY configured 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.js and lib/client.js before 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.