> ## Documentation Index
> Fetch the complete documentation index at: https://docs.windsurf.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Command 概览

> 在 VS Code 和 JetBrains 中使用 Windsurf Command 实现 AI 驱动的行内代码编辑。使用 Cmd/Ctrl+I 触发，通过自然语言提示生成或编辑代码。

**Windsurf Command** 允许你通过自然语言输入，直接在编辑器窗口中生成新代码或编辑现有代码。

<Tabs>
  <Tab title="VS Code">
    要调用 Command，在 Mac 上按 `⌘+I`，或在 Windows/Linux 上按 `Ctrl+I`。
    随后，你可以用自然语言输入提示并点击 Submit 按钮（或按 `⌘+⏎`/`Ctrl+⏎`）将指令发送给 AI。
    Windsurf 会给出多行建议，你可以选择接受或拒绝。

    如果在调用 Command 前高亮选中了代码，AI 将编辑高亮行所覆盖的选区；
    否则，它会在你的光标位置生成代码。

    <Frame>
      <video autoPlay muted loop playsInline src="https://exafunction.github.io/public/videos/codeium_command_vscode.mp4" />
    </Frame>

    你可以通过点击生成的 diff 上方对应的 code lens 来接受、拒绝或继续跟进这次生成，
    或使用相应的快捷键（分别为 `⌥+A`/`Alt+A`、`⌥+R`/`Alt+R` 和 `⌥+F`/`Alt+F`）。
  </Tab>

  <Tab title="JetBrains">
    要调用 Command，在 Mac 上按 `⌘+I`，或在 Windows/Linux 上按 `Ctrl+I`。

    <Note>
      部分用户反馈该快捷键与其他按键映射冲突，因此在 Mac 上使用 `⌘+⇧+I` 和 `⌘+\`（在 Windows/Linux 上使用 `Ctrl+⇧+I` 和 `Ctrl+\`）
      也同样可用。
    </Note>

    调用 Command 会在代码的相应位置打开一个交互式弹窗。
    你可以用自然语言输入提示，Windsurf 将提供多行建议，你可以接受或拒绝。
    如果在调用 Command 前高亮选中了代码，AI 将编辑高亮行所覆盖的选区；
    否则，它会在你的光标位置生成代码。

    <Frame>
      <video autoPlay muted loop playsInline src="https://exafunction.github.io/public/videos/codeium_command_jetbrains.mp4" />
    </Frame>

    当你在编辑器中滚动或将光标聚焦到其他位置时，Command 弹窗会持续保留在编辑器中。
    它会作用于你最近一次高亮的代码选区或最近的光标位置。
    在其激活期间，Command 弹窗提供以下选项：

    * **取消**（`Esc`）：关闭弹窗，并撤销弹窗打开期间可能发生的任何代码更改。
    * **接受生成**（`⌘+⏎`）：在提交指令并收到生成后出现。
      它会将建议写入代码编辑器并关闭弹窗。
    * **撤销生成**（`⌘+⌫`）：在提交指令并收到生成后出现。
      它会在不关闭弹窗的情况下将代码恢复到 Command 之前的状态，同时将你最近的指令重新插入输入框。
    * **跟进**：在提交指令并收到生成后出现。
      你可以继续输入第二条（以及第三条、第四条等）指令并提交，
      这会撤销当前显示的生成，并使用以逗号连接的指令历史重新运行 Command。
  </Tab>
</Tabs>

<div id="best-practices">
  # 最佳实践
</div>

Windsurf Command 非常适合用自然语言指令描述的、面向单个文件范围的内联修改。
请牢记以下要点：

* 为 Command 提供支持的 AI 模型比为自动完成提供支持的模型更大。
  它虽然更慢，但更强大，并且专门训练以在遵循指令方面表现出色。

  * 如果在调用 Command 前先选中一段代码，它会对所选内容进行编辑；否则将进行纯生成。

  * 高效使用 Command 需要一定技巧。像 “Fix this” 或 “Refactor” 这样的简单提示常常就能奏效，
    得益于 Windsurf 的上下文感知能力。
    更具体的提示，例如 “Write a function that takes two inputs of type `Diffable` and implements the Myers diff algorithm”，
    若包含明确目标并引用相关上下文，往往能进一步提升模型效果。
