终于不用写日报了!我用 AI 做了一个“让代码说话“的插件
CodeDiary是一款基于Git提交记录的AI工作报告生成插件,专为解决程序员撰写日报/周报的痛点设计。该工具通过分析代码提交信息,利用大语言模型自动生成结构化工作报告,实现"代码即工作"的理念。核心功能包括灵活时间范围选择、提交记录可视化、智能报告生成和自定义配置,可将撰写报告时间从10分钟缩短至1分钟,效率提升90%+。插件支持日报、周报、月报等多种场景,并建议配合良好的Git提交习惯使用。
一个困扰已久的问题
作为一名程序员,我相当长的一段时间以来都在思考一个问题:如何利用 AI 做一个真正有价值的"产品"?
这个产品不需要很大,不需要很复杂,但一定要满足三个条件:
- 真实的使用场景:不是为了做而做,而是真正解决实际问题
- 实际的应用价值:不是玩具项目,而是能持续产生价值
- 有意义的技术探索:不是简单调用 API,而是深度思考人机协作
我试过很多方向:AI 代码审查工具、智能文档生成器、自动化测试助手…每个想法看起来都不错,但仔细推敲后都发现要么场景不够刚需,要么技术实现过于复杂,要么用户体验不够流畅。
一次真实的痛点体验
转机出现在一个普通的周五下午。
那天下午 5 点半,我刚解决完一个棘手的技术问题,正准备下班时,钉钉弹出了提醒:「请及时提交本周周报」。我看着编辑器里的十几个 Git 提交记录,又看着空白的周报文档,突然陷入了一种熟悉的焦虑感。
我做了什么? 我翻开 Git 提交历史,看着一条条 commit message:
feat: 实现工作流节点的动态注册机制fix: 修复 AI 模型调用的并发超时问题refactor: 重构流程引擎的状态管理,优化事件驱动perf: 优化节点连接器的执行性能,减少 30% 内存占用feat: 集成 OpenAI/Claude 多模型适配器- …
我该怎么写? 但转化成"领导能理解的语言",又是另一回事:
本周主要完成以下工作:
1. 完善了工作流核心架构,支持动态扩展节点类型
2. 解决了 AI 模型调用的稳定性问题,提升系统可靠性
3. 优化了流程引擎的运行效率,改进事件处理机制
4. 实现了多 AI 模型的统一接入,提升平台兼容性
5. 性能优化,内存占用降低 30%,执行效率显著提升
...
整个过程花了我 10 多分钟,而其中 90% 的时间都在做一件事:把代码语言翻译成人话。
就在那一刻,我突然意识到:这不就是一个完美的 AI 应用场景吗?
- ✅ 数据源清晰:Git 提交记录是结构化的、完整的、可追溯的
- ✅ 需求明确:将技术语言转化为业务语言,这正是大语言模型的强项
- ✅ 场景刚需:每个"打工"程序员都逃不开写日报、周报、月报
- ✅ 价值可衡量:能直接节省时间,效果立竿见影
- ✅ 灵活适配:无论什么时间维度的报告,本质都是选择不同的数据范围而已
更重要的是,这个场景有一个深层次的洞察:程序员的工作内容本质上已经体现在代码提交里了,也就是代码即工作,提交即日志。
插件简介
CodeDiary(代码日记) 是一款根据 Git 提交记录,由 AI 大模型总结归纳,生成工作报告的 IntelliJ IDEA 插件。
作为一个程序员专属的效率工具,CodeDiary 不仅仅是一个简单的报告生成器,更是一个重新定义程序员工作汇报方式的创新实践。它将代码提交这一程序员最本质的工作产出,通过 AI 的力量转化为领导看得懂、业务说得清的工作报告。
💡 核心理念
CodeDiary 的核心使命,是将程序员从最不想做、但又不得不做的"写报告"这件事中解放出来。
插件秉承"代码即工作,提交即日志"的设计哲学,让程序员的真实工作内容自动转化为结构化的工作汇报,将宝贵的时间从形式主义的文字游戏中解放出来,投入到真正有价值的代码创造和技术提升上。
🎯 核心能力
1. 时间范围选择 ⏰
CodeDiary 提供了灵活的时间范围选择机制,让你能够精确控制要查询的提交记录范围。
设计思考:
- 默认今天:打开插件即展示今日提交,符合最常见的使用场景
- 快捷选择:下拉框快速切换时间范围,无需频繁调整日期
- 自定义灵活性:日期选择器满足特殊场景需求,如"上周一到周三"

2. 提交记录可视化 📋
清晰的提交列表展示,让你对工作内容一目了然。
交互设计亮点:
- 复选框多选:勾选需要纳入日报的提交,灵活组合
- 点击行联动:点击提交行自动切换勾选状态,快捷操作
- 悬停查看详情:鼠标悬停在提交信息上,弹窗展示完整的提交内容(包括代码变更)
- 视觉层次清晰:短 Hash + 时间戳 + 提交信息,信息密度合理

