What feature would you like to see?
希望 Kimi Code 可以作为 VS Code 原生 Chat 的 Session Target / Agent Harness 被选择,而不再只能通过左侧 Activity Bar Webview 使用。
用户应能在原生 Chat composer 底部、默认显示为 Local 的 harness 选择器中选择 Kimi Code。选择后,后续任务由 Kimi Code 自己的 session、Agent loop、工具调用、权限、Plan Mode 和子 Agent 能力执行;VS Code 使用原生 Chat UI 展示对话、工具调用、审批、问题和 session 历史。
这不是“在模型选择器中加入 Kimi 模型”的需求。目标是选择完整的 Kimi Code Agent Harness,类似选择 Claude Code 或 Codex。
首期范围是普通 VS Code 窗口中的原生 Chat;独立 Agents Window 的支持将在普通 Chat 稳定后单独跟进。
Additional information
背景与参考
当前 apps/vscode 扩展以 Activity Bar Webview 为主。它已经拥有 KimiHarness、Kimi session、历史恢复、事件订阅、审批和问题处理能力,因此具备实现原生 Chat adapter 的基础。
参考实现:
https://github.com/kalynnka/vscode-deepseek-harness
该项目使用 VS Code chatSessions proposed API,将 DeepSeek Harness 注册为原生 Chat 的 Session Target。用户可在 Chat 底部的 harness 选择器中选择 DeepSeek Harness;它不是第二个 Webview,也不是仅注册一个语言模型。
Kimi Code 应参考其“原生 Chat Session Target”的路径,但直接复用 Kimi Code 的 Node SDK 和 Kimi session,而不是复用 DSH 的 HTTP/WebSocket 协议。
用户体验目标
- 用户安装 Kimi Code 的 Experimental VSIX,并按文档授予所需 proposed APIs。
- 用户在 VS Code 原生 Chat 新建会话。
- 用户在 Session Target 选择器中选择
Kimi Code。
- 用户在原生 Chat 内使用完整 Kimi Code:
- 新建、打开、恢复 Kimi session
- 流式查看回答、thinking、工具调用和文件修改
- 回答 Kimi 问题、批准或拒绝操作
- 取消和 fork session
- 切换 Kimi 模型、thinking effort、Plan Mode 和权限模式
- 现有 Kimi Code 左侧 Webview 继续可用。
架构方向
功能应实现于现有 apps/vscode 代码中,并与 Webview 共存:
KimiHarness / Kimi session registry
├── 现有 KimiWebviewProvider
└── 新增 KimiChatSessionProvider
两种 UI 共用登录态、模型目录、session 持久化、workdir 校验和权限语义,但不共用 UI bridge 协议。
Native Chat adapter 负责:
- Kimi session summary / resume state -> VS Code Chat session list 与历史
- Kimi prompt / steer -> 原生 Chat request handler
- Kimi text / thinking / tool / file-change event -> ChatResponseStream
- Kimi question / approval -> VS Code 原生 question / confirmation UI
- Kimi cancel / fork / model / thinking / plan / permission -> 原生 session controls
现有 Webview 侧已能从 Kimi SDK resume state 回放历史,可作为 transcript 映射的实现参考。
发布策略
首期不等待 stable API。
由于 chatSessions 目前是 proposed API,建议先为当前扩展增加 Experimental build profile:
- Experimental VSIX 与正式扩展使用相同 extension id;
- Experimental 包同时包含现有 Webview 和新的 Native Chat Session Target;
- 用户安装 Experimental VSIX 时替换 Marketplace 正式版;
- Marketplace 正式构建不包含 proposed API,不受影响;
- API 稳定后,再将该功能纳入正式发布包。
不建议首期创建可与正式扩展同时安装的第二个 extension id,因为两个 extension host 同时管理同一批 Kimi session 会增加 session 所有权、事件重复和配置冲突风险。
里程碑
M0:Experimental 基础
M1:只读 session
M2:原生 Chat 对话
M3:交互与控制
M4:普通 Chat 稳定化
后续:Agents Window
普通 VS Code Chat 稳定后,单独创建 follow-up issue:
支持 Kimi Code Session Target 在 VS Code Agents Window 中运行
该后续项将验证:
extensions.supportAgentsWindow 下的扩展激活
- Chat 与 Agents Window 间的 Kimi session 恢复和切换
- 原生问题、审批、工具调用与文件修改渲染
- 已知限制和所需用户配置
不把独立顶层 Kimi tab 作为承诺;第三方 session type 目前受 VS Code 内置 allowlist 限制。
希望确认的事项
- 是否接受以 proposed
chatSessions API 作为 Experimental 首期技术路线?
- 是否接受“当前扩展 + Experimental build profile”的发布策略?
apps/vscode 的 Native Chat adapter 是否应优先抽取为 host-neutral Kimi session 层?
- 请指定 Kimi SDK / session runtime 边界的 reviewer。
What feature would you like to see?
希望 Kimi Code 可以作为 VS Code 原生 Chat 的 Session Target / Agent Harness 被选择,而不再只能通过左侧 Activity Bar Webview 使用。
用户应能在原生 Chat composer 底部、默认显示为
Local的 harness 选择器中选择Kimi Code。选择后,后续任务由 Kimi Code 自己的 session、Agent loop、工具调用、权限、Plan Mode 和子 Agent 能力执行;VS Code 使用原生 Chat UI 展示对话、工具调用、审批、问题和 session 历史。这不是“在模型选择器中加入 Kimi 模型”的需求。目标是选择完整的 Kimi Code Agent Harness,类似选择 Claude Code 或 Codex。
首期范围是普通 VS Code 窗口中的原生 Chat;独立 Agents Window 的支持将在普通 Chat 稳定后单独跟进。
Additional information
背景与参考
当前
apps/vscode扩展以 Activity Bar Webview 为主。它已经拥有 KimiHarness、Kimi session、历史恢复、事件订阅、审批和问题处理能力,因此具备实现原生 Chat adapter 的基础。参考实现:
https://github.com/kalynnka/vscode-deepseek-harness
该项目使用 VS Code
chatSessionsproposed API,将 DeepSeek Harness 注册为原生 Chat 的 Session Target。用户可在 Chat 底部的 harness 选择器中选择 DeepSeek Harness;它不是第二个 Webview,也不是仅注册一个语言模型。Kimi Code 应参考其“原生 Chat Session Target”的路径,但直接复用 Kimi Code 的 Node SDK 和 Kimi session,而不是复用 DSH 的 HTTP/WebSocket 协议。
用户体验目标
Kimi Code。架构方向
功能应实现于现有
apps/vscode代码中,并与 Webview 共存:KimiHarness / Kimi session registry
├── 现有 KimiWebviewProvider
└── 新增 KimiChatSessionProvider
两种 UI 共用登录态、模型目录、session 持久化、workdir 校验和权限语义,但不共用 UI bridge 协议。
Native Chat adapter 负责:
现有 Webview 侧已能从 Kimi SDK resume state 回放历史,可作为 transcript 映射的实现参考。
发布策略
首期不等待 stable API。
由于
chatSessions目前是 proposed API,建议先为当前扩展增加 Experimental build profile:不建议首期创建可与正式扩展同时安装的第二个 extension id,因为两个 extension host 同时管理同一批 Kimi session 会增加 session 所有权、事件重复和配置冲突风险。
里程碑
M0:Experimental 基础
argv.json授权文档M1:只读 session
M2:原生 Chat 对话
M3:交互与控制
M4:普通 Chat 稳定化
后续:Agents Window
普通 VS Code Chat 稳定后,单独创建 follow-up issue:
支持 Kimi Code Session Target 在 VS Code Agents Window 中运行该后续项将验证:
extensions.supportAgentsWindow下的扩展激活不把独立顶层 Kimi tab 作为承诺;第三方 session type 目前受 VS Code 内置 allowlist 限制。
希望确认的事项
chatSessionsAPI 作为 Experimental 首期技术路线?apps/vscode的 Native Chat adapter 是否应优先抽取为 host-neutral Kimi session 层?