Skill project format
Every Cmdop Skill project has a root SKILL.md carrying the Skill’s identity,
the description that decides when an agent reaches for it, and the instructions
themselves. For an instructions-only Skill that file is the whole Skill; Python
and Node variants add a runtime manifest that Cmdop validates statically.
Every Skill project has a root SKILL.md. It carries the Skill’s identity, the
description that decides when it is used, and the instructions themselves. For
an instructions-only Skill, that file is the Skill — nothing else is required.
Generate the project rather than copying a template:
cmdop skill create my-skill --description "Explain when this Skill should be used"
cmdop skill check ./my-skill --strictThe generator matches the validator shipped in your installed version, so a freshly created project always passes. A hand-built project written against an older format may not.
Executable variants add a manifest
Python and Node Skills add a cmdop-skill.yaml runtime manifest next to
SKILL.md. It declares the runtime, the entry point, the commands the Skill
offers, and the permissions it wants. The validator holds it to a narrow
contract:
- One managed entry point, in the position the format expects.
- A supported runtime range — Cmdop declines a version it cannot support.
- At least one command, and a bounded number of them, each with a name and a real description.
- Environment names and network destinations in the declared, checkable form.
Cmdop validates that manifest statically. It does not start an interpreter to find out whether the Skill works.
The validator is the specification
Field-by-field rules are versioned with the CLI, so the honest source of truth is the validator you have installed:
cmdop skill check ./my-skill --strict
cmdop skill check --helpErrors name the file and the problem. Fix them there rather than against a remembered field list.
Format is not availability
A project that validates is a well-formed project. It is not published, not installed, and — for executable variants — not yet runnable. See Runtime status.
Related
Common questions
What file defines a Cmdop Skill?
Every Skill project has a root SKILL.md. For an instructions-only Skill, that
file is the whole Skill: identity, trigger description, and instructions.
What does cmdop-skill.yaml do?
Python and Node Skill projects add cmdop-skill.yaml to declare the runtime,
entry point, commands, permissions, environment names, and network destinations
that the validator can check.
Is the written format the source of truth?
The validator shipped in your installed CLI is the source of truth. Generate a
fresh project and run cmdop skill check --strict rather than relying on a
remembered field list.