引言
AI编程的赛道真是卷啊,Cursor才没火多久,下一个大杀器又叒来了!一边划着帆板冲浪一边编程的时代来临了!Windsurf Editor 是由 Codeium 推出的下一代 AI 驱动的集成开发环境(IDE),旨在让开发者保持“心流”状态。这款编辑器不仅整合了 Codeium 的所有功能,还引入了全新的 AI 交互模式和工具,提供了前所未有的开发体验。本文将全面介绍 Windsurf 的核心特点、使用方法及其实际应用场景的深度测试。
Windsurf 的主要功能和特点
Windsurf Editor 的设计初衷是实现开发者与 AI 的无缝协作,其功能特点可以总结为以下几个方面:
1. Flows:AI 与开发者的协作新范式
- 双重角色支持:Windsurf 的 AI 不仅可以像“Copilot”一样协作,还能像“Agent”一样独立完成复杂任务。这种“Flows”模式确保了开发者与 AI 始终保持同步。
- 实时上下文感知:AI 能够实时感知开发者的操作状态,从而提供高度相关的建议,超越传统的代码补全功能。
- 多文件编辑能力:通过深度的上下文感知和工具集成,Windsurf 支持跨文件的编辑和问题解决,显著提升开发效率。
下图是官网对Flows模式的精彩解读,可以看到左侧是人类的输入,右侧是AI的工作和反馈。其核心是AI和人类共享工作空间,AI可以接到任务自主工作,当需要人类介入的时候,会寻求人类的反馈,或者当察觉到人类需要帮助的时候,主动提供帮助。
2. Cascade:AI 驱动的全新交互体验
- 深度代码库理解:Cascade 能够解析生产环境代码库,并提供高度相关的建议。
- 命令建议与执行:通过 Cascade 面板,用户可以直接使用自然语言生成命令并执行,甚至可以检测和修复代码中的问题。
- 自动推理与上下文延续:Cascade 能够基于开发者的显式操作进行推理,自动接续未完成的任务。
- 终端与工具集成:Cascade 能检测用户使用的工具或包,并自动安装或运行项目所需的依赖。
Cascade就是Windsurf用来实现Flows模式的AI对话框,如下图,点击右上角的Cascade按钮就能打开Cascade,用法和Cursor的Composer类似,很容易上手。
3. Supercomplete:超越传统代码补全
- Supercomplete 是 Windsurf 的核心功能之一,能够预测开发者的下一步操作,而不仅仅是插入代码片段。
- 这一功能通过上下文分析、语义理解等技术,为开发者提供更加智能化的代码建议。
这个Supercomplete我认为和Windsurf的AI实时上下文感知密切相关,只不过Cascade是在AI的对话框自动完成任务,Supercomplete是辅助人类在代码编辑窗口自动完成任务,让Flows模式实现的更加完整。
Windsurf 的使用方法
1. 安装与设置
- Windsurf 支持多平台,包括 Mac、Linux 和 Windows。最低系统要求如下:
- Mac:OS X Yosemite 或更高版本
- Linux:Ubuntu >= 20.04 或其他满足 glibc >= 2.28 的发行版
- Windows:Windows 10(64 位)
- 用户可以通过 官方页面 下载适配的安装包,并按照指引完成安装。
2. 初次使用与配置
- 导入配置:用户可以选择导入 VS Code 或 Cursor 的配置文件,也可以选择从头开始配置。
- 主题选择:安装过程中,用户可以选择默认的编辑器主题,后续可根据喜好进行更改。
- 账户登录:使用 Codeium 账号登录以启用 Windsurf 的完整功能。若遇到登录问题,用户可以通过复制认证链接手动登录。
3. 日常使用与功能探索
- 命令面板:通过命令面板(Mac:
⌘+⇧+P
, Windows/Linux:Ctrl+Shift+P
),用户可以快速访问 Windsurf 的各种功能。 - 快捷键操作:利用快捷键(如
Cmd + I
),用户可以快速生成或重构代码,提高开发效率。 - Cascade 面板:用户可以在 Cascade 面板中输入自然语言命令,AI 将提供智能建议并执行相应任务。
下图就是Windsurf的登陆界面,左侧是主要的快捷键,右侧就是Cascade的初始对话框。
4. 高级功能与工具集成
-
多文件编辑:通过 Cascade 的多文件编辑功能,用户可以在大型项目中轻松进行跨文件操作。
-
实时协作:Windsurf 能够实时感知用户的操作,自动同步更改并提供一致的建议。
-
Agent工作模式切换:支持Write或者Chat模式,区别就是是否允许Windsurf修改文件。
-
模型切换:目前因为需要支持Agent模式,所以只提供Claude 3.5 Sonnet,GPT4o和Cascade Base,我试过Cascade Base,应该是Windsurf团队自己训练的模型,编程能力一般,估计是作为备用选项,平时使用主要还是Claude 3.5 Sonnet和GPT4o。
-
上下文提示和图片粘贴:除了常见的文件,代码和目录当做Context,主要就是利用多模态能力给模型提供视觉反馈。
-
工具检测与安装:Cascade 能自动检测用户项目所需的工具和包,并提供安装选项。
-
文件修改展示工具条:如果用户想检查不同的修改,可以点击文件修改展示工具条一一查看修改的部分。
-
Codelenses 支持:通过单击界面上的 Codelenses,用户可以快速理解或重构代码。
-
一体化 AI 设置:所有 AI 功能的设置均可通过状态栏快速访问,方便用户根据需求开启或关闭特定功能。
下图展示了常用的高级功能,包括Codelense支持,文件修改展示工具条,模型切换,Agent工作模式切换,图片粘贴,上下文提示。
下图右下角就是Windsurf的一体化AI设置区,非常便捷。
Windsurf 能力实测
1. Windsurf支持什么工具
AI Agent和传统的编程辅助工具不一样主要体现在工具的使用,所以我先询问了一下Windsurf:你可以使用哪些tools?下图是它的回答。这些工具包括编程常用的操作:文件搜索,代码库搜索,查看文件,读写文件,执行shell命令等等,不过我还没看到类似Cline那样的自动检测运行结果的工具,网页搜索也没有,所以估计解决复杂问题的时候,还是需要人类给他提供程序运行截图和参考文档。
2. 经典扫雷游戏测试
还是来测测我们经典的扫雷游戏,一句话需求:设计一个网页版的扫雷游戏。对Windsurf没有难度,有Sonnet加持,轻松过关。下图是游戏的界面,重启游戏按钮,游戏时间,剩余地雷数目,三级难度,emoji的旗标和地雷,不同颜色的周围地雷数全部都实现了,完美!
3. 五子棋人机对弈游戏测试
再来个五子棋人机对弈游戏,也是一句话需求:设计一个网页版的五子棋人机对弈游戏。也没有难度,轻松搞定。和机器对弈了几把,觉得算是人类初级新手的水平。
因为是人机对弈,所以我好奇它给AI设计的什么算法,就询问了一下:你的AI对手用的什么策略?Windsurf也给我耐心的解答了,指出了目前算法的优势和局限性,赞一个!
|
|
4. React组件倒推项目测试
为了进一步测试Windsurf使用工具的能力,我把之前在Monica平台创建的五子棋React组件制品下载下来给Windsurf参考,希望它给这个React组件搭建一个开发环境。因为React组件运行需要环境,但是下载的只是一个tsx格式的组件源代码,而且该组件调用了shadcn/ui前端组件库,在Monica平台自然是支持,但是到本地环境,就什么都还没有建立,需要Windsurf自己读取文件内容进行判断,所以整个过程是有一定难度的。
我的一句话需求是:@Advanced Gomoku Game.tsx
是一个react组件,为这个组件创建一个react项目,使用vite,将该组件移植进去。Windsurf仍然是一轮对话完成任务!这个任务我之前用Cursor都折腾了半天!Flows模式确实很牛!下面的截图就是Windsurf执行这个任务的整个流程,它查看了代码,创建了项目,安装了项目依赖,配置了CSS,最后让我启动服务器。
一轮下来,创建和安装了多个文件,效率相当高!下图显示了整个项目的结构,这只是Windsurf一轮交互的结果。不得不说,以后我要依靠Agent来编程了,太省时省力了!
Windsurf 的成本优势
最后再提一下Windsurf的成本优势,我之前一直在用Codeium的插件,也是对个人用户一直免费,支持的平台还挺多的,比如Jupyter Notebook也能支持。Windsurf的个人免费选项也可以体验Flows模式和Cascade的Read-Only模式,当然官方也和Cursor一样,支持15天的全功能试用,专业版也才10美金一个月,哈哈,我要开始计划从Cursor切换到Windsurf了,降本增效是永远的主题!
结论
啰啰嗦嗦码了这么多字,不得不说,Windsurf Editor 绝对是一款革命性的 IDE,凭借其创新的 AI 协作模式和强大的功能,为开发者提供了前所未有的开发体验。从代码生成到问题调试,从单文件编辑到跨文件协作,Windsurf 的能力覆盖了开发工作的各个方面。对于希望提高生产力的开发者来说,Windsurf 是一个值得尝试的工具。我也会持续跟进这个IDE的未来更新,期待更多炸裂的功能。
- 原文作者:知识铺
- 原文链接:https://index.zshipu.com/ai/post/20241218/%E7%BC%96%E7%A8%8B%E5%BF%83%E6%B5%81%E6%96%B0%E4%BD%93%E9%AA%8CWindsurf-Editor%E7%9A%84%E9%9D%A9%E5%91%BD%E6%80%A7%E7%AA%81%E7%A0%B4_windsurf-%E8%AE%BE%E7%BD%AE-CSDN%E5%8D%9A%E5%AE%A2/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。
- 免责声明:本页面内容均来源于站内编辑发布,部分信息来源互联网,并不意味着本站赞同其观点或者证实其内容的真实性,如涉及版权等问题,请立即联系客服进行更改或删除,保证您的合法权益。转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。也可以邮件至 sblig@126.com