Cursor 有时会答非所问:你让它改当前页面,它解释了另一个组件;你让它遵守项目约定,它引用了旧文件;你让它修一个小问题,它给出一整套重构方案。很多时候,不是模型完全不懂,而是上下文窗口和文件选择出了问题。
这篇文章专门讲如何控制 Cursor 的上下文,让 AI 更稳定地读对文件、理解边界、输出可用方案。
先给结论:上下文质量比提示词长度更重要
| 问题 | 常见原因 | 处理方式 |
|---|---|---|
| 读错文件 | 相似文件太多 | 明确路径和当前范围 |
| 漏掉约定 | 规则文件未进入上下文 | 引用规则或说明关键约束 |
| 输出太大 | 任务边界不清 | 限定最小改动 |
| 方案不落地 | 缺少运行命令和错误信息 | 提供真实输出 |
不要只把问题写长,要把关键文件给对。
一、先判断任务需要哪类上下文
不同任务需要的文件不同:
| 任务类型 | 需要的上下文 |
|---|---|
| 样式问题 | 组件、样式文件、截图描述 |
| 接口问题 | 调用点、API 封装、错误输出 |
| 架构调整 | 目录结构、相邻实现、约定文档 |
| 文案写作 | 已有文章、frontmatter、计划文档 |
把整个项目都塞给 AI,反而可能稀释重点。选择上下文要服务任务。
二、路径比泛称更可靠
“当前页面”“这个组件”“刚才那个文件”对人类对话有用,但对 AI 来说可能不够稳定。更可靠的写法是给出文件路径和目标区域。
例如:
只分析 content/topics/ai/cursor-real-project-workflow-from-brief-to-review.md 的写作风格,
然后在 content/topics/ai/ 下新增一篇同风格文章。
路径能显著减少误读。
三、相似文件多时,要说明不要参考谁
Monorepo 或内容站里经常有很多相似文章、相似组件、相似脚本。Cursor 可能引用旧写法。此时要明确排除项:
- 不参考旧版脚本
- 不修改生成文件
- 不跨子项目
- 不复用已经废弃的样式
“不做什么”往往比“做什么”更能保护边界。
四、给错误输出,不要只描述感觉
如果问题是构建失败、类型错误、页面异常,最好给真实错误输出。只说“跑不起来”会让 AI 猜测太多。
更好的输入:
运行 pnpm typecheck 后报错:xxx。
请只定位这个错误,不做无关重构。
真实输出能让 Cursor 从猜测转向定位。
五、失败案例:让 AI 修样式,却给了太多无关文件
一个页面按钮在移动端换行。开发者把整个项目作为上下文,让 Cursor 给方案。AI 读到了多个按钮组件和旧样式,最后建议重构按钮系统。实际问题只是当前页面按钮文案过长、容器宽度不足。
修复后,任务输入改为:当前页面路径、按钮 DOM、相关 CSS、移动端宽度、预期表现。AI 很快给出局部修复方案。
六、上下文排查 Checklist
- 是否给出明确文件路径
- 是否说明当前任务范围
- 是否排除不该参考的旧文件或生成文件
- 是否提供真实错误输出或截图描述
- 是否要求最小改动优先
- 是否让 AI 先说明将修改哪些文件
- 输出发散时是否重新收窄上下文
结语
Cursor 的稳定性很大程度来自上下文管理。把路径、范围、约定、错误输出和排除项讲清楚,比写一大段泛泛提示更有效。AI 读对文件,才可能做对事情。
延伸阅读:


