What's Changed
- refactor(kap-server): drop the WebSocket handshake and acks by @wbxl2000 in #4738
- fix: direct skill invocation through Skill tool by @RealKai42 in #4713
- fix: stabilize workspace primary changes by @liruifengv in #4689
- feat: support same-name skills across workspace directories by @liruifengv in #4690
- feat(tower): import artifact woker by @tpoisonooo in #4427
- fix(agent-core-v2): reduce workspace registry read amplification by @hunshcn in #4747
- feat(tui): keep fullscreen transcript groups steady and show live progress by @Grapedge in #4751
- fix: request web search in links mode by @7Sageer in #4764
- fix: apply configured permission rules when an agent starts by @7Sageer in #4757
- fix(kimi-code): make fullscreen copy reach the clipboard in tmux and on Linux by @Grapedge in #4755
- chore: sync web dist from code-app by @kimi-agent-bot in #4765
- chore(release): use patch bumps for tower changes by @sailist in #4768
- fix(agent-core-v2): watch explicit skill directories by @pvzheroes125 in #4766
- fix(agent-core-v2): reuse uploaded MCP tool images by @pvzheroes125 in #4767
- fix(agent-core-v2): watch extra skill directories by @pvzheroes125 in #4770
- chore: sync web dist from code-app by @kimi-agent-bot in #4783
- feat(agent-core-v2): persist user and project permission rules by @sailist in #4550
- feat: add minimum version upgrade prompts by @liruifengv in #4756
- feat(tui): default to fullscreen mode when experimental flag is set by @Grapedge in #4771
- build(nix): upgrade pnpm dependency fetcher to v5 by @sailist in #4748
- fix(server): support Unicode download filenames by @kimi-agent-bot in #4563
- test(tui): bound queued message timer pumping by @kimi-agent-bot in #4793
- test(server): cover download filename edge cases by @kimi-agent-bot in #4790
- feat: include gitignored files in file suggestions by @sailist in #4752
- fix: keep skill catalog visible when Skill tool is disabled by @liruifengv in #4799
- fix(server): correct raw file download responses by @kimi-agent-bot in #4800
- fix(kap-server): end tool calls cut short by a stop as interrupted by @wbxl2000 in #4772
- fix(kap-server): reject a manual compaction while another one is running by @wbxl2000 in #4773
- fix(kap-server): apply the busy filter before paging the session list by @wbxl2000 in #4774
- fix(kap-server): broadcast event.session.restored when an archived session is restored by @wbxl2000 in #4775
- fix(kap-server): map auth and Tower errors to their codes and stop sending stack traces by @wbxl2000 in #4777
- feat(kap-server): take turn_number in the file-history queries by @wbxl2000 in #4788
- fix(agent-core-v2): end a question cut short by a stop as cancelled by @wbxl2000 in #4779
- fix(kap-server): keep the tool result note on tool_call items by @wbxl2000 in #4776
- feat(kap-server): link tool_call items to the task they run as by @wbxl2000 in #4789
- fix(agent-core-v2): spawn Windows batch script commands through cmd.exe by @liruifengv in #4791
- fix(kap-server): apply agent_config and custom metadata when creating a session by @wbxl2000 in #4778
- fix(kap-server): show only the scheduled prompt in cron-fired user messages by @wbxl2000 in #4780
- docs(changelog): sync 2.5.3 from apps/kimi-code/CHANGELOG.md by @kimi-agent-bot in #4810
- docs(server-api): drop removed endpoints and document the ones the reference missed by @wbxl2000 in #4809
- chore: sync release/2026-11-10 back to main by @kimi-agent-bot in #4811
- refactor(agent-core-v2): port agent loop runtime core by @sailist in #4630
- feat(tui): use primary bullet for NotifyUser updates in fullscreen mode by @Grapedge in #4814
- chore: sync web dist from code-app by @kimi-agent-bot in #4816
- chore: remove loop runtime working notes by @sailist in #4817
- test: remove redundant and low-value test cases by @kimi-agent-bot in #4746