3. 智能报告生成 🤖
这是 CodeDiary 的核心功能——将代码提交转化为自然语言工作报告。支持生成任意时间范围的工作报告,从单日的日报到跨月的项目总结,只需选择对应的时间范围即可,生成结果展示在弹窗中,支持一键复制到剪贴板,粘贴即用。

4. 自定义配置 ⚙️
CodeDiary 提供了灵活的配置选项,让生成的报告更符合你的个人风格和公司规范。

📊 价值体现
根据我个人的使用体验:
时间节省 ⏱️
- 传统写报告:想要写出一份质量不错的报告,平均 5-10 分钟/次,需要回忆、整理、措辞
- 使用 CodeDiary:1 分钟内完成,勾选提交→点击生成→复制粘贴
- 效率提升 90%+,每次节省至少 10 分钟
质量提升 📈
- AI 生成的报告结构清晰、表达专业、要点突出
- 基于真实代码提交,内容准确可追溯
- 避免人为遗漏重要工作内容
心智负担 🧘
- 消除"写报告"的心理抗拒和拖延
- 无需在工作和汇报之间频繁切换思维
- 让工作汇报从"额外负担"变成"顺手而为"
使用场景与最佳实践
场景 1:日常工作日报 📅
适用对象:需要每天向领导汇报工作进度的程序员
使用方式:
- 下班前打开 CodeDiary,默认展示今日提交
- 勾选所有提交(通常今日的提交都需要纳入日报)
- 点击"生成",等待 AI 生成日报
- 复制生成的内容,粘贴到钉钉/企微/飞书
- 根据实际情况微调内容(如添加会议、讨论等非代码工作)
效果:从 10 分钟缩短到 1 分钟,效率提升 90%
技巧:如果当天提交较少,可以选择"最近 3 天",筛选出今日的重点工作生成日报。
场景 2:周报、月报、季报 📊
适用对象:需要定期提交工作总结的程序员
时间范围选择:
- 周报:选择"最近 7 天"或自定义本周一到周五
- 月报:选择"最近 30 天"或自定义本月 1 日到月末
- 季报:选择"最近 90 天"或自定义季度开始到结束
- 任意时间段:通过自定义日期选择器,精确控制时间范围
使用方式:
- 打开 CodeDiary,选择对应的时间范围
- 浏览提交列表,勾选重要的、有代表性的提交
- 可以不勾选小的 bug 修复
- 重点勾选功能开发、重构优化、性能提升等
- 在"其他内容"中补充非代码工作(如技术方案设计、技术分享等)
- 生成后整理成更结构化的报告
进阶技巧:
- 分类生成:可以分别选择"功能开发"、“问题修复”、"性能优化"等不同类别的提交,分批生成后再整合
- 量化成果:对于性能优化类提交,可以在"其他内容"中补充具体的性能数据
- 突出重点:周报/月报不需要罗列所有提交,选择最有价值的工作即可
- 时间跨度越大,越要精选:月报、季报要更加聚焦核心成果,避免流水账
场景 3:技术复盘和总结 🔍
适用对象:希望定期回顾技术成长的程序员
使用方式:
- 每周或每月使用 CodeDiary 回顾一下自己的代码提交
- 观察自己的工作重心:是在写新功能,还是在修 bug?
- 思考:
- 哪些提交是真正有技术含量的?
- 哪些工作是重复性的?可以通过工具或框架优化?
- 有没有持续在学习新技术、尝试新方案?
- 将生成的内容作为个人成长日志,记录技术成长轨迹
深层价值:CodeDiary 不仅是工作汇报工具,更是技术成长的镜子
最佳实践建议 💡
1. 保持良好的提交习惯
CodeDiary 的效果很大程度上依赖于你的 Git 提交质量:
- ✅ 提交信息要清晰:
feat: 实现用户登录功能优于update,如果实在不想手写,可以下载一个通义灵码或者其他 AI 插件,都可以在 Git 提交的窗口通过 AI 来生成本次的提交记录,省时省心,特别推荐! - ✅ 粒度要合理:一次提交完成一个功能点,而不是一天只提交一次
- ✅ 遵循 Conventional Commits 规范:
feat/fix/refactor/perf/docs等前缀
2. 善用配置项
- 日报格式:根据公司或团队的日报规范配置模板
- 补充内容:代码提交体现不了的工作,记得补充(如会议、方案设计、技术支持等)
3. AI 生成后要审查
AI 生成的内容并非 100% 完美,使用前建议:
- 检查技术术语翻译是否准确
- 补充量化数据(如性能提升百分比)
- 调整表述方式以符合个人风格
4. 保护代码安全
- CodeDiary 默认只上传提交信息,不上传完整代码
- 如果提交信息中包含敏感信息(如服务器地址、密码等),生成前务必检查
- 对于特别敏感的项目,建议部署私有化版本(企业版)
如何使用 CodeDiary?
安装方式
方式 1:IDEA 插件市场安装(推荐)
- 打开 IntelliJ IDEA
- 进入
Settings/Preferences→Plugins - 搜索 “CodeDiary”,作者认准 “薛伟同学”。
- 点击
Install安装 - 重启 IDE
方式 2:手动安装
- 访问插件官网:
https://code-diary.xuewei.fun - 下载离线包
- 进入
Settings/Preferences→Plugins→⚙️→Install Plugin from Disk... - 选择下载的文件并安装
- 重启 IDE

