Back to home@lovstudio

dsh-better-command

No description

Stars
0
Language
TypeScript
Created
Aug 29, 2026
Updated
Aug 29, 2026
GitHub repo

Introduction

dsh-better-command

Lovstudio's slash-menu matching upgrade for the DeepSeek Harness web surface. The plugin provides the slashMatcher service — a separator-transparent, abbreviation-aware candidate ranker — that the / menu sources (ui-commands and ui-skill) consult at candidate time. With the plugin mounted, dshp matches dsh-plugin-creator, dbc matches dsh-better-command, and dsh-p matches dsh-plugin-creator.

This is a Lovstudio plugin, not a DeepSeek-AI package, distributed under the @lovstudio scope.

What it does

The slash pipeline asks each / source for menu candidates per keystroke. The harness command source filters by ordered-subsequence matching; the skill source filters by literal name prefix — so a skill like dsh-plugin-creator is unreachable by typing dshp. The harness ships the SlashMatcher extension point (in dsh-client-ui-input-trigger's frozen trigger contract): a source may consult the slashMatcher service at candidate time and must keep its built-in filter when the service is absent. This plugin provides that service:

  • -, _, ., and whitespace are transparent in names and queries (dshp matches dsh-plugin-creator).
  • Word-initial abbreviations score at boundaries (dbc matches dsh-better-command).
  • Matching is case-insensitive and name-only; descriptions never match.
  • Ranking tiers: literal prefix > separator-stripped prefix > boundary-weighted subsequence score; equal scores keep source order.

The plugin is fully self-contained: it imports no @deepseek-ai runtime symbols (the service contract is a structural mirror), and its browser half is served to the page by the client module system once composed.

Install

Plugins distribute as a bundle (dsh.bundle.patchcordis.patch.yml). Install into the web profile (the one dsh web boots):

# from git (append #<sha> to pin a commit)
dsh plugin --profile web add github:lovstudio/dsh-better-command

# or straight from npm
dsh plugin --profile web add @lovstudio/dsh-better-command

The client half (dsh.client) is served to the page automatically by the client module system once the plugin is composed — no rebuild of the web application is needed.

Use

  1. Start the web UI: dsh web.
  2. Type / in the composer and start an abbreviation: /dshp, /dbc, /dsh-p.
  3. The menu surfaces the hyphenated commands and skills the default filters would miss.

Notes

  • Requires a harness build that ships the SlashMatcher extension point and the ui-commands / ui-skill wiring that consults it (the frozen trigger contract in dsh-client-ui-input-trigger). Absent the extension point, the harness sources never read the service and the plugin is inert.
  • Uninstalling the plugin restores the built-in filters exactly: the extension point is opt-in and no harness source depends on the service.
  • Matching is a per-keystroke browser computation; it never reaches a model request or the session log.

License

MIT