Cursor 0.43 版本更新与 AI 编程的未来

Cursor 0.43 版本引入 Composer Agent,提升项目理解与编辑能力,AI 编程工具持续创新。

原文标题:更新了!带Agent的Cursor太疯狂了

原文作者:机器之心

冷月清谈:

机器之心最新报道称,AI 编程工具 Cursor 发布了 0.43 版本,新增的 Composer Agent 功能成为用户关注的焦点。Composer Agent 能够深入理解项目内容,通过分析文件提供修改建议,显著提升项目质量。同时,Bug Finder 功能也在测试中,能帮助开发者在开发早期检测到潜在的代码问题。除了这些新功能,Cursor 还改进了语义搜索及文件推荐系统,让用户体验更加顺畅。虽然这些工具增强了开发者的效率,但也需要谨慎使用,因为功能仍在测试阶段。文章还提到 GitHub Copilot 在过去两年中的表现,显示其显著提升了开发者编码速度及代码质量。AI 编程工具的快速发展无疑在改变开发者的工作方式,或许人人都能成为程序员。

怜星夜思:

1、Composer Agent功能如何改变编程工作流程?
2、你觉得AI 编码工具的普及对职业开发者的影响如何?
3、使用AI工具编写的代码到底靠不靠谱?

原文内容

机器之心报道
编辑:陈陈、小舟
AI 辅助编程工具这条赛道越来越卷了。

新晋 AI 编程神器 Cursor,终于迎来了一次备受关注的版本更新,Cursor 0.43 来了。


新版本最大亮点之一是推出了 Composer Agent 功能,其具有完整的项目理解 / 编辑能力。

图片
用户已经用上了 Composer 新引入的 Agent 模式,并让其解析整个文件。来源:https://www.reddit.com/r/cursor/comments/1gyq690/cursor_composer_agent_is_here/

网友表示:「带有 Cursor Agent 的 Cursor 0.43.3 太疯狂了。」


启用 Composer Agent 有两种方法:

1. 在 Composer 聊天窗口中启用
2. 在 Settings > Editor > Chat & Composer 中设置「Enable Tools」选项


图源:https://x.com/imrat/status/1860620192214081614

有网友迅速对 Composer Agent 展开了测试。

例如,有网友让 Composer Agent 读取项目文件:


还有网友尝试在一个小型 WordPress 插件上进行测试,目标是让插件更稳健、安全、可维护。

该插件包含 2 个文件夹中的 34 个文件,Composer Agent 很好地掌握了主要功能并选择了要审查的关键文件。然后,Composer Agent 继续审查文件并建议实施 4 项增强功能,更改了 2 个文件,并将一些关键视图移动到单独的文件中,创建新文件夹和新文件,最后还总结了所做的改变。大约做了 580 个更改,约占此插件中行数的 48%。

图源:https://x.com/imrat/status/1860620194726486344

除了 Composer Agent,Bug Finder 功能也是大家比较关注的, 目的是通过检测潜在的问题,帮助开发者尽早在开发过程中修复代码问题。 

据了解,该功能会分析你当前分支和远程代码库中主分支之间的代码变更。官方建议是在将代码从功能分支合并到主分支之前使用此功能,以便在开发初期发现潜在问题。 

目前,这一功能还处于 Beta 实验阶段 ,并且不是免费的,官方也说明了 Bug 检测仍处于试验阶段,可能无法发现代码中的所有问题,可能会损失用户金钱,却得不到任何有效漏洞,请自行承担使用风险,看来大家还是慎用此功能。

图源:https://x.com/imrat/status/1860620203744178687

此外,Cursor 0.43 还有几项改进,包括:

  • 语义搜索:使用户可以更轻松地使用几个字符找到所需的文件,和 VS Code 的搜索方式一致;
  • image drop;
  • File pill recommendations。

新版本上线后,用户们也是非常激动,都开始用起来了,但有些网友表示自己并没有更新成功,「下载页面只允许下载 setup x 0.42.5,运行 Cursor:Attempt Update,但没有成功。」

对此,官方回复是为了确保新版本的可靠性,他们正在分批推出,还不能更新的用户只能在等几天了。


除了 Cursor 的更新吸引眼球外,近日 Github 公布的一些数据证实,这些编程工具确实在改变开发者的工作体验。

真实测试 GitHub Copilot 到底多好用

GitHub Copilot 已经面世两年了,在此期间,该工具帮助开发人员将编码速度提高了 55%,借助 GitHub Copilot,85% 的开发人员对自己的代码更有信心,88% 的开发人员在使用 GitHub Copilot 时感觉更顺畅。

