v1.1.1 — kimi-code 0.12.0 compat
v1.1.1 — kimi-code 0.12.0 compatibility
Patch release certifying kimi-plugin-cc against @moonshot-ai/kimi-code 0.10.0, 0.10.1, 0.11.0, and 0.12.0 (the 0.9.0 → 0.12.0 jump). Verdict: COMPAT-PRESERVED — no safety-critical runtime change.
Audit
4-reviewer compat audit (hook contract / stream-json / CLI surface / adversarial) + a cross-model Codex adversarial pass, backed by a green bun run smoke:real on the installed 0.12.0 binary (review / challenge / ask / review_gate forced-write attempts all denied by the PreToolUse hook; the /kimi:pursue goal-mode safety smoke wrote zero files across a full wall-clock budget).
The safety chain is byte-identical where it matters: the hook engine is unchanged across all five tags (03-hooks.diff is 0 bytes), PreToolCallHookPermissionPolicy is still permission policy index 0 (auto-approve index 4), and the stream-json writer + goal.summary record shape are unchanged.
Headline upstream change — goal-mode gate weakened (handled)
kimi-code 0.12.0 (PR #569, commit d7407b0) removed the goal-command experimental-flag gate. Headless goal mode now triggers on the /goal prompt prefix alone — it was double-gated through 0.11.0. This is compat-benign: read-only commands (review/challenge/ask/review_gate) hard-prefix an English instruction line, so their trimmed prompt never starts with /goal and they cannot enter goal mode on any version; and the index-0 PreToolUse hook denies every write under a read-only label regardless. /kimi:pursue still sets KIMI_CODE_EXPERIMENTAL_GOAL_COMMAND=1 per spawn — now redundant on 0.12 but harmless, and still required on 0.8–0.11.
The previously-documented "double-gated" claim was corrected across AGENTS.md, runtime/kimi-version-probe.ts, runtime/stream-json.ts, runtime/commands/pursue.ts, and docs/safety.md.
Other 0.10–0.12 changes (benign for a kimi -p wrapper)
- AgentSwarm (PR #424): the new swarm-approve permission policy sits below the index-0 hook;
swarmMode.enter()runs inside the tool'sexecute()(after the hook already gated theAgentSwarmcall), and swarm subagents still inheritdeny-all. Unreachable for plugin spawns. - New
doctorsubcommand + aprogram.argument('[args...]')unknown-positional error — both unreachable, since the plugin passes the prompt as the value of-p, never a bare positional.
Changes
KIMI_TESTED_MINORSextended with{0,10},{0,11},{0,12}.- 5-file version bump 1.1.0 → 1.1.1.
- Documentation corrections (no behavioral change).
Compat marker: compat-verified-kimi-code-0.12.0