SSL:把 SKILL.md 拆成三层结构化图谱——技能检索 MRR 涨 8 个点、风险评估 F1 涨 10 个点
核心摘要
Agent skill 这两年成了核心积木。但你打开任何一个开源 agent 生态——无论是 Claude Skills、ARIS、OpenAgents——所有"技能"其实都是一坨纯文本 SKILL.md:自然语言写的描述 + 部分 JSON/YAML 元数据。这种格式给人看挺爽,但让机器去做"自动发现哪个 skill 该用"、"自动评估这个 skill 装上去有没有风险",就抓瞎了——所有有用信号都埋在长文本里。
北大这篇论文给出的方案叫 SSL(Scheduling-Structural-Logical)表征:把一个 skill 文档结构化成三层 JSON 图谱—— - Scheduling 层:技能调用接口(goal、intent signature、tags、control-flow 特征) - Structural 层:执行场景的有序图(scene graph) - Logical 层:原子操作和资源使用证据(atomic actions、effects)
理论根基来自 Schank & Abelson 的认知语言学经典工作——Memory Organization Packets、Script Theory、Conceptual Dependency。用 DeepSeek-V3.2 做 normalizer 自动转换,不需要重写 SKILL.md。
实验在两个任务上验证:技能发现的 MRR@50 从 0.649 → 0.729;风险评估 macro F1 从 0.409 → 0.509。提升幅度都是 sig over baseline,bootstrap CI 漂亮。
一句话评价:这是 agent skill 走向规模化、可治理的关键基础设施。如果你认同 skill-based agent 是大趋势,这种结构化表征迟早要做。
论文信息
- 标题:From Skill Text to Skill Structure: The Scheduling-Structural-Logical Representation for Agent Skills
- 作者:Qiliang Liang, Hansi Wang, Zhong Liang, Yang Liu
- 机构:Peking University(计算语言学教育部重点实验室)
- 日期:2026/04/27
- arXiv:https://arxiv.org/abs/2604.24026
- 代码:https://github.com/COOLPKU/SSL

