deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:vilicvane/dsh-plugin-web-notify
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
Browser notifications for the DeepSeek Harness Web GUI.
Shows a browser notification when:
requireInteraction and stay on screen until you click or dismiss them (set the REQUIRE_INTERACTION constant in client.js to false for the OS default auto-dismiss timing).Add the plugin to your dsh profile and register it in the Loader.
dsh plugin --profile web add github:vilicvane/dsh-plugin-web-notify
This is equivalent to running pnpm add github:vilicvane/dsh-plugin-web-notify
inside the profile directory.
Once the package is published to the npm registry:
dsh plugin --profile web add dsh-plugin-web-notify
Then append an insert row to the profile's cordis.patch.yml
($DSH_HOME/profiles/web/cordis.patch.yml):
- insert:
- id: web-notify
name: dsh-plugin-web-notify
config:
provider: deepseek-official
model: deepseek-chat
The config block is optional and defaults to deepseek-official /
deepseek-chat. All settings and their defaults:
| Key | Default | Meaning |
|---|---|---|
provider |
deepseek-official |
LLM provider route used for summaries. |
model |
deepseek-chat |
Small/fast model used for summaries. |
maxInputChars |
4000 |
Cap on the turn text (user request + assistant reply) sent to the model. |
maxOutputTokens |
150 |
Cap on the summary length. |
timeoutMs |
60000 |
Summary generation timeout. |
systemPrompt |
(built-in) | System prompt for the summarization call. |
Restart dsh web, refresh the page, and click anywhere once to grant the
notification permission.
index.js (host half) registers /web-notify/summary and
/web-notify/capability routes on the DSH web server. On a summary request
it reads the finished turn's user/assistant text on demand from the
in-memory session store (ctx.sessions), then streams a call to the
configured small model (ctx.llm.stream, with the session-title purpose
so the provider disables model thinking and the token budget goes to the
summary text) and caches the one-sentence result per session.client.js (client half) is a Cordis client plugin. It injects the
sessions service and watches the session-list snapshot for
running → false transitions and for pendingInteraction
(approval / plan-review / question) arrivals. It probes the
capability route at apply (and again after server connection resets), so
completion notifications start with a "summarizing…" hint only when the
host summary is actually available. The client polls the summary route;
the summary replaces the hint (same tag) once ready, and failures degrade
back to the plain completion text.requireInteraction so notifications
stay visible until clicked or dismissed.MIT
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。