chameleon-disablelisted
Install: claude install-skill crisnahine/chameleon
# /chameleon-disable
Disable chameleon's per-edit layer for the current session. The hook stack still executes (and fails open), but once the session is disabled the PreToolUse hook early-returns before doing any work: no `<chameleon-context>` is injected AND the PreToolUse enforcement denies (`secret-detected-in-content`, `eval-call`, `import-preference-violation`) do NOT fire. Disable is a FULL per-edit opt-out, not an advisory-only mute. If you want to keep advisory guidance but stop only the blocking, use `CHAMELEON_ENFORCE=0` instead (advisory ON, blocking OFF) — that is the opposite trade-off from disable/pause (everything OFF).
## When to use
- User runs `/chameleon-disable` explicitly
- User expresses frustration with chameleon's latency or pattern advice (the `callout-detector` hook surfaces this command on detected frustration)
- User is doing experimental / one-off work where conformance pressure is unwelcome
## Opt-out hierarchy
```
Most-permanent → .chameleon/.skip (per-repo, all users, committed → team-wide)
↓ CHAMELEON_DISABLE=1 (per-user globally; in shell rc)
↓ /chameleon-disable (this session only)
↓ /chameleon-pause-15m (next 15 minutes)
Most-temporary
```
Use the most-temporary option that solves the immediate need. Revert by:
- `/chameleon-disable` → starts new Claude Code session
- `/chameleon-pause-15m` → expires automatically
- `CHAMELEON_DISABLE=1` → unset the env var
- `.chameleon/.