dsh-code-git-workbench

DSH PLUGIN会话与消息

仓库 DazzzleKK/dsh-code-git-workbench

会话与消息 未标注验证等级 安全审查:未标注 可信度:未标注 可安装插件
安装这个插件

dsh-code-git-workbench 是 DazzzleKK 维护的 会话与消息 类 DSH 可安装插件, 仓库为 DazzzleKK/dsh-code-git-workbench。 下面按「装什么、怎么装、验没验过、跑起来要注意什么」逐项列出。

一句话选型结论

按资料字段整理

dsh-code-git-workbench 是会话与消息类的 DSH 可安装插件,未做沙盒验证,暂无安全审查结论,有可直接复制的安装命令。验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么;涉及密钥或系统权限的,建议先在隔离环境试装。

分类会话与消息 收录类型可安装插件 验证等级未标注验证等级 安全审查未标注
验证等级 UNKNOWN 未标注验证等级
GitHub 星标 0 复刻 0 · 未关闭 issue 0
最近更新 2026-10-29 创建于 2026-10-29
README 8.8 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add github:DazzzleKK/dsh-code-git-workbench
  1. 1
    确认版本与运行环境

    仓库没有标注兼容版本与 Node.js 要求,先确认你的 DSH 版本能装,再继续。

  2. 2
    执行安装命令

    在 DSH 里执行上面的命令;多包仓库要注意区分具体子包名,别装错包。

  3. 3
    确认已挂载

    用 dsh plugin list 查看列表里是否出现这个插件,出现即挂载成功。

  4. 4
    试跑并检查权限

    加载后跑一个最小用例,确认它能正常工作;同时看它申请了哪些文件、命令或网络权限。

兼容 DSH 版本未标注版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名未发布到 npm可用 npm view 查看包信息

能做什么

会话与消息
字段来自项目仓库与公开索引,中文说明由本站标注

上游标签

code-editorcodemirrordeepseek-harnessdsh-plugingit

验证等级与安全审查

未标注验证等级
自动化流程结论,不是人工审核
验证等级未标注验证等级上游未给出验证结论,安装前请自行确认
安全审查未标注静态分析结论,未标注不代表已通过审查
仓库健康度未标注按仓库活跃度与最近更新时间给出
可信度未标注综合仓库活跃度与验证结果

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 安全审查还没结论,装之前先看仓库改了什么、要什么权限。
  • 没有声明 Node.js 版本要求,版本不匹配可能装不上。
  • 验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么。

更适合

  • 需要在会话与消息场景里给 DSH 补能力的人。
  • 能接受在本地装依赖、愿意自己确认权限的人。

不太适合

  • 只使用 DSH 官方内置能力、不接受第三方插件的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
插件验证等级安全审查星标兼容版本安装命令
dsh-code-git-workbench当前 未做沙盒验证 未标注 0 未标注 有
dsh-desktop L3 · 安装规范通过 低风险 3.0 万 未标注 无
openpets L4 · 沙盒安装通过 低风险 1,274 未标注 有
deeptide L4 · 沙盒安装通过 低风险 1,104 0.1.1-rc.2 有
jingyun-dsh L3 · 安装规范通过 低风险 1,004 未标注 有
study-mate 未做沙盒验证 未标注 856 未标注 无

仓库档案

会话与消息
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方DazzzleKK仓库 dsh-code-git-workbench · 默认分支 main
分类会话与消息client
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言未标注仓库主语言
许可证未标注商用或二次分发前请确认条款原文
星标 / 复刻 / issue0 / 0 / 0收录时的数值,非实时
创建 / 更新2026-10-29 · 2026-10-29最后推送 2026-10-29
本站收录2026-10-30首次进入本站目录的时间

README 全文

8.8 KB
作者原文,中文版优先;只做安全转义,不改内容

dsh-code-git-workbench

A Code and Git workbench for the DeepSeek Harness Web UI. It adds two pages
to the right Sidebar:

  • Code — a lazy file tree for a Harness workspace, file tabs, a CodeMirror
    editor, syntax highlighting, search, reload and save.
  • Git — a PyCharm-style log: local/remote branches, a commit graph, commit
    details, file diffs, checkout, merge, rebase, cherry-pick, reset, revert, tags
    and fetch/pull/push.

It also keeps running subagents above idle ones in the header's subagent catalog
popup.

The plugin is host + client code for DeepSeek Harness. It has no build step and
no dependency on VS Code. The PyCharm-style Git UI is shared in source form with
the companion VS Code extension
pycharm-git-log; the two
repositories remain independent at runtime.

