Agent Skill的原理
用统一的规范文档告诉模型如何完成某件事情。模型的SystemtPromt时只加载这个SKILL.md文件的描述信息,决定当前用户问题应该使用哪个skill,然后再把这个SKILL.md完整内容加载到Prompt中,根据SKILL.md中的说明执行某个操作。
Agent Skill需要的基础设施
- Agent运行沙盒,支持运行bash相关的命令。
- 沙盒中包含了完整的文件系统。
- 沙盒可以连通公司内网。
- 沙盒可以对危险操作进行拦截。
ClaudeCode模型接口
基于ClaudeCode 的Agent Skill使用例子
- 安装ClaudeCode并设置模型(推荐用npm安装)
在 macOS 上安装 Claude Code 的完整指南_mac安装claude code-CSDN博客
设置npm国内源
设置GLM4.7模型(推荐)
- 新建项目文件夹,例如
/Users/01442496/Workspace/code/ClaudeCodeDemo`
`
- 在工程目录下新建skill路径
/Users/01442496/Workspace/code/ClaudeCodeDemo/.claude/skills`
`
- 放入自定义的skill子目录和文件,以"收集标准查询"为例子
放入skill子文件夹parcel_acceptance_guidelines_lookup,其中包含SKILL.md文件为技巧描述文件。`
`

- 收寄标准的SKILL.md内容如下
---`
`name: Parcel Acceptance Guidelines Lookup`
`description: 这个skill用于查询顺丰的寄件标准、禁限寄规定等业务规则`
`version: 0.0.1`
`---`
`### 端点`
``POST http://fs-robot-dm.com/v1/fs/robot``
`### 参数`
`- `message` (string, required): 用户咨询的问题,例如"草莓从深圳寄北京可以寄吗"`
`### 固定参数`
````json`
`{`
` "sysCode": "FS-ROBOT-CORE",`
` "appCode": "",`
` "fromClient": "PC",`
` "sender": "01448236",`
` "templateId": "5c3b0f831f80422694d8a3c9ac51dae9",`
` "convType": "PERSON",`
` "capacity": [],`
` "messageType": "TEXT",`
` "personifyDisable": true,`
` "faqThreads": [0.88, 0.85, 0.62]`
`}`
`````
`### 请求头`
````json`
`{`
` "server-name": "robot-dm",`
` "apikey": "1c7e3aff-87cc-4e5b-bdd4-a28b376f24c3",`
` "Content-Type": "application/json"`
`}`
`````
`### 示例`
`#### 查询物品是否可以寄送`
`````
`用户: 草莓从深圳寄北京可以寄吗`
`调用接口:`
`curl --location --request POST 'http://fs-robot-dm.com/v1/fs/robot' \`
`--header 'server-name: robot-dm' \`
`--header 'apikey: 1c7e3aff-87cc-4e5b-bdd4-a28b376f24c3' \`
`--header 'Content-Type: application/json' \`
`--data-raw '{`
` "sysCode": "FS-ROBOT-CORE",`
` "appCode": "",`
` "fromClient": "PC",`
` "sender": "01448236",`
` "message": "草莓从深圳寄北京可以寄吗",`
` "templateId": "5c3b0f831f80422694d8a3c9ac51dae9",`
` "convType": "PERSON",`
` "capacity": [`
` ],`
` "messageType": "TEXT",`
` "personifyDisable": true,`
` "faqThreads": [0.88, 0.85, 0.62]`
`}'`
`````
`#### 查询液体寄送限制`
`````
`用户: 化妆水可以寄北京吗?有什么限制?`
`调用接口:`
`curl --location --request POST 'http://fs-robot-dm.com/v1/fs/robot' \`
`--header 'server-name: robot-dm' \`
`--header 'apikey: 1c7e3aff-87cc-4e5b-bdd4-a28b376f24c3' \`
`--header 'Content-Type: application/json' \`
`--data-raw '{`
` "sysCode": "FS-ROBOT-CORE",`
` "appCode": "",`
` "fromClient": "PC",`
` "sender": "01448236",`
` "message": "化妆水可以寄北京吗?",`
` "templateId": "5c3b0f831f80422694d8a3c9ac51dae9",`
` "convType": "PERSON",`
` "capacity": [`
` ],`
` "messageType": "TEXT",`
` "personifyDisable": true,`
` "faqThreads": [0.88, 0.85, 0.62]`
`}'`
`````
`### 注意事项`
`1. 只有 `message` 参数需要动态传入,其他所有参数必须保持固定`
`2. 该接口用于查询顺丰的寄件标准、禁限寄规定等业务规则`
`3. 适用于用户询问物品是否可以寄送、寄送限制、特殊要求等场景`
`4. 用户问题必须带上目的地城市,否则就要追问用户具体目的地城市`
`
- 打开ClaudeCode执行/skills命令可以看到skills列表

- 可以开始提问
