dsh-source-control
VSCode-style Source Control page in the DSH Web right sidebar: a paged commit lane graph with ref markers and per-commit diffs, grouped working-tree changes with stage/discard/unstage, a commit box with amend and AI-generated messages, a side-by-side and unified diff page, GitHub repository and pull
Install
dsh plugin --profile web add dsh-source-control
Sandbox test results
| Stage | Result |
|---|---|
| 1 install | ✓ |
| 2 list | ✓ |
| 3 mount | ✓ |
| 4 boot | — |
Four stages run in an isolated sandbox: install (network on) → list → mount → boot (last three with no network).
README
dsh-source-control
DSH 插件:在 DSH Web GUI 内置右侧 Sidebar 中以「源代码管理」页显示当前会话工作区的仓库、提交图、变更列表与提交框。界面控件取自 DSH 内置组件,因此外观与 Harness 本身一致。仓库自动绑定当前会话工作区,无需手动选择。
[English](README.en.md)
功能
- 提交图:泳道图显示提交与引用标记,分页自动加载,悬停出卡片,点击就地展开改动文件,右键完成检出、分支与标签操作。
- 变更与提交:工作区变更分组列出并可暂存 / 丢弃,提交框支持 Enter 提交与修补上一次提交,提交信息可由 AI 生成。
- 差异页:并排 / 统一视图、自动换行、按 hunk 显示。
- GitHub 集成:通过
ghCLI 新建仓库并推送,以及创建 Pull Request;未安装 / 未登录 / 缺权限时降级。 - 远程协议:远程地址可在 HTTPS 与 SSH 之间双向切换,切换前检测本地 SSH 状态。
- 文本日志:按 Android logcat threadtime 格式记录,每次启动一个文件,按日归档,保留 15 天、单日上限 15 MB;单份写满 60000 字符时另起一份。
- 反馈:设置面板的「反馈」页签或存储库区标题行的反馈按钮填写并提交 issue;可勾选附带日志,日志文本按评论上限合并成若干条评论追加在该 issue 下。
- 安全:破坏性操作先确认,操作失败以弹窗说明原因,动作结果以轻量提示告知。
每一项功能的完整说明见[功能说明](Docs/功能/功能说明.md)。
打开入口
两个入口都来自本插件,打开同一个页:
入口 · 行为
引导页入口胶囊 · 右侧栏 tab 条「+」打开引导页后,点「源代码管理」胶囊
会话 header 图标按钮 · 直接打开该页;已打开时聚焦
切到别的侧栏页或工作区再回来时,页面保持原状(不会重新加载,展开状态也不丢失)。
安装
dsh plugin --profile web add dsh-source-control # 重启 dsh web,页面右侧栏「+」→ 引导页出现「源代码管理」,会话 header 亦有图标按钮
开发
pnpm install pnpm run verify-all # 文档门禁 pnpm lint # 静态检查 pnpm test # 构建、重复代码门禁与单元测试
代码结构与构建约定见[代码结构](Docs/实现/代码结构.md)与[构建与测试](Docs/实现/构建与测试.md)。
许可
本项目自身代码为 MIT,见 [LICENSE](LICENSE)。
Rendered from the README published on npm. Formatted only, not edited.
Versions
Published on npm::14,最后更新 2026-11-05