Author a Skill
Three commands take a Cmdop Skill from nothing to a publishable artifact:
cmdop skill create generates the project, cmdop skill check --strict
validates it, and cmdop skill pack writes a deterministic ZIP with a digest
that identifies it. All three run offline and none executes your Skill’s code.
1. Create the project
cmdop skill create release-check \
--description "Review release readiness"The description is not decoration — it is how the agent decides when to reach for this Skill. Write it as a trigger: what situation should invoke this?
You get a project with a root SKILL.md holding the Skill’s identity and its
instructions. Edit that file; it is the Skill.
The default kind is instructions-only, which is what you want unless the Skill must run code:
cmdop skill create release-check --kind prompt # instructions (default)
cmdop skill create release-check --kind python
cmdop skill create release-check --kind nodePython and Node projects add a runtime manifest — see Skill project format. They also depend on an isolation runtime that is not shipped yet, so an instructions Skill is the one that works end to end today. See Runtime status.
create will not overwrite an existing destination.
2. Validate it
cmdop skill check ./release-check --strictcheck reads the project’s files and validates the declared contract without
executing anything. --strict makes warnings blocking, and --json gives
machine-readable output for CI.
Run it with --strict from the start, because packing requires a warning-free
strict check anyway.
3. Pack it
cmdop skill pack ./release-checkpack runs strict validation itself, then writes a deterministic ZIP into the
project’s dist/ directory and prints a logical sha256: digest.
That digest is the artifact’s identity. It covers the Skill’s canonical metadata and the uncompressed file bytes — not the output path, file timestamps, umask, or ZIP metadata. Two people packing the same project get the same digest, which is what makes a published artifact verifiable.
Two things that will stop you:
- A warning-free
--strictcheck is a precondition. Packing a project that only passes non-strict validation fails. packwill not overwrite an existing artifact. Move or remove the old one.
What comes next
Packing does not publish, install, or make anything runnable. Those are separate stages with separate owners:
- To publish, use the browser — see Publish a Skill.
- To install one on a machine, see Marketplace and installed state.
For the full hands-on walkthrough, see Write your first Skill.
Related
Common questions
How do I author a Cmdop Skill?
Run cmdop skill create, edit the generated SKILL.md, validate with
cmdop skill check --strict, and package with cmdop skill pack. Those steps
are local and offline.
Does authoring a Skill run code?
No. create, check, and pack validate and package the project. They do not
execute the Skill, install dependencies, or reach the network.
Which Skill kind should I start with?
Start with an instructions Skill, the default prompt kind. Instruction Skills
work end to end today; Python and Node projects can be authored and packed, but
their execution waits on the isolation runtime.