When using the DeepSeek Harness (DSH) Web interface, as the number of sessions grows, the title text in the left-side list becomes crowded and hard to distinguish. The dsh-session-icons plugin helps by generating a 24x24 monochrome SVG icon alongside each session title and injecting it into the sidebar to improve recognition.

Plugin Introduction

dsh-session-icons is a DSH plugin maintained by fengb3. When the model generates a title for a new session, the host sends an auxiliary micro-request asking the model to draw a 24×24 monochrome SVG metaphor icon based on the title. The browser injects it to the left of the title text in each row of the left-side session list, displaying it in the theme color.

Core Features

  1. Icon Generation and Injection
    Generates a 24x24 monochrome SVG icon and injects it before the title in the left-side session list.

  2. Disk Cache
    Supports disk caching (located at $DSH_HOME/session-icons/cache.). After restarting or refreshing the page, titles that do not yet have icons are automatically backfilled.

  3. Same-Name Sharing
    Supports sharing the same icon among identically named titles.

Installation and Enablement

This plugin depends on the dsh web profile. Before installing, make sure dsh is installed and dsh web has been run.

  1. Run the installation command in any directory:
dsh plugin --profile web add dsh-session-icons
  1. Restart DSH to apply the changes:
dsh web

Configuration

The default configuration works out of the box. If you need to override it, edit ~/.dsh/profiles/web/cordis.patch.yml and add config under the corresponding id:

- id: dsh-session-icons
  config:
    maxCachedIcons: 500
    timeoutMs: 45000

Notes

  1. Environment Dependency: Depends on the dsh web profile.
  2. DOM Structure Dependency: Injection relies on the DOM structure (using MutationObserver + structural anchors). If DSH changes the list structure, the selectors need to be updated.
  3. Output Safety: Icon output is sanitized (rejects scripts/event attributes/external links/icons over 6KB).
  4. Independence: Icon requests are independent from the session log.

Conclusion

This plugin improves the efficiency of session management through visual enhancement. For more details, visit the GitHub repository.