這個快速入門指南展示了你如何在使用 GitHub Copilot 現代化時建立並應用自己的自訂技能。
GitHub Copilot 現代化支援自訂技能,將組織知識編碼,用於自訂函式庫升級、配置更新、執行編碼標準等。 你也可以將 Microsoft 原廠任務複製到自訂技能中,以符合你的需求。 你可以重複使用、分享並提升自訂技能,以提升團隊效率。
備註
如果你之前使用過自訂任務,這些任務儲存在專案的 .github/appmod/custom-tasks/ 或 Visual Studio Code 的使用者資料中,擴充套件會在首次載入時自動將它們遷移到專案的新 .github/skills/ 位置。
Prerequisites
- 一個GitHub帳號,任何方案下都已啟用GitHub Copilot訂閱。
- 下列其中一個整合開發環境 (IDE):
- 最新版本的 Visual Studio Code。 必須是版本 1.106 或更新。
- GitHub Copilot 使用於 Visual Studio Code。 設定指導說明請參見在 Visual Studio Code 中設置 GitHub Copilot。 請務必在 Visual Studio Code 內登入你的 GitHub 帳號。
- GitHub Copilot現代化升級。 安裝後重新啟動 Visual Studio Code。
- 最新版本的 IntelliJ IDEA。 必須是 2023.3 或更新版本。
- GitHub Copilot。 必須是 1.5.59 版或更新版本。 欲取得更多說明,請參閱在 IntelliJ IDEA 中設定 GitHub Copilot。 請務必在 IntelliJ IDEA 內登入你的 GitHub 帳號。
- GitHub Copilot 的現代化。 安裝後重新啟動 IntelliJ IDEA。 如果你還沒安裝 GitHub Copilot,也可以直接安裝 GitHub Copilot 現代化版。
- 最新版本的 Visual Studio Code。 必須是版本 1.106 或更新。
- Java 21或更晚。
- Maven 或 Gradle來建立Java專案。
備註
Azure 帳號僅用於部署資源到 Azure,使用 GitHub Copilot 現代化進行程式碼變更時則不需要。
如果你用的是 Gradle,只有 Gradle 包裝器版本 5 或更新版本才支援。
不支援 Kotlin 網域特定語言 (DSL)。
IntelliJ IDEA 尚不支援此功能 My Skills 。
創造屬於自己的技能
請依照以下步驟建立自訂技能。
定義技能資訊
在Activity側邊欄,開啟GitHub Copilot現代化擴充面板,將滑鼠移到TASKS區塊,然後選擇建立自訂技能。
SKILL.md檔案開啟。 請填寫以下欄位。 完整技能格式規範請參閱 代理技能規範。- 技能名稱:描述性且帶有連字號的技能識別碼。 例如,「Custom-skill-migrate-rabbitmq」。
- 技能描述:技能目的的簡明摘要。 例如,「將 RabbitMQ 訊息遷移到 Azure 服務匯流排,適用於 Spring Boot 應用程式」。
-
技能內容:在程式碼遷移過程中為Copilot提供詳細的指導說明。 你可以在這個欄位中以名稱參考 資源 區塊的檔案。 例如,「你是 Spring Boot 開發助理,請依照
guide.md從 RabbitMQ 遷移到 Azure 服務匯流排。」
新增資源
資源提供參考知識,讓 Copilot 在應用技能時會用到。 選擇 新增資源 並選擇資源類型:
檔案:選擇包含遷移說明、設定範例或其他參考資料的個別檔案。 若要將 Git 提交 diff 作為資源,請選擇對應的 diff 檔案。
資料夾:選擇一個資料夾,將該資料夾內所有檔案視為資源。 當參考知識跨越多個相關檔案時,此選項非常有用。
選取的檔案會被複製到 .github/skills/<skill-name>/ 你的專案中。 資源檔案和資料夾會與技能資料夾一同 SKILL.md 存放。 總資源規模有限。 請務必在Skill Content欄位中以名稱引用這些檔案或資料夾,這樣Copilot才知道何時使用它們。
保存這項技能
完成所有欄位並新增資源後,選擇 儲存。 自訂技能會出現在 「我的技能 」區塊。
分享你自己的技能吧
透過從專案中複製其技能資料夾來與他人分享一個技能:
複製下方
.github/skills/的技能資料夾,並與目標收件人分享。收件人那邊,將資料夾放在其專案根目錄的
.github/skills/目錄下。 若該目錄不存在,請建立它。在擴充功能面板中選擇 「重新整理 」。 這個技能會出現在 「我的技能 」區,隨時可以使用。
發揮你自己的技巧
請依照以下步驟運用您的技能:
在檔案底部選擇
SKILL.md」,或在「我的技能」區找到該技能並選擇「跑步技能」。Copilot 聊天視窗會在代理模式下開啟,並自動執行以下步驟:
- 創造 plan.md 和 progress.md。
- 檢查版本控制狀態並檢查新的遷移分支。
- 執行程式碼遷移。
- 執行建置、單元測試、CVE、一致性檢查及完整性檢查的驗證與修正。
- 產生 一個 summary.md 檔案。
若客服暫停確認或被打斷,請輸入 「繼續 進行」。
完成所有步驟後,檢視程式碼變更,並在聊天視窗選擇 「保留 」以確認。
複製到我的技能集
如果你想自訂Microsoft任務,可以匯出成 My Skills作為起點,然後再修改以符合你的需求:
在 TASKS 區塊中,找到你想自訂的Microsoft任務。
右鍵點擊該項目,選擇 「複製到我的技能」。
會開啟一個新
SKILL.md檔案,預先填入所選項目的內容。 視需要編輯 技能名稱、 描述、 內容和 資源 欄位。選取 [儲存]。 該技能會出現在 「我的技能 」區塊。
更新或刪除你自己的技能
在 「我的技能 」區塊,右鍵點擊你想修改的技能,並選擇以下選項之一:
- 編輯以更新技能。
- 刪除 即可移除該技能。
常見問題
如果我手動把技能資料夾放進 .github/skills/去,擴充功能會辨識它嗎?
是的。 如果你在專案根目錄中放置一個包含SKILL.md檔案的有效.github/skills/技能資料夾,當你在擴充套件面板中選擇重新整理後,擴充套件會辨識它。 這個技能會出現在任務面板的「我的技能」區塊,你可以像執行、編輯或刪除它一樣,就像其他自訂技能一樣。
然而,只有在SKILL.md中明確被引用的資源檔案會顯示在擴充功能 UI 中。 當你使用「新增資源」按鈕時,副檔名會將選取的檔案複製到技能資料夾,並在SKILL.md區塊下方新增連結條目,例如:
**Resources:**
- file:///references.txt
如果你手動在技能資料夾放置額外檔案,但沒有加上這些連結條目,擴充功能就不會顯示它們。 為確保資源檔案顯示在介面中並可供Copilot存取,請務必透過 Add Resources 按鈕新增,或手動在 SKILL.md 中新增對應的連結條目。