大家好!我是瓜哥,前互联网技术总监,现在在AI编程这条路上持续探索和分享。
月初对账的时候,我发现 Cursor 账单有点不对劲。
同样的开发量,这个月花了上个月两倍的钱。翻看使用记录才发现问题:我养成了 ‘一个问题开一个新对话’ 的 坏习惯。每次都要重新@项目文件,重新解释业务逻辑,同样的代码、同样的规则,反复读,反复付钱。
直到我仔细研究了 Cursor 的计费机制,才发现它内置了一个 省钱开关— Cache Read(缓存读取)。用对这个功能,我的单次对话成本直接降了80%。
一、 一个让你立马清醒的价格对比
先看最实在的价格差。这个差距大到你看一眼就会改变使用习惯:
- 普通输入:你第一次把代码、文档发给AI。按“标准价”计费。
- 缓存读取:在同一对话里,AI第二次、第三次调用之前已经读过的相同内容。按“优惠价”计费。
这个成本差距,简直天壤之别:
- 普通输入(Token 成本): $1.25 / 1M tokens
- 缓存读取(Token 成本): $0.25 / 1M tokens
为了更直观地理解 Cache Read 带来的成本节约,来看一个对比:
| 场景 | 总上下文 Token (M) | Cache Read 比例 | Input 成本 | 节省 |
|---|---|---|---|---|
| 普通输入 | 5 | 0% | 6.25 $ | 0% |
| 缓存读取 | 5 | 80% | 1.25 $ | 64% |
同样 5M 的上下文输入,普通输入和缓存读取的省钱效果,立竿见影。
二、 Cache Read到底是个啥?
01 | Cache Read ,它就是 Cursor 的短期记忆。
以前我的用法,相当于:
> 我(掏钱):@api.ts,看看这代码。 > AI(学习):好的,我学一下。(-1.25 $) > 我:好,那我再问个关于它的问题。 > AI(失忆):啥文件?你谁?(-1.25 $,再来一遍)
现在的正确用法是:
> 我(掏钱):@api.ts,看看这代码。 > AI(学习):好的,我记住了。(-1.25 $) > 我:现在,给里面的getUser函数加个缓存。 > AI(回忆):哦,api.ts啊,我刚看过,在缓存里呢。我来改。(-0.25 $)
02 | 核心就一句话
把 Cursor 当成一个需要 热车 和 维持状态 的 AI 编程搭档。你让它记得越久,在一次工作会话里帮你干尽可能多的相关活,这样最省钱。

三、 我在实战里怎么用缓存
光说原理没感觉,举一个我日常开发中的真实用法。
01 | 连续修改同一个文件
- ❌ 我以前的烧钱做法
修一个utils/目录,是这么干的:
1. 开对话A:@formatter.js,改日期格式。 2. 搞定,关掉。 3. 开对话B:@formatter.js,再加个货币格式化。 4. 搞定,关掉。 5. 开对话C:@formatter.js,统一一下错误处理。
结果,我为formatter.js这个文件,付了三次全款阅读理解费。纯纯大冤种。
- ✅ 现在我学聪明了
1. 开一个对话,名字就叫【重构utils目录】。 2. 第一句话:@formatter.js,接下来我们一步步优化这个文件。 3. AI改完日期格式后,我接着输入:“好,现在在同一个文件里,把formatCurrency函数加上千分位分隔符。” 4. 改完后,继续:“还是这个文件,检查所有函数的错误处理,改成统一的try-catch结构。”
结果,除了第一条指令,后面所有操作,AI都在用便宜的“缓存读取”来调取formatter.js。活干得更多、更连贯,钱却花得更少。
02 | 在固定规则下开发多个功能
做项目最烦的就是要反复跟AI强调同一套规则:代码规范、用的UI库、状态管理方式等等。
- 我的做法:
- 我在项目根目录建了一个
project_rules.md文件,里面写清楚:
## 项目开发规则 1. 组件:全部用React + TypeScript,函数式组件。 2. API:统一用@/libs/api-client里的封装。 3. 样式:Tailwind CSS,颜色去tailwind.config.js里取。 4. 错误:所有用户操作都要有Toast提示。
- 每次开始一个新功能的对话,我第一句话就是:“请严格遵守`@project_rules.md`里的规则,现在我们来开发一个用户个人中心页面。”
- AI生成页面后,我继续:“根据同样的规则,再做一个个人中心的编辑弹窗。”
- 接着:“还是同样规则,做一个修改密码的表单。”
最后,project_rules.md这个文件,我只在第一句话时付了一次 贵 的输入费。之后整个对话,AI都从缓存里读取这些规则来约束代码生成,后面的每一次交互,这部分成本都极低。
四、 我的缓存使用心得
用了一段时间,我总结了几个让 Cache Read 效果最大化的技巧:
- 按功能模块对话:别按任务分,按模块分。比如,专门开一个叫【用户认证模块】的对话,把所有登录、注册、鉴权的代码都在这里搞定。再开一个【数据看板】的对话处理图表。成本省了,上下文还连贯。
- 一次性给足背景:对话开始时,通过
@把核心文件、架构图、需求文档一次性喂给AI。这是一次性成本,摊薄到后续所有操作上就非常划算。
- 用提示词引导AI回忆:在后续提问时,多用“像刚才那样”、“基于上面的逻辑”、“继续优化之前那段代码”这样的说法,能更精准地触发AI去调用缓存。
- 成本与效果的平衡:对话不是越长越好。如果一个对话已经掺杂了登录、支付、后台管理好几个不相关的主题,AI的注意力会分散,生成质量可能下降。这时候,为了效果,开启一个新对话并重新支付少量核心文件的输入成本,是值得的。
五、 总结
Cache Read机制,本质上奖励的是在 Coding 过程中,有规划的、连贯的深度协同开发。你为AI提供稳定、连续的上下文,AI就用低成本和高质量的输出来 回报你。
用好缓存,就是让 Cursor 在你熟悉的项目上下文里沉浸式地干活。它记得越清楚,你付的钱就越少。
这么好的省钱妙招,快去试试吧~
提交反馈
图文太贵?你用错了!揭秘 Cursor 隐藏的 “省钱开关”,改完成本暴降 80%!
评论区
暂无公开评论还没有公开评论。