Requirements

  • DeepSeek Harness with the bundled plugin CLI (tested on the 0.2.1-rc.2 /
    DSH 44.x desktop build).
  • A local Git repository for the Git page.
  • Node.js is not required to install or run the plugin.

Install

Clone this repository somewhere permanent, then register the folder as a local
plugin in the desktop profile.

Windows

$repo = "C:\path\to\dsh-code-git-workbench"
$cli = "$env:LOCALAPPDATA\Programs\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd"
& $cli plugin --profile desktop add "link:$repo"

macOS / Linux

Use the dsh CLI that ships with the application. Its exact path depends on the
install layout; with the CLI already on PATH:

dsh plugin --profile desktop add link:/absolute/path/to/dsh-code-git-workbench

Fully quit and reopen DeepSeek Harness. A window reload is not enough: the host
half is loaded at process start.

To use it in the browser profile instead:

dsh --profile web

and install with --profile web.

Update

git pull

Then restart DeepSeek Harness. There is nothing to compile.

Uninstall

& $cli plugin --profile desktop remove dsh-code-git-workbench

Restart the application afterwards.

Use

  1. Open a session. The pages start from the session's workspace; Code can switch
    to any Harness workspace, Git to any workspace that is a Git repository.
  2. Open the right Sidebar (Ctrl+Alt+B on the desktop build, or the sidebar
    button).
  3. Click + → Code or Git. The guide also lists both pages.
  4. For more room, use the panel's fullscreen control.

Code

  • Lazy directory tree; .git is hidden.
  • The workspace selector in the tree header lists every Harness workspace. When
    the session directory is not a repository, Code starts in the first workspace
    that is one. The choice is remembered per session.
  • Tabs keep their own document, cursor, scroll position and dirty state.
  • Ctrl+S saves; Ctrl+R reloads the active file. The toolbar has the same
    actions.
  • CodeMirror offers line numbers, bracket matching, auto-close, incremental
    search (Ctrl+F) and modes for JS/TS, Python, JSON, Markdown, HTML/CSS, YAML,
    SQL, shell, PowerShell and C-like languages.
  • Closing a tab with unsaved changes asks for confirmation.
  • Files are read and written as UTF-8. Files larger than 2 MB and binary files
    are rejected for display.

Git

  • Repository selector for every workspace that is a Git repository.
  • Branch tree with local/remote groups, filter, current branch, ahead/behind,
    checkout, checkout + rebase, merge, rebase, compare, push, rename, delete and
    tag actions.
  • Slash-separated branch names become expandable folders: feat/123-login is
    shown as feat → 123-login. The tree is built independently inside Local
    and Remote. With a single remote, its name is treated as context and stripped
    from the folder path; with several remotes, the remote name becomes the first
    folder. Folder expansion is remembered per repository.
  • Branches can be starred from the row or from the context menu. Favorites float
    to the top of their own folder (and of the Local/Remote root); the choice is
    stored per Git repository in the browser profile and survives tab/page reloads.
  • Commit log for the selected branch (or all branches) with the colored graph,
    ref badges, author and date; filter and “load more”.
  • Commit details with the full message, parents, files and +/-, plus checkout,
    branch, cherry-pick, merge, rebase, reset (soft/mixed/hard), revert and tag.
  • File rows open a built-in diff overlay. “Compare with working tree” is in the
    file context menu.
  • Fetch all, pull and push. Push falls back to --set-upstream origin when a
    branch has no upstream.
  • The branch context menu can pull a specific branch into the current branch:
    Pull '' into Current for a remote branch or a local branch with an
    upstream.
  • The toolbar diff button opens Working tree changes: staged, unstaged and
    untracked files with counts. Clicking a file opens its diff ([staged] =
    index vs HEAD, [unstaged] = working tree vs index).
  • Remote branches collapse automatically when there are more than 40 of them.

Subagent order

The header's descendant-count button opens the subagent catalog. Running rows
are moved above idle rows after every render, per tree level. The sort is a DOM
enhancement because the shipped catalog has no slot for ordering; host state is
not modified.

Architecture

index.mjs         host half: /code-git static UI + JSON API
client.js         client half: Sidebar tab types + subagent catalog sort
web/code/         vanilla JS + CodeMirror 5 (vendored)
web/git/          PyCharm-style Git UI
cordis.patch.yml  inserts the bundle row into the profile

