返回目录
开发工具 插件

dsh-co-authored-by

shelken/dsh-co-authored-by

dsh plugin: auto-inject Co-Authored-By and Generated-By trailers on git commit

Stars
2
Forks
0
Issues
0
更新
4 天前

PROJECT TOPICS

项目标签

INSTALL REFERENCE

安装参考

未验证
dsh plugin --profile web add github:shelken/dsh-co-authored-by

该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。

PROJECT README

README

dsh-co-authored-by

dsh (DeepSeek Harness) 插件:agent 提交时自动注入 Co-authored-by 信息

[!NOTE] 本仓库代码完全使用 DeepSeek V4 进行规划和编码

功能

  • agent 直接执行 git commit 时懒安装 prepare-commit-msg hook,自动追加 Co-Authored-By: <model> <noreply@deepseek.com>Generated-By: dsh <版本> trailer(不改命令,幂等)
  • hook 安装后覆盖该仓库后续所有 commit(含脚本内间接 commit)
  • 与仓库已有 hook 兼容:安装前备份、链式执行;会话结束自动卸载并恢复
  • 模型身份取当前会话实际使用的模型显示名,解析失败回退模型 id / unknown
  • read-only 沙箱下 commit 被拒时,可经用户批准一次性升级到 workspace-write

快速上手

  1. 本地开发用 patch 覆盖层:dsh web --patch ./cordis.patch.yml(需 dsh CLI)
  2. 安装到 profile:dsh plugin --profile demo add <包名或 tarball>
  3. agent 正常提交即可,无需额外命令

详细说明见用户指南

配置

零配置即用。全部字段有默认值,可按需在 profile 的 cordis.patch.yml 覆盖:

- insert:
    - id: co-authored-by
      config:
        enable: true
        emailDomain: noreply@deepseek.com
        modelNameFormat: display
        sandboxUpgradeRequest: true
字段 默认值 作用
enable true 插件总开关
emailDomain noreply@deepseek.com Co-Authored-By trailer 的邮箱域名
modelNameFormat display 模型名取显示名(display)还是 id(id)
sandboxUpgradeRequest true read-only 沙箱下是否请求升级;false 时不请求,由 dsh 内置 sandbox_permissions 机制兜底

测试

  • 单元:trailer 注入逻辑、模型身份回退链、配置校验、hook 安装/链式/卸载
  • e2e:真实 dsh 栈(agent loop + bash 工具)驱动 git commit,断言注入与会话结束卸载

贡献

提 issue 或 PR,见 GitHub 仓库。规划与决策票见 wayfinder 地图 issue(wayfinder:map 标签)。版本发布流程见 docs/versioning.md

许可证

MIT

CLASSIFICATION EVIDENCE

分类依据

项目类型插件
功能分类开发工具
规则置信度

系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: git。