在 VS Code 中使用提示檔

提示檔,也稱為斜線指令 (slash commands),讓您透過將常見任務編碼為獨立的 Markdown 檔案,以簡化這些任務的提示流程,並可直接在聊天中呼叫。每個提示檔都包含任務特定的內容和關於如何執行該任務的指南。

與會自動套用的自訂指示不同,您必須手動在聊天中呼叫提示檔。

使用提示檔來

  • 簡化常見任務的提示流程,例如建立新元件的骨架、執行並修復測試,或準備提取請求 (pull request)
  • 覆寫自訂代理程式的預設行為,例如建立最小實作計畫或為 API 呼叫產生模擬畫面
提示

提示檔、代理程式還是技能? 提示檔用於輕量級、單一任務的提示。當您需要具有自身工具限制和交接的持久性角色時,請使用自訂代理程式。當您需要具有指令碼和資源的可攜式多檔案功能時,請使用代理程式技能

提示

使用 聊天自訂編輯器 (預覽版) 在一處探索、建立和管理所有聊天自訂。從命令選擇區執行 聊天:開啟聊天自訂

提示檔位置

您可以為特定工作區或在使用者層級定義提示檔,這些提示檔將在您的所有工作區中可用。下表列出了根據其範圍劃分的提示檔預設位置。您可以使用 chat.promptFilesLocations Open in VS Code Open in VS Code Insiders 設定來配置工作區提示檔的額外檔案位置。

範圍 預設檔案位置
工作區 .github/prompts 資料夾
使用者設定檔 您的使用者資料 (特定於您的 VS Code 設定檔)

要在使用者資料中建立提示檔,請使用「聊天自訂」編輯器或使用 Chat: New Prompt File (聊天:新增提示檔) 命令。

提示

在單一程式碼庫 (monorepo) 中,請啟用 chat.useCustomizationsInParentRepositories Open in VS Code Open in VS Code Insiders 以從父儲存庫根目錄中發現提示檔。深入了解父儲存庫發現

提示檔格式

提示檔是帶有 .prompt.md 副檔名的 Markdown 檔案。可選的 YAML Frontmatter 標頭會配置提示的行為

