name: 编写有效提示 description: 使用角色定义、明确指令、上下文、正面框架和策略组织来结构化Claude提示以获得清晰和更好的结果。在编写复杂任务、长文档、工具工作流或代码生成的提示时使用。
编写有效提示
核心原则
1. 从角色开始
预先设置行为上下文:
你是一名专家软件测试工程师。帮我编写覆盖边界情况和错误条件的全面单元测试。
2. 明确指示
用具体需求替换模糊请求:
创建一个包含以下功能的仪表板:
- 实时数据可视化
- 交互式过滤和下钻
- 响应式设计(移动端和桌面端)
- 报告导出功能
尽可能包含相关功能。
3. 添加上下文和动机
解释为什么以帮助Claude泛化:
你的回答将通过文本转语音朗读,所以避免使用省略号(TTS引擎无法发音)。使用完整句子代替。
4. 使用正面框架
告诉要做什么,而不是不要做什么:
将你的回答格式化为纯文本,并带有清晰的段落分隔。
5. 提供对齐的示例
示例能强有力地塑造输出。使用<example>标签:
<example>
输入:"添加了JWT认证"
输出:
feat(auth):实现基于JWT的认证
添加登录端点和令牌验证中间件。
</example>
结构化技术
用于复杂输出的XML标签
清晰地构建多部分响应:
<code_quality>
评估整体代码质量和模式
</code_quality>
<security_review>
逐步审查安全问题
</security_review>
<optimization_suggestions>
列出具体的性能改进建议
</optimization_suggestions>
链式复杂任务
将多步骤过程分解为显式阶段:
第一阶段:研究与分析
- 检查现有代码库结构
- 识别模式和约定
第二阶段:设计与规划
- 创建架构设计
- 定义接口和数据流
第三阶段:实施
- 构建核心功能
- 添加错误处理
- 实施测试
长上下文最佳实践
文档放置
将大文档(约2万令牌以上)放在顶部,查询放在末尾:
[2万令牌的年报]
[1.5万令牌的竞品分析]
分析以上内容。识别战略优势和第三季度重点领域。
对于复杂多文档输入,可将响应质量提高多达30%。
使用XML组织多个文档
<documents>
<document>
<source>annual_report_2023.pdf</source>
<document_content>
[内容]
</document_content>
</document>
<document>
<source>competitor_analysis.xlsx</source>
<document_content>
[内容]
</document_content>
</document>
</documents>
提供全面的市场地位分析并给出具体建议。
基于引用的响应
用于长文档分析的准确性:
1. 从文档中提取相关引用(使用<relevant_quotes>标签)
2. 基于引用提供分析(使用<analysis>标签)
3. 列出建议(使用<recommendations>标签)
工具使用策略
定义工具用途
你可以访问文件和搜索工具。当处理多个文件时:
- 并行执行独立操作
- 优先批量操作而非顺序处理
- 最终确定前验证更改
- 完成后清理临时工件
鼓励并行化
为提高效率请求同时执行。
输出质量增强
基本质量修饰符
创建一个分析仪表板。
增强质量修饰符
创建一个分析仪表板。尽可能包含相关功能和交互。超越基础,创建一个功能齐全的实现。
代码生成指导
对于前端代码:
- “添加周到的细节,如悬停状态、过渡和微交互”
- “应用设计原则:层次结构、对比、平衡和运动”
对于一般解决方案:
请编写高质量、通用的解决方案。实施适用于所有有效输入的逻辑,而不仅仅是测试用例。不要硬编码值。提供一个遵循最佳实践的原则性、可维护实现。
最佳实践清单
✅ 做
- 以清晰的角色定义开始
- 提供明确、具体的指示
- 使用正面框架(要做什么)
- 添加上下文解释为什么行为重要
- 包括对齐的示例展示确切期望输出
- 利用XML标签构建复杂结构
- 在可能时请求并行执行
- 将复杂任务分解为清晰阶段
- 匹配提示样式与期望输出格式
❌ 避免
- 负面指示(“不要做X”)
- 隐含期望的模糊需求
- 与指示矛盾的示例
- 当并行可行时使用顺序操作
- 针对特定情况的测试相关硬编码
- 假设工具/库可用性
- 没有解释的指示
- 当简单提示有效时使用过于复杂的提示
关键成功因素
- 角色定义 — 清晰的身份和专业知识
- 明确指示 — 具体、可操作的指令
- 上下文推理 — 解释为什么行为重要
- 示例对齐 — 展示确切期望输出
- 结构清晰性 — 使用XML标签和有条理的格式
- 质量修饰符 — 使用"尽可能包含功能"和"全力以赴"
- 工具策略 — 指定工具使用时机/方式并鼓励并行化
- 迭代改进 — 基于结果测试和改进提示