词元之母TOK.MOM - 平台充值汇率 1:1 即 1 人民币充值到账 1 美元,支持一个 Key 调用近 600+ 海内外模型,限时特价模型低至 1 折,欢迎上岸!
本课深入 Skill 的高级用法:渐进式披露的三层结构、可执行脚本、5 步创建流程、测试验证和真实案例。

目录(始终可见) → 章节(按需阅读) → 速查手册(需要时查阅)skill/
└── sql-analysis/
├── SKILL.md # 第二层:主要工作流程
└── references/ # 第三层:详细文档
├── finance.md # 财务表结构
├── product.md # 产品表结构
├── sales.md # 销售表结构
└── examples/
├── revenue-queries.md # 收入查询示例
└── churn-queries.md # 流失分析示例<available_skills> 中
**关键原则**:信息只放在 SKILL.md 或 references/ 其中之一,不要重复。
---
## 可执行脚本支持
### 为什么需要脚本
某些操作用代码执行比用 Token 生成更高效、更可靠:
| 任务 | Token 生成 | 代码执行 |
|------|-----------|---------|
| 排序 1000 个数字 | 大量 Token、可能出错 | 毫秒级、100% 准确 |
| 解析 PDF 表单字段 | 需要把 PDF 加载到上下文 | 直接处理文件 |
| 格式转换 | 容易格式错乱 | 确定性输出 |
### 脚本目录结构
### SKILL.md 中引用脚本
```markdown
---
name: pdf
description: PDF 处理工具包:提取文本和表格、创建新 PDF、合并拆分文档、处理表单。
---
# PDF 处理技能
## 提取表单字段
无需将 PDF 加载到上下文,直接运行脚本:
```bash
python scripts/extract_form_fields.py input.pdf{
"fields": [
{"name": "full_name", "type": "text", "value": ""},
{"name": "date", "type": "date", "value": ""}
]
}references/scripts-guide.md。
### 脚本编写原则
1. **独立可运行**:脚本应该能独立执行,不依赖复杂环境
2. **清晰的输入输出**:明确的参数和返回格式
3. **错误处理**:优雅处理异常情况
4. **最小依赖**:只使用必要的库
**示例脚本**(`scripts/extract_form_fields.py`):
```python
#!/usr/bin/env python3
"""提取 PDF 表单字段信息"""
import sys
import json
def extract_fields(pdf_path: str) -> dict:
"""提取 PDF 中的表单字段"""
try:
# 使用 PyPDF2 或其他库
from pypdf import PdfReader
reader = PdfReader(pdf_path)
fields = reader.get_fields() or {}
result = []
for name, field in fields.items():
result.append({
"name": name,
"type": str(field.get("/FT", "unknown")),
"value": str(field.get("/V", ""))
})
return {"fields": result, "count": len(result)}
except Exception as e:
return {"error": str(e)}
if __name__ == "__main__":
if len(sys.argv) < 2:
print(json.dumps({"error": "Usage: extract_form_fields.py <pdf_path>"}))
sys.exit(1)
result = extract_fields(sys.argv[1])
print(json.dumps(result, indent=2, ensure_ascii=False))| 问题 | 目的 |
|---|---|
| 这个 Skill 解决什么具体问题? | 明确价值 |
| 什么情况下应该触发? | 设计 description |
| 成功的输出是什么样? | 定义验收标准 |
| 有哪些边缘情况? | 避免遗漏 |