初学Claude Skills Agents功能
- Skills
- Skills 的关键特点
- Skills的结构
- 建立不同的 Skills
- 个人 Skills
- 项目 Skills
- 插件 Skills
- 编写 SKILL
- 创建SKILL.md 文件
- Skills 如何工作
- 学习网址
- Agents
Anthropic 刚刚为 Claude 推出了 Skills 功能,这个新能力让 Claude 能够动态加载专门的指令、脚本和资源,从通用 AI 助手变身为各领域的专业助手。
https://docs.claude.com/zh-CN/docs/claude-code/skills
https://github.com/anthropics/claude-cookbooks/tree/main/skills
Skills
Skills 本质上是一个包含指令、脚本和资源的文件夹,Claude 可以在需要时动态发现并加载它们来完成特定任务。
Agent Skills 是扩展 Claude 功能的模块化能力。每个 Skill 包含指令、元数据和可选资源(脚本、模板),Claude 在相关时会自动使用这些资源。
为什么使用 Skills
Skills 是可重用的、基于文件系统的资源,为 Claude 提供特定领域的专业知识:工作流、上下文和最佳实践,将通用代理转变为专家。与提示不同(提示是对话级别的一次性任务指令),Skills 按需加载,无需在多个对话中重复提供相同的指导。
Skills 的关键特点
- 可组合:Skills 能够堆叠在一起,Claude 会自动识别需要哪些 Skills 并协调它们的使用。
- 可移植:使用相同的格式,一次构建,就能在 Claude 应用、Claude Code 和 API 中使用。
- 高效:只在需要时加载需要的内容。
- 强大:可以包含可执行代码,用于那些传统编程比 token 生成更可靠的任务。
Skills的结构
最简单的 Skill 是一个包含 SKILL.md 文件的目录。
这个文件必须以包含必需元数据的 YAML frontmatter 开头:name 和 description。在启动时,Agent 会将每个已安装技能的名称和描述预加载到系统提示中。
好的例子:简洁(大约50个令牌)
## 提取 PDF 文本使用 pdfplumber 进行文本提取:“”“python
import pdfplumberwith pdfplumber.open("file.pdf") as pdf:text = pdf.pages[0].extract_text()
”“”
不好的例子:过于冗长(大约 150 个令牌):
## 提取 PDF 文本PDF(便携式文档格式)文件是一种常见的文件格式,包含
文本、图像和其他内容。要从 PDF 中提取文本,您需要
使用一个库。有许多库可用于 PDF 处理,但我们
建议使用 pdfplumber,因为它易于使用且能处理大多数情况。
首先,您需要使用 pip 安装它。然后您可以使用下面的代码...
建立不同的 Skills
共享范围
Skills 根据使用位置有不同的共享模型:
Claude.ai:仅限个人用户;每个团队成员必须单独上传
Claude API:工作区范围;所有工作区成员可以访问上传的 Skills
Claude Code:个人(~/.claude/skills/)或基于项目(.claude/skills/)
Claude.ai 目前不支持自定义 Skills 的集中管理员管理或组织范围分发。
个人 Skills
个人 Skills 在您的所有项目中可用。将它们存储在 ~/.claude/skills/ 中:
mkdir -p ~/.claude/skills/my-skill-name
使用个人 Skills 的场景:
- 您的个人工作流和偏好
- 您正在开发的实验性 Skills
- 个人生产力工具
项目 Skills
项目 Skills 与您的团队共享。将它们存储在项目中的 .claude/skills/ 中:
mkdir -p .claude/skills/my-skill-name
使用项目 Skills 的场景:
团队工作流和约定
项目特定的专业知识
共享的实用程序和脚本
项目 Skills 被检入 git 并自动对团队成员可用。
插件 Skills
Skills 也可以来自 Claude Code 插件。插件可能捆绑了在安装插件时自动可用的 Skills。
这些 Skills 的工作方式与个人和项目 Skills 相同。
编写 SKILL
创建SKILL.md 文件
创建一个包含 YAML 前置内容和 Markdown 内容的 SKILL.md 文件:
英文版:
---
name: your-skill-name
description: Brief description of what this Skill does and when to use it
---# Your Skill Name## Instructions
Provide clear, step-by-step guidance for Claude.## Examples
Show concrete examples of using this Skill.
中文版:
Skill 结构
每个 Skill 都需要一个带有 YAML 前置数据的 SKILL.md 文件:
---
name: your-skill-name
description: 简要描述此 Skill 的功能以及何时使用它
---# 您的 Skill 名称## 指令
[Claude 要遵循的清晰、分步指导]## 示例
[使用此 Skill 的具体示例]
description:
description 应包括 Skill 的功能以及 Claude 何时应使用它。
字段要求:
*name:必须仅使用小写字母、数字和连字符(最多 64 个字符)不能包含 XML 标签, 不能包含保留字:「anthropic」、「claude」
*description:Skill 功能及其使用时机的简要描述(必须非空,最多 1024 个字符,不能包含 XML)
description 字段对于 Claude 发现何时使用您的 Skill 至关重要。它应该包括 Skill 的功能和 Claude 应该何时使用它。 查看 最佳实践指南 以获取完整的创作指导,包括验证规则。
Skills 如何工作
Skills 利用 Claude 的虚拟机环境提供超越仅使用提示可能实现的功能。Claude 在具有文件系统访问权限的虚拟机中运行,允许 Skills 作为包含指令、可执行代码和参考资料的目录存在,组织方式就像您为新团队成员创建的入职指南。 这种基于文件系统的架构支持渐进式披露:Claude 按需分阶段加载信息,而不是预先消耗上下文。
Claude API
Claude API 支持预构建的 Agent Skills 和自定义 Skills。两者的工作方式相同:在 container 参数中指定相关的 skill_id 以及代码执行工具。
三种 Skill 内容类型,三个加载级别
Skills 可以包含三种类型的内容,每种在不同时间加载:
第 1 级:元数据(始终加载)
内容类型:指令。Skill 的 YAML 前置数据提供发现信息:
---
name: pdf-processing
description: 从 PDF 文件中提取文本和表格、填充表单、合并文档。在处理 PDF 文件或用户提及 PDF、表单或文档提取时使用。
---
Claude 在启动时加载此元数据并将其包含在系统提示中。这种轻量级方法意味着您可以安装许多 Skills 而不会产生上下文成本;Claude 只知道每个 Skill 的存在以及何时使用它。
第 2 级:指令(触发时加载)
内容类型:指令。SKILL.md 的主体包含程序知识:工作流、最佳实践和指导:
# PDF 处理## 快速入门使用 pdfplumber 从 PDF 中提取文本:```python
import pdfplumberwith pdfplumber.open("document.pdf") as pdf:text = pdf.pages[0].extract_text()
有关高级表单填充,请参阅 FORMS.md。
当您请求与 Skill 描述匹配的内容时,Claude 通过 bash 从文件系统读取 SKILL.md。只有这样,此内容才会进入上下文窗口。
第 3 级:资源和代码(按需加载)
内容类型:指令、代码和资源。Skills 可以捆绑其他材料:
pdf-skill/
├── SKILL.md (主要指令)
├── FORMS.md (表单填充指南)
├── REFERENCE.md (详细 API 参考)
└── scripts/└── fill_form.py (实用脚本)指令:包含专业指导和工作流的其他 markdown 文件(FORMS.md、REFERENCE.md) 代码:Claude 通过 bash 运行的可执行脚本(fill_form.py、validate.py);脚本提供确定性操作而不消耗上下文 资源:参考资料,如数据库架构、API 文档、模板或示例 Claude 仅在引用时访问这些文件。文件系统模型意味着每种内容类型都有不同的优势:指令用于灵活指导,代码用于可靠性,资源用于事实查询。
级别 加载时间 令牌成本 内容
第 1 级:元数据 始终(启动时) 每个 Skill 约 100 个令牌 YAML 前置数据中的 name 和 description
第 2 级:指令 触发 Skill 时 不到 5k 个令牌 包含指令和指导的 SKILL.md 主体
第 3 级+:资源 按需 实际上无限制 通过 bash 执行的捆绑文件,不将内容加载到上下文中
渐进式披露确保任何给定时间只有相关内容占据上下文窗口。## 添加支持文件
在 SKILL.md 旁边创建其他文件:
my-skill/
├── SKILL.md (required)
├── reference.md (optional documentation)
├── examples.md (optional examples)
├── scripts/
│ └── helper.py (optional utility)
└── templates/└── template.txt (optional template)从 SKILL.md 引用这些文件:
For advanced usage, see reference.md.
Run the helper script:
python scripts/helper.py input.txt
Claude 仅在需要时读取这些文件,使用渐进式披露来有效管理上下文。## Skills 如何被调用
Skills 是模型调用的, Claude 根据您的请求和 Skill 的描述自主决定何时使用它们。
这与斜杠命令不同,斜杠命令是用户调用的(您显式输入 /command 来触发它们)。
优势:
*为您的特定工作流扩展 Claude 的功能
*通过 git 在团队中共享专业知识
*减少重复提示
*为复杂任务组合多个 SkillsSkills 如何工作
Skills 利用 Claude 的虚拟机环境提供超越仅使用提示可能实现的功能。Claude 在具有文件系统访问权限的虚拟机中运行,允许 Skills 作为包含指令、可执行代码和参考资料的目录存在,组织方式就像您为新团队成员创建的入职指南。 这种基于文件系统的架构支持渐进式披露:Claude 按需分阶段加载信息,而不是预先消耗上下文。
三种 Skill 内容类型,三个加载级别
Skills 可以包含三种类型的内容,每种在不同时间加载:
第 1 级:元数据(始终加载)
内容类型:指令。Skill 的 YAML 前置数据提供发现信息:
Copy---
name: pdf-processing
description: 从 PDF 文件中提取文本和表格、填充表单、合并文档。在处理 PDF 文件或用户提及 PDF、表单或文档提取时使用。
---Claude 在启动时加载此元数据并将其包含在系统提示中。这种轻量级方法意味着您可以安装许多 Skills 而不会产生上下文成本;Claude 只知道每个 Skill 的存在以及何时使用它。
第 2 级:指令(触发时加载)
内容类型:指令。SKILL.md 的主体包含程序知识:工作流、最佳实践和指导:
Copy# PDF 处理## 快速入门使用 pdfplumber 从 PDF 中提取文本:```python
import pdfplumberwith pdfplumber.open("document.pdf") as pdf:text = pdf.pages[0].extract_text()
有关高级表单填充,请参阅 FORMS.md。
当您请求与 Skill 描述匹配的内容时,Claude 通过 bash 从文件系统读取 SKILL.md。只有这样,此内容才会进入上下文窗口。
第 3 级:资源和代码(按需加载)
内容类型:指令、代码和资源。Skills 可以捆绑其他材料:
Copy
pdf-skill/
├── SKILL.md (主要指令)
├── FORMS.md (表单填充指南)
├── REFERENCE.md (详细 API 参考)
└── scripts/
└── fill_form.py (实用脚本)
指令:包含专业指导和工作流的其他 markdown 文件(FORMS.md、REFERENCE.md) 代码:Claude 通过 bash 运行的可执行脚本(fill_form.py、validate.py);脚本提供确定性操作而不消耗上下文 资源:参考资料,如数据库架构、API 文档、模板或示例 Claude 仅在引用时访问这些文件。文件系统模型意味着每种内容类型都有不同的优势:指令用于灵活指导,代码用于可靠性,资源用于事实查询。
级别 加载时间 令牌成本 内容
第 1 级:元数据 始终(启动时) 每个 Skill 约 100 个令牌 YAML 前置数据中的 name 和 description
第 2 级:指令 触发 Skill 时 不到 5k 个令牌 包含指令和指导的 SKILL.md 主体
第 3 级+:资源 按需 实际上无限制 通过 bash 执行的捆绑文件,不将内容加载到上下文中
渐进式披露确保任何给定时间只有相关内容占据上下文窗口。
Claude 如何访问 Skill 内容: 触发 Skill 时,Claude 使用 bash 从文件系统读取 SKILL.md,将其指令带入上下文窗口。如果这些指令引用其他文件(如 FORMS.md 或数据库架构),Claude 也会使用其他 bash 命令读取这些文件。当指令提及可执行脚本时,Claude 通过 bash 运行它们并仅接收输出(脚本代码本身永远不会进入上下文)。
学习网址
官方:https://docs.claude.com/zh-CN/docs/claude-code/skills
Anthropic 工程博客: https://www.anthropic.com/engineering/equipping-agents-for-the-real-world-with-agent-skills
Skills 公告: https://www.anthropic.com/news/skills
文档: https://docs.claude.com/en/docs/agents-and-tools/agent-skills/overview
Cookbook: https://github.com/anthropics/claude-cookbooks/tree/main/skills
示例 Skills: https://github.com/anthropics/skills
高级应用:https://docs.claude.com/zh-CN/docs/agents-and-tools/agent-skills/best-practices
Skills的python应用:三个课程:
https://github.com/anthropics/claude-cookbooks/blob/main/skills/notebooks/01_skills_introduction.ipynb
https://github.com/anthropics/claude-cookbooks/blob/main/skills/notebooks/02_skills_financial_applications.ipynb
https://github.com/anthropics/claude-cookbooks/blob/main/skills/notebooks/03_skills_custom_development.ipynb
Agents
Claude agents配置位置:/root/.claude/agents/
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/946509.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!