生产力革命:用 AI 编程工具将代码提交自动转化为技术博客
作为开发者,我们最擅长的是写代码,最头疼的往往是写文档和技术总结。
我们经常面临这样的矛盾:
- 代码写得很好,但过了三个月自己都忘了为什么要这么设计
- 解决了很棘手的 Bug,但没有记录下来,下次遇到还得重新踩坑
- 想写技术博客,但面对空白文档总是不知道如何下笔
本文将介绍一种利用 AI 编程工具的自动化工作流,通过配置简单的 Prompt,让 AI 帮你把枯燥的 Git Diff 瞬间转化为高质量的技术博客。
核心思路
我们的目标不是让 AI 凭空捏造,而是利用它强大的上下文理解能力,基于事实(代码变更)进行”逆向工程”。
- 输入:Git Diff(代码差异)、Commit History(提交记录)
- 处理:通过系统级 Prompt 扮演”技术布道师”角色
- 输出:结构清晰、包含背景、方案和代码亮点的 Markdown 博客
工具支持
这套工作流适用于主流的 AI 编程工具:
AI IDE
| 工具 | 规则文件位置 | 特点 |
|---|---|---|
| Cursor | .cursorrules | 项目级规则,自动加载 |
| Windsurf | .windsurfrules | 类似 Cursor 的规则系统 |
| Kiro | .kiro/steering/*.md | 支持条件触发和手动引用 |
| GitHub Copilot | .github/copilot-instructions.md | 仓库级指令 |
CLI 工具
| 工具 | 规则文件位置 | 特点 |
|---|---|---|
| Claude Code | CLAUDE.md | 项目级上下文,终端原生体验 |
| Aider | .aider.conf.yml | 支持多模型切换 |
不同工具的规则文件格式略有差异,但核心 Prompt 内容是通用的。
实战配置
第一步:创建规则文件
根据你使用的工具,在项目根目录创建对应的规则文件。
以 Cursor 为例,创建 .cursorrules 文件;如果使用 Kiro,则创建 .kiro/steering/blog-generator.md。
第二步:植入核心 Prompt
将以下内容复制到规则文件中。这是调教 AI 成为”技术博主”的关键指令:
# Role: Tech Blog Architect
你是一位拥有 10 年经验的全栈技术专家兼技术博主。你擅长通过阅读 Git Diff 或代码变更,反向推导开发者的意图,并将枯燥的代码转化为引人入胜的技术文章。
# Goal
根据用户提供的代码变更(Diff/Commits/Files),撰写一篇结构清晰、深度适中的技术博客或开发复盘。
# Workflow
1. **Analysis (分析)**:
- 扫描代码变更,忽略格式化(Lint/Prettier)、单纯的注释修改或依赖版本升级
- 识别核心逻辑变更:是否引入了新模式?修复了竞态条件?优化了数据库查询?
- 推测 "Why":为什么要做这个改动?之前存在什么痛点?
2. **Structure (大纲)**:
- **Title**: 起一个吸引人的标题(例如:不是 "修改了 Auth.ts",而是 "如何优雅地解决 JWT 续期问题")
- **The Problem (背景)**: 用通俗语言描述遇到的技术挑战
- **The Solution (核心)**: 结合关键代码片段(使用 Diff 对比),解释解决方案。不要贴大段代码,只贴关键行
- **Technical Highlights (亮点)**: 指出这段代码中值得学习的设计模式、技巧或算法思想
- **Impact (总结)**: 性能提升了多少?开发体验优化了哪里?
3. **Tone & Style (风格)**:
- 语气:专业但不僵硬,像是在和同事分享经验(使用 "我们" 或 "我")
- 格式:标准 Markdown,使用引用块 `>` 强调关键概念
- 可视化:在合适的地方标注 `[这里建议插入流程图/截图]`
# Constraints
- 如果有 Breaking Change,必须高亮提示
- 如果代码包含敏感 Key/Token,在输出中自动打码处理
- 输出语言:简体中文(除非用户指定英文)
# Trigger
当用户输入 "生成技术博客" 或 "Generate Blog" 时,执行上述流程。
使用方法
配置完成后,你可以通过以下方式触发博客生成。
场景 A:开发刚结束,准备发博客
这是最常用的场景。当你完成了一个功能模块的开发,但还没有提交(或者刚提交完)。
Cursor / Windsurf:
- 按下
Cmd + I(WindowsCtrl + I)打开 Composer - 输入:
@Git Diff 根据我的代码变更生成技术博客,保存为 docs/blog/draft.md
Kiro:
- 在 Chat 中输入:
#Git Diff 生成技术博客 - 或者使用
#Codebase引用整个项目上下文
Claude Code:
claude "根据最近的 git diff 生成技术博客"
场景 B:复盘历史代码
如果你想复盘上周解决的一个复杂 Bug:
- 找到对应的 Commit Hash
- 输入:
@Commit abc1234 请分析这个提交,写一篇技术复盘
AI 会在对话框中输出文章,你可以复制到 Notion、掘金或知乎。
进阶技巧
为了让生成的博客更具个人风格,你可以在对话时添加”修饰语”:
给老板看(汇报风)
生成博客,但请侧重于业务价值和稳定性提升,减少代码细节。
给新人看(教程风)
生成博客,侧重于最佳实践,详细解释代码中的 Trick,方便新人理解。
纯记录(日志风)
输出格式改为 Daily Log,只记录:遇到的 Bug、解决方案、TODO。
英文输出
Generate Blog in English, targeting an international audience.
工具特性对比
不同工具在处理这类任务时各有优势:
| 特性 | Cursor | Windsurf | Kiro | Claude Code (CLI) |
|---|---|---|---|---|
| Git Diff 上下文 | ✅ @Git | ✅ 内置 | ✅ #Git Diff | ✅ 自动读取 |
| 文件直接写入 | ✅ | ✅ | ✅ | ✅ |
| 规则条件触发 | ❌ | ❌ | ✅ | ❌ |
| 图形界面 | ✅ | ✅ | ✅ | ❌ 纯终端 |
| 多文件上下文 | ✅ | ✅ | ✅ #Codebase | ✅ |
写在最后
通过这个配置,我们并没有把写博客的责任完全甩给 AI,而是让 AI 帮我们完成了 “从代码到自然语言”最耗时的翻译和结构化工作。
你需要做的,只是在 AI 生成的基础上,注入你的灵魂——加两句你的个人感悟,放一张系统截图,调整一下标题。
从今天开始,让每一次 git commit 都成为你技术成长的脚印。
评论