Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Skip to content

Skills

A skill is a Markdown workflow the agent can load when a task needs it. Use skills for investigation steps, decision criteria, and response requirements. Put calculations and required execution order in tools or workflows.

amodal/skills/
├── triage/
│   └── SKILL.md
└── account-access/
    └── SKILL.md

SKILL.md Format

Heading-based

# Skill: Account Access Triage
 
Check account-access tickets and recommend the next support action.
Trigger: When the user asks about login failure, password reset, or account lock.
 
## Behavior
 
1. Load the ticket and identify the affected account.
2. Load the account-access policy with load_knowledge.
3. Check whether identity verification is complete.
4. If verification is missing, recommend verification before account changes.
5. Return the ticket status, confirmed facts, missing information, and next action.
 
## Constraints
 
- Do not request passwords or credentials.
- Do not claim a reset succeeded unless the account system confirms it.

Use the parsed name, Account Access Triage, when referencing this skill in an agent's skills list. The directory name does not override it.

Frontmatter-based

Use frontmatter for a stable machine-readable name, eager loading, or tool declarations. name is required; a frontmatter file without it is not loaded.

---
name: account-access
description: Check account-access tickets and recommend the next support action.
trigger: When the user asks about login failure, password reset, or account lock.
load: on-demand
allowedTools: [lookup_ticket, load_knowledge]
---
 
1. Load the ticket and the account-access policy.
2. Check identity-verification status before recommending changes.
3. Return confirmed facts, missing information, and the next action.

Parsed Fields

FieldSourceMeaning
name# Skill: Name or frontmatterName used by load_skill and agent resource declarations.
descriptionText before the first ## section, excluding Trigger:, or frontmatterShort description included in the skill index. Heading-format files without a ## section have an empty description.
triggerOne unwrapped Trigger: line or frontmatterTells the model when the skill applies.
bodyFrom the first ## section onward, or the content after frontmatterInstructions returned by load_skill.
loadFrontmatteron-demand (default) or eager. Other values warn and use the default.
allowedToolsFrontmatterTool names added to a root agent's scope when it declares this skill.

Choose one format per file. A # Skill: heading takes precedence over frontmatter, so combining them prevents frontmatter-only options from being read.

Skill Activation

A root session's prompt lists its available skills by name, trigger, and description. The model calls load_skill to retrieve an on-demand body. load: eager includes the body in the initial prompt.

A named agent exposes only the skills in its skills list. Unscoped chat exposes the bundle's skills. If agents/default/ exists, an omitted chat agent selects that scoped agent. A delegated subagent uses its own prompt and declared tools; include load_skill in its tools if it needs to load skills available through the parent registry.

A trigger describes when to use a skill; it does not schedule work or guarantee activation. Verify activation with a skill_loaded: assertion in an eval.

The model can load several skills in one conversation. To chain them, name the next skill in the instructions, such as "If the ticket also disputes a charge, load billing-review". Skill instructions do not enforce order or permissions; use a composite tool for a fixed sequence and enforce approval in code. Keep shared facts in knowledge.