Phase-engine protocol mismatch
The skill markdown (`.claude/skills/coherent-generate/SKILL.md`) embeds the protocol version it was written against. The CLI advances its protocol when the phase-engine contract changes. A mismatch means the two disagree on artifact shapes, command output, or ingest parsers — running anyway would silently corrupt the session.
When you see it
Running `coherent _phase` with a `--protocol N` value that differs from the CLI's current `PHASE_ENGINE_PROTOCOL`. Always caught at the first `_phase` invocation — before any state-mutating work.
Why
The contract between the skill markdown and the CLI advances in lockstep. Version skew means the two are from different releases and can't safely interoperate.
Fix options
- 1
Refresh the skill markdown to match the installed CLI
Writes the latest `.claude/skills/coherent-generate/SKILL.md` and `.claude/commands/coherent-generate.md` into the project. Start a new session afterward.
$ coherent update - 2
Upgrade the CLI globally if the markdown is newer
If your project's skill markdown is from a newer release than your globally-installed CLI, upgrade the CLI.
$ npm install -g @getcoherent/cli@latest