前言¶
在 DeepSeek Harness(DSH)里让模型帮忙写 commit message 或 PR 描述时,团队往往各自口头约定格式,却很难稳定落到每一次对话里。换模型、换会话,风格就容易漂移;若还要保留 Co-authored-by 等署名,更依赖模型「记得」而不是可配置的规则。
下面介绍的 dsh-git-style-zeta(维护者 zeta987)走的是另一条路:把 Git 提交与 Pull Request 的书写说明写进 DSH 原生 system prompt 的可选片段,在 Settings 里编辑,保存后对新回合生效,无需重启宿主(README 中安装、卸载插件本身仍要求重启宿主)。它是提示词引导,不是 Git 钩子或策略引擎——不能代替人工审查,也不能保证每条 commit 都带上署名。
这是什么¶
dsh-git-style-zeta 是发布在 npm 上的 DSH 插件(当前资料中版本 0.3.0,许可证 MIT)。简介为:Configurable Git commit and pull request prompt instructions for DeepSeek Harness。
插件向 DSH 的系统提示贡献两个可选段落,分别用于 commit 与 PR。空字段不会注入任何内容;两个字段彼此独立。插件不会执行 Git 命令、安装 hook、修改 Git 配置、改写已有 commit,也不会改动 Codex / Claude 等外部工具;提示中会要求模型保留仓库里已有的 author 与 co-author 信息(含其他智能体留下的署名)。
社区目录页:skillhub.cn/plugins/zeta987/dsh-git-style-zeta。源码与说明:github.com/zeta987/dsh-git-style-zeta。
核心功能¶
可配置的两段说明¶
| 配置项 | 默认值 | 用途 |
|---|---|---|
git-commit-instructions |
"" |
commit message 的书写规则 |
git-pr-instructions |
"" |
PR 标题与正文的书写规则 |
字段省略、null、空字符串或仅空白时,对应段落不会加入提示。Settings 里的预览展示插件实际会贡献的文本;保存后对新 turn 生效。
与 Settings / profile 的对应关系¶
在 DSH Settings 中选择 Git style 编辑上述字段。保存会把内容写入当前 profile 的 cordis.patch.yml 里 git-style-zeta 这一行(界面里字段旁的 set here 即来源于此)。点 Use the default 会从该行移除覆盖。
无图形界面或需要在 profile 里自带默认文案时,可直接改 profile 的 cordis.patch.yml(常见路径如 $DSH_HOME/profiles/web/cordis.patch.yml)。bundle 已插入 git-style-zeta 行,应用覆盖时用 id 指向该行,不要重复 insert;行 id 必须保持 git-style-zeta,否则 Settings 表单会与配置脱节。DSH 应用覆盖时会替换整段 config,若两个字段都要用,覆盖里需同时保留两者。
README 给出了示例:Conventional Commits、subject 长度、正文说明「为何改」、以及固定出现一次的 Co-authored-by: DeepSeek Harness <noreply@deepseek.com>;PR 侧则要求标题一行说清行为变化,正文区分问题、改后行为与实际跑过的检查,并包含指定的一行 DeepSeek Harness 链接文案。这些仅为示例,你可按团队规范自行撰写。
编写提示时的注意点(来自维护者说明)¶
插件会原样追加你写的文本,并始终要求模型保留已有 author / co-author。规则宜让模型仅通过阅读文本就能执行:写明确切的一行、恰好出现一次、缺失时如何补全。含糊条件(例如「仅当 absent 时」)模型可能理解成需要用户显式请求,从而跳过 trailer。不要在提示里写凭据。只有加载了该插件的 DSH profile 会受影响。
安装与启用¶
本发行版要求 DSH 0.1.7-rc.2 或更高;更旧的宿主应固定使用 dsh-git-style-zeta@0.2.1(README 说明)。
profile 相互独立,把 web 换成目标 profile 名,并在每个需要该规范的 profile 里分别安装:
dsh plugin --profile web add dsh-git-style-zeta
# restart the host
安装后重启宿主。Node 引擎要求见 package.json(>=22.19.0)。
升级到指定版本同样显式指定包版本并重启:
dsh plugin --profile web add dsh-git-style-zeta@0.3.0
卸载:
dsh plugin --profile web remove dsh-git-style-zeta
# restart the host
若曾在 cordis.patch.yml 里手写 git-style-zeta 覆盖,卸载后记得删掉该行;无需恢复 Git hook 或 Git 设置,已有 commit 不会被改写。
典型用法¶
- 按上文命令在目标 profile 安装插件并重启宿主。
- 打开 Settings → Git style,在
git-commit-instructions/git-pr-instructions中填入团队规范;预览确认注入内容,保存。 - 在会话中仅要求模型 commit(或开 PR)时,模型应遵循已配置段落;README 截图示例中,commit 保留仓库原有 author,并按配置追加 co-author trailer。实际效果仍取决于模型与对话上下文——插件不做强制校验。
无 UI 时,把同样字段写入 profile 的 cordis.patch.yml 中 id: git-style-zeta 的 config 块即可,与 Settings 互相同步。
适用场景与注意¶
适合:希望在 DSH 会话里统一 commit / PR 文案风格、署名 trailer 或 PR 模板说明的团队或个人;需要把规范放进 profile、在无 Settings 存储的环境(例如 headless)里默认携带同一套提示的场景。
不适合:需要 100% 合规、必须通过 hook 或 CI 拦截不合规 message 的场景——本插件只做 prompt 引导。
安全与权限:插件以当前 DSH 进程权限运行;安装前请自行查看 GitHub 仓库 源码与 MIT 许可证,确认符合你的策略。SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系,并非官方应用商店。
DSH 生态强调「一切皆插件」;dsh-git-style-zeta 属于通过 system prompt 影响模型推理路径的一类能力(目录分类常标为模型推理相关),不改变 Git 仓库底层行为。
结尾¶
若你已经在用 DSH 处理日常提交与 PR 文案,又希望规范可编辑、可随 profile 分发,dsh-git-style-zeta 提供的是轻量、可预览的配置面,而不是另一套 Git 工具链。
- 目录页:https://www.skillhub.cn/plugins/zeta987/dsh-git-style-zeta
- GitHub:https://github.com/zeta987/dsh-git-style-zeta