Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DSH Git Story Studio

Git 仓库考古与周报生成工具 —— 深入任意本地仓库的提交热区、作者贡献、分支健康度,并让 AI 用工具查证后生成变更叙事。

属于 deepseek-harness-java 独立 AI 产品矩阵(参照 dsh-java-mysql 形态): 本产品是完整可用的开发工具,而非"业务系统 + 右侧 AI 助手"。AI 助手本身就是产品的主操作界面之一。

形态

  • dsh-java-git-app:独立管理后台(Spring Boot,端口 8092),登记本地 git 仓库并做只读分析
  • dsh-java-git-plugin:DSH Java Native 插件,向 Harness Agent 暴露 5 个只读 git 工具
浏览器 → dsh-java-git-app(:8092) → Harness Agent(:8090) → dsh-java-git-plugin → HTTP 回调 app 只读分析接口 → git 只读命令

AI 工具(插件)

工具 说明
git_repo_overview 仓库总览:分支、提交总数、最近提交、tag/分支数、脏文件数
git_hot_files 提交热区:最近 N 次提交改动最多的 Top 20 文件
git_author_stats 作者贡献榜:提交数、插入/删除行数
git_branch_health 分支健康度:相对主分支 ahead/behind、最后提交距今天数、废弃分支预警
git_commit_story 变更叙事:按特性/修复/其他分组的时间线,用于周报/发布说明

工具名暴露为 plugin__dsh-java-git-plugin__<name>。

安全红线(AI 绝不做)

  • 不 push、不 pull、不 rebase、不 reset、不 checkout —— 插件仅注册只读分析工具
  • app 端 GitCommandService 白名单校验 git 子命令,写类命令直接拒绝
  • 不修改任何仓库状态、不缓存仓库内容外发

运行

# 1. 启动管理后台(默认 8092)
java -jar dsh-java-git-app/target/dsh-java-git-app-0.1.0-SNAPSHOT.jar

# 2. 安装插件 jar 到 harness
cp dsh-java-git-plugin/target/dsh-java-git-plugin-0.1.0-SNAPSHOT.jar ~/.dsh/standalone/plugins/dsh-java-git-plugin.jar
curl -X POST http://127.0.0.1:8090/api/harness/plugins/install -H 'Content-Type: application/json' \
  -d '{"pluginId":"dsh-java-git-plugin","displayName":"dsh-java-git-plugin","pluginVersion":"0.1.0","runtimeType":"JAVA_NATIVE","sourcePath":"'"$HOME"'/.dsh/standalone/plugins/dsh-java-git-plugin.jar","entrypoint":"dsh-java-git-plugin.jar"}'
curl -X POST http://127.0.0.1:8090/api/harness/plugins/activate -H 'Content-Type: application/json' -d '{"pluginId":"dsh-java-git-plugin"}'

打开 http://127.0.0.1:8092 → 「+ 登记」填入本地仓库绝对路径 → 开始对话或查看右侧分析面板。

数据存放:~/.dsh-java-git/(仅仓库路径清单,不复制仓库内容)。

E2E

python3 git_studio_e2e.py

覆盖 5 个用例:仓库登记 + 总览、热区分析、作者统计、AI 对话调用工具、写命令拒绝(安全红线)。

About

DSH Git Lens: git 历史分析/变更摘要/回滚建议 - Java Native Plugin 独立 AI 产品,不改写历史

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages