dsh-zgit

DSH PLUGIN开发与运行时

仓库 zukunftsholz/dsh-zgit · npm dsh-zgit

开发与运行时 L5 · 运行验证通过 安全审查:低风险 可信度:金 可安装插件
安装这个插件

dsh-zgit 是 DeepSeek Harness 的敏捷 git 替代插件,无需 git 二进制即可通过 HTTPS 获取源码与二进制发布,提供模拟 checkout 与 git 风格工具,提升 agent 效率。

验证等级 L5 L5 · 运行验证通过
GitHub 星标 3 复刻 1 · 未关闭 issue 0
最近更新 2026-09-28 创建于 2026-08-20
README 7.5 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add [email protected]
兼容 DSH 版本0.2.0-rc.2 等 5 个版本版本不匹配时安装会报错
Node.js 要求>=20.15来自仓库 package.json 的 engines 字段
前置依赖@deepseek-ai/cordis@^4.0.2、@deepseek-ai/dsh-commands@^0.1.5-rc.2 || ^0.1.7-rc.2 等 5 个需要同时安装的同级依赖
npm 包名dsh-zgit可用 npm view 查看包信息

能做什么

5 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

dsh-zgit:DeepSeek Harness 的敏捷 git 替代插件

  • 免 git 获取源码
  • 模拟 checkout
  • git 风格工具
  • 二进制发布下载
  • sha256 校验

适用场景

GitHub 集成

上游标签

codeloaddeepseek-harnessdeveloper-toolsdownloaddshdsh-plugingitgit-alternativereleasetypescriptzero-git

验证等级与安全审查

L5 · 运行验证通过
自动化流程结论,不是人工审核
验证等级L5 · 运行验证通过在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度活跃按仓库活跃度与最近更新时间给出
可信度金综合仓库活跃度与验证结果

上面的结论来自上游最近一次自动化验证(2026-10-08): 同一套检查会在插件发新版后重跑,页面显示的是最新一次的逐项结果。

逐项检查结果

L1 · 已找到 ✓ 通过
  • L1.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L2 · 结构化 ✓ 通过
  • L2.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L3 · 安装规范 ✓ 通过
  • L3.1_INSTALL_COMMAND_PARSED 安装命令已解析 方式:安装规范解析
  • L3.2_DSH_VERSION_DECLARED DSH 版本已声明 方式:DSH 版本声明
L4 · 安装已测 ✓ 通过
  • L4.1_INSTALL_EXECUTED_CONFINED 受限沙盒内执行安装 方式:沙盒安装执行
  • L4.2_INSTALL_SUCCESS 沙盒安装成功 方式:沙盒安装执行
  • L4.3_ARTIFACT_CONFIRMED 安装产物已确认 方式:沙盒安装执行
L5 · 运行已测 ✓ 通过
  • L5.1_INSTALL_PASSED_SANDBOXED 沙盒安装通过 方式:沙盒安装执行
  • L5.2_WEB_BOOT_READY Web 启动就绪 方式:Web 启动
  • L5.3_HTTP_SERVED HTTP 服务响应 方式:HTTP 请求
  • L5.4_PLUGIN_INVENTORY_ACTIVE 插件清单中已激活 方式:插件清单查询

风险详情

  • 审查结论 通过
  • 结论说明 vet 静态分析未发现可疑行为,判定为干净(clean)。
  • 风险计数 严重 0 / 高 0 / 中 0
  • 风险详情 未发现严重或警告级问题。

仓库档案

开发与运行时
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方zukunftsholz仓库 dsh-zgit · 默认分支 main
分类开发与运行时dev
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言TypeScript仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue3 / 1 / 0收录时的数值,非实时
创建 / 更新2026-08-20 · 2026-09-28最后推送 2026-09-28
本站收录2026-08-20首次进入本站目录的时间

README 全文

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

dsh-zgit

English | 中文


dsh-zgit(/zgit 插件)是一个 DeepSeek Harness(dsh)插件:当需要从 git 仓库拉取源代码或二进制发行版时,第一想法不再是 git clone,而是更敏捷的纯 HTTPS 方案(甚至直接"模拟 git")。

它无需 git 二进制、零运行时依赖:

