Skip to main content
When creating, optimizing, or combining Skills, calling /comet-any in the Agent and confirming prompts is enough in most cases. Evaluation, publishing, distribution, and recovery are flow-guided. Unless you are troubleshooting or integrating automation, you do not need underlying commands, internal state, or package structure first. This page is advanced content and covers every stage in the full process. If you only need a quick pass, start with Quick Start: Combining Any Skill.
This page lists the /comet-any stages, state, and corresponding CLI. /comet-any remains the creation entry point; the commands below support status checks, recovery, and automation.

Main path

If you only need to complete the creation of a Skill once, prioritize following this main thread. The following 17 stages are complete references to explain what happens when stuck, why to pause, and which command to look at next.
Internal terms such as draft hash, eval evidence, and Bundle draft may appear on this page. They are used to explain the recovery and release of access control. When in daily use, prioritize looking at the only next step given by comet creator next.

Complete stage reference

The complete process can be divided into 17 stages. Let’s talk about each one below. For ease of understanding, divide them into five logical stages:

Xiaoyu broke down the 17-step process of comet-any into five parts: preparation and confirmation, generation, evidence evaluation, review and release, and preview and distribution

The main storyline of

/comet-any is quite long, but it can be broken down into five segments: preparation and confirmation, generation, evaluation, release, and distribution to understand

1. Restore the current creative state

By default, /comet-any attempts to restore the existing process first. It will only create a new process when you explicitly say “start over” or “abandon the old state”. It will organize the recovery information into a “recovery summary”, directly displaying resumeSummary, Current step, Suggested user command and the cause of the block, eliminating the need to manually check .comet/bundle-authoring/. If there are multiple recoverable entries, /comet-any will display the name, status, next action and reason of each entry, allowing you to choose which one to continue with. When restoring, it will check whether these items are still valid
  • Whether the Skill Creator state exists
  • Has the draft hash changed
  • Has the preferenceHash of .comet/skill-preferences.yaml changed
  • Whether the resolved Skill hash changes
  • Whether Eval evidence still matches the current hash
  • Whether approval still matches the current hash
To see exactly what fields the backend returns, you can manually run comet creator guide —project. —json. It will return preference, inventory, resumable, nextQuestions, userMessage .

2. Run the first use wizard

If it is the first use (no preferences, no recoverable status), /comet-any will scan the platform Skill inventory supported by Comet, display the reusable capabilities by ** capability groups **, and ask whether to save the recommended preferences. You don’t need to re-list a long string of skills in the input box every time.

3. Select the starting point and language

Choose one of the three starting points (see Skill Creator overview · Three starting points). Each maps to a Skill Creator intent (skillCreatorIntent): Whichever starting point you choose, /comet-any compiles the target into the same Workflow Contract (workflow.kind is comet-five-phase-overlay or workflow-kernel). See Workflow Contract. Confirm the default language and locales at the same time. At least record the default locale; Multilingual skills need to specify which files are overridden by locale overlay.

4. Read preferences and parse real skills

/comet-any reads .comet/skill-preferences.yaml, and then uses find-skill to parse the local real Skill. The analysis yields three types of results through candidate checking:
One must not infer one’s ability merely by name. /comet-any must read the final candidate real SKILL.md, direct reference, rules, scripts and hooks.

5. Handle missing and ambiguous candidates

If the candidate missing or ambiguous, /comet-any ** must pause asking you **. It cannot silently ignore missing candidates, nor can it choose for you from multiple sources. After you clearly select the source, /comet-any will update the metadata of Skill Creator. When you explicitly agree to ignore missing preferences, it will record the reasons (enter the review summary). If there is still unresolved Skill candidates, /comet-any will not continue to be generated. Back-end equivalent commands (for understanding the process, no need to run manually) :

6. Read the real candidate implementations

/comet-any reads each candidate’s real implementation (SKILL.md, references, rules, scripts, hooks), ** read-only and non-executable **, to understand the real capabilities.

7. Generate the Skill Creator scheme and wait for confirmation

/comet-any compiles the target into a Workflow Contract, proposes composition schemes according to preferences, and labels the responsibilities, implementation skills, Required Skill calls and Output Schema of each node. This page is “**Skill Creator Solution Confirmation Page **”. The scheme confirmation page should at least include these blocks:
It must be clearly informed to the user that what is displayed now is the “Skill Creator Solution Confirmation Page ” . The Bundle draft will not be written until the user confirms.
You need to make one of the three choices on the confirmation page:
  1. confirm-generate - Confirm generation and then write to Bundle draft (displayed only when blocker is not available).
  2. revise-proposal - Re-propose after modifying the target, preference, candidate or Workflow Contract.
  3. cancel - Do not write to Bundle state.

8. Clarify the goals of Skill Creator

If the plan requires supplementary information, /comet-any will clarify: what is the goal, whether it is an entry or an internal Skill, which resources are shared, the target platform, and whether an Engine is needed.

9. Initialize the draft and Skill Creator metadata

After the user confirms, /comet-any calls the backend initialization draft:
comet creator init will solidify the standardized plan to .comet/bundle-factory-plans/<name>/plan.json and record planHash and preferenceHash.

