大家觉得cursor现在越来越聪明了,是吧?你们用它做过哪些有趣的项目呢?
最近我开通了cursor pro账户,心里一直想着要好好体验一下它的能力。刚好我对rust和tauri很感兴趣,所以我突发奇想,决定利用cursor,自己不写一行代码就搞定一个桌面应用。
前期准备
首先得安装rust,然后用pnpm create tauri-app来初始化应用。技术栈我选择了rust和solidjs。依赖安装好了之后,运行pnpm tauri dev,就能看到下面的界面了。

实现过程

我直接用cursor的composer模式,它会读取整个仓库,然后在合适的位置生成相应的文件。由于我添加了solid-icons,vite报了点小错,我就问它需不需要手动安装依赖。经过实际测试,rust的新依赖会自动安装,而前端的依赖则需要手动装一次。


依赖安装好后,应用正常运行了,这时候复制任何文本都会生成一条记录。不过界面看上去有点丑,我们可以让它更好看一些。


现在样式看起来好多了,而且还支持排序。我们可以再加上搜索功能和本地保存。不过由于大模型本身的能力有限,最好一次只让它处理一件事,这样才能充分利用git的版本管理功能。当然,cursor本身也支持像check point这样的功能来管理代码。


搜索功能很快就加上了,但本地保存一直出错,主要是涉及到tauri的app_data_dir路径问题,看起来是tauri v1和v2版本不匹配。我不断提问,发现它会在两个问题之间反复修改代码。我查看了tauri的GitHub仓库 这个issue,发现社区对这个问题也有不同的看法。
所以我决定换个方法来实现,绕过这个不明所以的错误。cursor还支持自定义prompt增强,我给它输入tauri v2的文档,避免它再犯错。
- 自定义规则

- 项目中增加.cursorrules规则

- 解析tauri文档

顺便支持一下图片和emoji功能,让它达到一个相对可用的状态。


不过它的实现只支持系统的emoji,对于微信或其他地方自定义的emoji只能降级为文字。
打包
因为涉及到多端打包,建议使用github actions来完成,但对于有客户端经验的小伙伴来说,多端打包环境往往是最大的麻烦。这次的prompt会话次数大部分都浪费在这里了。


好在github actions非常符合我的预期,我让cursor帮我写了一个发版脚本,执行npm run bump 1.0.19 & git push && git push –tags就能触发自动打包。
不过github actions执行需要几分钟,每次出错大多是路径和环境变量的问题。而且对于mac,我需要打包出intel和m芯片的版本,对于windows则需要打包成msi和exe版本。
经过多次反复对话,总算打出了预期的产品。确实在这个过程中遇到不少改不对的情况,和之前tauri路径的问题类似,碰到这种事确实让人心烦,只能自己眼看着调试,加快解决进度。

找了一台mac和windows环境测试,结果运行正常,感兴趣的朋友可以尝试一下。如果后续有功能迭代,直接执行上面的打包脚本就行了。
总结感悟
大模型的本质还是概率,具备一定的逻辑推理能力,但超出范围就不行了。对于模型训练中无法收集到的信息表现不佳,因此需要各种上下文的注入。
不过像cursor这样的智能编辑器,能让效率提升好几倍。以前可能要花两天的时间才能完成的应用,现在几个小时就能搞定。在很多轻量级应用场景下,这给我们带来了很多想象空间。在AI时代,积极拥抱AI,才能不被时代的潮流抛弃。

这个项目真是个创意,利用cursor做桌面应用的思路很有意思!特别是处理依赖和版本问题的过程,感觉很有挑战性。期待看到更多这样的分享!
这个用cursor做桌面应用的项目真让人耳目一新,尤其是结合rust和tauri的技术栈,解决依赖问题的过程也很精彩,学习到了不少!
这个项目的思路很独特,利用cursor实现桌面应用真的很酷。尤其是依赖管理和版本问题的处理,反映了开发中的真实挑战,值得借鉴!
通过cursor实现桌面应用的过程让我很受启发,尤其是依赖管理的挑战和解决方案,真是一个不错的学习机会。希望能看到更多类似的项目分享!
使用cursor开发桌面应用的过程让我觉得很有趣,特别是如何解决依赖问题,真的很有挑战性。期待看到更多这样的项目!
用cursor打造桌面应用的过程太有意思了,尤其是处理依赖和路径问题的细节,让我对这个工具有了新的认识。希望能看到更多这类分享!