Taskball: DSH Cross-session Task Status Floating Ball

Introduction

When running multiple sessions simultaneously in DeepSeek Harness (DSH), it is hard to tell at a glance which session is still executing, which has failed, or which is waiting for your approval. Usually, you have to open windows one by one to confirm. The more states there are, the messier it gets. The idea behind Taskball is to create a persistent floating ball, painting each session’s status onto the ball with colors, so a quick glance gives you the global picture.

It is a third-party plugin maintained by community developer ef-umbra (GitHub project ef-umbra/dsh-useful-taskball, MIT License), belonging to the “Client” type. DSH’s philosophy is “Everything is a plugin,” and Taskball is an interface extension hanging on the client side. The following sections introduce it in the order of features, installation, and usage.

Positioning and Status Colors

Taskball maps session statuses to five colors:

Color Meaning
Red Task interrupted or failed
Yellow Task waiting for your approval or decision
Blue Task is executing
Green Task completed
Gray No status

The ball divides sectors equally based on the number of active sessions, with each sector displaying the corresponding session’s color. When a session hits multiple states simultaneously, the highest priority is taken: Red > Yellow > Blue > Green. When there are no tasks, the ball is gray.

Core Features

  • See the global picture at a glance. Each sector corresponds to a session, and the color indicates the status. When sessions are added or removed, the sectors expand or retract smoothly.
  • Clicking opens the task panel. Lists pending sessions grouped by workspace; clicking the title jumps directly there. If “Processed” is checked in the panel, the corresponding sector on the ball disappears simultaneously, keeping the ball and panel consistent.
  • Status change alerts. When a status changes from “Executing” to failed or pending approval, a bubble notification pops up next to the ball. You can set whether to be alerted on completion.
  • Automatic archiving of completed tasks. Completed sessions are moved to the bottom of the panel, where they can be expanded or reverted. They automatically disappear after the retention period. Failed, pending approval, or executing tasks do not disappear automatically and must be handled manually.
  • Drafts are also visible. Sessions where you have written half a sentence but haven’t sent them are listed at the top of the panel. Click to return and continue writing. Icons at the start of the line distinguish them: a folder indicates a new session with no content written yet, while a bubble indicates an old session where you have chatted and left a half-sentence.
  • Can be collapsed. After right-clicking to collapse, the ball becomes a thin vertical strip stuck to the left of the input box. The strip is colored in segments by task status, one segment per task. Click once to turn it back into a ball, and it stays at the previous collapsed position.

Installation

Requires DSH 0.2.1-rc.3 or higher. The plugin version in the community directory is 0.10.2.

Install from npm (Recommended):

dsh plugin add dsh-useful-taskball

Or install directly from GitHub:

dsh plugin add github:ef-umbra/dsh-useful-taskball

When using the GitHub method, DSH will ask if you want to allow running build scripts. Select “Allow” as the package needs to be compiled on the spot.

Typical Usage

Ball operations:
* Drag to a convenient position; the position is remembered. Drag to near the sidebar border or screen edge and release; the ball snaps automatically. Afterward, as the sidebar expands, the right column toggles, or the window resizes, the snapped ball will follow.
* Single-click to expand the task panel; click again to collapse.
* Right-click to open quick settings, including common items like ball size, blur, panel opacity, status change alerts, whether to show the processed area, panel font size, etc. You can trigger this with Shift+F10 on the keyboard or by clicking the gear icon in the first row of the panel.

Processing tasks:
* The checkbox on the right side of each line is “Processed.” Once checked, that line moves to the collapsible area below, and can be reverted at any time.
* When checking a failed task directly, a confirmation is shown first: the whole line slides away, and “Cancel / Confirm Processed” appears in its original position. Click confirm to actually collapse it, or press Esc to cancel.
* Hold Shift and check failed tasks to list all pending failed sessions currently available, confirming all at once.
* Hold Shift and check completed tasks to directly archive all completed sessions without confirming one by one.

Three ways to make the red go away: Check “Processed,” archive the session, or send a message in the corresponding session.

Settings

The entry point is in DSH’s “Plugins → Installed Plugins → Taskball · Task Status Floating Ball,” or click “Open All Settings” in the quick panel. It has three tabs:

  • Appearance: Floating ball size (Small / Medium / Large), panel texture (Opacity slider + Frosted Glass switch, default semi-transparent frosted), color-blind friendly scheme (replace failed/completed red and green with magenta and cyan-green), status representation (rectangles or dots), panel font size, whether to show the processed area, whether to show the processed count.
  • Animations: Enable animations (fade out / slide in), snap distance (set to 0 for no snapping), bubble display duration, whether to close when clicking outside the panel.
  • Notifications: Status change alerts (default on; if off, no bubbles pop up, including failure alerts), completion retention duration.

Suitable Scenarios and Notes

Suitable for developers who maintain multiple DSH sessions simultaneously and need to frequently switch and quickly judge which tasks have failed or are pending approval, especially for scenarios like on-call duty or multi-person collaboration where you need to monitor the task pool.

Points to note:
* This is a third-party community plugin, not an official DSH project, and has no affiliation or endorsement with DeepSeek; the community directory is an independent site, not an official app store.
* Plugins run with the permissions of the current dsh process. You should check the source code and license (this project is MIT) before installing to decide whether to introduce it.
* The author describes this as a “vibe coding” project, written in collaboration between humans and AI, with usability prioritized over engineering completeness; it is a personal project without a team for maintenance, and Issues may not be responded to promptly.
* The GitHub installation method executes build scripts, which is a sensitive operation. Confirm the script content before choosing to allow.

Conclusion

The value of Taskball lies in converging the task statuses scattered across multiple sessions onto a persistent visual focus, reducing the need to flip through panels one by one to confirm. If you are already using DSH 0.2.1-rc.3 or higher and manage more than one session, it is worth installing and trying.

Directory page: https://www.skillhub.cn/plugins/ef-umbra/dsh-useful-taskball
GitHub: https://github.com/ef-umbra/dsh-useful-taskball

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye