Skip to main content
Skills are Markdown files with YAML frontmatter. This page documents the complete schema.

File Structure

A skill file follows this structure:
The frontmatter is delimited by --- on its own line. Everything after the closing delimiter is the body.

Storage Model in Char

Char uses two skill sources:
  1. Organization skills (DB-backed)
    Stored per organization and managed through the Skills UI and API.
  2. Built-in global skills (code-owned)
    Shared across all organizations and exposed through fixed location values.
Both sources use the same SKILL.md content format documented on this page. Current built-in global skill:
  • skill-creator-webmcp (location: builtin://skill-creator-webmcp)

Frontmatter Fields

Required

string
required
Skill identifier.
  • 1–64 characters
  • Lowercase letters, numbers, hyphens
  • No leading hyphen
  • No trailing hyphen
  • No consecutive hyphens
  • Unicode allowed (NFKC normalized)
string
required
When the skill should be used.
  • 1–1024 characters

Optional

string
License identifier (e.g., MIT, Apache-2.0).
string
Runtime requirements or environment notes.
  • Maximum 500 characters
string
Space-delimited list of tool names.
object
Arbitrary key-value pairs.

Name Validation

Body

The body is Markdown. No schema constraints apply. Content appears verbatim in the agent’s context when the skill is activated.

Example

API

List Skills

Returns skill metadata (name, description, id). Does not include body.

Get Skill

Returns full skill including body.

Create Skill

Request body: { "content": "<full SKILL.md content>" }

Update Skill

Accepts patch operations.

Delete Skill

Archives the skill. Does not permanently delete.

Validation Errors

Token Estimates