Skip to Content
SkillsOverview

Skills

A skill is a packaged playbook: written instructions (and optionally its own tools) for one kind of task, which the agent reads only when the task comes up. Tools tell the agent what it can do; skills tell it how to do a particular job well. Use skills to give an agent many domain recipes without paying for all of them in every prompt.

The format is the same as Anthropic Agent Skills : a directory with a SKILL.md file (frontmatter + markdown body) and optional bundled files. Existing Anthropic-format skills work as-is when you pass them to skills=[...].

from loomflow import Agent agent = Agent( "...", model="claude-opus-4-7", skills=[ "~/.loomflow/skills/system/", # base layer "~/.loomflow/skills/user/", # user override ("./.loomflow-skills/", "Project"), # project-local with label ], )

Progressive disclosure

Only name + description (~50 tokens per skill) load into the system prompt at startup. The model calls a load_skill(name) tool when a skill is relevant, and only then does the full body enter context.

A 50-skill agent costs ~2,500 tokens at rest; nothing more until the model actually loads one. Compare to “drop every recipe into the system prompt” approaches, which scale O(n) in tokens at every turn.

Read more

Inline skills: one-offs in code

For tiny skills that don’t justify a folder:

from loomflow import Agent from loomflow.skills import Skill skill = Skill.from_text(""" --- name: standup description: Format a daily standup from rough notes. --- # Standup Always 3 sections: Yesterday, Today, Blockers. """) agent = Agent("...", model="claude-opus-4-7", skills=[skill])

Skills vs. Tools. A tool is a callable. A skill is a playbook the model reads on demand, usually instructions plus, optionally, its own tools. Most skills are pure markdown (Mode A); they teach the model how to use the tools it already has.

Last updated on