文档: https://zukunftsholz.github.io/dsh-zgit/

  • 源代码 → 直接下载代码托管平台的源码归档(codeload 风格的 tar.gz/zip),解压成带 .zerogit 元数据的模拟检出目录(simulated checkout),可以查看、status 检查、随时刷新。
  • 二进制发行版 → 从 GitHub / GitLab / Gitee 的 Releases 直接列出或下载产物,支持 sha256 校验(自动识别随包发布的校验文件)。
  • 模拟 git → zgit_ls_remote、zgit_show、zgit_ls_tree、zgit_log、zgit_diff、zgit_status 用托管平台 API 重新实现了 git 的"读"侧。
  • 其他一切 → zgit_download 把任意直链(镜像、工具链)下载进工作区,带字节上限与可选 sha256。
dsh plugin --profile web add dsh-zgit
# ……或从 Git 安装(不需要 npm 账号):
# dsh plugin --profile web add github:zukunftsholz/dsh-zgit
# ……或本地检出目录:
# dsh plugin --profile web add ./dsh-zgit

工具一览

工具 对应 git 功能
zgit_ls_remote git ls-remote 分支、标签、ref→sha 解析、默认分支、最新 release 标签。
zgit_clone git clone / git archive 按 ref 下载源码归档并解压为模拟检出(.zerogit/meta.json),支持 subdir 稀疏检出与显式归档 URL(镜像)。
zgit_fetch_release gh release download 列出或下载发行版产物(最新或指定 tag),支持 glob 匹配与 sha256 校验。
zgit_show git show 按 ref 拉取单个原始文件(可选保存到工作区)。
zgit_ls_tree git ls-tree 通过平台 API 列出某 ref 下的文件/目录。
zgit_log git log 某 ref 的最近提交。
zgit_diff git diff 比较两个 ref:变更文件汇总,或单个文件的 unified diff。
zgit_status git status + git fetch 检查模拟检出与远端是否同步:ref 是否移动、落后多少提交。
zgit_download curl 任意 HTTPS 直链下载进工作区,带上限与可选 sha256。

另有面向人机交互的斜杠命令 /zgit(Web 输入栏 / TUI):clone、get、show、ls、log、diff、resolve、status、download —— 不经过模型,直接执行同样的操作。

平台支持

  • GitHub(github.com + api.github.com + codeload.github.com + raw.githubusercontent.com)
  • GitLab(gitlab.com + API v4),支持嵌套分组
  • Gitee(gitee.com + API v5)
  • 通用 GitHub 风格自建主机(Gitea / GHE 等):归档/原始文件 URL 可用;依赖 API 的操作会给出明确报错——改用 archiveUrl 或 zgit_download。

仓库引用支持 owner/repo、owner/repo@ref、完整 https:// URL(可带 @ref 或 /tree/ref)、git@host:owner/repo.git 与 ssh:// URL。

配置

配置写在插件行上($DSH_HOME/cordis.patch.yml、profile patch 或 overlay):

- id: zgit
config:
clone: true          # 各工具开关:lsRemote, clone, release, show,
command: true        #   lsTree, log, diff, status, download, command
timeoutMs: 120000
maxArchiveBytes: 536870912      # clone 归档上限 512 MiB
maxDownloadBytes: 1073741824    # 下载上限 1 GiB
maxFileBytes: 262144            # zgit_show 上限 256 KiB
maxTreeEntries: 5000
maxLogCommits: 30
maxDiffChars: 100000
maxExtractedEntries: 100000
workspaceRoot: ''               # 兜底根(默认 process.cwd());工具调用优先使用调用方会话工作区
userAgent: dsh-zgit/0.2.3
tokenEnv: { github: GITHUB_TOKEN, gitlab: '', gitee: '' }   # 环境变量名
tokens:   { github: '', gitlab: '', gitee: '' }             # 或直接填 token

Token 可提高 API 限流配额并支持私有仓库;环境变量名优先于直接配置值。

模拟检出(simulated checkout)

zgit_clone 生成一个普通目录,外加:

/
├── .zerogit/
│   ├── meta.json   # 源地址、ref、sha、归档 URL、抓取时间、文件统计
│   └── HEAD        # 固定的提交 sha
└── ...             # 解压出的源码(已去掉单一顶层目录)

zgit_status 会重新解析固定的 ref,报告检出落后了多少提交;用 zgit_clone (replace: true) 刷新。

安全特性

  • 工作区约束 —— 所有写入都解析在调用方会话工作区(exec.agent.session.header.cwd)之内,无会话调用回退到 workspaceRoot;越界路径直接拒绝。
  • 归档加固 —— 拒绝路径穿越(..、绝对路径、Windows 保留名);大小写不敏感冲突报错;条目数与总字节数双重上限;zip 条目做 CRC32 校验;gzip 解压设有硬上限(防解压炸弹);符号链接只记录不落地,硬链接复制内容。
  • 处处有字节上限 —— 下载采用流式读取,超限立即中止。
  • 绝不执行 —— 归档只解压,从不运行。

