如果您正在阅读本文,您可能已经了解大型语言模型 (LLM) 的某些用例和局限性。您为模型提供的提示和上下文越好,结果也会越好。

对于 Windsurf 也是如此,有一些最佳实践可以帮助您创建更有效的提示,以最大限度地利用该工具,并获得最佳质量的代码,从而加快您的工作流程。

对于可能需要您提及 (@-Mention) 特定代码块的更复杂的任务,请使用聊天而不是命令

高质量提示的构成要素

  • 明确的目标或结果
    • 您要求模型生成什么?
    • 您是要求模型提供计划?新代码?还是重构?
  • 执行任务所需的所有相关上下文
    • 您是否正确使用了提及以确保包含适当的上下文?
    • 是否存在 Windsurf 可能不清楚的客户特定上下文?
  • 必要的约束
    • 是否有必须使用的特定框架、库或语言?
    • 是否有任何空间或时间复杂性约束?
    • 是否有任何安全方面的考虑?

示例

示例 #1

  • :为一个订单簿对象编写所有测试用例的单元测试。

  • :使用 @class:unit-testing-module@func:src-order-book-add 编写单元测试,测试止损之上或之下抛出的异常

示例 #2:

  • :重构 rawDataTransform。

  • :通过将 while 循环改为 for 循环,并使用与 @func:otherDataTransformer 相同的数据结构输出,重构 @func:rawDataTransform

示例 #3:

  • :为联系表单创建一个新按钮。

  • :使用 @repo:frontend-components 中的样式指南,为 @class:ContactForm 创建一个新的按钮组件,按钮文本为“继续”