🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI
广告☁️ 云服务器特惠阿里云首购 8 折 · 腾讯云合作特惠
DeepSeek Harness Hub
← 返回列表

sakthiveltofficial/dsh-git-plugins

DeepSeek Harnessspec-screened扫描:无法判定在 GitHub 查看 ↗
需源码安装

dsh-git · 面向 DeepSeek Harness 的 Git 与源代码管理插件套件 —— 具备自进化记忆

暂不能直接安装(需源码编译或环境不满足):缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装。 · 最近上游提交 2026/8/25 · 已提供中文文档

dsh-git:DeepSeek Harness 的 Git 与源代码管理插件套件——本地 git + GitHub/GitLab/Bitbucket/Azure DevOps/Gitea + 自进化记忆

综合分
30.2
GitHub 分
30.2
用户评分
—
★ Stars
4
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add sakthiveltofficial/dsh-git-plugins
缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装,改用 GitHub 源安装
信任档位:已验证本站已于 1 天前真实安装成功
是什么
dsh 原生插件 · market
装得上吗
本站已真实安装成功(非静态推断)
安全吗
本站尚未对该插件做风险分级(暂未覆盖,不等同于无风险)
还在维护吗
更新放缓:最近一次提交在 31 天前

档位由下列信号合成:本站实装验证(真实安装,当前最高到 L4)· 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。下方各区块是它的证据明细。 验证判据与等级说明 →

