DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
S

dsh-session-kanban

Session Kanban

Session kanban board for DeepSeek Harness: every chat session's current work, todos, and progress in the left sidebar, with a searchable overview heatmap and one click to jump back.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:Thunderunruly/session-kanban#8113891ebda18e5983854b6b3f602dbc111aeced
READMECompatibilityVersions

Compatibility and provenance

Session Kanban is published as dsh-session-kanban and currently resolves to version 1.1.6. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
11/2/2026

Versions

1.1.6stable
11/2/2026
1.1.5stable
10/27/2026
1.1.4stable
10/26/2026
Show 3 more versionsCollapse versions
1.1.1stable
10/26/2026
1.1.0stable
10/26/2026
1.0.0stable
10/26/2026

Related plugins

Loading related plugins…

Latest
1.1.6
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 1
Weekly downloads
0
Last push
11/2/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in productivity-workflow.

Client Ui Task Board@linxin666/dsh-client-ui-task-boardHost-authoritative task board for the DSH Web GUI with real session execution, Host cron scheduling, and optional cross-platform idle-sleep protection; mounted without DSH source changes.Web All@linxin666/dsh-web-allDSH Web UI 全家桶聚合插件:一键安装全部功能插件(task-board / pet / web-ui-settings / skin-center / community-plugins / compat shim)。compat 桥接层已并入本包(src/client),无需独立 compat npm 包。Remotedsh-remoteRemote-work assistant for DeepSeek Harness: connect SSH (password/key/agent/keyboard-interactive, multi-hop ProxyJump), list hosts from ~/.ssh/config, pick a remote workspace, operate on it with 21 rw_* tools, conflict-aware mirror sync, an embedded PTY tModel Router@ljwei-stak/dsh-model-routerA unified DS Bot workspace for DeepSeek Harness Desktop: model and Bot routing, private libraries, recorded desktop routines and scoped remote computer control.

README

DSH Session Kanban

English | 简体中文

Documentation Wiki · Releases · Issues

A session kanban board plugin for DeepSeek Harness (DSH). It adds a board to the DSH Web UI sidebar where every chat session's current work, todo progress, running state and recent activity are visible at a glance — click any card to jump straight back into that session.

Screenshots

Overview page.

Session board overview — English UI

Table of contents

  • Features
  • Requirements
  • Installation
  • Usage
  • Configuration
  • How it works
  • Workday calendar data sources
  • Privacy
  • Development
  • Project structure
  • Limitations
  • License

Features

  • Sidebar entry — a panel icon next to the built-in panels opens the kanban board.
  • Overview home — session totals, running count, todo completion and a GitHub-style activity heatmap with year / month / week / day scales, plus workday/non-workday highlighting for the selected country.
  • Session cards — current request and latest reply, todo progress bar, updated time, working directory, running state; click a card (or press Enter/Space) to open the session.
  • Quick actions — pin / unpin, inline rename, fork, copy Session ID, archive (with confirmation), refresh and new session. Sessions owned by subagent routing cannot be renamed: the action is disabled and hovering it explains why. Archiving the Session currently held by the main view reopens the board afterwards instead of leaving the user on the new-session home.
  • Tabs and search — Overview / All / Running / With-todos / Completed, plus a search box that filters both the board and the overview aggregates. The three content tabs partition every visible session: Completed is the catch-all for sessions with no unfinished todos (fully done, no todo list, or details not loaded yet), so nothing is left only in All.
  • Session relationships — subagent and team-member child sessions show a compact row naming the relation and linking to their parent; parent cards count the child sessions visible in the current view. One family shares one accent colour (parent and children have the same tinted left edge and relation dots), so scattered masonry cards can be matched to their parent regardless of order. Forked sessions are independent top-level sessions (the source is only fork provenance), so they are neither shown as children nor counted; an archived parent keeps its title with an “archived” marker instead of a dead “not visible” link.
  • Filters — the Agent Team scope (when teams exist) and a Workspace filter (defaults to All workspaces, hidden when the host has only one Workspace, persisted across reloads) combine with the tabs and search. Sessions the host does not account to a Workspace directly — subagent, team member and fork children — inherit their parent Session's Workspace, so they stay visible under that filter.
  • Adaptive dropdowns — selects reuse the host Menu primitive, measure the free space beside the trigger and open above or below it, with long lists scrolling inside the card.
  • Native look — card hover actions reuse the native Session-row action geometry and the native Tooltip bubble; settings rows match the built-in General rows, so light/dark theme changes apply automatically.
  • Scalable rendering — masonry columns, automatic pagination when scrolling near the bottom and an incremental detail pump for cold sessions. Cards are laid out at their natural height, so the last rows are never clipped.

