Skip to content

v1.1.1 — kimi-code 0.12.0 compat

Choose a tag to compare

@linxule linxule released this 09 Jun 09:38
· 5 commits to main since this release

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's execute() (after the hook already gated the AgentSwarm call), and swarm subagents still inherit deny-all. Unreachable for plugin spawns.
  • New doctor subcommand + a program.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_MINORS extended 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