Skill Tool
Skills surface to the model as two core tools: search_skills (find a skill by intent)
and Skill (invoke a skill by name). Skill runs a child agent loop that uses the
skill's content as its role prompt and returns that run's final text. You can let the model
call these tools during a run, or invoke a skill directly from the SDK with
session.tool('Skill', ...).
Register a skill directory (a folder of SKILL.md files) via skillDirs / skill_dirs,
or pass inline skills through session options. A3S Code no longer ships default
embedded skills, so builtinSkills / builtin_skills is only a compatibility
flag. Registered skills become visible through Skill and search_skills.
A SKILL.md declares its kind in frontmatter (instruction, the default, persona,
or tool). The Skill tool grants the skill's allowed-tools only for the child run,
composed with the session's permission policy, and revokes them afterwards. A skill
that disables model invocation cannot be run through Skill. Skill
administration is handled by SDK registration, skill directories, or project files — not
by a model-visible management tool.
A runnable version ships at sdk/node/examples/skills/test_custom_skills_agents.ts.