learn-claude-code/s07_skill_loading at main · shareAI-lab/learn-claude-code
skill作为指导模型完成某些任务的详细指南,因此不太适合一开始全部加载到system_prompt中
事先读取指定目录skills/,根据协商好的格式,提取name等必要信息
1- **code-review**: Review code carefully
2- **pdf**: Work with PDF files
3
4Use load_skill to get full details when needed.
将可以加载的skill塞入system prompt
将load_skill作为一个工具,可以读取指定skill文本
Claude Code会将Skill分别管理在不同位置
- user
- project
- ……
常见的skill字段
| 字段 | 用途 |
|---|---|
name / description | 显示名称和描述 |
when_to_use | 指导模型何时调用 |
allowed-tools | 技能可用工具的自动允许列表 |
context | inline(默认)或 fork(作为子 Agent 运行) |
model | 模型覆盖(haiku/sonnet/opus/inherit) |
hooks | 技能级别的 hook 配置 |
paths | 条件激活的 glob 模式 |
user-invocable | 用户可以通过 /name 调用 |
并且skill返回的工具结果是"Launching skill: {name}"
真实的skill文本会直接注入到message历史中