chameleon-auto-idiomlisted
Install: claude install-skill crisnahine/chameleon
# /chameleon-auto-idiom
Derive **legit, high-value team idioms** from repo evidence and append them to
`.chameleon/idioms.md` via the structured teach path. The whole point of this
skill is the *complement*: it only proposes guidance that chameleon does NOT
already capture — not in `conventions.json`, not in `principles.md`, not in
`rules.json`, not already taught in `idioms.md`. Everything it produces is
deduplicated twice: once by you against the coverage map, once deterministically
by `check_idiom_candidates`.
## Hard rules (non-negotiable)
1. **Append-only. This skill NEVER modifies, removes, or deprecates an
existing idiom.** Writing a new idiom with `status="active"` only appends.
If a candidate contradicts an existing idiom, do not write it — surface the
conflict and ASK the user whether the old idiom should be deprecated. Only
an explicit "yes, deprecate it" authorizes a deprecation. Note the
mechanics so you don't destroy guidance: calling
`teach_profile_structured(slug=<existing active slug>, status="deprecated")`
does NOT just flip a status flag — it OVERWRITES that idiom's body with
whatever rationale/example/counterexample you pass. To deprecate without
losing the original guidance, re-pass the original body (read it from
`idioms.md` first) plus a deprecation note. Never edit `idioms.md` directly.
2. **Only write candidates that are (a) verdict `novel` from
`check_idiom_candidates` AND (b) approved by the user.** Skipped candid