DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

ivanearisty /

ivanearisty/dsh-plugin-cmdk

Verified

Command palette for DeepSeek Harness (Cmd+K) — new chat, jump to session, switch model, permissions, slash commands, settings, all from one fuzzy bar

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@5d1d14b2

dsh-plugin-cmdk

A command palette for DeepSeek Harness. Press ⌘K (Ctrl+K), type a few letters, hit enter — new chat, jump to a session, switch model, change permissions, run a slash command, flip the theme, open any settings page.

The same bar ChatGPT, Slack, Linear and Notion put on ⌘K, for the Harness.

Install

dsh plugin --profile web add dsh-plugin-cmdk

Not on npm yet — until it is, install straight from GitHub:

dsh plugin --profile web add github:ivanearisty/dsh-plugin-cmdk

Client-only — it takes effect as soon as the page reloads.

Use

Key Action
⌘K / Ctrl+K Open the palette
⌘⇧P, ⌘/ Same thing (VS Code / Firefox-safe aliases)
↑ ↓ (or Ctrl+N / Ctrl+P) Move
↵ Run, or open a sub-page
⌫ on an empty query Back out of a sub-page
Esc Close

What's in it

Everything is fuzzy-matched, so swm finds Switch model.

  • Chats — New chat (and per-workspace), Jump to session (shows running state and age), rename the current chat
  • Session — Switch model, with a sub-page for reasoning effort where the model exposes one; change permissions; run any slash command the host offers
  • Views — jump to any tab the current conversation shows
  • Appearance — theme, language, sidebar
  • Settings — open settings, plus a row for every settings page installed

Recently used commands surface first on an empty query.

How it works

The catalog is rebuilt on every open from the harness's live services, so it can never show a stale session list or an outdated model set. Anything another plugin adds — a new view tab, a new settings page, a new slash command — shows up automatically without this plugin knowing about it.

The palette UI is hand-rolled on React and the harness's own design tokens. It deliberately does not depend on cmdk or kbar: both pull a dialog library, and a command bar does not justify that weight in the boot bundle. ~30 kB minified, ~9 kB gzipped.

Permissions and data

Reads and drives only in-page harness services (sessions, workspaces, theme, locale, model directory, commands). No network calls, no telemetry, nothing leaves the browser. Registers one overlay and one keydown listener.

Where the harness keeps a feature's state private, the palette clicks the same accessible control you would (role="tab", aria-label), so an action takes exactly the path a mouse takes.

Optional companion

With dsh-session-search installed, a Search messages… row opens full-text search over every conversation. Detected at runtime; not required.

Settings

The plugin registers a dsh-plugin-cmdk settings namespace, so it appears as a card under Settings → Plugins like any other installed plugin, and its section lives in settings.yaml:

dsh-plugin-cmdk:
  aliasChords: true      # keep the Cmd+Shift+P and Cmd+/ aliases bound
  extraChords: []        # additional KeyboardEvent.code chords, e.g. ["Shift+KeyP"]

Compatibility

  • DeepSeek Harness 0.1.x (developed against 0.1.1-rc.2), web profile.
  • Node ^22.19 || >=24.
  • Harness packages are optional peer dependencies, resolved from the host installation.

Known limitations

  • Chords are fixed in this version (⌘K, ⌘⇧P, ⌘/) and not yet rebindable.
  • Firefox reserves ⌘⇧P for a private window; ⌘K is the primary chord for exactly that reason, and ⌘/ is the always-safe fallback.
  • Model and slash-command pages need an active session; on a blank session those rows are correctly absent.

License

MIT

—/ 5

No ratings yet

Verified DSH bundle

Commit 5d1d14b28110

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout