如何写好Prompt?
写好 Prompt 的核心是:让 AI 和你站在同一个上下文里。AI 不会读心术,你给的信息越精准完整,结果越好 五个关键要素详解 ❌ 帮我写一个组件 这是最容易被忽略、影响最大的部分。 在 Cursor 里,直接用 @文件名 把相关代码引入,比手动贴代码更高效。 任务要具体、可验证,避免模糊动词。 ✅ 将这段代码重构为自定义 Hook,提取出去, 告诉 AI 不要做什么,和告诉它要做什么同样重要。 ✅ 只输出代码,不需要解释 实战:从差到好的 Prompt 演变 技巧 用法 最重要的一个心法一个好 Prompt 的结构
**角色 + 背景 + 任务 + 约束 + 输出格式**
不需要每次都有全部五项,但越复杂的任务需要越完整的结构。1. 角色(Role)—— 让 AI 知道它是谁
✅ 你是一个有5年经验的 React 前端工程师,熟悉 TypeScript 和 Ant Design
定义角色会让 AI 用对应的"思维模式"来回答,而不是泛泛而谈。2. 背景(Context)—— 给足上下文
❌ 帮我优化这个函数
✅ 我在做一个在线教育平台,这个函数是处理直播间用户进入时的未读消息计数逻辑, 当前用的是腾讯云 IM SDK,需要监听 CONVERSATION_LIST_UPDATED 事件。 帮我优化这个函数的性能和可读性。3. 任务(Task)—— 说清楚要什么
❌ 优化一下
❌ 写好一点
❌ 帮我处理下这个问题
要求:4. 约束(Constraints)—— 划定边界
✅ 只修改这一个函数,不要动其他地方
✅ 不要引入新的依赖库
✅ 保持和现有代码风格一致(使用箭头函数、函数式组件)
✅ 不要加注释,除非逻辑真的不直观5. 输出格式(Format)—— 指定结果形态
✅ 先给我方案对比,再给最终代码
✅ 用 TypeScript 写,包含完整的类型定义
✅ 如果有多种方案,列出优劣再推荐一个
场景:你想把之前看到的那段 unread 消息逻辑提取出来。
第一版(差):
帮我把这段逻辑抽成 hook
第二版(一般):
把这段处理未读消息的逻辑抽成一个自定义 hook
第三版(好):
你是一个 React TypeScript 专家。
背景:我在做在线教育平台,使用腾讯云 IM SDK(TencentCloudChat)处理直播间消息。
任务:把 @Technical.tsx 第68-100行的未读消息监听逻辑,抽取为一个自定义 Hook。
要求:针对 Cursor 的特殊技巧
@文件 引入文件上下文,比贴代码更准确
@文件夹 让 AI 理解整个模块结构
先问方案再写代码 "先给我3种实现方案,不要写代码" → 选一个 → "按方案2实现"
让 AI 复述理解 "在写代码前,先用一句话告诉我你理解的需求是什么"
增量修改 不要一次让 AI 改太多,一次一个小目标
把 AI 当成一个非常聪明但对你的项目一无所知的新同事。
你入职第一天跟他说"把这个优化一下",他不知道你的技术栈、业务背景、代码风格约束。但如果你告诉他"我们用 React + TypeScript,这个组件是做 XXX 的,现在有个问题是 XXX,你帮我按 XXX 方式改一下"——他就能立刻上手。
Prompt 的本质,就是降低沟通成本。