plan.json structure

The main input of plan.json is workflow (Workflow Contract) :
Key field
Skill Creator plans reject unknown fields, and workflow must be a valid Workflow Contract. Reading a plan immediately calls normalizeWorkflowDefinition; invalid input fails directly. See Skill Creator overview · Validation findings.

Workflow Node operation semantics

10. Generate Comet-native Skill source code

/comet-any assemps products through authoring lanes. The product includes the entry SKILL.md, the internal Skill corresponding to each Workflow Node, and is written as:
  • reference/workflow-protocol.json - ** single source of truth for runtime state ** (node, edge, Output Schema, state, evals), read it in full by runtime/eval/review/readiness
  • reference/resolved-skills.json - Genuine Skill source evidence + workflow node binding
/ Comet-any prefers to use the native . Skills-creator must obtain consent before using Comet as a safety net.

11. Generate Engine Package

Products that are multi-step, require recovery, require guardrails, require runtime checks, or contain script side effects will generate Engine packages. The lightweight single-step Skill (engineMode: none) may not enable Engine, but it will lose Run recovery and runtime check. The generated Engine four-piece set: comet/skill.yaml, comet/guardrails.yaml, comet/checks.yaml, comet/eval.yaml. Among them, comet/eval.yaml will carry the current draft hash placeholder, recommended task, baseline treatments, quality access control, required Output Schema and expected evidence. For a complete description of the Engine mechanism, please refer to Skill and Engine

12. Compilation and verification

Compile /comet-any to the reference platform and verify:
The verification includes Workflow Contract semantics, required capability set for stability control plane and platform capability matching. The Workflow Contract has been verified by normalizeWorkflowDefinition before generation (the control node cannot override, the producer override needs to satisfy, the Output Schema needs to exist, etc.) During the compilation stage, the product will be rechecked to be consistent with workflow-protocol.json.

13. Present the assessment workload

/comet-any presents the assessment workload, allowing you to select skip/quick/full:
Return level, components[], estimatedRuns, tokenWorkload, explanation. This is a descriptive estimate, not a token commitment.

14. Record the assessment evidence

Actually perform the evaluation (this step corresponds to comet eval) and bind the evidence to the current draft hash and the current eval manifest hash:
eval-record only accepts the results of schemaVersion: 2 and provider: "comet-eval". Only when passed: true and failures are empty will the state advance to eval-passed. Otherwise, roll back to draft and clear review/ready/conflict.
Evidence draftHash is not equal to the current currentHash, Or evalManifestHash is not equal to the current generation of comet/eval yaml hash, only write file does not advance. Old evidence can be retained on the disk, but cannot be pushed forward.

15. Review, approve and release

Check “readiness” and “Next” before releasing. comet creator status displays complete readiness, blocker, warning and evidence; comet creator next only returns one next command that the user should execute. /comet-any will display entry Skill, internal Skill, planHash, preferenceHash, real Skill evidence, recommended invocation sequence, deviation items and reasons, capability gap, executable disclosure, and Eval result summary based on the review summary. And Readiness:, Blockers:, Warnings:, Evidence:.
Only after the user’s explicit approval can the release continue. The blocking items can be found at Publish and Distribute Skill

16. Installation Preview (Mandatory)

After release, /comet-any ** must ask you whether to distribute **, and it cannot be distributed automatically. Before actual execution, “preview” must be run first:
preview will display Install preview, planned files, unsupported capability, executable disclosures, No files were written.

17. True distribution

After confirming the preview result, remove --preview to perform the actual distribution:
If the target platform contains executable capabilities such as hooks or scripts, the disclosed information must be displayed first. Only after the user confirms can --confirm-executables be added. Only if the user explicitly chooses to skip the optional capability can --skip-capability <capability> be added.

Resume the interrupted process

If you stop halfway through, come back and directly tell the Agent:
/comet-any will first scan the recoverable status and display the name, status, next action, blockers and the summary of the last confirmed combination scheme. hash drift handling during recovery:

Complete example: Create a PR review assistant

1. Preparation Preference (optional

2. Call /comet-any and describe the target

After confirming the plan, proceed with the evaluation and release

Key points

  1. /comet-any is the sole primary entry point for creating, optimizing, and combining skills.
  2. .comet/skill-preferences.yaml is a project-level preference that can be handwritten or generated by /comet-any.
  3. Before generation, you must first look at the ** combination scheme ** and confirm it before writing the Bundle draft.
  4. “Eval is pre-release evidence, not the release action.”
  5. Use comet creator status to view readiness, and comet creator next to view the suggested action. Do not edit Bundle state by hand.

Next step

  • Skill Preferences and Real sources - Configuration .comet/skill-preferences.yaml
  • publish and distribute Skill](/en/skill-creator/publishing) - readiness, approval, publish and distribute
  • Skill and Engine](/en/skill-creator/engine) - Engine Package and runtime check
  • Overview of the Evaluation System ](/en/eval/overview)-Eval: How Does eval Provide Evidence for Release
Last modified on September 4, 2026