Vyrgent Command

Skill Author's Guide

Building a skill for Vyrgent

A skill is a saved workflow written in plain English — a numbered recipe your assistant follows step by step, using the tools it already has. No code required. This guide covers the file format, a copy-paste template, and how to save one.

The idea

What a skill is

A skill is a single SKILL.md file: a short bit of YAML frontmatter (name + description) followed by numbered instructions. When you ask for it, the assistant reads the steps and carries them out with its existing tools — sending email, opening a site, generating an image, running a report — in the order you wrote.

Think of it as teaching your assistant a routine once, so you can trigger the whole thing with a few words instead of re-explaining every time.

Which one

Skill or plugin?

Both extend Vyrgent — they solve different problems.

📋 Skill — a written workflow

Plain-English steps the assistant interprets and runs with existing tools.

  • No coding — just write the steps
  • Great for multi-step routines that combine tools you already have
  • Easy to tweak — edit the words

🧩 Plugin — code

A .js tool that runs deterministically, exactly the same every time.

  • For precise control, speed, or a real API integration
  • Runs as fast, exact code — no interpretation
  • See the separate Plugin Developer Guide
They work together. A common pattern: write a skill first (fast to author), use it, then — once it's proven — have Vyrgent compile it into a plugin so it runs instantly and identically every time.

The format

Anatomy of a SKILL.md

Two parts: frontmatter between --- fences, then the instructions.

Frontmatter fieldWhat it does
name requiredThe skill's ID, in snake_case — how you refer to it ("run the morning_brief skill").
description requiredOne line on what the skill does and when to use it. The assistant reads this to know when the skill applies — write it the way you'd ask for it.
category optionalGrouping label, e.g. productivity, marketing, finance.
version optionalYour version tag, e.g. "1.0.0".
author optionalWho wrote it.

Everything after the closing --- is the workflow: a numbered list of clear, ordered steps.

Copy this

The template

A complete, working skill. Save it as morning_brief.md, rewrite the frontmatter and steps for your routine, and load it.

morning_brief.md
---
name: morning_brief
description: Summarize today's schedule and important new emails into a short morning briefing. Use when the user asks for their morning brief or "what's my day look like".
category: productivity
version: "1.0.0"
---

# Steps below are followed in order, using the assistant's existing tools.

1. List today's calendar events (start time, title, and location).
2. Check the inbox for unread emails from the last 24 hours. Pick out the
   ones that look important or need a reply — ignore newsletters and receipts.
3. Write a short briefing with two sections:
   - **Today's schedule** — a bulleted list of meetings with times.
   - **Needs attention** — the 3–5 emails worth acting on, one line each.
4. Keep it under 150 words and lead with the single most time-sensitive item.
5. If the user asked for it out loud, read the briefing aloud as well.
That's a valid skill. Frontmatter with name + description between --- fences, then clear numbered steps. Save it and you can say "give me my morning brief."

Do it well

Writing steps that work

The assistant is smart, but a good skill is specific. Treat each step like an instruction to a capable new assistant.

Load it

Saving your skill

Three ways to get a skill into Vyrgent — pick whichever fits:

Just ask

Tell the assistant: "Create a skill that …" and describe the steps. It writes the SKILL.md for you and saves it.

Skill Hub

Settings → Skill Hub to browse and install shared skills, or add a source URL.

Drop in the file

Save your .md into ~/.vyrgent/skills/ (or upload it via Settings → Plugins → Install from file). It's picked up automatically.

Make it instant. After a skill works, ask Vyrgent to "compile this skill into a plugin." It turns the steps into fast, deterministic code that runs identically every time — no re-interpretation.

If it misbehaves

Common issues

SymptomFix
Name/description show as blankThe frontmatter didn't parse. Make sure it's the very first thing in the file, wrapped in --- fences on their own lines, each field as key: value.
The assistant doesn't pick the skillSharpen the description using words you'd actually say when requesting it.
Steps run out of order or skip partsNumber the steps and make dependencies explicit ("after the file downloads, …"). Split fuzzy steps into smaller ones.
It stops midwayA tool it relies on failed (e.g. not logged in, missing key). Add a first step that checks the prerequisite, and keep credentials in Settings.