图1:左边是原始的纯文本 SKILL.md,中间是 LLM-based normalizer,输出三层结构——上层 scheduling record(调用接口)、中层 structural graph(执行场景)、下层 logical graph(原子操作 + 资源证据)。这个结构化视图与原文档配对存储,supporting downstream tasks like Skill Discovery 和 Risk Assessment。
问题动机:SKILL.md 是给人看的,不是给机器看的
说实话我自己写过不少 SKILL.md,也用过一堆别人写的。这玩意儿存在一个根深蒂固的紧张关系——
自然语言友好,但对自动化系统极不友好。
举两个最常见的痛点:
痛点 1:技能发现。你有 6000+ skill 在注册表里,用户来个 query "帮我把 PDF 拆成单页 PNG 上传到云存储",你怎么从 6000 个 skill 里把对的 retrieve 出来?现在主流做法是把整个 SKILL.md 丢进 embedding 模型,但你想啊——SKILL.md 里大半内容是 prose(背景介绍、注意事项、示例),真正能区分"这个 skill 干啥"的信号是稀疏的。embedding 模型在长文本上的信号被稀释。
痛点 2:风险评估。第三方 skill 装上 agent 系统之前要审查吗?要的。但 reviewer 怎么判断这个 skill 有没有"数据外泄"、"权限提升"、"凭据访问"的风险?你得通读整个 SKILL.md,找散落在不同段落的"调用 X 命令"、"读取 Y 文件"、"上传 Z 接口"——这些证据被自然语言稀释、被相邻无关段落淹没。
论文一句话总结这个困境:
Both managing skill collections and using skills during agent execution require reasoning over invocation interfaces, execution structure, and concrete side effects, but these signals are often entangled in a single textual surface.
核心命题:在 raw skill artifact 和 downstream 系统之间,缺一个 source-grounded、可重用的结构化中间表征。
方法核心:三层表征 + 认知语言学的"老树新花"
设计灵感来自 Schank & Abelson(1970s)
论文最有意思的点是它的设计哲学。SSL 不是凭空发明的 schema,而是把 Schank & Abelson 在 1972-1980 年的三个经典理论搬到了 LLM agent 时代:
| 理论 | 提出年份 | SSL 对应层 | 解决什么 |
|---|---|---|---|
| Memory Organization Packets | 1980 | Scheduling | 目标导向地组织和检索经验 |
| Script Theory | 1977 | Structural | 把活动表示为有序场景 + 期望 + 转换 |
| Conceptual Dependency | 1972 | Logical | 把语言含义分解成原始动作结构 |
这种"借古鉴今"的做法,我觉得是这篇论文最优雅的地方。Schank & Abelson 当年做的就是"如何让机器理解人类活动",今天 agent skill 表征本质上是同一个问题——只是载体从故事文本变成了 SKILL.md。
三层 schema 的具体内容
Scheduling 层(调用接口 / 元数据): - skill_id, name, goal, tags - intent signature(这个 skill 可以匹配什么用户意图) - control-flow features(顺序、分支、循环、递归) - aggregate scene profile
Structural 层(执行场景图): - 把 SKILL.md 分解成有序的 scenes - 每个 scene 有 type(输入处理、核心算法、输出整理等)、goal、dependencies、transitions
Logical 层(原子动作图): - 每个 scene 里的 atomic action - act_type 来自一个 closed primitive inventory(论文 Appendix A) - 记录 arguments、effects、resource boundaries
关键是每个字段都必须 source-grounded——normalizer 不能瞎编,每个填进 SSL 的内容必须能在原 SKILL.md 里找到 supporting evidence。
Normalization Pipeline
用 DeepSeek-V3.2 做 normalizer。具体步骤:
- 提取 skill-level record(Scheduling)
- 分解文档成 scenes
- 扩展每个 scene 成 source-grounded logic steps
- 验证结构完整性、ID 一致性、enum 合法、containment、transition
Hard validation:失败就 retry。人工审计 100 个标注样本,83% 被认为是 source-supported。这个数字不算完美,但对工程实践来说已经够用——比起完全无结构的 SKILL.md,结构化后的 retrieval/audit signal 提升是巨大的。
实验 1:Skill Discovery
数据集
- Corpus:6,184 个公开 skill
- Test queries:431 个 intent-level queries,每个有 1 个 ground-truth skill
- Query 类型:functional、constraint-based、compositional、safety-oriented、scenario-style
- 保留规则:剔除直接说出 skill 名的、剔除 source-document paraphrase 的——避免泄露
评估
embedding 模型:Qwen3-Embedding-0.6B;检索:FAISS inner-product + L2 norm
主结果(MRR@50):
| 组 | 方法 | MRR@50 | NDCG@5 | NDCG@10 | Recall@10 |
|---|---|---|---|---|---|
| Baseline | Desc_only | 0.588 | 0.608 | 0.626 | 0.761 |
| Baseline | Full SKILL.md | 0.645 | 0.655 | 0.682 | 0.821 |
| Baseline | Source Outline | 0.592 | 0.615 | 0.634 | 0.787 |
| Baseline | Desc + Source Outline | 0.649 | 0.670 | 0.689 | 0.833 |
| SSL | Desc + SSL-Shallow | 0.716 | 0.730 | 0.752 | 0.879 |
| SSL | Desc + SSL-Sched | 0.694 | 0.716 | 0.733 | 0.868 |
| SSL | Desc + SSL-Rich | 0.729 | 0.748 | 0.770 | 0.905 |
| SSL | Full SKILL.md + SSL-Shallow | 0.664 | 0.688 | 0.706 | 0.847 |
| SSL | Full SKILL.md + SSL-Sched | 0.676 | 0.694 | 0.715 | 0.849 |
| SSL | Full SKILL.md + SSL-Rich | 0.681 | 0.705 | 0.720 | 0.856 |
观察:
1. 最好的方案是 Desc + SSL-Rich——MRR@50 从 0.649 涨到 0.729,+8 个点。Bootstrap 95% CI [0.051, 0.111],确实显著。
2. Full SKILL.md + SSL 反而不如 Desc + SSL。这个反直觉发现很有价值——意味着 SSL 的核心价值不是"补充信息",而是"挤掉噪声"。完整 SKILL.md 引入太多无关 prose,把 embedding 信号稀释了。短描述 + 精炼结构化字段反而是 retrieval 的最优配。
3. SSL-Rich 比 SSL-Shallow 涨 1.3 个点:scene-level 和 interface-level 信号是真的有用,不只是"加点 metadata"那么简单。
我看到第 2 点的时候特别想给点赞——Less is More in embeddings。我之前做企业知识库 retrieval 也踩过这个坑:丢完整文档进 embedding 不如丢精挑细选的 chunk。SSL 提供了一种"自动化的精选"方案,比手工写 chunking 规则可推广得多。
实验 2:Risk Assessment
数据集
- Skills:252 个分层抽样的 skill,每个有 six-dimensional risk labels
- 六个风险维度:data exfiltration、destructive behavior、privilege escalation、covert execution、resource abuse、credential access
- 金标签:Gemini-3.1-pro-preview + Claude-Sonnet-4.5 + GPT-5 三模型投票 + 人工抽样审计
Judge 模型:DeepSeek-V3.2
主结果(macro F1):
| 输入 | Macro Acc | Macro Prec | Macro Rec | Macro F1 |
|---|---|---|---|---|
| Desc Only | 0.714 | 0.823 | 0.148 | 0.235 |
| Full MD | 0.765 | 0.828 | 0.283 | 0.409 |
| SSL-Shallow | 0.709 | 0.783 | 0.129 | 0.210 |
| Full SSL | 0.778 | 0.841 | 0.315 | 0.422 |
| MD + SSL | 0.801 | 0.884 | 0.382 | 0.509 |
按维度看:
| 风险维度 | Desc | Full MD | SSL-Sh | Full SSL | MD + SSL |
|---|---|---|---|---|---|
| Data Exfiltration | 0.280 | 0.511 | 0.272 | 0.651 | 0.699 |
| Destructive Behaviors | 0.162 | 0.371 | 0.147 | 0.403 | 0.439 |
| Privilege Escalation | 0.364 | 0.381 | 0.381 | 0.348 | 0.455 |
| Covert Execution | 0.083 | 0.222 | 0.042 | 0.083 | 0.264 |
| Resource Abuse | 0.132 | 0.271 | 0.133 | 0.323 | 0.419 |
| Credential Access | 0.391 | 0.695 | 0.286 | 0.722 | 0.780 |
观察:
1. MD + SSL 是最优组合:F1 从 0.409 → 0.509,+10 个点。Bootstrap CI [0.051, 0.152]。
2. Full SSL 单独用比 Full MD 略好(0.422 vs 0.409),但 SSL 单独并不能完全替代 MD——SSL 提供操作证据,MD 提供解释上下文,两者互补。
3. 风险评估的 recall 是大头改善:macro recall 从 0.283 → 0.382。这意味着 SSL 让 judge 能发现以前漏掉的风险信号。Precision 也涨了,说明不是"为了 recall 牺牲 precision"。
4. Covert Execution 这一维度 baseline 极低(Full MD 才 0.222)——说明"隐蔽执行"这种风险信号在自然语言里特别难抓,结构化表征对这种"隐藏意图"的识别有真价值。
我的判断
亮点:
- 理论根基扎实:把 Schank & Abelson 的认知语言学搬到 LLM agent 时代,不是 hack 出来的 schema,是有思想血统的。
- 工程实用性强:normalizer 是 LLM 自动跑的,不需要手工重写 SKILL.md。这是"渐进式升级"路径,不是"重做生态"。
- MD + SSL 互补的洞察:实验结果给了一个很反直觉但工程上极有意义的发现——结构化不是为了替代文档,是为了辅助文档。
- 评估数据集开放:6,184 skills + 431 discovery queries + 252 risk-labeled skills,这是 agent skill 领域第一个像样的公开评测集。
- 任务选得准:Skill Discovery 和 Risk Assessment 都是当下 skill ecosystem 真实存在的痛点,不是 toy task。
问题:
- normalizer 的 83% 准确率:人工审计里 17% 的 SSL 字段不能被 source 完全 support。在 Risk Assessment 这种高 stakes 场景,这个噪声率有点危险。
- 依赖 DeepSeek-V3.2:normalizer 用闭源/特定模型,跨模型迁移性没充分测试。
- schema 的灵活性 vs 标准化:closed primitive inventory(论文 Appendix A)的覆盖度对实际 skill 多样性是否够?长尾的 skill 类型(agentic workflow、tool composition)可能塞不进现有 schema。
- scene/logic 层的标注质量:83% source-grounded 主要是 spot check,没有按层级分开评估。Logic 层的 atomic action 可能错得更多。
- 没做 end-to-end task:论文只测了 Discovery 和 Risk 两个 offline 任务,没测真实 agent 在 SSL-augmented skill 下能跑得更好——这是更核心的价值证明。
工程启发
如果你在做:
- agent skill 注册表/marketplace:SSL 的 Scheduling 层可以直接拿来做 retrieval 的"精炼描述层"。即使你不全套上 SSL,也至少应该从 SKILL.md 提一个 condensed scheduling card 出来做 embedding——这件事 ROI 极高。
- 第三方 skill 审查流程:把 SKILL.md + 自动生成的 SSL logic 层一起喂给 reviewer LLM,能显著降低漏检率。这对企业内部上线 agent skill 的合规非常关键。
- skill 管理系统:用 SSL 做底层 schema,可以让 skill 之间的依赖、组合、版本管理变得可机械操作。比起 "diff 两个 SKILL.md" 这种字符级 diff,SSL 级别的 diff 能产出有语义的变更日志。
最后一个略带哲学意味的反向论证——你可能觉得"既然 LLM 现在这么强,让它每次直接读 SKILL.md 不就行了?要 SSL 干啥?"
但你想想看,这跟"既然 GPT-4 能写代码,要 type system 干啥?"是同一类问题。Type system 的价值不在于代替编译器,而在于让大规模代码协作可控、可审计、可演化。SSL 在 agent skill 生态里大概率会扮演类似 type system 的角色——让 skill 这个原本是"民间文档"的东西,进化成可工程化、可治理的资产。
如果 2026-2027 agent skill 的数量真的上千万,这种基础设施迟早是刚需。
觉得有启发的话,欢迎点赞、在看、转发。跟进最新 AI 前沿,关注我