← 返回列表
⚠ 装前注意
用于 DeepSeek Harnessdsh的本地 git 工具。
基本兼容但装前注意:未发布到 npm registry,仅可从源码安装 · 最近上游提交 2026/8/27 · 已提供中文文档
DeepSeek Harness (dsh) 的本地 git 工具:git_status、git_diff、git_log、git_commit
综合分
28.8
GitHub 分
28.8
用户评分
—
★ Stars
2
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add Shyboy0499/dsh-git-tools未发布到 npm registry,仅可从源码安装,改用 GitHub 源安装
信任档位:已验证本站已于 0 天前真实安装成功
- 是什么
- dsh 原生插件 · ui
- 装得上吗
- 本站已真实安装成功(非静态推断)
- 安全吗
- 本站尚未对该插件做风险分级(暂未覆盖,不等同于无风险)
- 还在维护吗
- 活跃:最近一次提交在 30 天前
档位由下列信号合成:本站实装验证(真实安装,当前最高到 L4)· 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。下方各区块是它的证据明细。 验证判据与等级说明 →
🟢实装验证通过· 2026/9/25
由本站实装验证器在真实 dsh 环境安装成功,非静态推断。
数据截至 2026/9/22(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
安装兼容性检查⚠ 装前注意
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包dsh-git-tools(未发布到 npm,仅可源码安装)
✓Node 引擎要求 >=18 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
未发布到 npm registry,仅可从源码安装
验证方式:npm registry 存在性 + package.json 静态校验 · 最后验证 2026/9/24 11:39:03
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-tools用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
由 DeepSeek 最新模型翻译生成dsh-git-tools
npm version
CI
License
用于 DeepSeek Harness(dsh)的本地 git 工具。
dsh-git-tools 是一个无依赖的 DeepSeek Harness 插件,为编码代理提供
四个本地 git 工具——git_status、git_diff、git_log 和 git_commit——
使其能够检查会话工作区中的仓库并创建提交,全部通过
官方工具 API 完成。无 UI,仅 Host 端。
功能特性
| 工具 | 功能说明 |
| ------------ | -------------------------------------------------------------------- |
| git_status | 分支、领先/落后情况,以及已暂存 / 未暂存 / 未跟踪的文件 |
| git_diff | 统计摘要或完整补丁,已暂存或未暂存,可选路径过滤 |
| git_log | 最近的提交,格式为 { hash, author, date, subject } |
| git_commit | 暂存指定路径(或全部)并使用必需的消息提交 |
安装
dsh plugin --profile web add dsh-git-tools
需要 git 位于你的 PATH 中(任何开发环境中都有)。
工具参考
所有工具都接受一个可选的 cwd(默认为会话工作区)。
git_status
检查工作树和分支状态。
{
"branch": "main",
"ahead": 0,
"behind": 2,
"staged": [{ "path": "src/index.ts", "status": "M" }],
"unstaged": [],
"untracked": ["scratch.txt"]
}
git_diff
查看更改。staged 对索引进行差异比较,statOnly: true(默认)返回统计摘要,
statOnly: false 返回完整补丁。path 过滤到单个文件。
{
"stat": [{ "file": "src/index.ts", "added": 3, "deleted": 1 }],
"total": { "files": 1, "insertions": 3, "deletions": 1 },
"patch": null
}
git_log
列出最近的提交。count 默认为 10(最大 100);path 过滤到某个文件。
{
"commits": [
{
"hash": "a1b2c3d4e5f67890abcdef1234567890abcdef12",
"author": "Shyboy0499",
"date": "2026-08-26",
"subject": "Fix typo"
}
],
"total": 1
}
git_commit
创建提交。message 是必需的(非空)。使用 paths 暂存特定文件,
或使用 all: true 暂存所有内容。绝不隐式暂存。
{
"success": true,
"hash": "e5f6g7h0123456789abcdef0123456789abcdef01",
"branch": "main",
"filesStaged": 2
}
安全性
- 所有 git 调用都通过 execFile 执行,参数以数组形式传递——没有 shell
插值,因此用户/模型控制的值是注入安全的。
- git_commit 需要显式的 message,并且绝不会自行暂存文件
(传入 paths 或 all: true)。
- 核心范围内没有破坏性操作(--amend、--force、rebase、reset)。
开发
pnpm install
pnpm run build # tsdown → lib/
pnpm test # vitest 针对真实的临时 git 仓库运行
pnpm run lint # oxlint
pnpm run format # prettier --write .
许可证
MIT