skills/ containing a SKILL.md file. It bundles structured agent instructions, an allowed_tools policy, optional resource and reference files, static assets, and executable scripts. The format follows the agentskills.io specification.
Prerequisites
- A Veryfront project with at least one agent (see Agents).
- The
skills/directory exists at the project root, orai.skills.discovery.pathsis set in Configuration.
Quick start
Create a skill directory with aSKILL.md file:
SKILL.md file uses YAML frontmatter for metadata and Markdown for instructions:
Skill structure
Each skill lives in its own directory underskills/:
Frontmatter fields
| Field | Required | Description |
|---|---|---|
name | Yes | Skill identifier (lowercase alphanumeric + hyphens, 1-64 chars) |
description | Yes | Human-readable description (max 1024 chars) |
allowed_tools | No | Space-delimited tool IDs or prefix patterns (e.g. api:*) the agent may use |
license | No | SPDX license identifier |
compatibility | No | Compatibility constraints |
metadata | No | Arbitrary key-value pairs |
Discovery
Skills are discovered automatically from theskills/ directory at server startup and on HMR file changes. No registration is needed.
Agent tools
When skills are available, agents get three built-in tools:| Tool | Description |
|---|---|
load_skill | Load a skill’s full instructions by ID |
load_skill_reference | Read a file from references/, resources/, or assets/ |
execute_skill_script | Execute a script from a skill (5-minute timeout) |
load_skill before applying the skill instructions.
Tool restrictions
Theallowed_tools field restricts which tools an agent can use while a skill is active. Use exact IDs or prefix wildcards:
CLI commands
Verify it worked
- Run
veryfront skills validate skills/my-skill. A passing skill prints no errors and exits with status0. - Restart
veryfront dev. The dev log should list each registered skill under its directory name. - Send a message that should trigger the skill (for example, a code-review
skill should engage when the message asks to “review this diff”). The
AG-UI response should reference the skill’s instructions or call only
the tools listed in
allowed_tools.