Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
843 commits
Select commit Hold shift + click to select a range
9356fa1
feat(acp): session/get_config + session/set_config_option (model/mode…
7723qqq Aug 3, 2026
c3bd8c3
chore: drop plan-mode placeholders
7723qqq Aug 3, 2026
6275ecd
docs: sync handover — ACP config surface, 5 tests; session/update def…
7723qqq Aug 3, 2026
139e3d8
docs: baseline 2839 tests green — final session verification
7723qqq Aug 3, 2026
76ca56a
test(server): btw side-agent roundtrip — start_btw/end_btw
7723qqq Aug 3, 2026
33c6787
feat(sdk): Session start_btw/end_btw — side agent lifecycle
7723qqq Aug 4, 2026
a158d0d
feat(sdk): Session activate_skill
7723qqq Aug 4, 2026
d23bd50
docs: sync handover — kimi-server 52, SDK 34 methods
7723qqq Aug 4, 2026
86a22eb
docs: Remote-mode e2e smoke recorded
7723qqq Aug 4, 2026
4f4fed4
docs: offline boundary — clap_complete shell completion needs network
7723qqq Aug 4, 2026
804dad2
feat(tui): kimi-tui skeleton (ratatui + crossterm); bare `kimi` launc…
7723qqq Aug 4, 2026
ad6f570
feat(cli): completions <shell> — clap_complete scripts (bash/zsh/fish)
7723qqq Aug 4, 2026
7c0ed9a
feat(sdk): catalog module — models.dev fetch (reqwest+rustls) + typed…
7723qqq Aug 4, 2026
6b4c673
feat(cli): kimi provider list — models.dev catalog surface
7723qqq Aug 4, 2026
5b5b491
feat(cli): kimi provider search <q> — catalog keyword filter
7723qqq Aug 4, 2026
6e50534
feat(cli): kimi provider add <id> — catalog to config (endpoint defau…
7723qqq Aug 4, 2026
ec44599
feat(tui): live engine-event rendering into the chat panel during pro…
7723qqq Aug 4, 2026
223f79c
feat(tui): Tab completion for /model — cycle configured model aliases
7723qqq Aug 4, 2026
22ca8ea
feat(tui): slash commands — /goal /goal-cancel /clear /usage
7723qqq Aug 4, 2026
bd7989d
feat(oauth): kimi-oauth device flow — authorize/poll/refresh with loc…
7723qqq Aug 4, 2026
d8c6be7
feat(cli): kimi login — OAuth device flow (authorize + poll)
7723qqq Aug 4, 2026
84a134b
feat(tui): slash commands — /sessions /export /goal-status
7723qqq Aug 4, 2026
e758136
feat(tui): /resume <id> — switch sessions; session held on App
7723qqq Aug 4, 2026
a6382ad
feat(tui): slash commands — /swarm /thinking /models
7723qqq Aug 4, 2026
a18efea
docs: stage D/E status — TUI skeleton, oauth/catalog done; offline bo…
7723qqq Aug 4, 2026
60fa817
feat(tui): /goal-pause /goal-resume — full goal lifecycle in the TUI
7723qqq Aug 4, 2026
f021a0c
feat(dist): kimi-code-rust-bin — npm shell over the Rust binary (stag…
7723qqq Aug 4, 2026
df3a825
feat(dist): pack.mjs — copy release binary into the npm shell (CI-ready)
7723qqq Aug 4, 2026
350d4a1
docs: handover refresh — stage D/E/F progress, npm shell done
7723qqq Aug 4, 2026
4f81f17
feat(cli): provider add --default-model — set the engine default model
7723qqq Aug 4, 2026
876d17b
feat(tui): /compact — context compaction (graceful on no delegate)
7723qqq Aug 4, 2026
85f984a
feat(tui): transcript scrolling — PageUp/PageDown (5-line steps)
7723qqq Aug 4, 2026
49c9969
docs: stage E items 3-4 done — oauth device flow, catalog + provider …
7723qqq Aug 4, 2026
1b618c1
feat(tui): tool progress lines marked with a gear prefix
7723qqq Aug 4, 2026
23fae18
feat(tui): footer status bar — session id + plan/swarm modes
7723qqq Aug 4, 2026
f230501
feat(tui): footer status refreshes on /plan /swarm toggles
7723qqq Aug 4, 2026
1ce0006
docs: stage F entry-switch plan — wrapper precedence, TS fallback dur…
7723qqq Aug 4, 2026
71e5f82
docs: align AGENTS.md + plans with Codex-direction decision (core-in-…
7723qqq Aug 4, 2026
a008dd6
feat(tui): role-styled transcript + full slash Tab completion
7723qqq Aug 4, 2026
b60ffc5
feat(tui): interactive approval flow — y/n during prompt + approvals …
7723qqq Aug 4, 2026
66c663d
test(tui): smoke render via TestBackend — stage D validation item 5
7723qqq Aug 4, 2026
720cf57
feat(tui): cancel running turn with Esc / Ctrl-C
7723qqq Aug 4, 2026
980fbf8
feat(chat): approval command surface + event hint in the REPL
7723qqq Aug 4, 2026
75e0142
feat(cli): recognize upgrade/web/vis — stage C '待' surface closes
7723qqq Aug 4, 2026
15fa8cf
feat(cli): print/chat TS flag parity — --model --plan --continue
7723qqq Aug 4, 2026
2ea0a0d
feat(tui): approval request detail — rule + args preview
7723qqq Aug 4, 2026
24c497c
feat(cli): print/chat setup flags — --model/--plan/--continue
7723qqq Aug 4, 2026
de63875
feat(acp): session/set_mode + session/set_model spec methods
7723qqq Aug 4, 2026
2241e7e
test(cli): --continue falls back to default session on empty home
7723qqq Aug 4, 2026
f4a6a30
feat(transport): websocket transport + kimi-server-serve --ws
7723qqq Aug 4, 2026
7e7860c
feat(cli): kimi doctor tui [path] — TS parity
7723qqq Aug 4, 2026
cbcf0aa
feat(tui): stream llm.delta into a growing assistant line
7723qqq Aug 4, 2026
4596e8d
feat(ui): render llm.step begin/end progress lines
7723qqq Aug 4, 2026
f19cf53
feat(client): WebSocket client + full e2e — transport loop closed
7723qqq Aug 4, 2026
15027ea
feat(sdk): Session surface parity — 12 missing methods
7723qqq Aug 4, 2026
7c26bc8
feat(sdk): Harness::set_config — programmatic config writes
7723qqq Aug 4, 2026
0285086
test(transport): serve_bin --ws end-to-end over the real binary
7723qqq Aug 4, 2026
477e005
docs: refresh plan section 9 — session snapshot (19 commits, 2860+ te…
7723qqq Aug 4, 2026
2f532d1
feat(engine): session/rename RPC — TS renameSession parity
7723qqq Aug 4, 2026
1206455
feat(cli): live text streaming in --verbose / chat renderer
7723qqq Aug 4, 2026
f678d1f
feat(cli): resume --model/--plan + chat --model — flag symmetry
7723qqq Aug 4, 2026
1414d06
feat(cli): persist login token + kimi logout
7723qqq Aug 4, 2026
d41c3ef
feat(tui): stream model thinking (llm.delta think parts)
7723qqq Aug 4, 2026
82aaf22
docs: refresh plan section 9 — 5 more commits (24 total), 2870+ tests
7723qqq Aug 4, 2026
c1bc2a1
feat(cli): sessions lists updated_at — pick the session to resume
7723qqq Aug 4, 2026
f841ab3
feat(cli): kimi acp --login — TS parity
7723qqq Aug 4, 2026
1ed1235
feat(acp): session/update notifications — load replay + prompt result
7723qqq Aug 4, 2026
54d0cb9
docs: verify npm shell wrapper live (stage F artifact)
7723qqq Aug 4, 2026
da826c8
docs: stage status refresh — D/E complete-ish, F remaining explicit
7723qqq Aug 4, 2026
9765b89
feat(cli): kimi config --delete SECTION.KEY
7723qqq Aug 4, 2026
9fb8a20
docs: config --delete entry + workspace E0463 flake note
7723qqq Aug 4, 2026
f44a4ce
chore: lockfile — commit new deps (toml, futures-util, tokio-tungsten…
7723qqq Aug 4, 2026
9d62d3d
feat(cli): print resume hint + fix --continue context read
7723qqq Aug 4, 2026
3d04c70
feat(ui): /undo /fork /steer in TUI + /undo /fork in chat REPL
7723qqq Aug 4, 2026
a2f0341
feat(ui): /import — last unexposed session method in TUI + REPL
7723qqq Aug 4, 2026
8eed1c9
fix(cli): doctor exits 1 when the engine health check fails
7723qqq Aug 4, 2026
4b1bd68
fix(engine): failed turn orphans the goal record — 3-link persistence…
7723qqq Aug 4, 2026
ed771c0
fix(cli): resume goal ordering + print --continue actually loads
7723qqq Aug 4, 2026
d7acf6b
fix(ui/sdk): session creation loads persisted state — class close-out
7723qqq Aug 4, 2026
5b35ba9
fix(cli): resume captures events on TTY by default, like print
7723qqq Aug 4, 2026
bce7444
test(cli): chat --continue reuses the latest session
7723qqq Aug 4, 2026
babdf93
docs: refresh plan section 9 — 17 more commits (41 total), 2890+ tests
7723qqq Aug 4, 2026
f63a556
feat(cli): stream model thinking dimmed in --verbose
7723qqq Aug 4, 2026
75eab99
test(cli): export success path with an explicit session id
7723qqq Aug 4, 2026
eabadbe
docs: AGENTS.md — reflect migration progress (stages A-E done, F pend…
7723qqq Aug 4, 2026
048ff00
fix(cli): chat REPL /resume loads persisted state
7723qqq Aug 4, 2026
25fbb59
docs: full-suite gate conclusion — baseline established per-crate (en…
7723qqq Aug 4, 2026
36bb807
docs: plan section 9 — commit chain 41->48
7723qqq Aug 4, 2026
bf28aef
test(server): session/fs list action — glob pattern mapping coverage
7723qqq Aug 4, 2026
334b189
refactor(klient): retire TS klient package into retired/
7723qqq Aug 5, 2026
6cae093
refactor(klient): drop packages/klient after retirement
7723qqq Aug 5, 2026
51c3e0b
feat(rust): transport concurrency, llm streaming, sdk session surface
7723qqq Aug 5, 2026
e8d68b3
feat(rust): streaming providers, concurrent transports, sdk session s…
7723qqq Aug 5, 2026
5b1ae85
fix(engine): HostLlmProxy retries only transient errors, unblocks wor…
7723qqq Aug 5, 2026
4a9ca70
docs(plan): stage F retirement blocked — klient done, host deps still TS
7723qqq Aug 5, 2026
84ceb28
fix(entry): restore kimi.mjs imports, include bin in tsconfig, silenc…
7723qqq Aug 5, 2026
7cf9ee6
fix(cli): drain renderer before abort so Remote verbose events render
7723qqq Aug 5, 2026
213c56f
docs: work log — hang-test root cause, CLI event race, entry wrapper …
7723qqq Aug 5, 2026
cf3dcd5
docs(plan): baseline 2044 green, workspace unlocked, CLI 36/36
7723qqq Aug 5, 2026
a7d390c
feat(rust): plugin write surface + cron surface on kimi-server/sdk
7723qqq Aug 5, 2026
ea1349f
feat(sdk): wire removeKimiProvider in the Rust bridge
7723qqq Aug 5, 2026
e46a445
feat(sdk): align set_swarm_mode trigger + undo_history count with engine
7723qqq Aug 5, 2026
0485161
feat(rust): wire session/cancel_compact as engine no-op
7723qqq Aug 5, 2026
f54ebf1
docs(plan): stage E host-surface completion — plugin/cron/cancel_comp…
7723qqq Aug 5, 2026
232a829
feat(rust): session archive + plugin commands, clear all nativeUnavai…
7723qqq Aug 5, 2026
fe5a7f3
docs(plan): stage E complete — archive + plugin commands wired, zero …
7723qqq Aug 5, 2026
8c1dd36
feat(sdk): Harness close/fork/rename session methods
7723qqq Aug 5, 2026
f56c75a
feat(host): wire TUI plugin write surface through the native session
7723qqq Aug 5, 2026
baf3744
feat(host): wire cancelCompaction through the native session
7723qqq Aug 5, 2026
600cb1a
feat(tui): /archive slash command
7723qqq Aug 5, 2026
dbb23e9
feat(cli): /archive command in the chat REPL
7723qqq Aug 5, 2026
3eb3448
feat(cli): /steer command in the chat REPL
7723qqq Aug 5, 2026
8ba9c22
docs(plan): stage E host-surface completion — harness ops, TUI/REPL c…
7723qqq Aug 5, 2026
33fbdc6
feat(cli): open the browser for device-code login
7723qqq Aug 5, 2026
64a93b3
feat(cli): provider remove subcommand
7723qqq Aug 5, 2026
5edb85f
docs(plan): stage E CLI close-out — login browser open, provider remo…
7723qqq Aug 5, 2026
8399391
docs(plan): full retirement consumption map — no candidate package is…
7723qqq Aug 5, 2026
9c20117
feat(acp): stream llm.delta as chunk-granular agent_message_chunk not…
7723qqq Aug 5, 2026
7bc049a
test(acp): prompt notification path with a fake LLM
7723qqq Aug 5, 2026
d5d707b
fix(config): accept snake_case TOML for defaultModel/provider keys
7723qqq Aug 5, 2026
c0b3f18
feat(sdk): inject config native LLM into sessions + stream timeout
7723qqq Aug 5, 2026
455035c
feat(tui): markdown rendering for the assistant transcript
7723qqq Aug 5, 2026
419fb0c
feat(tui): semantic theme palette resolved from tui.toml
7723qqq Aug 5, 2026
3fde822
feat(tui): /config command — view the engine config
7723qqq Aug 5, 2026
279d477
feat(tui): /skills command — list registered skills
7723qqq Aug 5, 2026
197ea33
feat(cli): /config and /skills in the chat REPL
7723qqq Aug 5, 2026
758f114
feat(tui): /add-dir command — add a workspace directory
7723qqq Aug 5, 2026
c7288fe
feat: /info command (TUI + REPL) via kimi-sdk core_version
7723qqq Aug 5, 2026
e8242c2
feat(cli): -r/--resume top-level flag (TS parity)
7723qqq Aug 5, 2026
4529246
fix(test): isolate host-callback integration tests from ambient config
7723qqq Aug 5, 2026
071fd27
feat(tui,cli): /reload command to re-apply persisted session state
7723qqq Aug 5, 2026
6a5a105
docs: record three-domain host gap audit (protocol/tools/CLI) — no su…
7723qqq Aug 5, 2026
c6f82e5
feat(kimi-agent): port the 29 built-in GitHub tools to the Rust engine
7723qqq Aug 5, 2026
4f71ce9
docs: record GitHub tool-family port (29 tools) closing the last tool…
7723qqq Aug 5, 2026
245bc44
feat(tui,cli): /session and /plugins commands; fix DNS-dependent tests
7723qqq Aug 5, 2026
4c7a60f
restore: 重构恢复 + AskUserQuestion + TUI 命令补全 + 硬编码路径修正
7723qqq Aug 6, 2026
6b94c34
feat(tui): surface AskUserQuestion tool lines with a question prompt
7723qqq Aug 6, 2026
0958fbc
refactor(tui): extract chat widget (render_frame/styled_lines/max_scr…
7723qqq Aug 6, 2026
305e103
feat(server-transport): add /api/v1/meta and /api/v1/shutdown REST pr…
7723qqq Aug 6, 2026
8d3a035
feat(server-transport): add /api/v1/oauth/login device-flow projectio…
7723qqq Aug 6, 2026
8cd8813
feat(server-transport): add /api/v1/connections projection (WS receiv…
7723qqq Aug 6, 2026
2fd5dc9
docs: mark G-2 HTTP projection complete in CODEX_MIGRATION_PLAN
7723qqq Aug 6, 2026
35571f7
feat(sdk,agent): Session::reload_session (node-sdk parity) + pre-canc…
7723qqq Aug 6, 2026
d144496
refactor(tui): extract bottom_pane module (input editing + Tab comple…
7723qqq Aug 6, 2026
aa54d63
refactor(tui): extract streaming module (live assistant/thinking text)
7723qqq Aug 6, 2026
3eae1a2
feat(tui): /sessions uses the interactive session picker (switch via …
7723qqq Aug 6, 2026
1c81c20
feat(tui): startup session picker (resume UX parity, App::new(None))
7723qqq Aug 6, 2026
d92ad2e
docs: add full migration file list (MIGRATION_FILELIST.md)
7723qqq Aug 6, 2026
5d03911
feat(server-transport): kimi-web v1 wire contract projection + WS v1 …
7723qqq Aug 6, 2026
8571509
feat(cli): G-3 CLI behavior parity — print/provider/doctor/export/web
7723qqq Aug 6, 2026
1d0910c
feat(tui): session history render + completion arg sets
7723qqq Aug 6, 2026
cc6931c
feat(server-transport,cli,acp): v1 route completion + colon rewrite +…
7723qqq Aug 6, 2026
62b7867
feat(tui): approval detail view + approve-for-session
7723qqq Aug 6, 2026
bd2854b
feat(tui): tool result cards — collapsed long results + Ctrl-O fold
7723qqq Aug 6, 2026
419ae40
feat(tui): slash-command completion popup
7723qqq Aug 6, 2026
fd57875
feat(tui): full-screen approval detail modal
7723qqq Aug 6, 2026
5691245
feat(tui): completion parity — /goal subcommands + description column
7723qqq Aug 6, 2026
784cd85
feat(tui): structured transcript entries — tool-call cards
7723qqq Aug 6, 2026
8ed04ac
fix(tui): review fixes — empty tool id guard + collapse threshold const
7723qqq Aug 6, 2026
55b2251
feat(tui): complete the Rust TUI feature surface
7723qqq Aug 7, 2026
4bede2d
fix: session resume record preservation + test isolation
7723qqq Aug 7, 2026
0e9f96b
feat(tui): settings menu, paste, and input polish
7723qqq Aug 7, 2026
c8ae390
feat(tui): approval preview, task output, goal badge, help list
7723qqq Aug 7, 2026
5ba374a
feat(tui): /usage shows the context window
7723qqq Aug 7, 2026
19325c5
feat(tui): searchable model picker
7723qqq Aug 7, 2026
5717c0c
feat(tui): turn summary recap for multi-tool turns
7723qqq Aug 7, 2026
4bf218a
refactor(tui): group App state, unify overlays, fmt; polish batch
7723qqq Aug 7, 2026
d83911c
feat(tui): tool-call duration badge + emoji user prefix
7723qqq Aug 8, 2026
c3539c6
feat(tui): broaden approval preview display blocks
7723qqq Aug 8, 2026
187ae00
feat(tui): clustered LCS diff for approval preview
7723qqq Aug 8, 2026
0349763
feat(tui): command aliases in completion + /disconnect
7723qqq Aug 8, 2026
9778c82
feat: G-1 node-sdk parity — catalog normalization, config/errors, ima…
7723qqq Aug 9, 2026
2c921f3
refactor(kimi-code): drive native sessions through kimi-server-serve RPC
7723qqq Aug 9, 2026
468635f
feat(kimi-tui): add /btw side-agent command
7723qqq Aug 9, 2026
8a8f5b5
feat(kimi-tui): task/subagent cards and native tool result rendering
7723qqq Aug 9, 2026
3e829ff
fix(kimi-agent): send prompt_cache_key only to Moonshot endpoints
7723qqq Aug 9, 2026
32d6979
refactor(node-sdk): remove unused /rust bridge surface (index/control…
7723qqq Aug 9, 2026
344f045
refactor: localize kosong data/type consumers in oauth, acp-adapter, …
7723qqq Aug 9, 2026
a53a4eb
feat(kimi-agent): normalize tool schemas for strict provider validators
7723qqq Aug 9, 2026
8ea5966
feat(kimi-tui): P0 component base — paged/searchable picker, modal + …
7723qqq Aug 9, 2026
d49bfc8
feat(kimi-tui): P1 selectors — danger detection, help panel, paged pi…
7723qqq Aug 9, 2026
5eb4a24
chore(node-sdk): drop unused /rust subpath export (G-1 bridge removal…
7723qqq Aug 9, 2026
e939d85
feat(kimi-tui): P2 command panel links — interactive /plugins /provid…
7723qqq Aug 9, 2026
ad6224c
feat(kimi-tui): P3 report builders — status/usage/goal panels + tool-…
7723qqq Aug 9, 2026
c7d5642
feat(kimi-tui): P3 mcp/plugins report builders — structured rows for …
7723qqq Aug 9, 2026
f3cbf90
feat(kimi-tui): P4 input polish — ghost argument hints, bash history …
7723qqq Aug 9, 2026
f233128
feat(kimi-tui): P5 task browser — interactive /tasks picker with outp…
7723qqq Aug 9, 2026
849bdc5
docs: G-4 攻坚对拍矩阵(P0-P5 完成状态)
7723qqq Aug 9, 2026
cba21d1
refactor(kimi-code): retire the TS TUI (G-6) — delete src/tui + test/…
7723qqq Aug 9, 2026
383a1ae
docs: G-4 P6 完成状态 — TS TUI 退役落地
7723qqq Aug 9, 2026
1e779dc
feat(kimi-tui): AskUserQuestion dialog — option pick / free text, ans…
7723qqq Aug 9, 2026
e71aeed
style(kimi-tui): zero clippy warnings — 34 lint fixes across 7 modules
7723qqq Aug 9, 2026
2bb71a9
test(kimi-tui): cover approval preview branches + kill edits — 120 green
7723qqq Aug 9, 2026
bfaecee
feat(kimi-tui): question dialog scrolls overflowing options (↑/↓ + hi…
7723qqq Aug 9, 2026
d026f40
feat(kimi-tui): help panel scroll hint when rows overflow
7723qqq Aug 9, 2026
1972449
refactor(kimi-tui): split app.rs — question dialog and report builder…
7723qqq Aug 9, 2026
deeb645
refactor(kimi-tui): split app.rs — approval queue/preview/danger dete…
7723qqq Aug 9, 2026
f92ad28
refactor(kimi-tui): split app.rs — terminal/clipboard/alias/discuss/m…
7723qqq Aug 9, 2026
1295f28
refactor(kimi-tui): split app.rs — slash-command dispatch and engine …
7723qqq Aug 9, 2026
a3fd008
feat(kimi-tui): Ctrl-B opens the task browser + i18n coverage audit (…
7723qqq Aug 9, 2026
6d173c8
feat(kimi-tui): /status context progress bar (20-cell ASCII, TS statu…
7723qqq Aug 9, 2026
bfd6331
feat(kimi-tui): /usage context line gains the same progress bar as /s…
7723qqq Aug 9, 2026
48a6775
refactor(kimi-tui): extract /goal command family from dispatch into c…
7723qqq Aug 9, 2026
a764484
style(kimi-tui): silence unused terminal param in cmd_goal
7723qqq Aug 9, 2026
4d07db5
refactor(kimi-tui): extract session command family from dispatch into…
7723qqq Aug 9, 2026
cb13a27
refactor(kimi-tui): extract config command family from dispatch into …
7723qqq Aug 9, 2026
66e24b5
refactor(kimi-tui): extract resource command family from dispatch int…
7723qqq Aug 9, 2026
5b87b75
fix(native-tools): unbreak the Windows vitest suite — loader, binding…
7723qqq Aug 9, 2026
9526554
test(kap-server): isolate engine config from the developer home + ada…
7723qqq Aug 9, 2026
0da8dce
fix(kosong): align native fast-path with SDK error and usage semantics
7723qqq Aug 9, 2026
2b7aaf4
fix(kimi-agent): config/get and config/set tolerate an empty home
7723qqq Aug 9, 2026
9bf0241
test: adapt host tests to the engine event contract and retired TUI
7723qqq Aug 9, 2026
3ed190a
feat(node-sdk): default llmStep + toolExecute bridge; migrate vscode …
7723qqq Aug 9, 2026
1e019ba
feat(kimi-agent): session work_dir/metadata persistence + cancel_comp…
7723qqq Aug 9, 2026
1f21818
fix(node-sdk): cross-harness session listing, replay tool records, en…
7723qqq Aug 9, 2026
252b33a
docs: rewrite CODEX_MIGRATION_PLAN to the current state
7723qqq Aug 9, 2026
b1ac1a4
docs: freeze remaining TS transition modules (FROZEN banners + rules)
7723qqq Aug 9, 2026
7295c49
feat(kimi-sdk): G-1 event handlers + MCP/skills/config/auth surfaces …
7723qqq Aug 9, 2026
5fac9f0
feat(kimi-agent): Xunfei error codes + task/cancel + compaction proje…
7723qqq Aug 9, 2026
3d2a167
fix(kimi-server): session work_dir resume, cancel lock, native tool s…
7723qqq Aug 10, 2026
9918e2b
feat(vscode): complete sdk-local G-1 localization
7723qqq Aug 10, 2026
8a877ca
fix(kimi-agent): add thinking/yolo fields to KimiConfig test construc…
7723qqq Aug 10, 2026
3dcc1ea
refactor(kimi-code): cut CLI oauth consumption to local modules (G-3)
7723qqq Aug 10, 2026
5b073f3
fix(server): v1 wire turn projection robustness (G-2)
7723qqq Aug 10, 2026
0d43cfc
refactor(kimi-code): localize SDK tool/config/error helpers (G-1 1a)
7723qqq Aug 10, 2026
562e6f5
refactor(kimi-code): localize models.dev catalog handling (G-1 1b)
7723qqq Aug 10, 2026
a0943fd
refactor(kimi-code): localize SDK runtime consumption (G-1 1c)
7723qqq Aug 10, 2026
f3e2158
refactor(kimi-code): drop the node-sdk dependency entirely (G-1 compl…
7723qqq Aug 10, 2026
3e46144
refactor(kimi-code): kimi web runs the Rust server, drop kap-server (…
7723qqq Aug 10, 2026
39ebaec
refactor(kimi-code): localize kaos fs/env surface, drop kaos dependen…
7723qqq Aug 10, 2026
9bc7f38
refactor(kimi-code): kimi acp forwards to the Rust binary, drop acp-a…
7723qqq Aug 10, 2026
b920827
refactor(vis): localize ToolInputDisplay, drop protocol dependency (G-5)
7723qqq Aug 10, 2026
157bcd2
chore(kimi-code): drop kimi-code-oauth and kimi-web workspace deps (G-3)
7723qqq Aug 10, 2026
734178a
fix(kimi-server-transport): enable goal_updated_projects_snapshot tes…
7723qqq Aug 10, 2026
802a7af
fix(kimi-code): repair SEA injector lookup, web auth URL, rust-bin pr…
7723qqq Aug 10, 2026
987b016
refactor(kimi-code): retire node-sdk/kap-server/acp-adapter/oauth/pro…
7723qqq Aug 10, 2026
817a6c8
refactor(kimi-agent): retire the rust-loop/runtime TS bridge and koso…
7723qqq Aug 10, 2026
e8c59c6
refactor(kimi-code): localize telemetry into the host, retire the pac…
7723qqq Aug 10, 2026
172756a
refactor(kimi-inspect): localize transcript into the app, retire the …
7723qqq Aug 10, 2026
2d9d6dc
feat(kimi-cli): recognize the migrate command with a TS-distribution …
7723qqq Aug 10, 2026
2ee4397
fix(kimi-web): carry message status through the v1 event pipeline (G-…
7723qqq Aug 10, 2026
71f9a84
test(kimi-web): pin the v1 protocol-to-AppEvent contract (G-2 #3/#5)
7723qqq Aug 10, 2026
818b9bd
chore(kimi-code): baseline polish — typecheck, scripts, e2e, client t…
7723qqq Aug 10, 2026
95a93ca
ci(release): build and ship the Rust CLI binaries with the npm shell …
7723qqq Aug 10, 2026
fdced0d
test(vscode): localize the fake provider harness after kosong retired
7723qqq Aug 10, 2026
58178d2
chore(kimi-code): prune dead kimi-agent devDep, sync migration plan s…
7723qqq Aug 10, 2026
9c0a58f
feat(kimi-agent): persist Task-tool subagent conversations (replay da…
7723qqq Aug 10, 2026
ac13720
feat(kimi-agent): dual-channel compaction summarizer (host-proxy supp…
7723qqq Aug 10, 2026
b62e61f
feat(kimi-cli): add --prompt long option and attached -p<value> (TS p…
7723qqq Aug 10, 2026
f433f3d
refactor(kimi-native-tools): unify image resize filter with the engin…
7723qqq Aug 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
5 changes: 5 additions & 0 deletions .changeset/add-copy-command.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": minor
---

Add the /copy slash command to copy the last assistant message to the clipboard.
5 changes: 5 additions & 0 deletions .changeset/btw-side-agent-command.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Add the /btw slash command to ask a forked side agent a question, and /endbtw to end it. Run /btw <question> to try it.
5 changes: 5 additions & 0 deletions .changeset/calm-swarms-retry.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

web: Recover transient subagent rate limits without surfacing them as session errors.
5 changes: 5 additions & 0 deletions .changeset/catalog-add-default-model.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Add a --default-model flag to kimi provider catalog add to persist the provider's default model. Pass --default-model <id> to set it.
5 changes: 5 additions & 0 deletions .changeset/chinese-i18n-completion.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Add missing English translations for the Coding Plan configuration dialog and replace hardcoded strings across the TUI and CLI with proper i18n calls.
6 changes: 6 additions & 0 deletions .changeset/cli-i18n-hardcoded.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
"@moonshot-ai/kimi-code": patch
"@moonshot-ai/agent-core": patch
---

Replace hardcoded English strings in CLI command descriptions with proper i18n calls so `kimi --help` respects the configured locale. Fix locale propagation from the CLI shell to agent-core.
5 changes: 5 additions & 0 deletions .changeset/configurable-bash-background-timeout.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Add `bash_task_timeout_s` config option under `[background]` to control the default background Bash task timeout. Set to `0` to disable the timeout entirely.
5 changes: 5 additions & 0 deletions .changeset/curly-bikes-swim.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Integrate Rust native translation engine into the shared i18n package, with automatic fallback to pure JS when the native module is unavailable. Add createI18n() factory and translateBatch() to the kimi-code i18n module. Deprecate @moonshot-ai/i18n-shared/node.
5 changes: 5 additions & 0 deletions .changeset/debug-rpc-surface.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Mount the dev-only /api/v1/debug RPC surface behind the --debug-endpoints flag, exposing every scoped service for local debugging on loopback binds. Pass --debug-endpoints to kimi server run to enable it.
5 changes: 5 additions & 0 deletions .changeset/debug-zip-timestamped-filename.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Fix `/export-debug-zip` and `kimi export` overwriting the previous ZIP archive when run repeatedly on the same session; the default export filename now includes a timestamp.
5 changes: 5 additions & 0 deletions .changeset/fix-astron-thinking-effort-levels.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Fix the thinking-effort picker only offering on/off for iFlytek Astron models that actually support effort levels; GLM-5.2 and DeepSeek-V4-Pro/Flash now offer High/Max.
5 changes: 5 additions & 0 deletions .changeset/fix-goal-verifier-and-types.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Fix the goal completion verifier to handle verifier subagent failures gracefully, tighten verdict parsing for non-empty but unmarked results, and add the missing `created` goal change kind to wire protocol types.
5 changes: 5 additions & 0 deletions .changeset/fix-i18n-locale-freeze.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Fix parts of the CLI (menus, hints, footer tips, and prompts) staying in English after selecting Chinese, caused by some translations being captured before the configured locale was applied.
7 changes: 7 additions & 0 deletions .changeset/fix-i18n-locale-propagation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
"@moonshot-ai/agent-core": patch
"@moonshot-ai/kimi-code-sdk": patch
"@moonshot-ai/kimi-code": patch
---

Fix locale propagation so agent-core messages match the TUI language, and fix Enter key in the experiments selector on Kitty-protocol terminals.
5 changes: 5 additions & 0 deletions .changeset/fix-image-paste-rejection-exit.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Fix the CLI exiting unexpectedly when reading an image from the clipboard fails; it now falls back to pasting text.
5 changes: 5 additions & 0 deletions .changeset/fix-native-build-injector-lookup.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Fix the native SEA build failing to locate the kimi-build injector, and include the rust-bin workspace package in Nix builds.
5 changes: 5 additions & 0 deletions .changeset/fix-rejection-crash-telemetry.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Report crash telemetry for unhandled promise rejections.
5 changes: 5 additions & 0 deletions .changeset/fix-rust-bin-platform-probing.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code-rust": patch
---

Fix the wrapper not finding binaries packed for linux-arm64, darwin-x64, and win32-arm64.
5 changes: 5 additions & 0 deletions .changeset/fix-v2-version.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/agent-core-v2": patch
---

Fix `getCoreVersion()` to dynamically read the version from `package.json` instead of returning a hardcoded `'0.0.0'`.
5 changes: 5 additions & 0 deletions .changeset/fix-web-open-url-auth.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Fix kimi web opening an unauthenticated page: the opened URL now carries the server token, and the wrapper hands the Rust binary the bundled web assets.
5 changes: 5 additions & 0 deletions .changeset/fix-windows-workspace-duplicates.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

web: Fix duplicate workspace groups on Windows when the same folder is opened with different path spellings, such as a different drive-letter casing; all of the folder's sessions now list under the single merged group.
5 changes: 5 additions & 0 deletions .changeset/i18n-agent-core.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
'@moonshot-ai/agent-core': minor
---

feat: add i18n support to agent-core with en/zh locale coverage for all user-facing strings
10 changes: 10 additions & 0 deletions .changeset/i18n-shared-unification.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
"@moonshot-ai/i18n-shared": minor
"@moonshot-ai/agent-core": patch
"@moonshot-ai/kimi-code": patch
"@moonshot-ai/kap-server": patch
"@moonshot-ai/kimi-web": patch
"kimi-code": patch
---

Add shared i18n package (`@moonshot-ai/i18n-shared`) with unified translation engine, locale detection, and type-safe key paths. Migrate all Node.js apps to the Rust-backed cached translator and browser apps to the shared pure-JS engine.
5 changes: 5 additions & 0 deletions .changeset/mcp-security-hardening.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Fix project-level mcp.json discovery and harden MCP server connections: enforce OAuth state validation, restrict stdio environment inheritance to an allowlist, block bearer-token leakage to internal addresses, and cap tool result size.
6 changes: 6 additions & 0 deletions .changeset/minidb-durability-hardening.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
"@moonshot-ai/minidb": patch
"@moonshot-ai/kimi-code": patch
---

Harden the embedded key-value engine's durability: WAL compaction now always terminates under sustained write storms instead of chasing the tail forever, a committed write can no longer slip through a compaction rotation undetected, torn WAL tails no longer misplace later disk-mode value pointers, read-only opens never create or modify database files or compact under a live writer, corrupt index-definition files no longer force a full rebuild, stale compaction temp files are cleaned on open, and the process lock can no longer be taken over by several processes at once.
6 changes: 6 additions & 0 deletions .changeset/minidb-perf-hardening.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
"@moonshot-ai/minidb": patch
"@moonshot-ai/kimi-code": patch
---

Speed up the embedded key-value engine under stress: queries with skip/limit now stream candidates instead of decoding every match first, LRU eviction picks victims in O(1) instead of scanning every key, bursts of simultaneously expired TTL keys are drained within seconds, existence checks and size counting no longer read values when they only need metadata, and one oversized token can no longer poison the full-text index.
6 changes: 6 additions & 0 deletions .changeset/minidb-reader-catchup.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
"@moonshot-ai/minidb": minor
"@moonshot-ai/kimi-code": patch
---

Cluster readers of the embedded key-value engine now catch up incrementally by replaying only newly appended WAL frames after another process writes, instead of fully reopening the shard on every read; cross-process read latency drops by orders of magnitude at larger shard sizes, and readers still fall back to a full reopen after WAL rotation or truncation.
6 changes: 6 additions & 0 deletions .changeset/minidb-review-hardening.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
"@moonshot-ai/minidb": patch
"@moonshot-ai/kimi-code": patch
---

Keep the embedded key-value engine writable when a WAL compaction rotation fails mid-way instead of wedging it until reopen, stop a rolled-back write from erasing a concurrently committed value for the same key, let the RESP server survive aborted connections, recover after oversized requests, and answer each pipelined command independently, and keep the previous full-text index intact when a postings rebuild fails.
5 changes: 5 additions & 0 deletions .changeset/misc-code-quality-fixes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Fix a syntax error in the minidb query store test, prevent plugin directory leaks on removal, replace JSON-serialization of config records with structuredClone, close a registry-removal window in WebSocket connection teardown, add workspace path traversal guards in transcript reads, and route hook failures through the event bus instead of silent console output.
5 changes: 5 additions & 0 deletions .changeset/moonshot-only-prompt-cache-key.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Stop sending the Moonshot-only prompt_cache_key field to other OpenAI-compatible providers, which rejected it with a 400 error and broke native-LLM turns.
5 changes: 5 additions & 0 deletions .changeset/native-engine-event-stream.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Fix native engine sessions silently dropping their event stream after 512 events.
5 changes: 5 additions & 0 deletions .changeset/portrait-image-orientation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Fix portrait JPEGs compressed by the engine keeping their physical orientation.
5 changes: 5 additions & 0 deletions .changeset/preserve-empty-reasoning.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Preserve empty model reasoning blocks across providers so multi-step tool calls can continue.
5 changes: 5 additions & 0 deletions .changeset/record-interrupted-tool-calls.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Record and close tool calls interrupted mid-stream, preventing empty assistant messages that could wedge the session when the provider stream breaks off.
5 changes: 5 additions & 0 deletions .changeset/require-goal-completion-criterion.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": minor
---

Enforce concrete completion criteria when creating goals. The model must now provide a verifiable check (at least 10 characters) before starting a goal; vague requests like "review the project" are rejected with a prompt to ask the user for specifics.
22 changes: 22 additions & 0 deletions .changeset/rust-engine-default-everywhere.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
"@moonshot-ai/kimi-code": minor
"@moonshot-ai/agent-core": patch
"@moonshot-ai/kimi-agent": patch
---

Make the Rust agent engine the real default across every turn-running surface:

- Wire the Rust engine into the interactive TUI (`runShell`) and the ACP server, matching the print-mode path — previously only `kimi -p` could use it.
- Treat a missing `[agent]` config section as `engine = "rust"` on both the v1 and v2 paths, matching the schema default; `agent.engine = "js"` remains the opt-out.
- Replace the silent JS fallbacks with diagnostic logs (adapter load failure, missing addon/binary) and export `getRustEngineMode()` from the rust-loop adapter; the TUI startup log now records the active engine.
- Bring the Rust turn override to lifecycle parity with the JS loop. Host-proxy mode: `beforeStep` runs before every model step (compaction, steer-buffer flush, context injection — mid-turn steered messages previously never reached a Rust-driven turn; a blocking result fails the step) and `recordStepUsage`/`afterStep` record goal token accounting after every step. Native-LLM mode: per-step accounting hooks into the `llm.step.end` engine event instead, and steered messages land at continuation boundaries. `shouldContinueAfterStop` drives steer/Stop-hook/goal-outcome continuations on both paths by re-driving the engine with the remaining step budget.
- Propagate turn cancellation into the Rust engine on **both transports**: the abort signal sets the engine's per-turn cancellation flag (stdio: `agent/cancel_turn` RPC; napi: the new `cancelTurnRust` export backed by a turn-id registry in `napi_bindings.rs`), checked before every Rust step — native-LLM turns included — and short-circuits the next host callback, mapping the result to stopReason `aborted`. A user interrupt therefore ends the turn as `cancelled` (goal pauses as interrupted) instead of `failed`. An in-flight provider request still finishes its current step before the flag takes effect.
- Remove the stale `@moonshot-ai/server` workspace dependency that broke `pnpm install`.
- Port the JS loop's request-recovery ladder into the Rust turn override (host-proxy path): HTTP 413 → media-degraded → media-stripped resend, image-format rejection → media-stripped resend, structural 400 → one-shot strict wire-compliant rebuild, with the media projection latched for later steps of the turn. Abnormal non-abort endings now also emit the `turn.interrupted` loop event with step detail.
- **Security**: native Write/Edit execution no longer bypasses the host permission gate. Write-class tools now run the full host lifecycle from Rust — prepare (dedupe/PreToolUse) → authorize (permission policies + approval UI, with the same `Name(path)` session approval rule as the JS tools) → native execute → finalize (redaction) — admitted by a side-effect-free `claims_write` check so the host lifecycle never runs twice for one call. The napi bridge gained prepare/authorize/finalize ThreadsafeFunction channels (reusing the stdio transport's typed handlers), so both transports report `supports_tool_lifecycle` and take the gated native path; a transport without the channels falls back to full host execution instead of executing unapproved writes.
- Native Bash for the standalone Rust agent path (`tools/bash.rs`): shell detection mirrors kaos (Git Bash on Windows via KIMI_SHELL_PATH/PATH/common installs; bash→sh probing on POSIX), foreground `-c` execution with the TS tool's noninteractive env, timeout kill (60s default / 300s cap), 50k/2k-per-line output caps, Windows cwd→POSIX and NUL-redirect rewrites, and the TS dangerous-command pattern table mapping to the `Bash(__dangerous__)` approval rule. Gated behind the same host prepare/authorize/finalize lifecycle as writes; off by default — host-driven paths keep the JS Bash (background tasks, detach, timeout-to-background are host-domain), the standalone agent opts in via `NativeToolset::with_shell`, and background runs always fall back to the host.
- Standalone Rust goal driver (`Agent::run_prompt`): drives an active goal as continuation turns per the GOAL.md contract — Codex-derived skeleton with the tuned semantics. Continuation input renders from the canonical `continuation.md` steering template (single-source `include_str!` into `kimi-native-tools/src/goal/templates/`, carrying the tuned completion audit and 3-turn blocked audit), budgets hard-stop into `budgetLimited` at turn boundaries, aborts/failures pause the goal with interrupt/runtime semantics. The standalone `UpdateGoal` tool enforces the tuned contract: only `complete`/`blocked` are accepted, `complete` runs the independent completion verifier (a rejection keeps the goal active and tells the model to bring evidence), `blocked` records the streak for the audit trail. Turn overrides now receive the full interceptor chain (native tools → knowledge → MCP → goal) instead of the raw host callbacks.
- Standalone session persistence and a working built-in loop: the `persistence/` module (SQLite session/record stores) is now mounted; `Agent::save_session`/`load_session` persist the context history and goal into the `SessionStore`, and restore applies the GOAL.md restart rule (an `active` goal comes back `paused`, resumable; `complete` is never restored; blocked/paused/budget states restore as-is). The built-in loop's LLM is now the real `HostLlmProxy` (the former `AgentLlm` stub errored on every chat) and `messages_to_loop_messages` actually projects context messages (text/image blocks, tool calls, tool-result linkage) instead of returning an empty history.
- Phase-D session-owned agent surface: the stdio engine now exposes `session/create` / `session/prompt` / `session/cancel` / `session/save` / `session/load` / `session/list`, mounting the `session/` SessionManager module. The engine owns sessions, agents, goal driving (`session/prompt` runs the goal continuation driver), and persistence (`$KIMI_AGENT_HOME/sessions.db`, in-memory otherwise); the host installs `host/*` handlers and renders. `rust-loop.ts` gained the matching thin client (`sessionCreate`/`sessionPrompt`/… plus `installSessionHostHandlers`), `contract.ts` gained the wire types (`Session*Request/Response`, `SessionLifecycleEvent`), and the manager gained goal-aware `save_agent_session`/`load_agent_session` wrappers over `Agent::save_session`. The agent emits `session.turn.started` / `session.turn.ended` / `session.goal.updated` lifecycle events over the `host/event` channel so thin clients render without owning the loop. Fixed en route: the built-in loop passed the raw host callbacks instead of the interceptor chain, so goal/knowledge/MCP tools leaked to the host — caught by the end-to-end session smoke (goal tools now settle inside the engine, the canonical continuation steering demonstrably reaches the model, and a mid-flight `session/cancel` ends the prompt `Aborted` with the goal paused as interrupted).
- Fix stdio binary discovery for the Cargo workspace layout: `findBinary` now also searches the repo-root `target/` directory and picks the most recently built candidate instead of silently preferring a stale per-crate build.
- `kimi-agent session` CLI subcommands (list / resume / delete / current / export) run offline against the shared `$KIMI_AGENT_HOME/sessions.db` store and exit without starting the RPC server. Session persistence is now single-source: `save_agent_session` embeds the agent's durable state (context + goal) under `SessionRecord.agent_state` in the manager's own record (via `Agent::durable_state`/`restore_durable_state`) rather than writing a second record, so a session created over `session/*` RPC is visible to `session list`/`export` and vice versa.
5 changes: 5 additions & 0 deletions .changeset/rust-native-engines.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Move goal-mode decision engine and permission rule DSL parser to Rust.
5 changes: 5 additions & 0 deletions .changeset/rust-native-llm-tools-multimodal.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": minor
---

Rust engine: native LLM HTTP transport with SSE streaming (OpenAI-compatible and Anthropic, `agent.nativeLlmProvider`), in-process sandboxed execution of read-only tools Read/Grep/Glob (`agent.nativeTools`), and multimodal (text/image) message content blocks on the Rust wire. Adds a fire-and-forget `host/event` channel so streaming deltas, step boundaries, and natively-executed tool results are still recorded in the host transcript.
5 changes: 5 additions & 0 deletions .changeset/rust-session-workdir-fixes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Fix resumed sessions losing their workspace directory, Stop hanging during long-running commands, and config writes dropping the thinking/yolo sections.
5 changes: 5 additions & 0 deletions .changeset/session-client-host-tools.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-agent": patch
---

Host-facing `createSessionClient`: the phase-D integration point for hosts (print mode, TUI). Hand the engine a step function and a tool table instead of running a turn loop — the engine owns the loop, context, goal driving, and persistence; the client returns a `{ prompt, cancel, save, load }` handle and renders from events. Host tools register at `session/create` (new `tools` param → `AgentOptions.host_tools`) and settle back at the host via `host/execute_tool`. Fixed en route: the standalone agent assembled its tool table (native + goal + MCP + knowledge) and then dropped it (`tool_defs: vec![]`), leaving the model blind to every tool — caught by the new stdio e2e test, which asserts the model actually sees `HostEcho`/`CreateGoal` and the host tool executes with the model's arguments. `KIMI_AGENT_FORCE_STDIO=1` skips the napi fast path for stdio-only surfaces.
5 changes: 5 additions & 0 deletions .changeset/session-engine-controller.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Extract the session-owned engine integration into a reusable `SessionEngineController` (client factory + event/approval sinks, dependency-injected so the whole flow is unit-testable without a live engine), and adopt it in the `KIMI_SESSION_ENGINE=1` print pilot. The controller owns the engine `SessionClient`, translates engine wire events onto the SDK `Event` union, bridges the tool-approval gate onto a host yes/no prompt, and exposes an `onRawEvent` tap for engine-only signals the translator drops (e.g. `session.goal.updated`). This is the reusable seam for a future thin-client host; the interactive TUI deliberately stays on the proven `runTurnOverride` path (v1/v2), where Rust already drives turns and the override's `dispatchEvent` already emits the SDK events the TUI renders — no parallel TUI integration is introduced.
Loading