Skill authoring overview

Applies to: StablEdge Desktop 0.4.4 and later

A Skill is a folder with a SKILL.md in it, used to hand StablEdge's Agent the process, domain knowledge, and reusable files for a class of tasks. By default the Agent sees only each Skill's name and summary; it loads the body when it judges the task needs it, and reads the bundled reference documents, templates, or run scripts when needed.

What is a Skill

You can think of a Skill as an onboarding manual written for the Agent. It is a good place to capture things like:

  • Multi-step processes: the fixed order of operations and checkpoints for a class of tasks;
  • How to use a file format or API: for example, conventions for reading and writing a kind of document, or for calling an API;
  • Team knowledge: data structures, business rules, writing conventions;
  • Reusable files: scripts, reference documents, templates, and assets.

StablEdge's built-in Skills, such as pdf, docx, xlsx, and pptx, all follow this structure and can serve as references.

Skill or plugin

RequirementRecommendation
Teach the Agent a way of working and a set of rules to followSkill
Give the Agent reference material, templates, or a few scripts that run in the SandboxSkill
You need your own interface, Always-on background tasks, storage, or an external serviceplugin
The plugin should also teach the Agent how to use itShip a Skill inside the plugin

Plugins can ship their own Skills: once a plugin is enabled, the SKILL.md in its directory is registered under the name plugin.<plugin ID>. It does not take part in automatic activation and stops working when the plugin is disabled.

What a Skill is made of

my-skill/
├── SKILL.md          Required: YAML frontmatter + Markdown body
├── reference.md      Optional: reference document, read on demand
├── scripts/          Optional: scripts the host runs in the Sandbox
│   └── run.py
└── assets/           Optional: templates, images, and other files for output
    └── template.docx
  • frontmatter: contains at least name and description. These two are always visible to the Agent and decide whether the Skill gets picked. See SKILL.md and frontmatter.
  • Body: operating instructions that enter the context only after the Skill is loaded.
  • Bundled files: kept in the Skill directory; the Agent reads, copies, or runs them through the skill tool. See Resources and scripts.

Three loading levels

LevelContentWhen it enters the context
1. MetadataFrontmatter fields such as name and descriptionAlways visible, used for search and matching
2. BodyThe Markdown body of SKILL.md; for a Progressive Skill, the "cover + section index"When the Agent loads the Skill
3. Bundled filesReference documents, scripts, templatesWhen the Agent explicitly reads, copies, or runs them

When the body is long and covers several topics, write the Skill in a Progressive structure so the Agent reads only the sections the current task needs. See Progressive structure.

How the Agent uses a Skill

The Agent uses Skills through the built-in skill tool, which supports the following actions:

ActionWhat it does
listBrowse installed Skills page by page (50 per page, summaries truncated to 80 characters)
searchSearch Skills by task keywords (5 results by default, 10 at most)
loadLoad the Skill body; for a Progressive Skill, returns the cover and section index
read_sectionRead one section of a Progressive Skill by section ID
list_filesList the bundled files in the Skill directory
read_fileRead a bundled file into the context
copy_fileCopy a bundled file into the current Workspace
run_scriptRun scripts under scripts/ in the Sandbox, executed by the host

Where Skills come from

StablEdge discovers Skills in the following order; when names collide, the first one found wins:

  1. Skills installed for the current account (<StablEdge data directory>/skills/user/);
  2. Skills bundled with enabled plugins;
  3. Built-in Skills shipped with the app.
Built-in Skill names are reserved. A local copy with the same name does not override the built-in version; it is ignored and a diagnostic hint is shown. When naming your own Skills, avoid built-in names such as pdf, docx, xlsx, pptx, skill-creator, and plugin-creator.

In the Enterprise edition, an administrator can distribute managed Skills from the server side. Such Skills are managed by the Enterprise and are outside the scope of this documentation.

Reading path

  1. SKILL.md and frontmatter: write your first Skill that is recognized correctly.
  2. Progressive structure: split the body into sections once it grows long.
  3. Resources and scripts: bundle reference documents, templates, and scripts.
  4. Installation and updates: install from a folder, ZIP, HTTPS, or GitHub, and sync changes automatically.
  5. Best practices and examples: two complete examples and common mistakes.
On this page