欄位 必填 說明
description 提示的簡短描述。
name 提示的名稱,在聊天中輸入 / 後使用。如果未指定,則使用檔案名稱。
argument-hint 顯示在聊天輸入欄位中的提示文字,以引導使用者如何與提示互動。
agent 用於執行提示的代理程式:askagentplan,或自訂代理程式的名稱。預設情況下,使用目前的代理程式。如果指定了工具,預設代理程式為 agent
model 執行提示時使用的語言模型。如果未指定,則使用模型選擇器中目前選定的模型。
tools 此提示可用的工具或工具集名稱清單。可包含內建工具、工具集、MCP 工具,或由擴充功能貢獻的工具。若要包含 MCP 伺服器的所有工具,請使用 <server name>/* 格式。
深入了解聊天中的工具
注意

如果在執行提示時某個指定工具不可用,則會忽略該工具。

主體包含 Markdown 格式的提示文字。提供您希望 AI 遵循的具體指示、指南或任何其他相關資訊。

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

要在主體文字中引用代理程式工具,請使用 #tool:<tool-name> 語法。例如,要引用 browser 工具,請使用 #tool:browser

提示

如果您希望使用者提供額外資訊,您可以使用 vscode/askQuestion 工具。您也可以使用像 ${input:variableName}${input:variableName:placeholder} 這樣的語法。大多數語言模型都能理解這種語法,並會提示輸入這些資訊。

以下範例展示了如何使用提示檔。更多社群貢獻的範例,請參閱 Awesome Copilot 儲存庫

範例:產生 React 表單元件
---
agent: 'agent'
model: GPT-4o
tools: ['search/codebase', 'vscode/askQuestions']
description: 'Generate a new React form component'
---
Your goal is to generate a new React form component based on the templates in the Github repo contoso/react-templates.

Use the #tool:vscode/askQuestions to 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 的安全性審查
---
agent: '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.

建立提示檔

當您建立提示檔時,請選擇將其儲存在您的工作區或使用者設定檔中。工作區提示檔僅適用於該工作區,而使用者提示檔則在多個工作區中可用。

建立提示檔

提示

在聊天輸入中鍵入 /prompts 以快速開啟 Configure Prompt Files (設定提示檔) 選單。

  1. 在「聊天」檢視中,選取 Configure Chat (設定聊天) (齒輪圖示) 以開啟「聊天自訂」編輯器,然後選取 Prompts (提示) 索引標籤。

  2. 從下拉式選單中選取 New Prompt (Workspace) (新增提示 (工作區))New Prompt (User) (新增提示 (使用者)),這取決於您想將提示檔儲存在何處。

    Screenshot of the Chat Customizations editor, showing the Prompts tab and the dropdown to create a new prompt file.

    或者,從命令選擇區 (⇧⌘P (Windows、Linux Ctrl+Shift+P)) 使用 Chat: New Prompt File (聊天:新增提示檔)Chat: New Untitled Prompt File (聊天:新增無標題提示檔) 命令。

  3. 選取位置並輸入提示檔的檔案名稱。這是在聊天中鍵入 / 時會出現的預設名稱。

  4. 使用 Markdown 格式撰寫聊天提示。

    • 填寫檔案頂部的 YAML frontmatter,以配置提示的描述、代理程式、工具及其他設定。
    • 在檔案主體中新增提示的指示。

您可以透過在「聊天自訂」編輯器中開啟現有提示檔來修改它們。

使用 AI 產生提示檔

您可以使用 AI 根據任務描述來產生提示檔。在聊天中鍵入 /create-prompt 並描述您要自動化的任務 (例如,「用於產生單元測試的提示」)。代理程式會提出澄清問題,產生一個帶有適當 frontmatter 和指示的 .prompt.md 檔案,並讓您選擇儲存在工作區或使用者儲存空間中。

您也可以從正在進行的對話中提取可重複使用的提示。例如,在多輪聊天會話後,詢問「將此轉換為可重複使用的提示」或「將此工作流程儲存為提示」,代理程式便會建立一個捕捉該工作流程的提示檔。

您也可以從「聊天自訂」編輯器中,透過從下拉式選單中選取 Generate Prompt (產生提示) 來產生提示檔。

在聊天中使用提示檔

您有多種方式可以執行提示檔

  • 在「聊天」檢視中,在聊天輸入欄位中鍵入 /,然後輸入提示名稱。代理程式技能也會以斜線指令的形式與提示檔一起出現。

    您可以在聊天輸入欄位中新增額外資訊。例如,/create-react-form formName=MyForm/create-api for listing customers

  • 從命令選擇區 (⇧⌘P (Windows、Linux Ctrl+Shift+P)) 執行 Chat: Run Prompt (聊天:執行提示) 命令,並從快速選取中選取一個提示檔。

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

    此選項對於快速測試和疊代提示檔很有用。

提示

使用 chat.promptFilesRecommendations Open in VS Code Open in VS Code Insiders 設定,以便在開始新的聊天會話時將提示顯示為建議動作。

Screenshot showing a "explain" prompt file recommendation in the Chat view.

工具清單優先順序

您可以透過使用 tools 後設資料欄位來指定自訂代理程式和提示檔的可用工具清單。提示檔也可以透過使用 agent 後設資料欄位來引用自訂代理程式。

聊天中可用的工具清單由以下優先順序決定

  1. 提示檔中指定的工具 (如果有的話)
  2. 提示檔中引用的自訂代理程式的工具 (如果有的話)
  3. 所選代理程式的預設工具 (如果有的話)

跨裝置同步使用者提示檔

VS Code 可以透過使用設定同步 (Settings Sync) 來同步您的使用者提示檔至多個裝置。

若要同步您的使用者提示檔,請啟用設定同步,並從命令選擇區 (⇧⌘P (Windows、Linux Ctrl+Shift+P)) 執行 Settings Sync: Configure (設定同步:設定)。從要同步的設定清單中選取 Prompts and Instructions (提示與指示)

撰寫有效提示的訣竅

  • 清楚描述提示應達成什麼目標以及預期的輸出格式。

  • 提供預期輸入和輸出的範例,以引導 AI 的回應。

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

  • 利用像 ${selection} 這樣的內建變數和輸入變數,以使提示更具彈性。

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

常見問題

我如何知道提示檔的來源?

提示檔可以來自不同的來源:內建、在您的設定檔中定義的使用者提示、在您目前工作區中定義的工作區提示,或由擴充功能貢獻的提示。

若要識別提示檔的來源

  1. 從命令選擇區 (⇧⌘P (Windows、Linux Ctrl+Shift+P)) 選取 Chat: Configure Prompt Files (聊天:設定提示檔)
  2. 將滑鼠懸停在清單中的提示檔上。來源位置會顯示在工具提示中。
提示

使用聊天自訂診斷檢視來查看所有已載入的提示檔和任何錯誤。在「聊天」檢視中按一下右鍵並選取 Diagnostics (診斷)。深入了解在 VS Code 中疑難排解 AI

© . This site is unofficial and not affiliated with Microsoft.