codex-kimi-bridge 0.4.0
Highlights
- Run Kimi as a native Codex Desktop
kimi_frontendsubagent while keeping Desktop-owned task IDs, status, panel visibility, and final-result delivery. - Accept Responses
agent_messageinput and normalize validated agent routing into Kimi Chat Completions messages. - Omit opaque OpenAI provider-private
encrypted_contentwithout attempting to decrypt, guess, log, or forward it. - Capture the user's visible delegated task with trusted
UserPromptSubmitandPreToolUsehooks before cross-provider private wrapping. - Bind every delegated task to the intended child with a locally signed, expiring
CKB1envelope and fail closed before contacting Kimi when verification is unavailable or invalid. - Match Codex Desktop Multi-agent v2's flattened
collaborationspawn_agenthook name together with the documented compatibility forms. - Emit standard Responses assistant phases so terminal child text is classified as
final_answerand tool progress ascommentary. - Preserve support for top-level and namespaced
functionandcustomtools, including descendantspawn_agentcalls. - Ship the updated
manage-codex-kimi-bridgeskill, bilingual installation guides, safe agent template, and three macOS startup choices.
Verified compatibility
Rust and Node offline tests cover task capture, hook merge and removal, signature verification, tampering, expiry, recipient binding, empty-payload failure, opaque provider-state filtering, namespace translation, and marked recursive handoff. A user-authorized real Codex Desktop Multi-agent v2 test created one native kimi_frontend task with fork_turns = "none" and returned KIMI_BRIDGE_V2_FINAL_OK exactly through the normal final-result channel without a retry.
Security and installation
The bridge listens on 127.0.0.1 by default and does not log request bodies, API keys, authorization headers, reasoning content, or internal turn IDs. Handoff envelopes authenticate local source and integrity; they are not encryption. Visible tasks are stored temporarily with user-only permissions and must never contain credentials or secrets.
The macOS binaries are ad-hoc signed but not Apple-notarized. Verify the attached SHA-256 checksums before installation. The Rust single binary remains the default; the separately named Node package is a fallback only.