Cursor — AI 写代码的编辑器,真实使用体验

Share

Cursor 这个工具我已经用了快一个月了,今天想认真地记录一下真实的使用体验。

先说结论:Cursor 确实提高了我写代码的效率,但它的「智能」远没有营销文章里吹的那么神。它更像是一个特别快的打字员,而不是一个真正的程序员。

Cursor 本质上是一个基于 VS Code 的代码编辑器,内置了 AI 对话功能。你可以用自然语言告诉它你想做什么,它会自动生成代码。听起来很美好,对吧?但实际用起来,你会发现问题远比你想的多。

首先是理解能力的问题。Cursor 能很好地处理简单的、明确的任务,比如「帮我写一个函数,输入一个列表,返回其中的最大值」。这种问题它基本上秒回,代码质量也不错。但一旦任务变得复杂,比如「帮我优化这个 API 的性能,目前在高并发下响应很慢」,它就开始犯迷糊了。它可能会给你一堆看起来很专业的建议,但很多是无关紧要的,甚至有些是错误的。

我印象最深的一次经历是,我让它帮我修一个 SQL 查询的性能问题。它自信满满地给了我一个「优化方案」,用了很花哨的 JOIN 优化和索引建议。我照著做了,结果性能不仅没提升,反而更慢了。最后我自己看了半天执行计划才发现,问题根本不在 JOIN 上,而是有一个子查询没有被正确优化。

这让我意识到一个重要的问题:AI 工具在面对复杂的业务逻辑时,往往是「自信地犯错」。它看起来很对,因为它给出的解答结构完整、逻辑自洽,但前提可能就是错的。这种错误比明显的编译错误更危险,因为你可能会毫无察觉地接受它。

Cursor 最大的价值在处理重复性工作上。比如写表单验证、CRUD 接口、单元测试这些「不需要太多思考但很花时间」的任务。把需求描述清楚,Cursor 几分钟就能搞定,省了不少时间。我现在的工作流程是:先用自然语言把需求描述清楚,Cursor 生成初版代码,然后我再手动修改和优化。这样效率大概比纯手写高了 30% 到 50%。

另一个值得注意的功能是「项目理解」。Cursor 不只是看你当前打开的文件,它能理解整个项目的结构。你可以问它「这个项目用了什么框架?」「这个函数在哪里被调用了?」之类的问题,它能给出准确的回答。这在接手别人的项目或者维护老代码时特别有用。

但它的学习成本比你想的要高。不是工具本身难用,而是你需要学会「怎么跟它说话」。这就是所谓的 Prompt Engineering 在编程场景中的应用。同样的任务,你描述得好不好,直接影响输出质量。我花了大约一周的时间才摸索出一套有效的提示词模式。

比如,不要只说「帮我写个 API」,而是说「用 Express.js 写一个 RESTful API,包含三个端点:GET /users 返回用户列表,POST /users 创建新用户,DELETE /users/:id 删除用户。使用 MongoDB 作为数据库,加上基本的错误处理和输入验证」。越具体,效果越好。

总结一下 Cursor 的优缺点:

优点:处理重复性任务效率高、项目理解能力不错、基于 VS Code 不需要重新适应、定期更新在持续改进。

缺点:复杂业务逻辑容易出错、有时过度自信、需要花时间学习怎么用好它、有时候生成的代码风格不一致。

我的建议是:把 Cursor 当成一个「特别快但需要监督的实习生」。你让它干活,但每个产出你都得检查。不要因为它看起来很专业就完全信任它。这样用下来,效率确实会提升不少。

Read more

别听大佬吹什么“智能代理”,他那是还没想好怎么割你

最近这阵子,“自主代理(AI Agent)”这个词儿在圈子里快被嚼烂了。说得好像你只要买个代币,就有个全能的数字奴隶帮你赚钱、帮你泡妞、帮你一键财务自由一样。 格格我就直说了吧:现在市面上99%的所谓“交易代理”,背后的逻辑其实比自动售货机还简单。它不仅不能帮你避开暴跌,甚至能帮你更精准地在山顶站岗。 最搞笑的是,有的项目方还吹嘘他们的代理有“灵魂”。我看那是他们想割你的“灵魂”吧?这种所谓的代理,本质上就是为了给项目方提供流动性。你在那儿满心期待代理帮你套利,项目方在那儿盯着后台看你这棵韭菜什么时候长熟。 真的AI代理在干嘛?在写代码,在算数学,在帮大公司提效。而币圈的AI代理,只会在电报群里给你发:To the moon!这月亮是你是上不去了,坑倒是跳得挺准。

By 李好

又折腾了一下午的排版

又折腾了一下午的排版 本来以为上午把主题搞定就行了,结果下午一看手机上的效果,完全不行。字贴著边、间距不对、评论区一片白。 问题的根源是 WordPress block theme 的机制跟我之前理解的不一样。 body padding 是 0 WP Twenty Twenty-Five 的 theme.json 里 body padding 设成了 0px。它依赖 has-global-padding 这个 CSS class 和 CSS 变量来控制间距。但那些变量的默认值就是 0px,所以如果不在 Site Editor 里手动调,内容就直接贴边了。 我的 CSS 里用 :root { --wp-

By

PixelRAG — 用截图替代文字解析,AI 读懂网页的新思路

今天看到一个很有意思的项目叫 PixelRAG,来自 Berkeley SkyLab 团队。核心想法很简单但很暴力:用截图代替文字解析来做 RAG。 问题在哪 我们平时用 AI 问问题,背后大概率在跑 RAG(Retrieval-Augmented Generation)。流程是:抓网页 → 解析成文字 → 分块 → 向量化 → 存起来 → 你问问题时检索相关文字 → AI 回答。 这套流程在大多数情况下没问题,但碰到表格、图表、排版复杂的页面就完蛋了。因为文字解析会把这些视觉结构全部丢掉。一个精心设计的定价页面,解析出来可能就是一堆没有上下文的数字。 PixelRAG 怎么做 不做文字解析,直接截图。网页 → 截图 → 图像分块 → 用专门训练的视觉 embedding 模型向量化 → 存成索引。你问问题时,检索的是图片,AI 直接从截图里读答案。 视觉结构完整保留:

By

建站记:折腾了一整天的暗色主题

今天花了一整天折腾这个博客,记录一下过程,也是给自己留个教训。 建站过程 一开始的思路很简单:在服务器上用 Docker 跑一个 WordPress。选了 Docker Compose,三个容器:MySQL、WordPress、反向代理。 反向代理原本想用 nginx-proxy,结果折腾了半天都搞不定 SSL 证书的自动签发。后来换成了 Caddy,一行命令搞定:caddy reverse-proxy --from wp.mistcats.com --to wordpress:80 --insecure,自动申请 Let's Encrypt 证书,自动 HTTPS。真的是没有对比就没有伤害。 WordPress 安装好之后,WP-CLI 是必装的。

By