All documentation

Skill run

Installed ✓, safe ✓, weighs this many tokens ✓ — and one question still has no answer: does it actually work? Not “is the file in the right place”, but “will the model reach for it when a fitting task shows up”.

A run answers that with a fact, not an opinion.

How to start one

On the skill card press ▷ Try for real. A dialog opens where you decide three things — all three explained right there.

What we will ask for. By default the task is assembled from the skill’s own description — what we test is exactly whether that description leads the model to the skill. You can write your own or repeat the task from a previous run (more on that below).

What to run it with. Claude Code, Codex or OpenCode — whichever is found on your machine. The run uses their command line; if none is there, the dialog shows what to install and how.

Which model and how much. What is tested is the skill description, not the strength of the model, so a cheap one is enough: the same run cost $0.13 on Sonnet and $0.03 on Haiku. The spending cap ($1 by default) saves you from an accidentally huge task — the tool stops on its own.

What happens inside

  1. A temporary directory is created and the one skill under test is put there.
  2. The command line of your AI is started as an ordinary child process, with no separate window. onplate calls nobody’s API: your subscription and your quota do the work.
  3. The directory is deleted whatever the outcome. Your setup does not change: the skill is not installed, the AI configs stay as they were.

What the result shows

The verdict is read from the session log the AI itself keeps — a fact you can check, not the model’s answer to “so, did you use the skill?”.

ResultWhat it means
The skill firedThe model reached for the skill. The step, tokens, time and price are shown
The skill did not fireThe model solved the task on its own. Usually it is the description — it is shown right there, with a button into the editor
Another skill took the taskA neighbor among the installed ones fired. This is not about the description: there is a skill nearby the model picks first
The skill was not even offeredIt never reached the model — check the name and the frontmatter
Stopped by time or the spending capThe check was interrupted halfway. That is not a verdict about the skill

One run is not a guarantee: models are not deterministic. The report says so plainly.

History and regressions

Every run is saved: which skill, on which version, on which task and how it ended. The Runs section appears after the first check.

The value is not in one record but in a pair. Fix the description, repeat the same task, and you see whether it helped:

  • “Got better” — did not fire before, fires now;
  • “Stopped firing after the update” — a regression: the version changed while the task stayed the same, so it is the changes in the skill;
  • “The same skill answered differently” — same version, same task, different outcome. That is not a breakage but the spread of the model; calling it a regression would be a lie.

If the skill was updated since the last check, the dialog says so and pre-selects repeating the previous task — which is exactly a regression check.

The limits

  • A run spends your quota with the chosen tool. That is why it happens only on a button, never on its own, and the price is shown in the report and in the history.
  • Dangerous skills are not run. A skill scored “Dangerous” is rejected before the start: a run executes the instructions for real.
  • The AI needs a command line. GLM has none, so a run is unavailable for it — in the compatibility matrix that row is honestly empty.