DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

wingoflan /

wingoflan/dsh-subagent-marker

Verified

Marks the composer of a subagent session in DeepSeek Harness, so you can tell at a glance whether you are typing to a subagent.

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHubProject homepage
READMESource: main@89fe3bcd

dsh-subagent-marker

Marks the composer of a subagent session in DeepSeek Harness.

A subagent session's composer looks exactly like a root session's. This plugin adds a subagent marker at the left end of the composer's tool row, so you can tell which one you are typing into.

English | 中文

The subagent marker in a subagent session's composer

What it does

  • Renders the marker only when the open session is a subagent. Root sessions get nothing, so the row keeps its original layout and spacing.

One-shot subagents and subagents whose parent went offline get a read-only composer from DSH, which replaces the whole tool row. The marker does not appear there; those sessions cannot accept input anyway.

Install

Manually:

dsh plugin add dsh-subagent-marker

From a local checkout:

dsh plugin add link:/absolute/path/to/dsh-subagent-marker

Turning it off and on

Installing applies the plugin's own cordis.patch.yml. To switch it off, add one override row to the profile's cordis.patch.yml:

- id: subagent-marker
  disabled: true

The profile layer is applied after every bundle layer, and a patch without insert overrides the entry with that id — so this one row reaches the row the bundle inserted. Deleting it switches the marker back on.

Do not repeat the insert block in the profile layer. Two entries with the same id both mount, and the marker would then register its slot entry twice.

Uninstall

Delete the override row from the profile's cordis.patch.yml, then:

dsh plugin remove dsh-subagent-marker

How it works

The package has two halves. index.js is the Host half and exports an empty apply(). Everything visible lives in client.js, which the Host serves to the page because package.json declares dsh.client and exports ./client.

client.js registers one entry into the conversation.input.left slot — a list slot at the left end of the composer tool row, after the permission selector and the plan control. The component reads subagent from the session snapshot and returns null on a root session, so nothing is added to the DOM.

Development

There is no build step. exports["./client"] points straight at client.js, so editing that file is editing what the browser receives. The first install needs a Host restart before the new package loads.

License

MIT

—/ 5

No ratings yet

Verified DSH bundle

Commit 89fe3bcdd862

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout