Skip to main content
YAMOYAMO

SKILL.md

The reusable step format, spelled in capitals because that is the filename: what a Skill declares about itself, and the two sections in its body.

In ReferenceUpdated
Contents

On this page

  1. 01Required
  2. 02Declared, with defaults
  3. 03Optional
  4. 04The body
  5. 05Importing one

A Skill is a reusable step kept in your account library, and it is a folder whose one required file is SKILL.md, in capitals.

That spelling matters more than it should. There is no skill.md on YAMO, and there is no such thing as a "skill file" inside a Playbook either: the steps of a Playbook are Play files, and a Skill is the separate, reusable thing one can be imported from.

Required

  • name: lowercase words joined by hyphens. It is the identifier.
  • description: what this Skill does, in a sentence. It is what you read when choosing one from the library.
  • scope: whether it is one of yours or one that ships with YAMO.

Declared, with defaults

  • tools: the tools it needs. Empty by default.
  • inputs and output: the shape of what it takes and what it returns, described as a schema rather than as prose. Empty by default.
  • outputFormat: markdown by default.
  • version: an integer, 1 by default.

Optional

  • model: pin a model for this Skill.
  • search: declare that it searches the web as it works.

The body

Two sections, and only the second is required.

  • ## Persona: who the work reads as coming from, for this step. Omitted if there is nothing to say.
  • ## Instructions: what the step does. This one cannot be empty.

Importing one

Adding a Skill to your library is an upload of its SKILL.md. A Skill that declares a tool you have not connected is refused rather than accepted and left broken, and its scope is recorded as yours whatever the file claims.

Importing a Skill into a Playbook creates a step from it, and that step records which Skill it came from. See The Skill library.

Keep reading

More in Reference

Keep reading

Related

See it working

Open a Playbook that does this

Every template in the library publishes its contract and a real example output.