在 Warp 中编写代码

Warp 的代理(Agents)可以直接在终端中生成和编辑代码。

当 Warp 检测到可以应用代码差异(code diff)的机会时,它会启动一个高级的代码生成流程,支持单文件编辑和多文件批量修改。

你可以让代理做这些事情:

  • 创建代码: “用 JavaScript 写一个 debounce 输入的函数”

  • 根据错误输出建议修复方案: “修复这个 TypeScript 报错。”

  • 编辑单个文件: “把这个文件中所有的 ‘var’ 改成 ‘let’。”

  • 批量修改多个文件: “给这个目录下所有 .py 文件添加头部注释”

🎯 最好的方式就是亲自试试看 —— 在 Warp 中打开这个 Prompt

  1. 根据当前操作系统,检测正确的 Warp 主题目录:
  2. - macOS 上使用 ~/.warp/themes/
  3. - Linux 上使用 ${XDG_DATA_HOME:-$HOME/.local/share}/warp-terminal/themes/
  4. - Windows 上使用 $env:APPDATA\warp\Warp\data\themes\
  5. 如果目录不存在,就创建它。
  6. 然后,在该目录中创建一个名为 {{theme_name}} 的自定义 Warp 主题,使用合法的 YAML 格式,并遵循 Warp 官方文档中的结构。不要包含 background_image 字段,也不要多或少字段。
  7. 将该主题保存为 {{theme_name}}.yaml,并告诉我保存的路径以确认已完成。

上下文(Context)

📁 代码库上下文(Codebase Context)

Warp 可以对你的 Git 代码库进行索引,帮助代理更好地理解代码,从而生成准确、贴合上下文的响应。 你的代码不会被上传到 Warp 的服务器。

你可以通过 Settings > Code > Codebase Index 查看和管理已索引的代码库。你也可以设置为在导航到新目录时自动进行索引。

如果你的代码库很大,可以通过添加 .warpindexingignore 文件来排除不希望索引的文件。


🧠 其他类型的上下文

你还可以直接向代理提供各种类型的输入,作为上下文来指导其行为、提升响应质量,例如:


🚀 Warp Drive 作为上下文

Warp 的代理会直接从你的 Warp Drive 中提取内容,用于生成更精准的响应,包括你的:

  • Workflows(工作流)

  • Notebooks(笔记本)

  • Prompts(提示)

  • Environment Variables(环境变量)

  • 被使用时,相关上下文会出现在对话的 “References(引用来源)” 或 “Derived from(来源自)” 区块中。

  • 该功能 默认开启,你可以在 Settings > AI > Knowledge > Warp Drive as Agent Mode Context 中管理它。


⚙️ Rules(规则)

Rules 是一种持久的上下文机制,能让代理产生更智能、个性化的响应。你可以自己创建规则,Warp 也会根据你的使用行为推荐规则。

示例规则包括:

  • 编码规范和最佳实践
  • 项目或工作区的特定指导
  • 对工具、格式或行为的个人偏好

访问 Rules 的方式:

  1. Warp Drive > Personal > Rules
  2. Command Palette,搜索 “Open AI Rules”
  3. 在设置面板中,进入 Settings > AI > Knowledge > Manage Rules
  4. 在 macOS 菜单中,点击 AI > Open Rules