The host API applies ctx.connection.requestRejection(req) to every request, so
it inherits the Harness Host/Origin fence and browser authentication. All routes
are same-origin:

  • the desktop shell forwards dsh-app://app/code-git/... to the local host with
    the host cookie;
  • a browser talks to the same listener directly.

API surface:

Route Purpose
GET /code-git/api/context session cwd, selected root, workspaces, repo status
GET /code-git/api/tree one directory level
GET/PUT /code-git/api/file read/write one file
GET /code-git/api/git/state branches, commits, refs, ahead/behind
GET /code-git/api/git/status staged, unstaged and untracked files
GET /code-git/api/git/worktree-diff index/HEAD/working tree file contents
GET /code-git/api/git/commit commit message, parents, file stats
GET /code-git/api/git/diff old/new file contents
POST /code-git/api/git/action checkout, merge, rebase, reset, fetch, pull branch, push, …

Every request is checked against the session's registered workspaces; paths are
resolved and confined to the selected root. Git runs through execFile without
a shell, with GIT_TERMINAL_PROMPT=0.

The Git UI is the same HTML/CSS/JS as the companion VS Code extension's panel.
web/git/bridge.js implements the small acquireVsCodeApi() surface the UI was
written against and maps its messages to the JSON API. No VS Code runtime is
involved.

Development

There is no build step:

  • host: edit index.mjs, restart the host;
  • client: edit client.js, restart the host (or use a web profile with live
    patch reload);
  • Code UI: edit web/code/;
  • Git UI: edit web/git/.

For a disposable test instance:

$cli = "$env:LOCALAPPDATA\Programs\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd"
& $cli --profile web --port 3080 --no-open

Open the printed token URL and use the normal UI.

Test checklist before a release:

  • the Web UI boots without a plugin-load error;
  • + lists Code and Git;
  • the tree opens, a file opens, edit + save writes to disk;
  • workspace switching updates tree/footer;
  • Git shows branches and commits, details and diff;
  • remote branches collapse when there are more than 40;
  • subagent catalog still opens and running rows sort first.

Do not test destructive Git operations on a real working tree; use a throwaway
repository.

See AGENTS.md for the agent-oriented guide.

Limits

  • No LSP, quick-open or file watchers; use the toolbar refresh.
  • Custom keyboard shortcuts are not used: the DSH Web shortcut adapter accepts
    only its built-in catalog (Unsupported Web shortcut otherwise), so the pages
    are opened from the + guide.
  • Edits are saved as-is; no format-on-save and no external-change merge.
  • Only workspaces registered in Harness can be selected; arbitrary directories
    are rejected by the host.
  • Reset/delete/push happen after their confirmation prompts; there is no undo
    inside the panel.
  • Subagent sorting is a DOM enhancement, not a host catalog change.

Third-party code

  • CodeMirror 5 — MIT, Marijn Haverbeke and contributors.
  • VS Code Codicons — MIT, Microsoft.

See THIRD_PARTY_NOTICES.md.

License

MIT. See LICENSE.

常见问题

4 问
答案由本站依据条目字段整理,不引用上游原文
dsh-code-git-workbench 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add github:DazzzleKK/dsh-code-git-workbench` 即可。

dsh-code-git-workbench 的验证等级是什么意思?

未标注验证等级。上游未给出验证结论,安装前请自行确认

dsh-code-git-workbench 安全吗?

未标注。

dsh-code-git-workbench 装之前要先确认什么?

先看它会读写哪些文件、执行哪些命令、连接哪些网络地址;验证等级只说明装得上、跑得起来,不等于安全。涉及密钥或系统权限的,建议先在隔离环境试装。

会话与消息
按星标排序,可作替代方案

dsh-desktop

dsh-desktop

为 DeepSeek Harness (DSH) 插件生态打造的现代化桌面端解决方案。万物皆「插件」,桌面本身也是「插件」。

L3 · 安装规范通过 3.0 万 星

openpets

openpets

L4 · 沙盒安装通过 1,274 星

deeptide

deeptide

L4 · 沙盒安装通过 1,104 星

jingyun-dsh

jingyun-dsh

井云 DSH 客户端插件,为 DeepSeek Harness 注入会员登录、订阅支付、算力管控与应用市场,让智能体和技能快速变成可交易商品

L3 · 安装规范通过 1,004 星

study-mate

study-mate

StudyMate 是 DSH 的「学习模式」预设与技能包,为数学、计算机科目定制学习路线、讲解课件与练习评估,跨科目共享记忆。

未标注验证等级 856 星

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 —。