智能体技能入门
← 所有课程
课程 03智能体技能入门

配置与多文件技能

摘要音频

语音摘要 — 点击播放以跟读:正在朗读的行会保持在顶部附近。

学习笔记

你将学到什么

预计时间:20分钟

完成本课程后,你将能够:

  • 配置包括allowed-tools和model在内的高级技能元数据字段
  • 编写能可靠触发正确请求的有效技能描述
  • 使用allowed-tools限制技能激活时Claude可执行的操作
  • 通过渐进式披露和多文件结构组织复杂技能

配置与多文件技能

(4分钟)

本视频涵盖使技能更强大的高级技巧:完整的元数据字段集、如何编写能可靠触发的描述、为安全敏感工作流限制工具访问,以及使用渐进式披露跨多文件组织大型技能。你将学会如何在支持复杂用例的同时保持技能高效。

关键要点

  • name和description是必填项 — allowed-tools和model是可选项但能显著增强功能
  • 优秀的描述需回答两个问题:该技能做什么?Claude应在何时使用它?
  • allowed-tools限制技能激活时Claude可使用的工具 — 适用于只读或安全敏感的工作流
  • 渐进式披露:保持SKILL. md不超过500行,并链接到支持文件(参考资料、脚本、资源),这些内容仅在需要时由Claude读取
  • 脚本执行时不将其内容加载到上下文中 — 仅输出消耗token,保持上下文高效

基础技能只需名称和描述即可工作,但Claude Code中有几项高级技巧能大幅提升技能效果。让我们了解关键字段、描述的最佳实践、工具限制以及如何构建大型技能。

技能元数据字段

代理技能开放标准支持SKILL. md前言中的多个字段。其中两项为必填,其余为可选:

  • name(必填) — 标识你的技能。仅使用小写字母、数字和连字符。最多64个字符。应与目录名匹配。
  • description(必填) — 告知Claude何时使用该技能。最多1,024个字符。这是最重要的字段,因为Claude用它进行匹配。
  • allowed-tools(可选) — 限制技能激活时Claude可使用的工具。
  • model(可选) — 指定技能使用的Claude模型。

编写有效描述

指令要明确。如果有人告诉你"你的工作是帮助处理文档",你会不知所措 — Claude同样如此。

好的描述需回答两个问题:

  • 该技能做什么?
  • Claude应在何时使用它?

如果技能未按预期触发,尝试添加更多与你实际请求方式匹配的关键词。描述是Claude判断技能相关性的依据,因此措辞很重要。

使用allowed-tools限制工具

有时你需要一个只能读取文件而不能修改的技能。这适用于安全敏感的工作流、只读任务或任何需要设置防护的场景。

本例中,allowed-tools字段设置为Read, Grep, Glob, Bash。当该技能激活时,Claude无需请求许可即可使用这些工具 — 不能编辑或写入。

--- name: codebase-onboarding description: 帮助新开发者理解系统工作原理 allowed-tools: Read, Grep, Glob, Bash model: sonnet ---

如果完全省略allowed-tools,技能不会施加任何限制。Claude将使用其常规权限模型。

渐进式披露

技能与你的对话共享Claude的上下文窗口。当Claude激活技能时,它会将该SKILL. md的内容加载到上下文中。但有时技能需要依赖参考资料、示例或实用脚本。

将所有内容塞入一个2,000行的文件有两个问题:占用大量上下文窗口空间,且难以维护。

渐进式披露可解决此问题。将核心指令保留在SKILL. md中,将详细参考资料放入单独文件,仅在需要时由Claude读取。

开放标准建议按以下方式组织技能目录:

  • scripts/ — 可执行代码
  • references/ — 补充文档
  • assets/ — 图像、模板或其他数据文件

然后在SKILL. md中,用清晰说明链接支持文件,指出何时加载它们:

本例中,仅当有人询问系统设计时,Claude才会读取architecture-guide. md。如果询问添加组件的位置,则永远不会加载该文件。这就像在上下文窗口中放置目录而非整个文档。

一个好的经验法则:**保持SKILL. md不超过500行**。如果超出,考虑是否应将内容拆分为单独的参考文件。

高效使用脚本

技能目录中的脚本可在不将其内容加载到上下文的情况下运行。脚本执行后,仅输出消耗token。SKILL. md中的关键指令是告诉Claude运行脚本而非读取它。

这在以下情况特别有用:

  • 环境验证
  • 需要保持一致性的数据转换
  • 作为测试代码比生成代码更可靠的操作

课程反思

  • 思考你想构建的一个涉及多文件的技能。你会如何构建SKILL. md与支持参考文件?
  • 在你的团队工作流中,是否有使用allowed-tools限制工具访问能增加重要安全层的情况?

下一步

下一课中,我们将比较技能与定制Claude Code的其他方式 — CLAUDE. md、子代理、钩子和MCP服务器 — 以便你为每种情况选择合适工具。

反馈

在学习过程中,我们很想知道你如何在工作使用技能,以及你可能有任何反馈。在此处分享反馈。

抽认卡 10 张卡片
问题
点击显示 · ←/→
答案
点击翻回
导出到 Anki (.tsv) ↓
知识检测 6 题