https://code.visualstudio.com/updates/v1_99

本次更新看点速览 

  • Copilot
    • Agent 模式在 VSCode 稳定版中可用,并支持 mcp。
    • Ask、Edit、Agent 模式统到的 Chat 视图。
  • 可通过 editor.inlineSuggest.syntaxHighlightingEnabled 可开启内联建议语法高亮。

    image

  • >git checkout to... 命令展示更多细节。

    image

  • Linux Legacy Server (GLIBC < 2.28 或 LIBSTDC++ < 3.4.25) 支持已结束。如果仍想运行,请参考 FAQ 进行 patch。

聊天 (Chat) 

  • Agent 模式在 VSCode 稳定版中可用,可通过 chat.agent.enabled 设置关闭(默认开启)。可通过如下图使用 Agent 模式。免费订阅也可以使用(订阅计划文档)。更多详见: agent mode 文档

    image

    Agent 模式主要 AI 驱动工具,端到端、自动的实现用户的需求。支持调用如下工具:

    相关设置如下:

    • chat.agent.enabled: 启用 agent 模式,默认为 true。
    • chat.agent.maxRequests:一次 agent 对话,最大请求模型请求数量(免费用户默认 5, 其他用户默认 15)。
    • chat.mcp.discovery.enabled:启用 MCP 服务发现,自动发现当前设备上其他 AI 工具配置的 MCP 服务,默认为 true。也可以分应用配置。

    示例: 使用 React 和 Node.js 实现一个 todo list 应用程序。,agent 让 AI 自动运行终端初始化项目,生成相关代码(实测效果不好,没有自动运行服务,且代码存在 bug,启动不起来,让他修复问题也修复不了)。

  • Agent 模式支持 mcp server。

    • 可通过 mcp.vscode/mcp.json 设置配置 mcp server。可通过 ${env:API_KEY}${input:ENDPOINT} 引用环境变量或输入变量。
    • 可以通过 >MCP: Add Server 快速配置 MCP server,添加完成后可点击聊天输入控件刷新按钮,加载。

    • 更多详见: MCP 文档

  • 新增了如下 Agent mode 内置工具。

    • Thinking 工具 (实验特性),可通过 github.copilot.chat.agent.thinkingTool 设置开启或关闭(默认关闭),开启后将启用深度思考(速度将变慢),详见:原文
    • Fetch 工具,可通过 #fetch 引用互联网内容。
    • Usages 工具,可通过 #usages 调用 IDE 的 “Find All References”, “Find Implementation” 能力。
  • 使用 Agent 模式(实验性)创建一个新的工作区,通过 github.copilot.chat.newWorkspaceCreation.enabled 设置开启或关闭(默认关闭),详见:原文

  • 稳定了 language model tools API,可以用于 agent 模式,参见: LanguageModelTool API 文档

  • 代理模式工具批准,可通过 chat.tools.autoApprove 自动确认。

  • Agent 模式在 SWE-bench,使用 Claude 3.7 Sonnet,通过率为 56.0%

  • 支持配置自定义模型,详见:官方文档

    image

  • 可重复使用的提示词文件改进,详见:原文

  • 预览支持的 Copilot Vision (多模态)改进,支持拖拽图片文件发送给模型。

配置编辑器 (Configure the editor) 

  • Ask、Edit、Agent 模式统到的 Chat 视图。

    image

  • 使用即时索引的更快的工作区搜索,支持 github 远程索引,详见:文档

  • Copilot 状态菜单,Hover 新增索引状态,状态图标可以查看是否启用了代码完成。

  • Copilot 开箱即用的设置,详见:原文

  • 在稳定版 VSCode 安装了 Copilot chat 预览版,将提示不可用。

  • 语义文本搜索改进(实验特性),可通过 github.copilot.chat.search.semanticTextResults 开启语义化搜索。开启后可在搜索侧边栏按 cmd + i 触发语义化搜索。此外,可以在 chat 输入框中使用 #searchResults 传递搜索结果上下文给 AI。

  • 优化设置编辑器,搜索算法,略,详见:原文

  • window.titleBarStylecustom (默认) 时。Windows 和 Linux 新增 window.controlsStyle 配置项,来配置控制按钮(最大化、最小化、关闭)样式:

    • native: 这是默认值,并根据基础平台渲染窗口控制
    • custom: VSCode 风格。
    • hidden: 隐藏标题栏。

