DeepSeek Harness (DSH) has a built-in title generator (session-title-first-prompt-llm), but it is a one-time operation, and the maxOutputTokens: 64 limit causes it to fail frequently with reasoning models. As a result, many sessions remain stuck on “prompt-truncation” fallback titles for extended periods, lacking a clear topical focus. The dsh-session-topics plugin uses a retry mechanism and automatic patching to ensure that every session eventually gets a meaningful LLM-generated title, and it provides hover-card size data for the session list.
Plugin Overview¶
dsh-session-topics is a session topic title plugin for DeepSeek Harness, designed to resolve the problem of session titles remaining ineffective for long periods. It does not register a separate title provider; instead, it appends content directly to session/title log events. The plugin is maintained by SipengXie2024 and is released under the MIT license.
Core Features¶
-
Startup Scan
Eight seconds after DSH starts, the plugin checks all persisted sessions. If a session is still using a fallback title, the plugin generates and writes a genuine topic title using the current default model. -
Turn-End Retry
The plugin listens for agent state changes. When the agent state changes fromrunningtoidle, if the session’s title is still a fallback title, the plugin attempts to regenerate the title. -
Data API
The plugin provides two HTTP endpoints:
-GET /topics-size?id=<sessionId>: Returns the persisted log byte size for the specified session, used by hover cards.
-GET /topics-sweep: Manually triggers a full scan and returns the rename result for each session in JSON format, for debugging. -
Hover Card Size Patch
The session list hover card is a core DSH UI component and has no reserved plugin slot. Starting with v0.3.0, the plugin implements a self-healing mechanism through a source-code patch. The plugin automatically applies this patch on every startup, with no manual intervention required.
Installation and Enablement¶
Use the official installation command to add the plugin to the DSH web configuration file. Note: the installation command requires the corresponding .tgz package file to be present locally.
dsh plugin --profile web add .\dsh-session-topics-0.3.0.tgz
After installation, restart the DSH web process to activate the plugin.
Typical Usage¶
Trigger a title scan manually
If you need to check the renaming status of all sessions immediately, you can call the endpoint directly:
GET /topics-sweep
Check session size
To view the log size in a session list hover card, you first need to retrieve the data through the endpoint:
GET /topics-size?id=<sessionId>
Apply the hover patch manually
On machines where this plugin is not running, you can run the script to apply the patch manually:
node scripts/patch-hover-size.mjs
Use Cases and Notes¶
- Use cases: Developers who need to maintain consistent session titles and want to avoid meaningless fallback titles such as “System prompt…” or “User: …”; scenarios where session log size needs to be viewed via hover cards.
- Notes:
- User rename protection: Titles manually renamed (pinned) by users are never modified by the plugin.
- Idempotency: The plugin is idempotent. If anchor drift is detected (for example, file structure changes caused by a DSH version upgrade), the plugin exits with an error and does not attempt to modify files.
- Display control: When the plugin is not running, the size line on hover cards is automatically hidden.
- Version updates: Reinstalling the same version of the plugin is a no-op and does not take effect repeatedly.
Summary¶
dsh-session-topics resolves DeepSeek Harness session title failures through startup scans and turn-end retries. Together with the self-healing hover card patch, it provides a clearer view for session management. For more details, refer to the GitHub repository or the community directory.