1. 先从 293 亿美元的 Cursor 说起:它到底在卖什么
1.1 我一直觉得,很多人根本没看清 293 亿买的是什么
昨天晚上一个朋友甩了条新闻链接给我,标题写着:“实锤了!293 亿美元的 Cursor,竟然是个「套壳」Kimi?!”我第一反应是这届标题党已经不讲基本法了,Cursor 默认后端从来就不是 Kimi,哪儿来的套壳?可我又在电脑前坐了两分钟,越想越觉得这事儿没那么简单。今天这篇文章就把话说透一点:Cursor 到底是靠什么拿到这种量级的估值,它和 Kimi 这类模型之间到底算什么关系,以及我们自己动手把 Kimi 接进 Cursor 之后,实测结果到底怎么样。
先说清楚我自己的立场:我不是任何一家 AI 公司的员工,也不是拿钱写软文的。作为一个从 VS Code 时代就用代码编辑器、近两年又把 Cursor 当主力开发环境的人,我关心的只有一件事:这些东西好不好用,值不值得花钱,以及网上那些动不动就“实锤”的言论里,到底哪句是真的、哪句只是情绪。
如果你也在用 AI 编程工具,或者正在犹豫要不要给 Cursor 续费,又或者你只是好奇 Kimi 这类国产模型现在到底能不能打,这篇文章应该能给你一些参考。我不会只聊跑分、聊榜单,我会把一次真实的“让 Kimi 接管 Cursor”的实验过程完整记录下来,包括怎么配置、跑了什么任务、哪些场景顺手、哪些场景露馅。
先聊第一个问题:293 亿美元这个数字本身是怎么来的。新闻里的说法是 Cursor 背后的公司正在做新一轮融资,估值被推到 293 亿美元左右。我没有内幕消息,对投融资分析也不专业,但这个数字放在“AI 编程工具”这个赛道里,很多人第一反应是:就一个代码编辑器,凭什么?
这就是大家最容易误解的地方。Cursor 本质上不是一家“做编辑器”的公司,它的产品形态确实是个编辑器,但真正值钱的是编辑器之上那套 AI 工作流。你打开 Cursor 后做的每一件事——按 Tab 接受补全、在对话框里描述一个改动、让 Agent 自己翻仓库找文件、把自然语言变成一段能直接应用的文件 diff——这些都不是大模型原生就有的能力,而是 Cursor 自己造的。大模型只会生成文本,是 Cursor 给你把文本包装成了“写代码”这个动作。
1.2 拆开看,Cursor 其实是个三层结构
我把 Cursor 拆成三层,这样比较好理解它到底做了什么。
第一层是编辑器壳。这一层是大家最喜欢吐槽的“套壳 VS Code”,因为 Cursor 确实基于 VS Code 的代码库改了内核,快捷键、插件体系、终端、调试器这一整套东西都继承了 VS Code 生态。这意味着它的下限很高,你不用重新学一个编辑器,装完就能干活。
第二层是 AI 编排层。它负责把你项目里的文件做索引,在你提问时挑选哪些代码作为上下文,把模型的原始输出转换成 diff,然后再把 diff 展示给你,让你一句一句接受或者拒绝。这一层才是 Cursor 真正下了功夫的地方。比如你让它改一个函数,它不只是把整个新函数吐出来,而是能精准地给你一个只涉及相关行的高亮 diff,改完还能顺手帮你检查语法错误。这背后的工程复杂度,比很多人想象的要高得多。
第三层才是模型路由层。Cursor 自己不做大模型,它调用的是 Anthropic 的 Claude、OpenAI 的 GPT 系列等外部模型,然后在产品里给你一个统一入口。这也是“套壳 Kimi”这句话能被传开的底层原因:既然模型是外部接进来的,那用户当然也能尝试把别的模型接进去,哪怕你接的是 Kimi。
所以你说 Cursor 是套壳吗?在“编辑器壳是 VS Code、推理引擎是第三方模型”这个双重意义上,它确实是。但这个“套壳”不等于没价值。你用同样的发动机装在不同底盘上,驾驶感受是完全不一样的;你用同样的 Claude 模型,在 Chatbot 网页里和在 Cursor 里完成的编程任务也完全是两码事。后者多的是一整套刹车、转向、变速箱和仪表盘,不是“有个引擎就能跑”这么简单。
1.3 市场给的估值,买的是订阅行为和付费意愿
聊到 293 亿美元,就不能不看另一组隐藏数据:有多少程序员真的在每个月给它付 20 美元。AI 编程工具和传统 IDE 最大的区别,在于它直接改变了程序员“产出代码”的方式。以前装个 VS Code 是免费的,装不装插件都能写;现在用 Cursor 写代码,是真的有人在 Tab 补全、Agent 改代码这些功能上获得了持续的生产力提升,所以愿意持续付费。
这就能解释为什么资本会给这么高估值。投资者买的不是“又一个代码编辑器”,而是一条被验证过的付费链路:程序员愿意为“AI 帮忙改代码”这件事按月掏钱,而且有了 AI 之后单位产出的代码量确实在提升。这件事在十年前是不存在的,三年前也只是小众尝鲜,现在它已经被验证成了规模化的商业需求。换句话说,Cursor 值钱的不是模型、不是壳,是用户习惯,以及习惯背后稳定的现金流。
但这个估值结构也有它的软肋,而软肋恰好是“套壳 Kimi”这句话能引发讨论的原因。既然模型可以替换,那就意味着用户对特定模型的依赖没那么强;如果有个更便宜的模型能提供八成体验,很多人就会开始琢磨:我是不是被这个“壳”收太多钱了?带着这个疑问,我决定亲自做一次实验,把 Kimi 接进 Cursor,看看它到底是不是一个可以平替的引擎。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 把 Kimi 塞进 Cursor:一次“套壳”实验的全记录
2.1 先说结论:Cursor 出厂时并没有内置 Kimi
在动手之前,我必须先澄清一件事:如果你看到“Cursor 套壳 Kimi”就以为 Cursor 默认在偷偷调用 Kimi,那是误解。Cursor 出厂的模型列表里没有 Kimi,官方也没有宣传过和 Kimi 的合作。网上那些让你觉得“实锤”的内容,其实大多来自用户自己手动把 Kimi 的模型作为后端接进 Cursor。
我之所以会把两者放在一起讨论,是因为 Kimi 开放平台提供了 OpenAI 兼容的 API 接口,而 Cursor 在模型设置里是允许你自己添加兼容模型端的。这个设计本来是为了方便开发者接入企业内部模型、或者在不同大模型之间做对比,结果被很多人玩成了“给 Cursor 换发动机”。所以严格说,不是 Cursor 套壳 Kimi,而是“用户可以自己选择,让 Cursor 暂时变成 Kimi 的前端”。
2.2 我的一套接地气配置方法
我这人做事不喜欢看教程截图就照抄,每个步骤都要知道它为什么这么走。这次接 Kimi 的完整逻辑是三步:先拿到模型访问凭证,再告诉 Cursor 该去哪里请求模型,最后切换模型跑真实任务。
第一步,去 Kimi 官方开放平台注册账号,创建一个 API Key。创建的时候会提醒你保存好,因为之后不再显示完整内容。这一步没什么难度,注意把 Key 放在本地环境变量里,别写进代码文件,更别提交到 Git 仓库。
第二步,在 Cursor 的设置里找到模型相关配置,添加一个自定义模型源。核心需要填三样东西:API 地址、Key、模型 ID。我用的示意配置大概是这样的:
json复制{
"provider": "kimi-openai-compatible",
"api_base": "<Kimi 开放平台文档提供的兼容接口地址>",
"api_key_env": "KIMI_API_KEY",
"model": "<开放平台当前可用的代码模型 ID,以官方文档为准>"
}
这里必须单独提醒一句:模型 ID 不要照抄网上的旧文章。Kimi 的模型版本更新很快,不同后缀的模型能力差异也不小,最稳妥的做法是直接看官方开发文档里当前给出的模型 ID。我写这篇文章的时候,不同来源说的 ID 已经有好几个版本了,所以我只建议你把它当成“以官方文档为准”来处理。
第三步,在 Cursor 的模型下拉菜单里切换到你刚才添加的模型,找一个真实项目开始干活。这里有个容易被忽略的点:光切换模型还不够,你得把默认的那些内置模型关掉或者排到后面,否则 Cursor 的一些后台 Agent 任务会自作主张用回原来的模型,结果你测了半天以为自己测的是 Kimi,实际上流程里混了一堆别的模型。
2.3 三个任务,看它是真行还是假行
配置完成之后,我选了三个很有代表性的任务来测。测试项目是一个我平时在维护的中型 Python 后端,大概有几十个文件,涉及订单状态流转、数据导入导出和少量前端页面。这三个任务的难度是递增的,能覆盖“补代码、改 bug、做重构”这三类最常见的 AI 编程场景。
第一个任务是让 Kimi 按我现有项目的状态机写法,新增一个退款状态处理逻辑。我把现有状态定义、处理器基类、一个测试文件喂给它,要求它只按项目已有的风格改,不要另起炉灶。这个任务 Kimi 完成得相当顺利,它生成的代码风格和我项目里的状态类匹配度很高,我只手动调整了一处导入路径就通过了测试。如果只看这个任务,你会觉得它完全可以当日常主力。
第二个任务就有点意思了。我的项目里有一个处理 CSV 导入的功能,线上日志显示某类文件会让行数据错位,但代码本身没有直接抛异常。我把一段带缩略的日志、数据处理函数和几个可疑配置丢给 Kimi,让它帮我定位。它在第一次回复里就指出了文件编码和分隔符在多行字段场景下的冲突,方向是对的。但它没有主动想到去检查空行处理,最后还是我追问了一句“你看过文件末尾换行符的情况吗”,它才补充了第三种可能。这个差距在简单任务里看不出来,到逻辑链稍微长一点的场景就藏不住了。
第三个任务是重构。我把项目里一段老的 jQuery 页面逻辑截给它,要求在尽量不改变业务行为的前提下,拆成几个可维护的函数,并补两个基础测试。Kimi 给出的拆分方案很保守,基本就是把一个长函数机械地切成几段,没有我期望中的“把重复逻辑抽成共用模块”这一步。在我追加了提示“请识别重复的子流程”之后,它才给出了更好的版本。这个任务让我意识到:它做“执行型”工作没问题,但做“主动优化型”工作还差一点火候。
表格记录一下我的整体感受:
| 测试场景 | 完成情况 | 我的评价 |
|---|---|---|
| 按既有风格新增状态逻辑 | 一次通过,基本无需修改 | 很稳,适合日常增删改 |
| 根据日志定位导入 bug | 方向正确,漏了边界场景 | 有分析能力,但需追问细节 |
| 老代码重构并补测试 | 完成,但方案偏保守 | 缺少主动性,需要更明确的指令 |
2.4 实验结论:套壳是套壳,但不是你想的那种
这次实验做完,我的结论有两个层面。第一层,单纯从“能不能用”来看,把 Kimi 接到 Cursor 后面完全可行,日常的增删改查、写测试、修简单 bug,它都能胜任,甚至有些场景的表现超出我的预期。第二层,从“Cursor 是不是就白拿钱”来看,事情没这么简单。因为真正让这些任务能顺利跑通的,不只是模型本身,还有 Cursor 的上下文选择、diff 展示、文件修改这些工程能力在兜底。
换句话说,“用 Kimi 当 Cursor 的引擎”这件事,把模型和壳之间的关系暴露得很彻底:模型的角色有点像发动机,壳则负责把发动机的动力传到轮子上。发动机换了,车还能跑,但操控体验好不好,还是那句老话——看调教。
3. 代码编辑器之争:真正值钱的不是那个“壳”
3.1 模型是公共的,上下文拼图是私有的
现在不管哪家模型,只要是公开 API,大家都能接。那为什么同样接一个 Kimi,有人在 Cursor 里用得虎虎生风,有人在一个聊天网页里只觉得它“还行”?
答案在于上下文工程。Cursor 给模型喂的不是你的一句话,而是一个精心拼好的上下文包:它会把当前文件内容、光标位置、项目里的相关文件、你最近改过的代码、项目规则文件,甚至仓库的代码结构都打包进去,让模型在一个“比较了解项目”的前提下来回答你。这个环节我不是说只有 Cursor 能做,但它做得很重,重到很多用户根本没意识到自己每天都在受惠。
我举个具体例子。你在 Cursor 里开了三个相关文件,然后问它“帮我看看这里为什么会报错”,Cursor 会自动把三个文件的内容都塞进上下文,还会根据错误信息去别处找可能相关的函数定义。如果你是在一个普通聊天框里问同一个问题,你得手动把文件内容复制粘贴过去,而且粘贴了也未必够,因为模型看不到项目全局。这个差距,就是拼图能力带来的差距。任何模型接到这个拼图后面,能力发挥都会变好;反过来,再强的模型如果没有好的上下文拼图,也会经常答非所问。
所以“套壳”这个词最大的问题,是把模型当成了全部,把拼图当成空气。实际上,拼接上下文、挑选哪些文件可以忽略、哪些文件必须全文进入视野,这些才是一个 AI 编程工具真正耗费心力的地方,也是它和“随便一个聊天框”拉开差距的地方。
3.2 把“输出文本”变成“修改代码”,是一道高墙
再说第二层护城河:交互收口。大模型的输出本质上是文本,但写代码不能只是文本,你需要它落在具体的文件、具体的行上。Cursor 做的事是拿模型的输出,和当前文件做对比,算出最小 diff,然后让用户逐段接受或拒绝,再帮你检查改动后的文件有没有语法问题。
这套流程看起来简单,实际操作中非常依赖产品细节。比如 Agent 在改多个文件时,怎么避免中间态编译不通过?改了一半用户取消,怎么回滚?这些都不是模型能力,而是产品工程能力。你不能只说“大模型生成了代码”就完事,生成代码只是第一步,把代码安全地落到项目里才是关键。
Kimi 在作为纯 API 模型时,是不管这些事的。它只负责给你回复,至于是不是要套进一个 Agent
