Feature request: git workspace status next to the composer input (DSH ↔ Claude Desktop parity) #5073
Replies: 4 comments
|
这个功能适合作为只读 workspace capability,但建议把“显示一个 chip”和“状态可作为 Agent 证据”分开定义:
独立社区手册有相关的 workspace/session evidence 与只读边界整理:https://sandbaseai.github.io/deepseek-harness-handbook/workspace-write-shared-cache.html 和 https://sandbaseai.github.io/deepseek-harness-handbook/live-session-log-durability.html 。手册不是官方 DeepSeek AI 项目。 |
|
Source verification of both measurements against current master ( 1. "No git provider in the tree" — CONFIRMED. Grep over 2. The measured dock slots — CONFIRMED, with one correction. All four anchors exist in
Correction: your summary says the only occupant of 3. A plugin-shaped path exists today. Your measured-absence framing is the right one for this repo (issues/PRs disabled, per CONTRIBUTING) — this keeps the feature request on record while the plugin path gives users something installable in the meantime. |
|
Follow-up: the third-party client plugin channel I flagged as the open question is open — verified at source on the same revision ( A published package can reach the client slot registry today. The chain:
So the git-status chip is implementable as a standalone plugin: node half reads git state, client half (declaring I'll take a first pass at prototyping this as a standalone plugin (it gives maintainers a working reference implementation for the upstream feature request). If you want to coordinate the snapshot shape, the structured fields you listed are a good baseline. |
|
The reference implementation I offered in the follow-up is now published: @argszero/cordis-plugin-git-status@0.1.0 (source). It implements the exact channel verified above:
Usage — mount as a normal user-layer plugin: plugins:
'@argszero/cordis-plugin-git-status':
root: /path/to/repo # optional; default: dsh process cwd
intervalMs: 5000 # optional; poll interval (min 500)The chip renders This is a standalone community plugin (the upstream PR channel is disabled, so this is the delivery path), deliberately built as a working reference implementation for the upstream feature request: same snapshot shape, same slot anchor. If maintainers adopt it upstream, the structured fields from your measurement table are a natural baseline — happy to align the snapshot shape if you want to coordinate. |
Uh oh!
There was an error while loading. Please reload this page.
Feature request — git workspace status next to the composer input (DSH ↔ Claude Desktop parity)
Summary
Expose the workspace git state (branch, ahead/behind vs upstream, uncommitted count, last push) inline next to the composer input line, matching Claude Desktop's placement of workspace-level status near the input.
Context (measured)
deepseek-ai/deepseek-harnessand external PRs are not accepted (CONTRIBUTING.md), so this is posted as a feature-request discussion.dsh-desktopv0.7.1 prebuilt bundle: no git-status provider/UI exists in the compiled client libs (@deepseek-ai/dsh-client-ui-*), the served web dist, or the desktop host. The only occupant of the input-adjacentconversation.composer.dockslot (StatsLine, idstats, order 0) shows token statistics only (turns/steps/LLM/tool durations).cd5ef814): a grep overpackages/for git-status terms finds no provider/UI — only incidental prose (e.g. "write-behind", "uncommitted tail"). No git provider exists in the source tree.So the premise that "DSH already shows git push/commit/state in the header above the input" is not corroborated in v0.7.1 nor in current master; the maintainers are the ones to adjudicate whether this belongs in the product. This request proposes the feature rather than a reposition.
Proposed behavior
conversation.input.dock— rendered above the input bar (closest to the Claude Desktop inline position);conversation.input.left/right— inside the input row;conversation.composer.dock— co-located with the existingStatsLine.Suggested acceptance (for the maintainer)
Reference measurements
Reproducible path:line table (MEASURED / RECONSTRUCTED / NOT MEASURED tags) plus the full upstream-ready change package (item 1: subagents details panel; item 2: this request; item 3: umbrella layout direction) live in the workspace
dsh-ux-parity-upstream/(verified-measurements.md is the measurement table). Slot anchors measured:conversation.composer.dock(list, session),conversation.input.left/right,conversation.session.header.utilities.Not in scope (deliberately)
All reactions