跳转到主要内容
comet eval is the general-purpose Skill evaluation entry point. It wraps the eval harness so you don’t have to manually cd into eval/ or assemble pytest arguments. It provides pre-release evidence for Skills: it can evaluate artifacts produced by /comet-any, and it can also do early smoke testing on a local Skill directory.

Command shape

comet eval is a single-entry command. You pass a Skill directory, SKILL.md, or comet/eval.yaml as the target, then choose with options whether to collect or run the real evaluation.
CommandPurposeRuns model tasks
comet eval ./generated-skill/comet/eval.yaml --collectOnly discovery and pre-checks, no model or Docker tasksNo
comet eval ./generated-skill/comet/eval.yaml --htmlRuns the local eval and can produce an HTML reportYes
There is also a similarly named comet skill check, which is a completely different command — it inspects the runtime checks of a single Skill run, not a general Skill evaluation. See Runtime check.

Prerequisites

Because comet eval runs real model tasks, it depends on the following environment (the core Comet runtime does not need these):
  • uv (comet eval uses it internally to drive pytest)
  • Python 3.11+
  • Docker (builds task images, runs in isolation)
  • claude CLI on PATH
  • ANTHROPIC_API_KEY or ANTHROPIC_AUTH_TOKEN
When neither API key is present, the harness silently skips instead of erroring. For the full setup steps, see Evaluation quickstart · What you need before running.
Using proxy-style credentials (BigModel / OpenRouter, etc.): when ANTHROPIC_API_KEY is not set, configure ANTHROPIC_AUTH_TOKEN + ANTHROPIC_BASE_URL and related variables in eval/.env. The harness will make claude inside Docker use proxy authentication. For the full variable list, see Eval harness · Environment variable reference.
When you have a comet/eval.yaml (full pre-release evaluation):
comet eval ./generated-skill/comet/eval.yaml --collect
comet eval ./generated-skill/comet/eval.yaml --html
When you only have a local Skill directory (early smoke test):
comet eval ./my-skill --skill-name my-skill --quick
Run —collect first for a low-cost discovery pre-check, then use —html to run the real evaluation. —collect does not consume any model calls.

Command options

comet eval [target] [options]
OptionDescriptionDefault
[target]Local Skill directory, SKILL.md, or comet/eval.yamlNone
--project <dir>Repository root containing eval/. (current directory)
--manifest <path>Path to comet/eval.yamlNone
--skill-path <path>Local Skill directory or SKILL.mdNone
--skill-name <name>Skill name for --skill-pathNone
--profile <name>Override the eval profilegeneric
--task <task>Specify the eval taskSee table below
--report-config <path>Custom report config pathAuto-generated temp file when --html is used
--htmlGenerate an HTML report (also produces markdown)Off
--quickUse the default quick smoke taskOff
--collectOnly discovery and pre-checks, no model or Docker tasksOff

--manifest and --skill-path are mutually exclusive

A single evaluation can only choose one entry point:
  • Only --manifest: evaluates comet/eval.yaml.
  • Only --skill-path: evaluates a local Skill directory.
  • A [target]: the CLI decides based on the path whether it is a manifest or a local Skill.
  • Both or neither passed: error.

Default task and profile

ModeDefault profileDefault task
--manifestFrom the manifest (usually authoring-skill)recommended (reads the manifest’s recommendedTasks)
--skill-path --quickgenericgeneric-skill-smoke
--skill-path (no --quick)genericrecommended
You can override the defaults with --task and --profile.

Execution info

Before running, comet eval prints a set of execution info to help you locate the report:
  • Eval root: the actual eval/ root it launched from
  • Mode: collect or run
  • Target: whether the current evaluation targets a manifest or a local Skill directory
  • Experiment: the experiment id for this run
  • Profile: the profile used in this evaluation
  • Task: the evaluation task for this run
  • Report path: report location
  • Report config: the temporary report config used when --html is enabled
In run mode it also notes that failure attribution will be recorded into the generated eval summary.

Report location

--html requires the report to produce both markdown and HTML. Reports are typically located at:
eval/local/logs/experiments/<experiment-id>/summary.html
The experiment id format is <task>_<YYYYMMDD_HHMMSS>. See Reading evaluation reports.

Choosing between manifest path and skill-path

ScenarioRecommended entry
You have a comet/eval.yaml--manifest
Only a local directory, still in early debugging--skill-path --quick
It’s a /comet-any artifact--manifest
You want to reach release readiness--manifest
For release readiness, prefer the manifest path. —skill-path —quick is only suitable for early smoke testing — do not treat it as the final release evaluation.

How to decide the next step on failure

collect failure

Check first:
  • Whether the manifest path is correct
  • Whether comet/eval.yaml exists
  • Whether the recommended task in the manifest exists
  • Whether you are in the Comet repository root or passed the correct --project

run failure

Look at the failure attribution in the report first:
AttributionMeaningNext step
harnesseval harness, dependencies, Docker, path, or environment issuesCheck dependencies, Docker, network, or local environment
workflowThe Skill execution flow did not meet expectationsGo back to /comet-any to refine the Skill
taskTask definition, validation conditions, or fixture issuesCheck the eval task definition and fixtures
modelModel behavior, tool usage, or unstable outputRe-run or reduce reliance on non-deterministic behavior

HTML report not found

Check the Experiment and Report path in the CLI output first. If the path contains placeholders, look in the eval/local/logs/experiments/ directory using the actual experiment id.

comet eval vs comet skill check

These two commands have similar names but different purposes:
  • comet eval: the user entry point to the shared eval harness, evaluating a Skill package or comet/eval.yaml.
  • comet skill check: a completeness check for a single Skill run, determining whether a run / change satisfies the runtime checks in comet/checks.yaml.
If your question is “can this Skill pass evaluation as a product capability”, use comet eval. If your question is “does this Skill run have missing artifacts or state”, use comet skill check. See Runtime check.

What users need to remember at minimum

  1. /comet-any artifacts should use comet/eval.yaml first
  2. Run --collect first, then --html
  3. The eval result is evidence for /comet-any release readiness, not the release action itself
Recommended commands:
comet eval ./generated-skill/comet/eval.yaml --collect
comet eval ./generated-skill/comet/eval.yaml --html
comet creator next <name> --json

Next steps

最后修改于 2026年7月6日