如果几年前有人跟我说:把 80% 的客户沟通自动化,没人会发现,我大概率会礼貌点头、笑两声,然后回去继续修 Flask 路由。 然而,周末一时兴起做了个小助手,结果就失控成了整整一周的全面自动化试验。没亲自回一条客户消息、没亲自写一封文档邮件、也没手动批过一次轻量 PR——更意外的是:没有任何客户起疑。
下文是完整的落地过程:只讲方法与实现,不绕弯子——Python、自动化,再加一点策略性“偷懒”。
问题:我的日程像俄罗斯方块一样挤满
我一边做多家 Python 自动化外包,一边运营刊物、还要带新人。每天都在接这种消息:
- “能帮我看下这条数据管道吗?”
- “那个微服务今天能发吗?”
- “这个报错 AttributeError: 'NoneType' object has no attribute 'encode' 是啥啊 😭?”
单看不重,叠加起来就是生产力黑洞。粗算下来,我几乎每天有 2.5 小时花在重复、模板化的回复上。于是我想:能不能“自动化我自己”?
第 1 步:先让代理学会“我的口吻”
老实讲,我们的日常回复80% 是模式,20% 才是即兴。我先把用得最多的邮件回信、GitHub 评论和 Slack 回复导出为 Markdown,按窗口重叠的方式切片分块,让语境更完整。
复制我用“部署又挂了,能帮下吗?”之类的提示做了几轮测试。效果吓人地贴脸:不仅语气像,连我遇事爱用的表情也复刻了。🤯
第 2 步:LangChain + Flask,把“低优先级”消息自动回了
会说“人话”是一回事,发出去不显得机械又是另一回事。我起了一个 Flask webhook 来接 Slack 与 Gmail 的新消息;随后做个轻判断:只要不是紧急或高风险,就让代理代我回。
复制从这刻起,代理就是“我”:能同步进度、给出代码建议、甚至能拉会并预约日程。
小贴士:需要稳定口吻就把 temperature 调低;需要更灵动一点就略微上调,别贪大。
第 3 步:Git 提交信息?自动从 diff 生成
这一段极度上头。我在仓库的 post-commit 钩子里,先把暂存区的改动导成 diff,再 prompt 模型生成“像我写的”提交信息。
复制然后把 diff 喂给提示词:
复制效果:每次 commit 都简洁、有信息量、语气统一。从此再也没有“fixed stuff”。
第 4 步:做“知识库+QA”的代码评审
当客户丢过来 PR 让给反馈时,代理也能顶上。我先把以往的代码评审意见做向量化索引,作为“评审经验”的可检索语料。
复制随后我把新的 diff转成若干审查要点(比如“是否符合 SRP”“异常处理是否完备”),再去检索相似的历史意见,拼装为具体点评。光这个环节,一周就省了将近 5 个小时。
第 5 步:会议让 AI 去“参会”,我只收要点
我用 Whisper 做录音转写(当然是提前告知并获同意),然后让模型把纪要、风险与行动项提炼出来。
复制每次会后,要点自动落到 Notion。客户只觉得“效率高”,却没想到我不在。😂
第 6 步:发票、周报与文档,一键归档生成
最后一层,是把文档工作也彻底模块化。每到周五,我的脚本会自动收集:
- 本周提交(commits)
- 审过的 PR
- 代理的往来消息
- 会议纪要与行动项
然后交给模型生成每位客户的周报:
复制结构清晰、信息完整,读起来像真人写。那周我还收到了这样的反馈:
“真希望更多开发能像你这么会沟通。”
翻车现场
当然,并非完美无瑕:
- 语气不合拍:有位平时爱抖机灵的客户收到了一条过于正式的回信,直接问我“你还好吗?怎么这么像 ChatGPT”。——修正:为每位客户挂一个语气配置(冷/暖/活泼/严谨),进入 webhook 时先识别来源再选风格。
- 音频太糊:一次会议录音质量差,纪要就偏空泛。——修正:加了降噪与语音质量校验;不达标就打回重传或标注“需人工补充”。
- 需求误解:有位客户的改动请求被代理“理解歪”了。——修正:凡是有风险的改动,一律人工二次确认;代理只负责草拟方案与风险点,不直接合并。
结论:你可以“自动化自己”,但别真的把自己裁了——关键路径还是要人在回路。