在 VS Code 中使用提示檔
提示檔,也稱為斜線指令 (slash commands),讓您透過將常見任務編碼為獨立的 Markdown 檔案,以簡化這些任務的提示流程,並可直接在聊天中呼叫。每個提示檔都包含任務特定的內容和關於如何執行該任務的指南。
與會自動套用的自訂指示不同,您必須手動在聊天中呼叫提示檔。
使用提示檔來
- 簡化常見任務的提示流程,例如建立新元件的骨架、執行並修復測試,或準備提取請求 (pull request)
- 覆寫自訂代理程式的預設行為,例如建立最小實作計畫或為 API 呼叫產生模擬畫面
使用 聊天自訂編輯器 (預覽版) 在一處探索、建立和管理所有聊天自訂。從命令選擇區執行 聊天:開啟聊天自訂。
提示檔位置
您可以為特定工作區或在使用者層級定義提示檔,這些提示檔將在您的所有工作區中可用。下表列出了根據其範圍劃分的提示檔預設位置。您可以使用 chat.promptFilesLocations 設定來配置工作區提示檔的額外檔案位置。
| 範圍 | 預設檔案位置 |
|---|---|
| 工作區 | .github/prompts 資料夾 |
| 使用者設定檔 | 您的使用者資料 (特定於您的 VS Code 設定檔) |
要在使用者資料中建立提示檔,請使用「聊天自訂」編輯器或使用 Chat: New Prompt File (聊天:新增提示檔) 命令。
在單一程式碼庫 (monorepo) 中,請啟用 chat.useCustomizationsInParentRepositories 以從父儲存庫根目錄中發現提示檔。深入了解父儲存庫發現。
提示檔格式
提示檔是帶有 .prompt.md 副檔名的 Markdown 檔案。可選的 YAML Frontmatter 標頭會配置提示的行為
| 欄位 | 必填 | 說明 |
|---|---|---|
description |
否 | 提示的簡短描述。 |
name |
否 | 提示的名稱,在聊天中輸入 / 後使用。如果未指定,則使用檔案名稱。 |
argument-hint |
否 | 顯示在聊天輸入欄位中的提示文字,以引導使用者如何與提示互動。 |
agent |
否 | 用於執行提示的代理程式:ask、agent、plan,或自訂代理程式的名稱。預設情況下,使用目前的代理程式。如果指定了工具,預設代理程式為 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 (設定提示檔) 選單。
-
在「聊天」檢視中,選取 Configure Chat (設定聊天) (齒輪圖示) 以開啟「聊天自訂」編輯器,然後選取 Prompts (提示) 索引標籤。
-
從下拉式選單中選取 New Prompt (Workspace) (新增提示 (工作區)) 或 New Prompt (User) (新增提示 (使用者)),這取決於您想將提示檔儲存在何處。

或者,從命令選擇區 (⇧⌘P (Windows、Linux Ctrl+Shift+P)) 使用 Chat: New Prompt File (聊天:新增提示檔) 或 Chat: New Untitled Prompt File (聊天:新增無標題提示檔) 命令。
-
選取位置並輸入提示檔的檔案名稱。這是在聊天中鍵入
/時會出現的預設名稱。 -
使用 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 設定,以便在開始新的聊天會話時將提示顯示為建議動作。

工具清單優先順序
您可以透過使用 tools 後設資料欄位來指定自訂代理程式和提示檔的可用工具清單。提示檔也可以透過使用 agent 後設資料欄位來引用自訂代理程式。
聊天中可用的工具清單由以下優先順序決定
- 提示檔中指定的工具 (如果有的話)
- 提示檔中引用的自訂代理程式的工具 (如果有的話)
- 所選代理程式的預設工具 (如果有的話)
跨裝置同步使用者提示檔
VS Code 可以透過使用設定同步 (Settings Sync) 來同步您的使用者提示檔至多個裝置。
若要同步您的使用者提示檔,請啟用設定同步,並從命令選擇區 (⇧⌘P (Windows、Linux Ctrl+Shift+P)) 執行 Settings Sync: Configure (設定同步:設定)。從要同步的設定清單中選取 Prompts and Instructions (提示與指示)。
撰寫有效提示的訣竅
-
清楚描述提示應達成什麼目標以及預期的輸出格式。
-
提供預期輸入和輸出的範例,以引導 AI 的回應。
-
使用 Markdown 連結來引用自訂指示,而不是在每個提示中重複指南。
-
利用像
${selection}這樣的內建變數和輸入變數,以使提示更具彈性。 -
使用編輯器播放按鈕來測試您的提示,並根據結果進行修改。
常見問題
我如何知道提示檔的來源?
提示檔可以來自不同的來源:內建、在您的設定檔中定義的使用者提示、在您目前工作區中定義的工作區提示,或由擴充功能貢獻的提示。
若要識別提示檔的來源
- 從命令選擇區 (⇧⌘P (Windows、Linux Ctrl+Shift+P)) 選取 Chat: Configure Prompt Files (聊天:設定提示檔)。
- 將滑鼠懸停在清單中的提示檔上。來源位置會顯示在工具提示中。
使用聊天自訂診斷檢視來查看所有已載入的提示檔和任何錯誤。在「聊天」檢視中按一下右鍵並選取 Diagnostics (診斷)。深入了解在 VS Code 中疑難排解 AI。