Skip to main content
This is advanced content, mainly for advanced users who need to debug Skill runs (Engine Runs). If you only do comet eval (authoring-time evaluation), you can skip this page.
This is advanced source-maintainer content about the Comet Runtime and source layout. Ordinary users only need to run comet eval and do not need to clone Comet; start with Quickstart.
Comet has two types of eval. Their names are similar but their purposes are different — don’t mix them.

Comparison

Little fish separating comet eval's publish evidence and comet skill check's run-completeness check onto two workbenches

comet eval produces publish evidence; comet skill check only checks whether a specific Skill run is complete

Why Two Types

comet eval is aimed at “can this Skill, as a product capability, pass the evaluation”. It executes real model tasks through a shared eval harness and produces pre-release evidence. comet skill check is aimed at “is this Skill run complete”. It only checks whether the current run satisfies the runtime checks in comet/checks.yaml, executing no model tasks and producing no publish evidence. The two serve different stages: comet skill check checks completeness during a Skill run, while comet eval verifies product capability before release.

Runtime Check Format

Runtime checks are defined in the Skill bundle’s comet/checks.yaml (or comet/evals.yaml — choose one of the two; they cannot coexist). /comet-any artifacts default to checks.yaml.
Fields of each runtime check:

Two Check Types

Three Scopes

comet skill check Example

Runtime checks are typically used together with comet skill run and comet skill continue:
You can also bind an OpenSpec change directory:
A Run can bind a --change directory, or use --run-id to place it under .comet/runs/<run-id>. run supports deterministic Skills; adaptive execution requires Agent candidates.

When You Need Runtime Checks

Skill runs (Engine Runs) typically appear in these scenarios:
  • The Skill has multi-step state.
  • It needs pending action and resume.
  • It needs to check whether an artifact exists.
  • It needs guardrails or recovery semantics.
  • The Skill is Engine-enabled (/comet-any enables Engine by default for multi-step or high-risk artifacts).
Engine-enabled artifacts write comet/checks.yaml and comet/eval.yaml:
  • comet/checks.yaml: runtime checks, used by comet skill check.
  • comet/eval.yaml: eval manifest, used by comet eval.

Text-Mode Recovery Prompts

In text mode, comet skill prints Pending action and Next: recovery prompts directly, so you don’t have to guess the next step yourself after a paused Run or a failed check. For example, run output:
When a check fails it prompts:
Each PASS/FAIL carries evidence, e.g. PASS completed: state.status = completed or FAIL report-exists: artifact report(missing) not found.

How to Choose

  • Your question is “can this Skill, as a product capability, pass the evaluation”:
  • Your question is “is this Skill run missing artifacts or state”:
When preparing to publish a Skill, do not only run comet skill check. Publish readiness requires the general comet eval evidence. comet skill check only checks the completeness of a specific Skill run; it is not a general Skill evaluation.

Next steps

Last modified on August 13, 2026