快速开始
- 打开插件:右侧工具栏找到 CodeDiary 图标,点击打开
- 选择时间范围:根据需要选择今天(日报)、最近 7 天(周报)、最近 30 天(月报)或自定义范围
- 查询提交:点击查询按钮,加载对应时间范围内的提交记录
- 勾选提交:勾选需要纳入报告的提交记录
- 配置(可选):点击齿轮图标,配置报告格式和补充内容
- 生成报告:点击"生成"按钮,等待 AI 生成
- 复制使用:复制生成的内容,粘贴到你的汇报系统
设计思考与产品哲学
为什么要"让代码说话"?
在设计 CodeDiary 的过程中,我一直在思考一个问题:程序员的工作价值应该如何体现?
传统的工作汇报方式,本质上是一种"二次创作":
- 你先用代码表达了一次(Git 提交)
- 然后再用文字表达一次(日报/周报/月报)
这个过程中存在几个问题:
- 信息损耗:文字描述往往不如代码精确,细节容易被忽略
- 时间浪费:重复表达同一件事,耗费大量时间
- 认知负担:在"写代码"和"写报告"之间频繁切换思维
而代码提交本身就是最好的工作日志。
无论是日报、周报还是月报,本质上都是对不同时间范围内的代码提交进行总结和归纳。时间维度不同,但数据源是一样的——都是 Git 提交记录。
每一次提交都包含了:
- What:做了什么(提交信息)
- When:什么时候做的(提交时间)
- How:怎么做的(代码变更)
- Why:为什么这么做(提交描述)
所以 CodeDiary 的核心理念是:让代码说话,让 AI 翻译。
程序员专注于写好代码、写好提交信息,剩下的"翻译"工作交给 AI。这不仅节省时间,更重要的是让程序员的工作价值得到更准确的体现。
产品设计的三个原则
在开发 CodeDiary 的过程中,我坚持了三个产品设计原则:
极简主义:简单到不需要学习
好的工具应该是"自解释"的,用户一看就知道怎么用。
CodeDiary 的交互流程只有三步:
- 选择:勾选需要纳入日报的提交
- 生成:点击按钮调用 AI 生成
- 复制:复制生成的内容
没有复杂的配置,没有难懂的术语,没有学习成本。
融入工作流:在工作现场解决问题
很多工具失败的原因是:让用户"绕路"。
CodeDiary 直接集成在 IDEA 里,就在你写代码的地方,就在你查看 Git 记录的地方。不需要打开浏览器,不需要切换工具,不需要离开工作现场。
以人为本:AI 是助手,不是主人
CodeDiary 的设计哲学是:AI 负责 90% 的基础工作,人负责 10% 的审查和优化。
- 你可以选择哪些提交纳入日报(而不是 AI 自动选择)
- 你可以配置日报格式(而不是 AI 固定格式)
- 你可以补充其他内容(而不是只依赖 AI)
- 你可以审查和修改生成结果(而不是盲目使用)
人始终是主导者,AI 只是工具。
结语
一个简单的开始
CodeDiary 的诞生,源于一个简单的痛点:写各种报告太费时间。
但在开发的过程中,我发现它的意义远不止于此:
- 它是对"程序员工作本质"的思考:代码即工作,提交即日志
- 它是对"形式主义"的反思:消除负担,保留价值
- 它是对"人机协作"的实践:AI 增强人,而不是取代人
- 它是对"AI 产品设计"的探索:融入工作流,自然产生价值
- 它是对"灵活性"的实践:本质都是数据范围的选择,一个工具满足所有汇报需求
一次持续的探索
CodeDiary 只是一个开始。
在 AI 时代,我们会看到越来越多的工具和产品重新定义我们的工作方式。但我相信,好的工具应该:
- 解决真实的问题,而不是为了 AI 而 AI
- 融入现有的工作流,而不是创造新的负担
- 增强人的能力,而不是取代人的价值
- 保持简单易用,而不是增加学习成本
这是 CodeDiary 的设计理念,也是我对未来 AI 产品的期待。
如果 CodeDiary 对你有帮助,欢迎分享给你的朋友。让更多程序员从"写报告"(日报、周报、月报)这件事中解放出来,把时间花在更有价值的地方。
更多推荐

所有评论(0)