🟢实装验证通过· 2026/9/24
由本站实装验证器在真实 dsh 环境安装成功,非静态推断。
数据截至 2026/9/21(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
安装兼容性检查需源码安装

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包dsh-git-plugins(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✗入口文件缺少入口声明

缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装

验证方式:npm registry 存在性 + package.json 静态校验 · 最后验证 2026/9/21 23:36:47

用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

由 DeepSeek 最新模型翻译生成
dsh-git · 面向 DeepSeek Harness 的 Git 与源代码管理插件套件 —— 具备自进化记忆

DSH-GIT —— 面向 DeepSeek Harness 的自进化 Git 能力

awesome · DSH plugin
License: MIT

一套完整、可用于生产环境的 DeepSeek Harness (DSH) Git / 源代码管理插件套件。它为智能体提供对本地 git 以及所有主流托管 Git 平台 —— GitHub、GitLab、Bitbucket、Azure DevOps 和 Gitea —— 的类型化、策略感知访问能力,而其自进化记忆正是其标志性特性:智能体会在每次会话中真正地越来越了解你的仓库、约定和过往错误。

官方生态关键词: 这是一个 dsh-plugin —— 请为本仓库添加 dsh-plugin GitHub 主题标签。

🤖 面向 LLM 可读的摘要

- 是什么: 一个由 11 个包组成的套件,通过 8 个面向模型的 git 工具 + 持久化记忆来扩展 DSH 智能体。
- 安装: dsh plugin --profile web add github:sakthiveltofficial/dsh-git-plugins,然后重启该 profile。无需编辑预设(宿主行会通过 dsh.bundle.patch 自动插入)。
- 工具: git_repo、git_inspect、git_pr、git_issues、git_release、git_security、git_ci、git_memory。
- 平台: GitHub、GitLab、Bitbucket (Cloud)、Azure DevOps、Gitea(也支持任何自托管主机)。
- 运行时要求: DeepSeek Harness、Node.js ≥ 20(全局 fetch),以及 PATH 中的 git CLI。
- 密钥: 绝不存储在配置中 —— 环境变量引用会在每次操作时通过 ctx.credentials 解析(GITHUB_TOKEN、GITLAB_TOKEN、BITBUCKET_APP_PASSWORD、AZURE_DEVOPS_PAT、GITEA_TOKEN)。
- 安全性: 破坏性操作(force-push、merge、rebase、PR merge、release)会经由宿主审批服务处理;变更操作遵循沙箱策略并支持 sandbox_permissions 升级;记忆中的密钥会被清除。
- 许可证: MIT。

✨ 它能做什么

- 本地仓库操作 —— clone、branch、checkout、commit、push、pull、stash、tag、merge、rebase、diff、blame、log、代码搜索、文件搜索 —— 通过真实的 git 二进制执行,具备类型化参数和可读的结果。
- 托管平台操作 —— 拉取请求(创建 / 列出 / 合并 / 评论)、议题、发布、CI/CD 流水线状态和安全警报,跨五个平台,统一在一个与提供商无关的接口之后。
- ⭐ 自演化记忆 _(核心卖点)_ — 智能体跨会话构建持久、已清洗的知识库:环境事实、各项目约定(分支命名、提交风格、合并策略)、错误特征及其修复方案,以及明确的用户偏好。已知错误会在发生前被预先规避;约定会被自动遵循,无需重复询问;机密信息会被清洗;明确的指令始终优先于记忆。智能体会随着时间推移,对你的代码库表现得越来越出色。
- 策略感知加固 — 对破坏性操作设置审批关卡、带升级机制的沙箱隔离、速率限制退避,以及读取缓存。

🚀 安装

前置条件

DeepSeek Harness 正在运行(某个 profile,例如默认的 web profile)
Node.js >= 20(宿主机的 Node —— 插件在进程内运行)
git --version        # git CLI 必须在 PATH 中

安装 —— 来自此 GitHub 仓库

仓库根目录本身就是一个 bundle(dsh.bundle 清单 + cordis.patch.yml)
并从 npm 拉取所有 @dsh-git/* 包 —— 无需构建步骤
dsh plugin --profile web add github:sakthiveltofficial/dsh-git-plugins

重启 profile(或 DSH 进程)。该 bundle 的 cordis.patch.yml 会自动将整套能力 —— 本地 provider、平台注册表、全部五个适配器、记忆以及各工具 —— 插入到 profile 组合中。

验证

dsh --profile web --dump-config | grep -i git

然后询问智能体:“你有哪些 git 工具?” —— 它应当列出 git_repo、git_inspect、git_pr、git_issues、git_release、git_security、git_ci、git_memory。

🔑 配置凭据

平台操作通过 DSH 的凭据服务按操作解析令牌 —— 配置中仅携带环境变量引用,绝不包含字面令牌。

| 环境变量 | 平台 | 备注 |
| --- | --- | --- |
| GITHUB_TOKEN | GitHub | 公共仓库无需它即可工作 |
| GITLAB_TOKEN | GitLab | baseUrl 可为自托管配置 |
| BITBUCKET_APP_PASSWORD | Bitbucket | 还需要 username 配置(HTTP Basic) |
| AZURE_DEVOPS_PAT | Azure DevOps | 空用户名 + PAT |
| GITEA_TOKEN | Gitea | baseUrl 必填(任意自托管实例) |
在 DSH 环境中设置它们(或通过 ctx.credentials 来源)。未设置的引用会回退到匿名访问:公共仓库可用,写入操作会以 GIT_AUTH_FAILED 明确失败。

🧰 工具

| 工具 | 功能 |
| --- | --- |
| git_repo | 克隆、分支、检出、提交、推送、拉取、暂存、打标签、合并、变基 |
| git_inspect | 差异、追溯、日志/历史、代码搜索、文件搜索(只读) |
| git_pr | 创建 / 列出 / 合并 / 评论拉取请求(合并需要审批) |
| git_issues | 列出 / 创建议题 |
| git_release | 创建发布(需要审批) |
| git_security | 列出安全警报(Dependabot / 漏洞发现) |
| git_ci | 列出 / 检查流水线运行 |
| git_memory | 记录 / 回忆 / 遗忘自演化记忆 |

示例——智能体可以用自然语言完成所有这些操作:

“克隆仓库,检出一个 feat/ 分支,提交这些更改并向 main 发起一个 PR;将其压缩合并并创建 v1.2.0 发布。”

🌐 平台支持

| 主机 | PR | 议题 | 发布 | CI/CD | 安全警报 |
| --- | --- | --- | --- | --- | --- |
| GitHub | ✅ | ✅ | ✅ | ✅ Actions | ✅ Dependabot(404 → 空) |
| GitLab | ✅ MR | ✅ | ✅ | ✅ 流水线 | ✅ 漏洞发现(404 → 空) |
| Bitbucket (Cloud) | ✅ | ✅ | 标签(无发布 API) | ✅ Pipelines | ❌ GIT_UNSUPPORTED |
| Azure DevOps | ✅ | ✅(工作项) | ❌ GIT_UNSUPPORTED | ✅ 构建 | ❌ GIT_UNSUPPORTED |
| Gitea | ✅ | ✅ | ✅ | ✅ Actions(≥ 1.21) | ❌ GIT_UNSUPPORTED |

不支持的操作会以 GIT_UNSUPPORTED 明确失败——绝不会静默返回空。

🧠 自演化记忆

gitMemory 跨会话持久化在 git_memory 存储域表中,并且:

- 自动捕获每次 git 工具失败及其 tool:action:code 签名,并在后续成功匹配时将其标记为已解决;
- 去重重复事件为一个 hits 计数,使反复出现的模式浮现出来(事实与推断通过 source 分别跟踪);
- 在持久化之前擦除机密(令牌、密钥、私钥块、用户名路径);
- 每一步都向系统提示中注入一个有界摘要,以便预先规避已知错误并遵循约定,无需重复询问;
- 取代过时条目(通过 git_memory forget 删除),而不是累积噪音。

🏗️ 工作原理

该套件遵循 DSH 自身的三角色包模式(packages/fs/{fs, fs-local, tool-fs}):服务定义 → 提供者 → 消费者。

packages/git/
├── core/              @dsh-git/core           服务定义 + 类型 + GitError + HTTP 管道
├── git-local/         @dsh-git/local          本地提供者(通过 ctx.shell 调用 git)
├── git-platform/      @dsh-git/platform       平台注册表/调度器 + 退避 + 读取缓存
├── git-github/        @dsh-git/github         GitHub 适配器
├── git-gitlab/        @dsh-git/gitlab         GitLab 适配器
├── git-bitbucket/     @dsh-git/bitbucket      Bitbucket 适配器
├── git-azuredevops/   @dsh-git/azuredevops    Azure DevOps 适配器
├── git-gitea/         @dsh-git/gitea          Gitea 适配器
├── git-memory/        @dsh-git/memory         自演化记忆服务
├── tool-git/          @dsh-git/tool-git       面向模型的分组工具
├── tool-git-memory/   @dsh-git/tool-git-memory  git_memory 工具
└── bundle/            @dsh-git/bundle         配置文件捆绑包(dsh.bundle.patch)

关键设计决策:

- 一个接缝,多个宿主。 Cordis 服务名称只注册一次,因此 gitPlatform 是一个注册表:适配器通过 registerProvider 注册(与 ctx.llm.registerAdapter 相同的模式),注册表从仓库的 origin 远程 URL 检测宿主。
- 类型化、分组的工具。 七个工作流分组,而非数十个扁平动词;每个操作都有类型化参数,并在分发前进行验证。
- 工具层中的加固。 审批门控、沙箱策略标记和升级字段位于 tool-git 中,而非提供者中。

🔒 安全

- 机密是环境变量引用,按操作解析,从不缓存,从不记录日志。
- 当宿主审批服务存在时,破坏性 git 操作需要显式审批。
- 变更操作在解析后的 sandboxPolicy 下运行;sandbox_permissions 升级与 harness 自身的文件工具保持一致。
- 记忆在持久化前会被清理;harness 的凭据和沙箱层绝不会被绕过。
- 命令通过 shell 调用真实的 git 二进制文件,并设置 GIT_TERMINAL_PROMPT=0,以便缺失凭据时快速失败而不是挂起。

🧪 开发

版本严格固定到部署环境(cordis 4.0.1、schemastery 3.18.1、dsh-* 0.1.0-rc.6)。

pnpm install
pnpm build        # tsc, in dependency order
pnpm typecheck
pnpm smoke:all    # local git E2E + platform registry + live GitHub API + all adapters + memory

冒烟测试套件:scripts/ — 平台套件在公共仓库上访问实时 GitHub API;适配器套件验证所有五个宿主的远程检测、URL 构造和不支持的路径;记忆套件驱动完整的记录/召回/清理/解析生命周期。

📦 发布

pnpm -r publish --access public --no-git-checks

或推送 v* 标签(.github/workflows/publish.yml 通过 NPM_TOKEN 发布)。完整分发指南(替代方案、无 npm 回退、版本管理):docs/DISTRIBUTION.md。

📄 许可证

MIT © 2026 dsh-git-plugins 贡献者。

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

同作者(sakthiveltofficial)的其他插件

💬 加入社群

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

DPharness QQ 群二维码,QQ 扫码进群
QQ 扫码进群
DPharness 飞书群二维码,飞书扫码进群
飞书扫码进群