代码编辑 (Code Editing) 

  • 下一个编辑建议 (NES) 到达一般可用状态(可通过 github.copilot.nextEditSuggestions.enabled 开启),并进行了一些改进。

    • 使编辑建议更加紧凑,更少干扰周围的代码,并且更易于阅读。
    • 更新指示器,以确保所有建议更容易引起注意。
  • AI 编辑改进。

    • 在编辑中重写文件时,将编辑器之外的诊断事件静音。以前,在这种情况下,我们已经禁用了 squiggles。这些更改减少了问题面板中的闪烁,还确保我们不会发布快速修复代码操作的请求。
    • 现在,当您决定保留AI编辑时,我们明确保存文件。
  • 基于工具的编辑模式(可通过 chat.edits2.enabled 配置项启用),使 Edit 模式和 Agent 模式使用同一工具来编辑代码。

  • 内联建议语法高亮(可通过 editor.inlineSuggest.syntaxHighlightingEnabled 开启)。

    配置开启前

    image

    配置开启后

    image

  • 基于 Tree-Sitter 的语法高亮(预览),支持 css 和 正则高亮,通过 editor.experimental.preferTreeSitter.csseditor.experimental.preferTreeSitter.regex 配置项开启

笔记本 (Notebooks) 

  • Jupyter notebook document 最小版本升级到 4.5。
  • AI notebook 编辑改进。详见: 原文
  • AI chat 对接 notebook,和常规文本编辑器对齐:
    • 通过聊天 AI 对 notebook,创建、编辑、展示 AI diff(chat.edits2.enabled 启用)。
    • 支持将 notebook 输出作为上下文添加到 chat 输入框。

无障碍 (Accessibility) 

略,详见: 原文

源代码版本控制 (Source Control) 

  • >git checkout to... 命令,下拉列表,展示更多细节。可通过 git.showReferenceDetails 配置(默认开启)。

    image

  • 状态栏添加源代码控制提供商展示。

    image

  • 优化尚未提交编辑器装饰,减少其展示。

  • 提交消息输入框光标样式可以通过 editor.cursorStyleeditor.cursorWidth 配置项配置。

终端 (Terminal) 

  • 添加终端集成质量,有 rich、 basic、 none 三种(hover 在终端标签上可以查看)。以帮助 ai-agent 运行终端命令的可靠性和兼容性。
  • 终端IntelliSense改进(预览)。

    • 终端输入建议列表对 codecode-insiderscode-tunnel 命令增强

      • 子命令参数提示。

        image

      • uninstall 展示安装的插件列表。

        image

      • code --locate-shell-integration-path 提示支持的 shell

        image

    • 全局命令的自动刷新。

    • 对于有参数选项,展示选项值的上下文信息。

      image

    • 对 fish shell 支持到 rich 质量级别。

      image

    • 文件路径建议列表支持展示图标。

      image

    • 内联建议(幽灵文本)也添加更多信息。

      image

  • 默认简化终端 hover 展示内容。

    image

    可通过 显示详细信息 按钮展示更多信息。

    image

  • 签名的 PowerShell shell 集成,详见: 原文

  • 稳定了终端 Shell 类型 API,详见: 源码

远程开发 (Remote Development) 

  • Linux Legacy Server (GLIBC < 2.28 或 LIBSTDC++ < 3.4.25) 支持已结束。如果仍想运行,请参考 FAQ 进行 patch。

企业 (Enterprise) 

  • 支持 macOS 设备管理。

贡献到扩展 (Contributions to extensions) 

  • Python
    • Python 3.13 以上实验性支持 PEP 660 描述的可编辑安装。可通过 python.analysis.enableEditableInstalls 配置项配置。
    • 更快,更可靠的 Pylance 诊断经验(实验性),通过 python.analysis.usePullDiagnostics 配置项可配置。
    • 新增 python.analysis.nodeArguments 配置项,可配置传递给 nodejs 语言服务器的参数,如可以配置 --max-old-space-size=8192 限制内存使用。

扩展制作 (Extension authoring) 

  • Terminal.shellIntegration tweaks, 详见:原文

API 提案 (Proposed APIs) 

  • Task problem matcher status
  • Send images to LLM

更多详见:原文

工程 (Engineering) 

  • 使用新的扩展更新检查 API 检查更新。详见:原文