參加你附近的 ,瞭解 VS Code 中的 AI 輔助開發。

在 VS Code 中使用提示檔案

提示檔案是 Markdown 檔案,用於為常見的開發任務定義可複用的提示,例如生成程式碼、執行程式碼審查或搭建專案元件。它們是獨立的提示,可以直接在聊天中執行,從而能夠建立一個標準化的開發工作流程庫。

它們可以包含特定於任務的指南或引用自定義指令,以確保一致的執行。與適用於所有請求的自定義指令不同,提示檔案是針對特定任務按需觸發的。

注意

提示檔案目前是實驗性功能,在未來的版本中可能會發生變化。

VS Code 支援兩種型別的提示檔案作用域

  • 工作區提示檔案:僅在工作區內可用,並存儲在工作區的 .github/prompts 資料夾中。
  • 使用者提示檔案:可在多個工作區中使用,並存儲在當前的 VS Code 配置檔案中。

提示檔案示例

以下示例演示瞭如何使用提示檔案。更多社群貢獻的示例,請參閱 Awesome Copilot 倉庫

示例:生成一個 React 表單元件
---
mode: 'agent'
model: GPT-4o
tools: ['githubRepo', 'codebase']
description: 'Generate a new React form component'
---
Your goal is to generate a new React form component based on the templates in #githubRepo contoso/react-templates.

Ask for the form name and fields if not provided.

Requirements for the form:
* Use form design system components: [design-system/Form.md](../docs/design-system/Form.md)
* Use `react-hook-form` for form state management:
* Always define TypeScript types for your form data
* Prefer *uncontrolled* components using register
* Use `defaultValues` to prevent unnecessary rerenders
* Use `yup` for validation:
* Create reusable validation schemas in separate files
* Use TypeScript types to ensure type safety
* Customize UX-friendly validation rules
示例:對 REST API 執行安全審查
---
mode: 'ask'
model: Claude Sonnet 4
description: 'Perform a REST API security review'
---
Perform a REST API security review and provide a TODO list of security issues to address.

* Ensure all endpoints are protected by authentication and authorization
* Validate all user inputs and sanitize data
* Implement rate limiting and throttling
* Implement logging and monitoring for security events

Return the TODO list in a Markdown format, grouped by priority and issue type.

提示檔案格式

提示檔案是 Markdown 檔案,使用 .prompt.md 副檔名,並具有以下結構

  • 頭部(可選):YAML frontmatter

    • description:提示的簡短描述
    • mode:用於執行提示的聊天模式:askeditagent(預設)。
    • model:執行提示時使用的語言模型。如果未指定,則使用模型選擇器中當前選擇的模型。
    • tools:可以使用的工具(集)名稱陣列。選擇配置工具以從工作區中的可用工具列表中選擇工具。如果在執行提示時給定的工具(集)不可用,它將被忽略。
  • 正文:Markdown 格式的提示指令

    透過使用 Markdown 連結來引用其他工作區檔案、提示檔案或指令檔案。使用相對路徑來引用這些檔案,並確保路徑根據提示檔案的位置是正確的。

    在提示檔案中,您可以使用 ${variableName} 語法引用變數。您可以引用以下變數

    • 工作區變數 - ${workspaceFolder}${workspaceFolderBasename}
    • 選擇變數 - ${selection}${selectedText}
    • 檔案上下文變數 - ${file}${fileBasename}${fileDirname}${fileBasenameNoExtension}
    • 輸入變數 - ${input:variableName}${input:variableName:placeholder}(從聊天輸入欄位向提示傳遞值)

建立提示檔案

建立提示檔案時,選擇是將其儲存在工作區還是使用者配置檔案中。工作區提示檔案僅適用於該工作區,而使用者提示檔案可在多個工作區中使用。

要建立提示檔案

  1. 啟用 chat.promptFiles 設定。

  2. 在聊天檢視中,選擇配置聊天 > 提示檔案,然後選擇新建提示檔案

    Screenshot showing the Chat view, and Configure Chat menu, highlighting the Configure Chat button.

    或者,從命令面板(⇧⌘P (Windows, Linux Ctrl+Shift+P))使用聊天:新建提示檔案命令。

  3. 選擇提示檔案應建立的位置。

    • 工作區:預設情況下,工作區提示檔案儲存在工作區的 .github/prompts 資料夾中。使用 chat.promptFilesLocations 設定為您的工作區新增更多提示資料夾。

    • 使用者配置檔案:使用者提示檔案儲存在當前配置檔案資料夾中。您可以使用設定同步在多個裝置間同步您的使用者提示檔案。

  4. 為您的提示檔案輸入一個名稱。

  5. 使用 Markdown 格式編寫聊天提示。

    在提示檔案中,以 Markdown 連結([index](../index.ts))的形式引用額外的工作區檔案。

    您還可以引用其他 .prompt.md 檔案來建立提示的層級結構。您也可以用同樣的方式引用指令檔案

要修改現有的提示檔案,請在聊天檢視中選擇配置聊天 > 提示檔案,然後從列表中選擇一個提示檔案。或者,從命令面板(⇧⌘P (Windows, Linux Ctrl+Shift+P))使用聊天:配置提示檔案命令,並從快速選擇中選擇提示檔案。

在聊天中使用提示檔案

您有多種選項來執行提示檔案

  • 在聊天檢視的輸入欄位中,輸入 / 後跟提示檔名。

    此選項使您能夠在聊天輸入欄位中傳遞附加資訊。例如,/create-react-form/create-react-form: formName=MyForm

  • 從命令面板(⇧⌘P (Windows, Linux Ctrl+Shift+P))執行聊天:執行提示命令,並從快速選擇中選擇一個提示檔案。

  • 在編輯器中開啟提示檔案,然後按編輯器標題區域的播放按鈕。您可以選擇在當前聊天會話中執行提示或開啟一個新的聊天會話。

    此選項對於快速測試和迭代您的提示檔案非常有用。

跨裝置同步使用者提示檔案

VS Code 可以使用設定同步在多個裝置間同步您的使用者提示檔案。

要同步您的使用者提示檔案,請為提示和指令檔案啟用設定同步

  1. 確保您已啟用設定同步

  2. 從命令面板(⇧⌘P (Windows, Linux Ctrl+Shift+P))執行設定同步:配置

  3. 從要同步的設定列表中選擇提示和指令

定義提示檔案的技巧

  • 清楚地描述提示應完成的任務以及期望的輸出格式。

  • 提供預期輸入和輸出的示例,以指導 AI 的響應。

  • 使用 Markdown 連結引用自定義指令,而不是在每個提示中重複指南。

  • 利用內建變數(如 ${selection})和輸入變數使提示更加靈活。

  • 使用編輯器播放按鈕測試您的提示,並根據結果進行最佳化。