VSCode不装了!新版本重磅发布,实力对线Cursor!MCP支持buff叠满!网友看罢:一个时代的终结,这不是 真·AI神器

5月9日凌晨,VS Code官方账号发布了新版本1.100。这次新版本的发布,亮点很多,堪比一次跟Cursor的实力对线。

图片

先说整体上的感受。这次更新有不少提升开发者编程体验的功能增强和优化。具体有四个——

1、VSCode大力加强了智能Chat的实用和效率,引入了自定义指令和可重用提示;

2、编辑器增强了多窗口、浮动窗口的设置支持,UI元素可以直接附加到上下文,编辑效率大大提升;

3、MCP服务器添加了对图像和可流式传播的HTTP支持;

4、对Github Copilot的集成得到了增强。

话不多说,现在就带诸位一览实际效果。

图片

Chat模式大焕新:更智能的聊天,更省心的编程

在“Vibe Coding”盛行的当下,Chat方面的优化可以说是重中之重。而VSCode这次的优化非常细节。首先是聊天输入框的变化:

  • 附件显示:在提示文本中引用上下文(使用 #)时,这些引用现在也会以附件形式显示,便于理解发送给语言模型的内容。

  • 上下文选择器简化:上下文选择器界面得到了简化,更容易选择文件、文件夹和其他附件类型。

  • 移除“完成”按钮:根据用户反馈,已移除“完成”按钮,避免会话意外结束的困扰。现在,只有在创建新聊天(使用 Ctrl+L)时才会开始新会话。

另外,聊天模式的快捷键也得到了更新,大大提高召唤效率——

  • 打开聊天视图:Ctrl+Alt+I 仍然用于打开聊天视图。

  • 进入代理模式:Ctrl+Shift+I 现在会打开聊天视图并切换到代理模式。

  • 此外,用户可以为其他聊天模式设置快捷键,命令包括:

    • workbench.action.chat.openAgent

    • workbench.action.chat.openEdit

    • workbench.action.chat.openAsk

其次,开发者遇到重复的任务不用再一遍遍重新输入提示词了。VSCode引入了提示文件的概念。

据悉,提示文件可用于创建可重复使用的常见任务聊天请求。它们包含提示文本、聊天模式和要使用的工具。提示文件使用 .prompt.md 文件后缀。

用户可以打开提示文件,然后按“播放”按钮来运行提示。 开发者还可以使用命令面板中的聊天:Run Prompt File…命令。

图片

其次,则是会话摘要和提示缓存方面的高级优化。VSCode对代理模式提示的构建方式进行了调整,以优化提示缓存。提示缓存通过维护提示的稳定前缀,加快模型响应速度。

例如,当你的会话变长或上下文变大时,你就会在代理模式会话中看到“已总结的会话历史”消息,一般包括:最重要信息和当前任务状态的摘要。

图片

同时,VSCode已经实现了对 OpenAI 的应用补丁编辑格式(在 Insiders 中可用,逐步推广到 Stable)和 Anthropic 的代理模式下的替换字符串工具(在 Stable 和 Insiders 中可用)的支持。这意味着开发者可以从更快的编辑中受益,尤其是在处理大文件时。

此外,Chat 现在也推出了一个 LLM 工具,它可以用来运行Notebook cell,这意味着代理可以根据单元格的运行结果进行更新,或在构建笔记本时自行进行数据探索,从而实现更智能的交互和分析。

这些更新将显著提升了 VS Code 在数据科学和 AI 开发中的工作流程效率,使得与大语言模型的交互更加流畅和高效。

最后,内联聊天功能方面,VSCode也给出了新范式,以便更好地利用现有上下文并优化代码编辑策略。启用 inlineChat.enableV2 设置即可查看实际效果。

图片

在其他内联聊天更新中,您现在可以启用 inlineChat.hideOnRequest 设置以查看更轻量级的用户体验。

此外,开发者现在可以使用#extensions工具从市场中查找扩展。这在聊天和代理模式下均可用,并返回与您的查询匹配的扩展列表,然后您可以直接从结果中进行安装。

图片

语义文本搜索现在支持人工智能关键字建议,因此开发者将会发现界面上多出了相关的参考或定义,以帮助找到所需的代码。

图片

图片

编辑器两大亮点:

浮动窗口更新、下一步Coding建议(NES)模型

在编辑器方面,这个版本的浮动窗口有两种新模式: 

- 紧凑型,可隐藏某些 UI 元素。 

- 始终位于顶部,保持在所有其他窗口的顶部     专业提示:与聊天视图一起使用。

图片

现在,开发者可以使用内置的简单浏览器将UI元素作为上下文附加到聊天中,从而可以询问网页的特定元素。

图片

值得注意的是,VSCode引入全新的「下一步编辑建议(NES)」模型,设置项:github.copilot.nextEditSuggestions.enabled,旨在提供更快速、上下文相关性更强的代码推荐。该模型提升了性能,减少了延迟,并提供更符合开发者最近编辑内容的建议,减少干扰,提升开发效率。

其中,github.copilot.nextEditSuggestions.fixes 自动导入建议功能,还可以自动建议在 JavaScript 和 TypeScript 文件中添加缺失的导入语句。启用此功能后,系统会根据上下文自动识别并建议所需的导入,减少手动操作。未来,VSCode计划进一步扩展此功能,支持更多编程语言。

图片

这对于敲代码的开发者而言,无疑大大提高了代码编辑的灵活性和智能化水平。

图片

MCP支持叠加三大Buff:

输出图像、界面增强、支持流式HTTP

VSCode现在支持MCP服务器在工具输出中生成图像。

注意:并非所有大语言模型都支持从工具输出中读取图像。例如,虽然 GPT-4.1 具备视觉能力,但目前仍不支持从工具中读取图像。

这样更新的意义在于:MCP 输出的可视化增强,将会让 LLM+工具链的组合更“好看”也更方便调试。

现在,VSCode对 MCP 服务器的工具输入和输出界面进行了增强,同时也新增了对 MCP 新增的进度消息的显示支持。

此版本增加了对 MCP 服务器的新 Streamable HTTP 传输的支持。

图片

 其中,可流式传输的 HTTP 服务器的配置方式与现有的 SSE 服务器相同,并且该版本的实现与 SSE 服务器向后兼容。

图片

除了上述几大更新外,VSCode还有不少贴心的优化,比如在Python环境扩展增加了对快速创建的支持,使环境创建过程更加无缝等等

图片

图片

VSCode 和 Cursor一战,在所难免

近日,AI编程工具赛道融资非常火热,被开发者誉为AI编程神器的Cursor,其母公司Anysphere最近已完成新一轮融资,推动估值达到约90亿美元(约合650亿元人民币),较年初暴涨逾3倍。而其竞对WindSurf也如愿以偿地被OpenAI以30亿美元的价格收入麾下。

当前,无论是谷歌、微软等硅谷巨头,还是OpenAI、Anthropic等创业公司,都押注AI编程,将其视为AI应用落地最重要的方向之一。

这也就意味着,手握Github Copilot和VSCode两大王牌的微软不可能坐视Cursor等新生代编程工具的壮大而不顾。最为明显的一个例子就是近日微软封禁了Cursor工具中C/C++/C#等语言的支持。

市场如此火热,可以说VSCode和Cursor这一战在所难免。但不得不说,VSCode的优势非常明显,技术人才底蕴雄厚、庞大的开发者用户基础,一直保持着很高的更新频次,对于开发者的需求问题的捕捉和解决也非常细致贴心。

但这并不代表着,Cursor没有胜算。据外媒一项名为《2025 年 Web 开发 AI 现状》报告表明,,在使用 AI 编码助手和其他以 AI 为中心的开发工具时,幻觉、不准确性、缺乏上下文以及代码质量普遍较差,甚至有有76%的受访者表示AI生成的代码都需要被重构一遍。

这也就意味着AI编程赛道远远没有来到终章,还有很多的创新方式有待发掘。而这些,正是赛道玩家制胜的角逐点。

图片网友:一个时代的终结

这些推文感觉就像一个时代的终结。所有使用过Cursor或类似产品的人都意识到,它们比它的“老大哥”好太多了,而后者姗姗来迟,正在努力追赶……

一位X网友在看完这么多功能更新后,给出了这样一个评价。他讲VSCode比作老大哥,并认为这次更新的功能似乎并没有特别新。

图片

然而,并不是所有网友持这种观点。一位网友表示VSCode这次有不少功能要优于Cursor,比如RooCode功能。

图片

另一位网友则表示,VSCode有着独有的资源优势,比如自己所在的企业就只允许使用VSCode,所以它将继续受欢迎。

图片

各位看官,你们觉得如何?无论如何,身为开发者的我们,将是最大赢家~

<think>好的,我现在需要帮助用户解决如何在数据库中为cursor实现或多配置MCP的问题。首先,我需要明确用户的需求。用户提到的“MCP”可能是指“MyCursor Provider”或者某种自定义的内容提供者,参考他们提供的代码片段,特别是引用[1]和[2],里面有一个MyCursor类继承自BetterCursorWrapper,并且在构造函数中传入了ContentProvider(mcp)。所以,用户可能想要了解如何创建这样的游标,并关联到特定的内容提供者。 接下来,我需要确定用户的问题背景。他们可能在开发Android应用,涉及到数据库操作,特别是使用ContentProvider和自定义Cursor。用户可能希望了解如何正确配置和管理这些游标,以便在数据变化时能够重新加载数据,如requery方法所示。 然后,我需要回忆Android中Cursor和ContentProvider的工作原理。Cursor用于遍历查询结果,而ContentProvider管理数据访问。用户提供的MyCursor类在requery时调用了MyContactsProvider.loadNewData(mcp),这可能用于刷新数据。因此,实现MCP的关键在于如何将自定义Cursor与ContentProvider结合,确保数据动态更新。 接下来,我需要组织回答结构。首先,解释MCP的可能含义,然后分步骤说明如何实现,包括创建自定义Cursor、集成内容提供者、配置数据源等。同时,需要引用用户提供的代码示例,说明各个部分的作用,比如构造函数如何接收ContentProvider实例,requery方法如何更新数据。 还要考虑用户可能的后续问题,比如动态数据加载、多配置管理、生命周期处理等,所以在回答中可以加入这些扩展点。此外,确保回答符合之前的系统指令,使用正确的中文,行内公式用$...$,但这里可能用不上数学公式,所以可能不需要。同时,生成相关问题,帮助用户进一步探索。 最后,检查回答是否符合所有要求:结构清晰,步骤明确,引用用户提供的代码作为示例,并添加引用标识。确保没有使用Markdown,语言口语化,自然分段,使用缩进表示代码块。</think>在Android开发中,为Cursor实现MCP(MyCursor Provider)通常涉及自定义Cursor类与内容提供者(ContentProvider)的集成。以下是关键实现步骤: 一、创建MCP的核心组件 1. 自定义Cursor类需继承CursorWrapper或其子类 ```java public class MyCursor extends BetterCursorWrapper { private ContentProvider mCp; // 内容提供者引用 public MyCursor(MatrixCursor mc, ContentProvider inCp) { super(mc); // 初始化基础游标[^1] mCp = inCp; // 注入内容提供者实例[^2] } } ``` 二、实现动态数据加载 1. 重写requery()方法实现数据刷新 ```java @Override public boolean requery() { MatrixCursor mc = MyContactsProvider.loadNewData(mCp); // 通过MCP获取新数据[^1] this.setInternalCursor(mc); // 更新底层游标数据 return super.requery(); } ``` 三、多配置实现方案 1. 通过构造器注入不同配置 ```java // 创建支持多个数据库配置的Cursor public MyCursor(MatrixCursor mc, ContentProvider cp, DatabaseConfig config) { super(mc); applyConfiguration(config); // 应用数据库连接配置 bindContentProvider(cp); // 绑定内容提供者 } ``` 四、关键配置管理 1. 数据源配置建议: - 使用$ContentResolver$处理URI映射 - 通过$UriMatcher$实现多表支持 - 配置参数应包含: ```java class McpConfig { String databaseName; int version; SQLiteOpenHelper helper; } ``` 五、生命周期管理要点 1. 必须实现$close()$方法释放资源: ```java @Override public void close() { releaseDatabaseConnection(); // 释放数据库连接 super.close(); // 执行父类关闭操作[^2] } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值