# Agent Skills 按需加载的领域知识模块。参考 Claude Code 的三层设计: - **Layer 1(系统提示词)**:仅列出 skill 名称(~20 tokens/skill) - **Layer 2(load_skill 工具)**:LLM 按需调用,注入完整 SKILL.md 内容 ## 目录约定 ``` skills/{name}/SKILL.md ← 必须是子目录 + SKILL.md ``` 当前仅读取 `SKILL.md` 文件。skill 目录下可以放其他文件(如 `references/`、`scripts/`、`assets/`),但当前版本的加载逻辑不会处理它们。 ## SKILL.md 格式 ```markdown --- name: skill-name # 唯一标识(必填) description: 一句话描述 # 必填 context: inline # 已解析但未生效(依赖子代理架构) allowed-tools: # 已解析但未生效(无权限系统) - bash - read --- # Skill 正文 ``` `context` 和 `allowed-tools` 字段会被 `parse_frontmatter()` 解析,`LoadSkillTool` 执行时会在返回内容中标记 `context: fork` 的 skill,但实际执行行为不变——所有 skill 当前都是内联返回 Markdown 文本。 ## 添加新 skill 1. 创建 `skills/{name}/SKILL.md`,填写 frontmatter 和正文 2. 系统提示词在下次请求时自动发现 3. 无需改动代码 ## 当前 Skills | Skill | 状态 | |-------|------| | methodology | 就绪 | | plotting | 占位 | | presentation | 占位 |