hermesagent支持四种自动化生成git周报方式:一、内置git集成模块定时同步并渲染markdown报告;二、cli脚本提取日志上传json数据;三、webhook实时监听push事件聚合草稿生成pdf;四、jenkins插件在构建流程中调用报告生成器。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您使用HermesAgent进行周报管理,但需手动整理Git提交记录来生成汇总报告,则可能因重复操作导致效率低下。以下是通过HermesAgent自动拉取Git提交记录并生成周报的多种实现方式:
一、配置HermesAgent内置Git集成模块
该方法依赖HermesAgent已支持的版本控制系统插件,无需额外部署服务,适用于使用官方Docker镜像或SaaS版的用户。系统可定时同步指定仓库的提交日志,并按作者、分支、时间范围归类。
1、登录HermesAgent管理后台,进入「集成中心」→「代码仓库」页面。
2、点击「添加Git源」,选择Git平台类型(如GitHub、GitLab、Gitee),填写对应API Token与仓库URL。
3、在「自动化任务」中新建周期任务,设置触发时间为每周五17:00,勾选「生成周报摘要」选项。
4、在模板编辑器中插入预设变量:{{git_commit_count}}、{{author_name}}、{{commit_messages_summary}}。
5、保存后,系统将在下次触发时自动生成含提交统计、高频关键词与关联PR链接的Markdown格式周报。
二、调用HermesAgent CLI结合Git命令行脚本
该方法适用于本地开发环境或CI/CD流水线中嵌入周报生成逻辑,通过Shell脚本调用HermesAgent提供的CLI工具上传结构化数据,确保原始Git日志不被中间平台过滤或截断。
1、在项目根目录下创建weekly-report.sh脚本文件。
2、在脚本中执行git log --since="last week" --until="now" --format="%an|%s|%ad" --date=short提取原始提交记录。
3、使用hermes-agent-cli report create --type=git-weekly --data-file=git-log.json上传解析后的JSON数据。
4、JSON数据中必须包含字段:author、message、date、repo_name。
5、运行脚本后,HermesAgent将基于该数据渲染专属看板,并推送至指定企业微信/钉钉群。
通用Git项目监控工具,支持GitHub、GitLab、Gitee等平台。可增删仓库、检查更新、自动拉取代码并生成变更摘要。用于“监控项目”“检查更新”“添加仓库”等场景。
三、使用Webhook监听Git Push事件并触发HermesAgent API
该方法实现近实时采集,避免定时扫描延迟,适合多仓库统一纳管场景。当任意受控仓库发生Push操作时,Git平台主动向HermesAgent暴露的HTTP端点推送事件载荷。
1、在Git平台仓库设置页启用Webhook,目标URL填写为https://your-hermes-agent.com/api/v1/hooks/git-push。
2、配置Secret密钥,并在HermesAgent后台「Webhook安全设置」中填入相同值用于签名验证。
3、在HermesAgent中创建「周报聚合规则」,指定匹配条件为ref == "refs/heads/main"且commits.length > 0。
4、为每条匹配事件执行动作:调用/api/v1/reports/draft接口创建草稿,填充字段title为"[{{repository.name}}] {{week_start}}–{{week_end}} 提交汇总"。
5、每周日凌晨2点,系统自动合并本周所有草稿,生成终版PDF报告并存档至/reports/weekly/路径。
四、接入Jenkins Pipeline调用HermesAgent Report Generator插件
该方法面向已部署Jenkins的企业用户,利用构建流程天然的时间锚点生成周报,同时复用现有权限体系与审计日志。
1、在Jenkins插件管理中心安装「HermesAgent Report Generator」插件(版本≥2.4.0)。
2、新建一个「定期执行」Pipeline任务,设置Cron表达式为0 0 * * 6(每周六凌晨执行)。
3、在Pipeline脚本中添加stage('Generate Weekly Report'),内含step:hermesReportGenerator gitRepo: 'https://git.example.com/team/project.git', branch: 'main', timeRange: 'P7D'。
4、配置插件参数includeMergeCommits为true,确保合并提交及其子提交均被纳入统计。
5、执行完成后,插件将返回报告唯一ID,该ID自动注入到Jenkins构建结果页面的「Hermes Reports」标签页中。