开发

本包零运行时依赖(只用 Node 内置模块:node:zlib、node:crypto、node:fs 等),面向 DSH 0.1.7-rc.2(cordis 4.0.4、schemastery 3.18.4),同时兼容 0.1.5-rc.2。测试针对项目自身锁定的 @deepseek-ai/* devDependencies 运行(即本包声明、CI 安装的版本):

npm run build      # scripts/build.sh(DSH checkout + junction + tsc),由 node 包装器调用
npm run typecheck
npm test           # vitest:解析/glob 单测、tar.gz+zip 解压、平台 fixture、真实 HTTP 端到端、Cordis 挂载

常见问题(FAQ)

dsh-zgit 是什么?
dsh-zgit(zgit)是一个 DeepSeek Harness 插件,通过纯 HTTPS 从 git 仓库拉取源码归档与发行版产物,不需要 git 二进制,也不引入运行时依赖。

需要先装 git 吗?
不需要。全部走托管平台的归档、原始文件与 Release 接口。

支持哪些平台?
GitHub、GitLab(API v4,支持嵌套分组)、Gitee(API v5)。通用 GitHub 风格自建主机(Gitea、GitHub Enterprise)的归档/原始文件 URL 可用;依赖 API 的操作会明确报错,可改用 archiveUrl 或 zgit_download。

怎么安装?
dsh plugin --profile web add dsh-zgit(npm 已发布)。也可以用 Git 形式 github:zukunftsholz/dsh-zgit,或本地检出目录 ./dsh-zgit。

它能替代 git 吗?
它用平台 API 重新实现了 git 的"读"侧(ls-remote、show、ls-tree、log、diff、status),外加发行版产物下载;不做写操作、不 push。

下载会校验吗?
发行版产物与 zgit_download 支持按随包校验文件做 sha256 校验;zip 条目做 CRC32 校验;gzip 解压设硬上限(防解压炸弹)。

面向哪个 DSH 版本?
DSH 0.1.7-rc.2(cordis 4.0.4、schemastery 3.18.4),同时兼容 0.1.5-rc.2。

许可证?
MIT。

License

MIT

常见问题

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

在 DSH 里执行 `dsh plugin --profile web add [email protected]` 即可。对应的 npm 包名是 `dsh-zgit`。

dsh-zgit 的验证等级是什么意思?

L5 · 运行验证通过。在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来

dsh-zgit 安全吗?

低风险。vet 静态分析未发现可疑行为,判定为干净(clean)。

dsh-zgit 支持哪些 DSH 版本?

上游记录的兼容版本包括 0.2.0-rc.2、0.1.7-rc.1、0.1.6-alpha.2、0.1.6-alpha.1、0.1.1-rc.2。

dsh-zgit 需要什么运行环境?

Node.js >=20.15;需要同时安装 @deepseek-ai/cordis@^4.0.2、@deepseek-ai/dsh-commands@^0.1.5-rc.2 || ^0.1.7-rc.2、@deepseek-ai/dsh-system-prompt@^0.1.5-rc.2 || ^0.1.7-rc.2、@deepseek-ai/dsh-tools@^0.1.5-rc.2 || ^0.1.7-rc.2、@deepseek-ai/schemastery@^3.18.2。环境不满足时安装会失败,建议先确认本机版本。

dsh-zgit 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

dsh-zgit 有哪些功能?

免 git 获取源码、模拟 checkout、git 风格工具、二进制发布下载、sha256 校验。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

开发与运行时
按星标排序,可作替代方案

rea

rea

L4 · 沙盒安装通过 2.6 万 星

dsh-TUI

dsh-TUI

Claude Code 风格全屏终端 UI:像素鲸鱼顶栏、实时工作状态行、思考流式展开。

L4 · 沙盒安装通过 4,292 星

mirage

mirage

把文件系统与 bash 提供者换成 mirage 虚拟工作区:文件工具与 shell 命令作用于挂载的资源(RAM、S3、Redis、Sla

L3 · 安装规范通过 3,681 星

dashi-taskboard

dashi-taskboard

把当前已安装并运行中的 Codex Taskboard 嵌入 DeepSeek Harness 侧边栏,并通过 Launcher 运行时描述

L4 · 沙盒安装通过 3,311 星

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