💡阅读指南

这一节我们看一个真实场景:微信群里有人发现文档引用路径写错了,我随手把截图转发给 Hermes,它帮我定位问题、核对文件、批量修改,最后还把这个能力沉淀成了 Skill。正文只讲关键步骤和思路,具体细节看图。

🎬
本节附有教学视频 #25

该视频为课程站点内嵌片段,未收录于本地离线包;如需观看请回到线上课程对应课时。

5.1 从一张截图开始

事情是这样的。我在一个技术交流群里看到有同学发了一张截图,说《程序员 AI 编程绿皮书》第 5 章第 9 节里有个引用路径写错了。

step1-screenshot
step1-screenshot

截图上标了两个红框:左边是章节大纲,右边是正文里的代码引用。引用的路径是 samples/chunking/extract_pdf.py,但实际文件应该在 samples/chapter5/chunking/extract_pdf.py。少了一层 chapter5/

这种小错误很常见。文档写到后面,目录结构调整了,但前面的引用没跟着改。如果人工去翻整个文档找所有类似的问题,得花不少时间。

我把这张截图直接转发给了微信里的 Hermes。

step2-forward
step2-forward

5.2 Hermes 先看懂图片

Hermes 收到图片后,第一件事是识别内容。它能看出这是逻辑帧平台上的文档页面,当前在第 5 章第 9 节,讲的是 pdfplumber 提取 PDF 文本的分块策略对比。

然后它注意到两个红框:左边标记的是章节位置,右边圈出来的是引用路径。结合我的说明("这个引用的路径不对"),它很快理解了任务:找出所有类似的错误路径并修正。

step3-analysis
step3-analysis

Hermes 的分析很直接:Markdown 里写的 samples/chunking/extract_pdf.py 少了一层 chapter5/。同一份文档里,其他几处(比如 lines 80 和 194)已经写对了(samples/chapter5/chunking/...),唯独 line 45 这句漏了。

但它没有急着改。它多看了一眼,发现还有三处也有同样的问题。line 113、line 126、line 264/305,路径都缺了 chapter5/

这时候它停下来问我:你确认一下:我就把 line 45 这个改成 samples/chapter5/chunking/extract_pdf.py?其他的如果顺手一并修了,还是这次只修这一处?

5.3 核对文件再动手

我没有让他直接改。我说:"那你核对一下,这几个路径对应的文件确实存在吗?你要去核对一下哦,不要给出错误的路径。"

这是很重要的一步。AI 很容易犯一个错:看到模式就批量替换,但不检查目标文件是否真的存在。万一改完发现文件不存在,反而制造了新问题。

Hermes 去核对了。它列出了所有需要修正的路径(加上 chapter5/ 之后),逐一确认文件确实存在:

step4-verify
step4-verify
  • samples/chapter5/chunking/extract_pdf.py
  • samples/chapter5/chunking/extract_test_data.py
  • samples/chapter5/chunking/chunking_strategies.py
  • samples/chapter5/chunking/chunking_results/
  • samples/chapter5/chunking/java_qa_system/offline_build_kb.py
  • samples/chapter5/chunking/java_qa_system/online_query.py

全部核对过,文件确实都在。这时候它才放心继续。

5.4 批量修改 + Git 提交

我回复:"OK,把其他的几个一并修改,改完之后一起提交到 Git 上去。"

Hermes 用 replace_all 一次性搞定,不会误伤已经对的(samples/chapter5/chunking/ 里不包含 samples/chunking/)。

6 处全部改完。然后他提交了 Git:

step5-fix
step5-fix
step6-commit
step6-commit

commit message 写得也很清楚:

code
fix: 修正第5章第9节中6处引用路径,补充缺失的 chapter5 目录层级

他只动了这一个文件,没有附带其他修改。现在截图里那行 samples/chunking/extract_pdf.py 在源码里已经改过来了。

5.5 最关键的一步:自我沉淀

到这里,任务已经完成了。但 Hermes 多做了一件事。

它在最后输出了一条消息:

code
💾 Self-improvement review: Skill 'educational-content-maintenance' created.

它把刚才这一整套流程抽象成了一个 Skill,叫 educational-content-maintenance(教育内容维护)。这套流程包括:从识别截图中的引用错误,到定位问题、核对文件、批量修改、Git 提交。

这一步很重要。它体现了 Hermes 的自学习特性:不是每次遇到类似问题都要重新走一遍流程,而是把经验沉淀下来,下次直接用。

以后如果再有同学发现文档里的引用路径写错了,我只需要把截图转发给 Hermes,说一句"参考 educational-content-maintenance Skill 处理",它就能自动完成整个流程,不需要我再一步步指导。

这就是 Skill 的价值。它把一次性的问题解决,变成了可复用的能力。Hermes 不是在被动执行指令,而是在主动积累自己的"工作经验"。

5.6 小结

这个案例展示了 Hermes 处理问题的几个特点:

  1. 能看懂图片。不用我手动描述"第几行第几列写了什么",它直接从截图里识别出章节、引用路径、错误位置。

  2. 会主动核对。发现多处类似问题时,它不是盲目批量替换,而是先问我要不要一并修,再去核对文件是否真的存在。

  3. 懂 Git 工作流。改完自动提交,commit message 写得清晰准确,只改动必要的文件。

  4. 能自我沉淀。最关键的是最后一步。把整个流程抽象成 Skill,下次遇到类似问题可以直接复用。

这不是一个复杂的任务,但它完整地展示了 Hermes 从接收指令到完成任务再到自我提升的闭环。对于日常工作中的小问题,这种"转发截图 → 自动处理 → 沉淀经验"的模式,能省下大量重复劳动的时间。

5.7 ■ 学点英语

中文 English 音标 说明
文档自动化 Document Automation /ˈdɑːkjumənt ˌɔːtəˈmeɪʃən/ 用程序或 Agent 批量处理文档内容的方式
截图审阅 Screenshot Review /ˈskriːnʃɑːt rɪˈvjuː/ 通过截图圈注或标记问题来指导修改
批注反馈 Annotation Feedback /ˌænəˈteɪʃən ˈfiːdbæk/ 用标注方式指出问题并指导修改
修改清单 Revision List /rɪˈvɪʒən lɪst/ 列出需要调整项目的清单