Skill
定义
Skill,是指把一类可重复出现、可反复调用的任务处理方式,封装成 AI 可直接执行的能力模块。它不只是一次性的提示词,也不只是单条命令,而是面向某类工作场景的稳定做法。
在本文语境里,Prompt 解决一次对话,Skill 解决一类能力,Hook 解决一个时刻。
换句话说:Hook 负责“什么时候响铃”,Skill 负责“响铃之后具体怎么干活”。
在本文档中的语境
这篇关于 Loop Engineering 和 Hook 玩法的文章里,Skill 出现在“文件自动整理”这个例子中。作者并不是只做一个监听文件夹的触发器,而是用了“Hook + Skill”的组合:
- 先由 Hook 盯住某个文件夹是否出现新文件。
- 一旦检测到新文件进入,再由 Skill 处理后续工作。
- 后续工作不是机械地按扩展名分类,而是要理解文件内容、判断归类、生成合适名称、再移动到目标位置。
作者引用了一个很贴切的比喻:Hook 是门铃,Skill 是开门以后真正干活的人。这个比喻说明,Skill 的重点不在触发,而在执行。
关键机制或组成
1. 面向“一类任务”而不是“一次命令”
Skill 的核心是把某类任务的处理逻辑固化下来,之后在相似场景里反复复用。
在文中的例子里,这类任务不是“把这个文件改名一次”,而是更完整的一组能力:
- 看文件是什么类型
- 识别文件内容是什么
- 判断应该归到哪一类
- 按规则重命名
- 挪到对应文件夹
这说明 Skill 的最小单位通常不是单步动作,而是一组围绕同一目标串起来的处理能力。
2. 负责被触发后的实际执行
Skill 通常不会自己决定何时开始。它往往是在某个事件发生后,被其他机制拉起来执行。
在本文案例中,触发事件是“有新文件进入指定文件夹”。检测到这一点的是 Hook;真正开始分析和整理文件的是 Skill。
因此,Skill 更接近“执行器”或“能力包”,而不是“监听器”或“调度器”。
3. 依赖模型能力处理复杂判断
文中明确提到,文件整理这件事“光靠简单代码搞不定”,所以用了 Hook + Skill 的组合。原因在于,很多步骤不是死板规则能完全覆盖的:
- 需要识别文件里的实际内容,而不只是看文件名
- 需要理解语义,再决定它属于会议、报销、截图或其他类别
- 需要生成一个人能看懂的新名字,而不是简单拼时间戳
这些步骤本质上依赖模型的理解和归纳能力,因此更适合被封装成 Skill。
4. 可以由 AI 按个人需求生成
文中还提到,Skill 的创建方式并不复杂,“直接用嘴让 Claude Code 给你写就行了”。这说明 Skill 并不是固定模板,而是高度个性化的能力封装。
因为每个人的工作习惯、目录结构、命名规则、分类标准都不同,所以作者强调:还是写一个自己的最好。
这也是 Skill 和纯工具命令的差别之一——它往往贴合个人或团队的具体流程。
文中例子的具体能力
在“文件自动整理”场景中,Skill 至少承担了以下几项具体工作:
识别文件内容
它不只是判断这是 PDF 还是图片,而是进一步理解内容是什么。文中明确写到:不管是 PDF 还是图片,它都能自己识别内容。
判断分类
识别完之后,Skill 还要决定它该归到哪里。文中的示例包括:
- 会议纪要归到会议相关目录
- 发票归到报销相关目录
- 截图根据内容进行处理
这一步说明 Skill 处理的是“语义分类”,不是单纯扩展名分桶。
自动重命名
文中提到,截图还会“按内容起个看得懂的名字”。这意味着 Skill 不只是做分类,还承担命名规范化工作。
所谓“看得懂”,指的是名称对人类检索和理解友好,而不是系统默认生成的随机名或无语义名。
自动移动
当识别、分类、重命名都完成后,Skill 会把文件挪到对应文件夹。
因此,一个完整的 Skill 不只是分析器,还包含把分析结果落实为文件操作的执行环节。
与 Hook 的分工
Skill 和 Hook 在文中的分工非常明确。
Hook 负责何时触发
Hook 的职责是监听某个时刻或事件是否出现。比如:
- 新文件进入文件夹
- 会话开始
- 需要权限授权
- 上下文即将被压缩
- 长任务执行完成
它回答的问题是:什么时候启动后续动作。
Skill 负责怎么完成
Skill 的职责是,在触发之后把某一类事做完。
在文件整理例子里,Skill 回答的问题是:
- 这个文件到底是什么
- 应该按什么规则分类
- 应该叫什么名字
- 应该被移动到哪里
所以两者不是替代关系,而是协作关系。没有 Hook,Skill 可能不知道何时运行;没有 Skill,Hook 往往只能做非常简单、非常机械的操作。
运行方式与细节
根据文中的描述,这个组合的运行方式大致是:
- 让 Claude Code 保持开启。
- 用 Hook 在后台盯住指定文件夹。
- 当有新文件进入时,不立刻处理,而是先等几秒,确认文件已经传输完成。
- 然后再调用对应的 Skill 开始分析和整理。
- 最终自动完成识别、分类、重命名与移动。
这里“等几秒确认传完了”是一个很关键的细节。它说明 Skill 的执行通常还要配合实际系统状态,避免在文件尚未写完时就开始处理。
适用场景
虽然文中重点讲的是下载文件夹整理,但作者明确指出,这种模式不只适用于杂乱的下载目录,还可以扩展到其他场景。
例如:
- 监控工作项目文件夹
- 新文件按客户名和日期自动重命名
- 按团队约定归档到不同位置
这说明 Skill 的价值在于把某种常做、重复、但又需要一定理解能力的工作,沉淀为稳定的自动化能力。
边界与注意事项
文章最后虽然主要提醒的是 Hook 接入真实工作流要注意稳定性和边界,但这些提醒同样适用于由 Hook 调起的 Skill,尤其是当 Skill 会直接操作文件时。
需要特别注意的边界包括:
- 文件移动
- 文件删除
- 文件重命名
- 其他会影响真实工作资料的动作
作者的态度并不是一上来就把它放进重要目录里大规模自动执行,而是先把边界设计好,再逐步使用。
这意味着 Skill 很强,但不应在没有约束的情况下“横冲直撞”。
与 Prompt 的区别
文中给出了一个很清楚的三分法:
- Prompt 解决的是一次对话
- Skill 解决的是一类能力
- Hook 解决的是一个时刻
据此可以看出,Skill 与 Prompt 的区别在于:
- Prompt 更像一次性的表达与请求
- Skill 更像经过沉淀后可持续复用的能力模块
- Prompt 可能只解决当前这一轮需求
- Skill 则服务于后续反复出现的同类任务