← ClaudeAtlas

daily-reportlisted

根据 git 提交记录生成工作日报,支持指定日期查询和智能归类
nicholyx/ai-skills · ★ 6 · AI & Automation · score 71
Install: claude install-skill nicholyx/ai-skills
# 工作日报生成 根据 git 提交记录,生成结构化的工作日报。 ## 步骤 ### 第一步:解析日期参数 根据用户输入确定查询日期: - 无参数:默认为**今天** - 具体日期格式:`05-13` → 当年 5 月 13 日;`2026-05-13` → 2026 年 5 月 13 日 - 自然语言:`昨天` → 今天减 1 天;`前天` → 今天减 2 天 将解析结果转换为具体的 `YYYY-MM-DD` 格式日期,记为 `$DATE`。下一天记为 `$NEXT_DATE`。 ### 第二步:提示用户确认日报格式 向用户展示默认日报格式模板,请用户确认或修改: ```markdown ## {YYYYMMDD}-工作日报&明日计划 ### 今天工作总结 1. {按功能模块归类的工作内容,每条用中文顿号或逗号连接相关细节} ### 明日计划 1. ``` 询问用户:"以上是默认日报格式,是否需要修改?直接确认将使用此格式生成日报。" 等待用户回复后再继续。 ### 第三步:查询 git 提交记录 执行以下命令获取指定日期的提交记录: ```bash # 获取提交列表(含完整 hash、时间、消息) git log --since="$DATE 00:00:00" --until="$NEXT_DATE 00:00:00" --author="$(git config user.name)" --format="%H %ai %s" --all ``` 对于每个提交 hash,查看其文件变更范围以便归类: ```bash # 查看单个提交的变更文件统计 git diff-tree --no-commit-id --stat -r <hash> ``` ### 第四步:智能归类与过滤 根据提交记录进行归类处理: **过滤规则**(以下提交不纳入日报): - `chore: record journal` 类纯管理记录 - `chore(task): archive` 类归档操作 - Merge commit(消息以 `Merge` 开头的提交) - 其他明显无业务意义的提交 **归类规则**(根据变更文件路径和 commit message 判断): - `aieda-ui/` 或前端相关路径 → 前端 - `api-server/` 或 `agent-worker/` → 后端 - `push-gateway/` 或 `tool-gateway/` → 网关/基础设施 - `docker`、`nginx`、部署相关 → 部署/运维 - `docs`、`README`、文档相关 → 文档 - `trellis`、任务管理相关 → 项目管理 - 不确定时,根据 commit message 中的 scope 判断 **合并规则**: - 同一模块的多条相关提交合并为一条工作内容 - 合并时用顿号或逗号连接细节 - 保持每条描述简洁但信息完整 ### 第五步:生成日报 按用户确认的格式生成日报,注意: - 日期标题中的日期格式为 `YYYYMMDD`(如 `20260513`) - 工作总结编号使用 markdown 标准编号格式:`1.` `2.` `3.` - 每条工作内容按模块归类,相关提交合并描述 - 明日计划部分留空,仅保留 `1.` 供用户自行填写 - 如果当天无提交,输出提示:"当天没有找到提交记录。" 将生成的日报直接输出,用户可复制使用。 ## 注意事项 - 只查询