虽然 GitHub Copilot 一直在不断完善,但大家仍有一个疑问,使用 GitHub Copilot 编写的代码质量客观上是更好了还是更差了?

为了回答这个问题,GitHub 进行了一项随机对照试验。

在这项研究中,他们招募了 202 名拥有至少五年经验的开发者,并且将一半参与者随机分配到使用 GitHub Copilot 的组,而另一半被指示不要使用任何 AI 工具。所有参与者都被要求完成一个编程任务,为一个 Web 服务器编写 API 端点。随后,通过单元测试和由开发者组成的专家组评审对代码进行了评估。 

结果显示,使用 GitHub Copilot 编写程序的那组人员代码质量显著提高了,并且功能性更强、可读性更强、可靠性更高、可维护性更强、更简洁。

GitHub Copilot 编写的代码功能更强大

如果代码无法正常工作,那么就不能说它是高质量的。因此,研究者通过分析代码通过了多少单元测试来衡量其功能性。

结果发现,使用 GitHub Copilot 编写的代码通过的测试显著更多(p=0.002)。事实上,在这项研究中,拥有 GitHub Copilot 访问权限的开发者通过全部 10 个单元测试的概率高出 56%(p=0.04)。

这意味着使用 GitHub Copilot 帮助开发者编写的代码在功能性上有着较大的优势。 


使用 GitHub Copilot 编写的代码更容易阅读

在研究的第一阶段中,有 25 名开发者编写的代码通过了全部 10 个单元测试。这些开发者随机被分配去盲审匿名提交的代码,包括使用和未使用 GitHub Copilot 编写的代码。

审查者发现,GitHub Copilot 显著减少了代码错误:使用 GitHub Copilot 的开发者平均每 18.2 行代码出现一个代码错误,而未使用的情况下是每 16.0 行出现一个。这意味着使用 GitHub Copilot 的情况下,平均每个代码错误前可以多写 13.6% 的代码行(p=0.002)。这可以转化为实际的时间节省,因为每个代码错误都需要开发者进行处理。



此外,开发人员还发现使用 GitHub Copilot 编写的代码更易读、更可靠、更易于维护和更简洁。虽然这些差异很小,但它们具有统计意义,并且确实有助于改善代码库。



使用 GitHub Copilot 编写的代码更有可能获得批准

 开发者更有可能批准使用 GitHub Copilot 编写的代码,概率高出 5%(p=0.014)。在实际场景中,这意味着使用 GitHub Copilot 的开发者编写的代码更容易达到合并的标准,从而加快修复漏洞或部署新功能的速度。 


如今, AI 编码界不断推出新的工具,又不断的迭代更新,人人都是程序员的时代或许真的要到来了。


参考链接:
https://x.com/imrat/status/1860620189806592455
https://github.blog/news-insights/research/does-github-copilot-improve-code-quality-heres-what-the-data-says/

© THE END 
转载请联系本公众号获得授权
投稿或寻求报道:[email protected]

我觉得这会让团队合作变得更简单,尤其是在代码审查和版本控制上。如果每个人都能用上这个工具,代码质量只会越来越好!但是这样会不会使开发者变得更依赖工具呢?

我认为,Composer Agent将大幅提高我们的工作效率,让我们可以专注于更高层次的设计和逻辑,而不是过多关注细节。同时,它可以帮助我们避免一些低级错误,对新手尤其友好。

我认为AI工具的普及是一把双刃剑,虽然提高了效率,但同时也意味着开发者需要不断学习更新的技能以保持竞争力。那些不愿意适应新工具的开发者可能会被淘汰。

根据研究,使用像GitHub Copilot这样的工具编写的代码质量普遍更高,我觉得未来在代码审查中,工具与人类审查能够有机结合,会取得更好的效果。

说实话,AI代码有时像是拼图,有些地方可能不够严谨,但整体上能极大提升效率。像这个Composer Agent能实时反馈,应该会提升很多代码的质量!

从一个角度来看,这能降低学习门槛,更多的人可以参与编程。但另一方面,这也可能使得市场上对传统开发者的需求减少,尤其是基础开发岗位。

这个功能就像有一个智能助理,可以处理琐碎的代码审核工作!想象一下,我们只需给它指令,它就能处理大部分重复性工作,开发者可以把时间用在更有创造性的项目上。

虽然AI工具能够辅助代码编写,但我认为在关键项目中,我们仍然需要程序员的专业经验和判断,工具并不能完全替代人类。

我觉得,AI工具会像当年的自动化和计算机化一样,流行一段时间后,会与人类的创造力结合,形成更加高效的开发模式。所以说,开发者更应该培养自己的创新能力和解决问题的能力!