技能工具

skills 以两个核心工具的形式暴露给模型:search_skills(按意图查找 skill)和 Skill(按名称调用 skill)。Skill 会启动一个子 Agent 循环,把 skill 内容作为其角色 提示词,并返回该次运行的最终文本。你既可以让模型在一次运行中调用这些工具,也可以通过 session.tool('Skill', ...) 直接从 SDK 调用某个 skill。

通过 skillDirs / skill_dirs 注册 skill 目录(包含若干 SKILL.md 文件的文件夹), 或通过 session options 传入 inline skills。A3S Code 不再内置默认 skills, builtinSkills / builtin_skills 只是兼容标记。注册后的 skills 会通过 Skill 与 search_skills 可见。

Rust
Node.js
Python
Go

SKILL.md 在 frontmatter 中声明其 kind(默认 instruction,另有 persona 和 tool)。Skill 工具只在子运行期间授予该 skill 的 allowed-tools,并与会话的 permission policy 组合,运行结束后撤销。禁用了模型调用的 skill 不能通过 Skill 运行。skill 管理由 SDK 注册、skill 目录或项目文件完成, 而不是通过模型可见的管理工具处理。

可运行版本位于 sdk/node/examples/skills/test_custom_skills_agents.ts。