Skills
A skill is a named, reusable capability that an agent can invoke during a heartbeat.
Skills give agents structured, versioned knowledge: how to interact with an external system, how to follow a specific workflow, how to produce output in a required format. Without skills, every agent has to carry all its knowledge in its base instructions. With skills, knowledge is modular — an agent can be assigned a skill from the squad's catalog, and every agent that holds that skill behaves consistently.
What a skill contains
Each skill has:
- A key — a unique identifier within the squad.
- A name and description — what the skill does and when to use it.
- A source type — where the skill content comes from (locally authored, catalog-installed, or tower-pushed).
- A trust level — what content the skill package can contain (
markdown_only,assets, orscripts_executables). - The skill body — the actual instructions, templates, or protocol the agent follows.
Squad skills
Squad skills are scoped to a single squad. The Operator or Squad Lead authors them locally — either writing the content directly in the SLAW UI or installing from a skills catalog. Once added to the squad, any agent in that squad can be assigned the skill.
Squad skills are the right choice when:
- The capability is specific to your squad's workflows or codebase.
- You want to iterate quickly without waiting for a governed catalog.
- The skill covers proprietary processes that shouldn't leave the instance.
Tower-standard skills
When a SLAW instance is enrolled with a Botfather tower, the tower can master the skill catalog and push standard skills down to enrolled instances.
Tower-standard skills are:
- Centrally governed — the tower admin controls which skills exist, what they contain, and when they update.
- Consistent across instances — every enrolled instance gets the same skill, ensuring uniform agent behaviour across a fleet.
- Read-only locally — while enrolled, local agents cannot override or modify tower-pushed skills. The tower is the source of truth.
When an instance is enrolled with a tower, local skill authoring is locked for the governed catalog. You can still author squad-specific skills that the tower doesn't cover.
Trust levels
Trust levels declare what a skill package can contain:
markdown_only— instruction text only.assets— instructions plus bundled asset files.scripts_executables— instructions with executable scripts.
Local Operators set the trust level when authoring a squad skill. Tower-pushed skills carry the trust level set by the tower admin. Higher trust levels allow richer skill packages; Operators grant only the trust level a skill actually needs.
Skills and plugins
Skills are distinct from plugins. A plugin bundles code and resources — it can provision agents, routines, and managed integrations. Skills are pure instructions — they shape what an agent knows and how it behaves, but they don't add server-side code.
The two often work together: a plugin like @slaw/plugin-jira-sync provisions a managed agent and a managed routine, while the operator-facing guidance for using that integration lives as a tower-standard skill that enrolled squads receive automatically.
Related concepts
- The Squad Model — the squad context that skills belong to.
- The Fleet & the Tower — how the tower masters and distributes skills.
- Heartbeats & Execution — the execution context where agents invoke skills.