This is advanced configuration. You do not need it for first use.
/comet-any can recommend defaults automatically. Read this when you want to hand-edit preferences or debug composition behavior..comet/skill-preferences.yaml is a project-level preference file. It tells /comet-any which Skills this project prefers to reuse and how to handle missing, ambiguous, deviating, script, and hook cases.
It is not a strict allowlist and not internal runtime state. You can write it by hand, commit it to the project, or let /comet-any create it after the first scan.

Preferences express direction and hard constraints; real Skill sources still have to be resolved, not guessed by name.
File location
.comet/config.yaml.
Full shape
mode
prefer and require
prefer is an ordered list. /comet-any tries to respect it when composing a workflow.
require lists Skills that must be satisfied. Missing or ambiguous required Skills block the plan.
policies
Recommended starting point
Use the example above if you are unsure. It prefers the Superpowers method chain and requires verification before completion.Strict team example
How preferences affect generation
/comet-any uses preferences in this order:
- Read
.comet/skill-preferences.yaml. - If missing, scan platform Skill inventory and propose defaults.
- Resolve real local Skill content with
find-skill. - In advisory mode, add extra Skills when justified.
- In strict mode, block when required conditions are not met.
resolved-skills.json
Generated packages include source evidence:resolvedSkills: real Skill source, hash, status (available,missing,ambiguous).workflow: node-to-Skill bindings, required Skill calls, and output schemas.
preferenceHash drift
Comet hashes the preference file and stores thepreferenceHash in Skill Creator metadata. If preferences change after Factory initialization:

