3.1 我们欠缺想象力
虽然 Agent 已经能接替绝大多数人几乎全部的软件类操作,但实际上,这只是一种理想状态。很多人实际对 Agent 的利用效率非常低。
为什么?
很多人会认为:是因为用户没有掌握足够的 Agent 使用技巧。但说实话,Agent 有什么使用技巧?无非就是“讲清楚”。
我认为,Agent 使用效率差异的主要原因是,我们“想不到“让 Agent 去做。
是不是,听起来很不可思议。但是,这是真的。你可以在一天的晚上抽 10 分钟回顾下,你今天做了哪些事儿,有哪些你应该交给 Hermes 去做,但实际上是你自己查阅资料后手工去做的。
很多人没有这种意识,需要培养。
我认为,这个课程里所有的内容都比不上你记住下面这段话:
Hermes 就是牛马,你有任何繁琐的操作,都应该让他做,记住是“任何”(接触物理世界的不合适,但软件类的可以)。不要带着脑子去思考:是我做还是Hermes做?不用考虑,直接让它尝试去做。即使他做不了,从你和他的对话中,你也能学到很多。
也许你让 Hermes 第一次做某件事儿时,不如你自己做得高效。但坚持下去,想办法让他学会做这件事儿,他会越做越好。
3.2 例子
为了更好的说明什么叫你有任何繁琐的操作,都应该让它做,我举两个例子。这两个例子都不够“典型”——不够典型的例子,突发的,随机的才更有说服力。
例1
背景
写这本教材时,安装章节是基于 Hermes 0.16 版本写的。当时选 Quick Setup这个选项,一路下一步就能装好,很顺畅。
课程上线那天,群里讨论最多的是,最新的 0.18 版本,Quick Setup 点进去直接强制跳 Hermes 官网注册,步骤特别麻烦。群里有很多方案,但我觉得有点别扭。
我得重新走一遍安装流程,把说明给更新了。但问题来了——我本机早就装好了 Hermes,配置了一堆东西,Skill 也攒了不少。直接用默认方式重装,现有的东西肯定会被覆盖掉。所以,怎么在已经装一个Hermes的基础上,再重新安装一个 Hermes,就是一个问题。
告诉 Hermes 你的问题
这个问题够冷门的吧。99.9%的人不会有这样的需求。那我需要去带着脑子去查资料、问 AI 怎么解决吗?
不需要。
我打开 Hermes,直接告诉他:
我本机已经装了 Hermes,不想覆盖;现在需要一个完全独立的环境,再装一次 0.18 版本,不影响现有Hermes。
两分钟后,Hermes 给我生成了两个 shell 脚本。一个负责把 Hermes 安装到指定目录,另一个让我安装好了独立启动新的 Hermes。
问题解决。附带 Hermes 给的sh 脚本:
DEMO_HOME="$HOME/Desktop/hermes-demo-home" && \
mkdir -p "$DEMO_HOME" && \
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh \
-o "$DEMO_HOME/install.sh" && \
HOME="$DEMO_HOME" bash "$DEMO_HOME/install.sh" \
--dir "$DEMO_HOME/.hermes/hermes-agent" \
--hermes-home "$DEMO_HOME/.hermes"
自己去解决,也够折腾的了。
例2
背景
写逻辑帧多模态教材时,我经常要截图,然后直接粘到 Markdown 文件里。
VS Code 默认的行为很简单——你粘一张图,它就把图片文件放在当前 MD 文件的同级目录,然后在正文里插一个相对路径。但我的需求有点不一样:这本书的每一节都有自己的 imgs/ 目录,我希望粘贴的截图自动存到 imgs/ 下面,而不是散落在同级目录里。
默认行为:
某一节/
├── index.md
├── image-1.png
├── image-2.png
└── image-3.png
我想要的行为:
某一节/
├── index.md
└── imgs/
├── image-1.png
├── image-2.png
└── image-3.png
这也是一个挺小众的需求。我直接打开 Hermes,把需求说清楚。
> 我在 VS Code 里写 Markdown,经常粘贴截图。默认是把图片放在 MD 文件同级目录,我要改成自动存到当前目录的 imgs 子目录,引用路径也自动对应。直接给我配好。
几分钟后,Hermes 直接把我 VS Code 的配置文件改好了。告诉我:
我已经改好了用户设置:
Library/Application Support/Trae CN/User/settings.json
新增的关键配置是:
"markdown.copyFiles.destination": {
"**/*.md": "${documentDirName}/imgs/${fileName}"
}
效果应该是:以后你在 .md 里粘贴图片时,图片会被复制到当前
Markdown 文件同级的 imgs/ 目录里,Markdown 里引用类似:
🖼️原站图片缺失:图片
我也顺手加了这些配套设置:
"markdown.copyFiles.overwriteBehavior": "nameIncrementally",
"markdown.editor.filePaste.enabled": "always",
"markdown.editor.filePaste.copyIntoWorkspace": "mediaFiles"
OK,试了下,问题解决。
3.3 这说明了什么
这两个极小的例子,是最有代表性的。如果是一个较大的困难的任务,大多数人能想到要使用 Hermes 来解决。但差距往往来自于这些细小的,不起眼的,随机的任务,能不能让你想到 使用 Hermes 来解决。
这一节,看似是”正确的废话“,但希望同学们能仔细琢磨下,把使用 Agent当成习惯性的、生理性的肌肉记忆。
3.4 ■ 学点英语
| 中文 | English | 音标 | 说明 |
|---|---|---|---|
| 自动化心智 | Automation Mindset | /ˌɔːtəˈmeɪʃən ˈmaɪndset/ | 遇到重复操作时优先思考能否交给系统完成的习惯 |
| 手工流程 | Manual Workflow | /ˈmænjuəl ˈwɜːrkfloʊ/ | 依赖人一步步操作完成的工作流程 |
| 想象力边界 | Imagination Boundary | /ɪˌmædʒɪˈneɪʃən ˈbaʊndəri/ | 限制人想到自动化可能性的认知边界 |
| 真实场景 | Real-World Scenario | /ˈriːəl wɜːrld səˈnærioʊ/ | 来自日常工作而不是演示样例的应用场景 |