使用 Claude Code 级别的 AI 进行工作产出的几个经验性习惯:
1. 对 AI 的追问做出回应
Claude Code 完成任务后,有较高比例会主动提出下一步要做什么。其中 80% 都没什么用,但如果忽略它,它可能会一直提,影响它的判断。所以要回应它的这些追问,哪怕只是简单地告诉它不用做这些。
就好像我们带一个实习生一样。实习生很积极,有想法,但很多想法不对,那就要告诉他或纠正他,防止他一直沿着这种想法走偏。
2. 尽量让 AI 来修改 AI 的产出
AI 的产出,尽量让 AI 来修改,而不要自己修改。如果实在要自己修改,请告诉它你修改过,且让它读一遍,再和它进行下一步的任务。
BTW:我在 claude.md 文件中有要求:如果 Claude Code 最终的产出包含文件,请在某个我指定的默认文件夹下建一个子文件夹,把这些产出放到这个文件夹下,且 Git 初始化。每次运行任务前,检测这个文件夹有没有变动,有的话,帮我进行一次手动提交。每次完成任务后,自己进行一次手动提交,以保存我和它的所有修改,且将我和它的修改进行区分。
3. 对 Claude Code 提出修改意见时,下意识思考如何让它一步到位完成结果
对 Claude Code 提出任何修改意见时,请下意识地思考:我要怎样修改、完善我的 claude.md 和 skill.md 文件,或者请它帮我完善这两个文件,能让它一步到位地实现我的想法,而不需要我再给出这些修改意见。
4. 最重要的:将最终产出反馈给 Claude Code
如果 Claude Code 交付了成果,我最终应用了一部分,成为了我的实际产出,请把这个产出发回给 Claude Code,让它思考要怎样善 claude.md 和 skill.md ,才能更趋近于这个产出的结果。
把 Claude Code 当成一个实习生。实习生渴望成长,渴望反馈,渴望有闭环。我们要给它这个闭环,帮助它成长。
进一步地,关于第四点,特别是对于重复性工作,可以借助此让 AI 实现“自进化”。
以我的周报文档为例: 我让 AI 基于我所有的文档和消息,按照一定的格式撰写周报。它本地会留存一份它写的 MD 版本,且它会直接填充到飞书文档上。我会修改这个飞书文档的版本作为我的正式交付。等到下一周,它会首先比较它生成的原始 MD 文档版本和我最终交付的飞书文档版本,思考怎样完善它的 skill.md ,才能尽可能让它的产出无限趋近我的产出,然后基于新的 skill.md 再生成新的周报,循环往复。
我非常惊叹于 Claude Code 的自进化能力。第一周的时候,它写的周报大概只有 20% 的东西能用。这样迭代了两次,等到第三周的时候,它写的东西竟然能有 90% 的东西可以直接用了。
除此之外,还有让 AI 帮我做简历评估。每天通过 Broswer Use 拉取飞书招聘中简历待评估列表中所有它还没评估的简历,帮我自动评估是否通过,理由如何。
一开始做得不好,后来我突然联想到了周报的这个自进化过程,让它每次在评估之前,先拉取我过去所有的我最终拍板的面试评价和简历评估,以及它本地原始的简历评估,并自行思考要怎样评估才能更接近我的判断,然后它再对最新的简历进行评估,不断自进化。
包括我让 Claude Code 帮我做面前准备,通过 browser-use 拉取所有的简历、作品集、评语、附件和网站,然后帮我整理面试者的基本信息。同时,基于对我的工作的理解和岗位需求的理解,准备一些个性化的问题。
在每天读取未来的面试列表做面前准备之前,我也会让它去读一下我过去面试的转写逐字稿,看看我真的会问哪些问题。如果有些问题我问了,但它在准备时没考虑到,它应该如何调整才能更接近我真实的面试流程,从而实现自进化。
我了解到 Hermes Agent 也有自进化的概念,但它的自进化本质上是面向过程进化来优化 token 效率,而不是面向结果的。因为作为一个通用产品,它无法对结果的好坏进行评估,也就无法基于结果进行自进化。
但个人使用的话,结果好坏的置信度是非常高的,可以让 AI 基于结果来自进化。进化的载体就是 claude.md 和 skill.md。虽然这样做会导致太个性化、无法泛化,但对个人使用来说完全不是问题。
当我真正用熟这个体验后,我突然联想到这可能也是一种 continual learning。怎么联想到的呢,因为我发现这种自进化竟然也有类似灾难性遗忘的问题。我发现它为了弥合最近一段时间的简历评估结果,会导致过拟合。如果真的让它再回测之前的评估,大概会有偏离。但这些任务本身都很消耗 token,目前不太好回测。
目前对于简单的问题有比较好的解法。例如我让它做自动的 bug 优先级分类,每次分类完都会通过飞书消息发给我,我会告诉它哪些分得不合理。因为 bug 描述和分类消耗的 token 很少,所以我直接把历史数据全部存档了。当它有大的 skill 优化时,就回测一下过去所有的分类方法,保证不要过拟合到当下的 case。这有点像它同时负责评测提分和构建评测集,既当裁判又当运动员。对于简单问题来说这没什么问题,但对于复杂问题,很难让历史数据全部回归一次。目前只能依赖它自身的通用能力,配合提示词来防止过拟合。