打开网易新闻 查看精彩图片

Cursor上周发了一篇博客,声称自家文件搜索比ripgrep快1300倍。配图是一张漂亮的柱状图,高得离谱的绿色柱子旁边,ripgrep的蓝色细线几乎看不见。文章一出,推特上立刻有人开始"膜拜",仿佛见证了一场搜索技术的革命。

但有个问题被刻意忽略了:要跑出这个1300倍,你得先花3分多钟建索引,再吃掉1GB硬盘空间。

独立开发者Dmitriy Kovalenko在自己的项目fff.nvim(一个Neovim文件搜索插件)的开发过程中,对这套说辞产生了怀疑。他借来同事的M2 MacBook Air,用同样的Chromium代码库、同样的查询条件反复测试——ripgrep最长也没超过9秒,缓存热身后通常6秒搞定。这跟Cursor展示的"慢到离谱"的基准线,完全对不上号。

1300倍是怎么"跑"出来的

1300倍是怎么"跑"出来的

Cursor的博客写得很有技巧。他们强调"索引是很老的技术",三字母组合(trigram)搜索80年前就有了,暗示自己发现了某种被行业忽视的银弹。但Kovalenko翻出了源头:Cursor的理论基础几乎全盘来自Russ Cox 2012年的论文《Regular Expression Matching with a Trigram Index》,这篇论文正是Google Code Search的底层设计。

换句话说,这不是什么2026年的新发明,是Google玩剩的东西。

那为什么VS Code、Sublime、JetBrains这些编辑器不用?答案藏在Cursor没画的那张图里。Chromium代码库有48.7万个可搜索文件,建一次倒排三字母索引要3分钟以上,占用约1GB空间。查询确实快了,但代价是:

• 首次打开项目时,用户得干等索引完成

• 文件变动时,索引需要增量更新或重建

打开网易新闻 查看精彩图片

• 仅ASCII可打印字符就能产生约70万个唯一三字母组合,维护成本极高

Kovalenko做了个类比:这就像为了省6秒过闸时间,先花3分钟办一张VIP卡。单次查询确实快,但综合体验未必更好。

闭源基准测试的陷阱

闭源基准测试的陷阱

Cursor的致命问题是不可复现。论文需要公开实验方法,就是为了让同行验证;但Cursor既不开源代码,也不提供测试数据集,连索引构建时间这种关键指标都藏在脚注里。

Kovalenko在GitHub issue里写道:「你无法验证任何东西,既没有数据,也没有工具来复现这个"成功"。」

这种"基准导向开发"(benchmark oriented development)正在变成一种风气。厂商精心挑选对自己有利的测试场景,把复杂的技术权衡压缩成一张漂亮的柱状图。读者看不到的是:索引重建频率、内存占用曲线、增量更新的延迟抖动——这些才是决定日常体验的关键。

更微妙的是对比对象的选择。ripgrep作者Andrew Gallant早就承认,macOS上的文件系统性能是短板,Linux通常更快。Cursor偏偏选M2 MacBook作为测试平台,又恰好"测"出了一个异常慢的ripgrep基线。Kovalenko用同样的机器复现,结果差了数十倍。

技术债不会消失,只会转移

技术债不会消失,只会转移

Cursor的工程师大概率知道这些trade-off。他们的博客花了大量篇幅解释"为什么以前没人做索引",却轻描淡写地带过维护成本。这种叙事策略很聪明:把技术取舍包装成认知突破,让读者觉得其他编辑器"笨",而Cursor"敢"。

打开网易新闻 查看精彩图片

但Kovalenko点破了窗户纸:「最大的问题不是建索引,是维护索引。」

倒排索引在搜索领域用了几十年,编辑器不用不是因为工程师没想到,而是因为实时性与一致性的平衡太难做。VS Code的搜索是即开即用的,文件保存后立刻可搜;索引方案要么牺牲实时性(延迟更新),要么牺牲性能(频繁重建)。Cursor选择了前者,却把故事讲成了后者不存在。

更现实的问题是空间效率。Cursor暗示自己的实现"可能"更省空间,但用了"可能""大概2-4倍"这种模糊表述——没有代码,谁也无法核实。

这种信息不对称在AI工具营销中越来越常见。模型能力用精选案例展示,响应速度在理想网络环境下测得,长上下文窗口的衰减曲线从不公开。Cursor只是把同一套 playbook 用在了文件搜索上。

开发者工具的信誉成本

开发者工具的信誉成本

Kovalenko的fff.nvim项目本身就在探索更快的文件搜索方案。他并非ripgrep的捍卫者,甚至公开表示"ripgrep在macOS上确实不是最快的"。但他的测试方法很朴素:借一台常见配置的机器,跑同一个查询,记录真实时间。

这种"可复现"的门槛,本应是技术讨论的底线。

Cursor的文章在Hacker News和推特上获得了大量转发,但深入看评论会发现,有经验的工程师都在问同一个问题:索引时间呢?更新策略呢?这些被 bury 在营销话术下的细节,才是评估技术方案的真正锚点。

一位评论者写道:「如果我的编辑器告诉我"请等待3分钟,我正在为你的代码库建索引",我会立刻关掉它。」

这大概是Cursor没有在柱状图旁边展示的"用户反馈"。