Requirements

  • DeepSeek Harness (DSH) >=0.2.1-rc.3 <0.3.0-0 with the Web UI and plugin support. The range is declared as engines.dsh in package.json and shown by the DSH plugin market; development and testing ran on DSH 0.2.1-rc.3–0.2.1-rc.5 (desktop profile).
  • The package is ESM ("type": "module") and loads react from the running DSH host, so no runtime dependency is bundled.
  • node + pnpm are only needed for the offline tests.

Installation

Install from npm into a DSH profile:

dsh plugin --profile web add dsh-session-kanban

Then reload the DSH window once so the client bundle enters the boot graph. After that, client-only changes hot-reload in place.

From a local checkout

Use the DSH plugin manager:

install_bundle <absolute path to this folder>

Or add the folder as a linked dependency and let cordis.patch.yml insert the plugin row into the profile:

"dependencies": {
  "dsh-session-kanban": "link:F:/path/to/session-kanban"
}

Reload the window once after installation.

Usage

  1. Open the board from the Session Kanban panel icon in the left sidebar.
  2. Overview shows the totals, todo completion and the activity heatmap; switch the heatmap scale with Year / Month / Week / Day and, in Settings, the workday calendar country.
  3. Switch to All for the masonry card list; each card shows the session's current work, latest reply, todo list, working directory and updated time.
  4. Click a card to jump back into that session. Hover the card footer for pin, rename, fork, copy Session ID and archive actions.
  5. Narrow the list with the tab filters, the Agent Team scope, the Workspace filter and the search box — all filters combine.
  6. The heatmap sidebar keeps a compact status row: refresh icon · country · last refresh date (YYYY/MM/DD) · data source, e.g. ↻ China · 2026/10/26 · Holiday CN. Hover it for the full status and workday rule; click the refresh icon to update immediately.

Configuration

Settings are registered in DSH → Settings → General:

SettingDefaultOptionsEffect
Workday calendarChina24 countriesSource of the workday/non-workday shading in the heatmap
Auto-update calendar1 month1 day / 1 week / 1 month / 3 months / 6 months / 1 yearHow often the browser refetches the holiday data

Board preferences (tab, search scope, workspace filter, heatmap scale, highlights) are stored in localStorage under dsh.session-kanban.* keys and restored on reload.

How it works

Two halves ship in one bundle:

  • index.js — host half. Registers the sessionKanban session projection, folding user/message, assistant/message, turn/start, turn/end and todo/write into { request, reply, turn, endKind, todos, done, inProgress, total }, so cards render without replaying session logs.
  • client.js — client half. Registers the sidebar entry (sidebar.panellist), the board panel (main) and the General-settings rows (settings.general.item), then renders the board with React based on the host Menu / Tooltip / Button primitives.
  • cordis.patch.yml — bundle patch that inserts the plugin row into the profile.

Workday calendar data sources

Holiday data is fetched directly by the browser from public, CORS-enabled endpoints and cached in localStorage per country. A dedicated source that is unreachable falls back to Nager.Date per year, and the source name shown in the UI follows the data actually in use.

RegionSourceNotes
Chinaholiday-cn mirrors (jsDelivr, then raw.githubusercontent.com)Holidays, make-up workdays and adjusted weekends
Japanholiday-jpCabinet Office holidays, substitute holidays and citizens' holidays
South Koreaholidays-krIncludes substitute holidays
Russiaisdayoff.ruProduction calendar with transferred working days
Every other countrydate.nager.atPublic holidays plus the country's local weekend rule

An embedded China snapshot for 2023–2026 keeps the board usable offline.

Privacy

  • Requests are made by the browser only, to the public endpoints listed above.
  • Results are cached in localStorage; no credentials, session contents or personal data are sent.
  • The plugin adds no telemetry.

Development

Offline verification, no browser required:

cd tests
pnpm install
node fold-test.mjs      # host projection fold
node render-test.mjs    # client SSR render (zh + en, heatmap, tabs, scope, pagination)

react / react-dom are installed only for the SSR test; the browser bundle requires the harness-provided react module at runtime. There is no build step — client.js is loaded as a single-file module bundle.

Project structure

client.js           # browser half: sidebar entry, board panel, settings rows
index.js            # host half: sessionKanban projection
cordis.patch.yml    # bundle patch inserting the plugin row
package.json        # bundle manifest (dsh.bundle / dsh.client / engines.dsh)
screenshots.json    # plugin-market preview images (1-8 repo-relative paths)
locale/             # panel title and description dictionaries
icon.svg            # sidebar icon
docs/screenshots/   # screenshots for the READMEs and the plugin market
tests/              # offline fold / SSR tests

Limitations

  • Holiday data is national-level only. Countries whose states/provinces differ (Germany, Canada, Australia, Spain, Switzerland, …) would need a subdivision selector, which is not implemented yet.
  • Nager.Date currently has no dataset for the UAE, Saudi Arabia, Israel, Thailand, Malaysia or India, so those calendars fall back to the weekend rule only until a dedicated source is added.
  • This is a local/experimental plugin, not an official DeepSeek product.

License

MIT © Thunderunruly