iT邦幫忙

2026 iThome 鐵人賽

DAY 25
0
Vibe Coding

重新認識Github Copilot (續)系列 第 25 篇

Day25 - 把自己的工具包打包成 GitHub Copilot Plugin😁

  • 分享至 

  • xImage
  •  

https://ithelp.ithome.com.tw/upload/images/20261008/20103333jTGGP7Xjmp.png

今天筆者要來介紹一個原本以為很複雜,結果居然可以請 Agent 幫忙打包的功能: GitHub Copilot Plugin。如果你已經在 Copilot CLI 裡累積了一堆 agent、skill、hook、prompt 或自訂 command,這篇就是幫你把散落各處的工具收進工具箱, 以後換專案、換資料夾,不用再重新整理一次啊!

https://ithelp.ithome.com.tw/upload/images/20261008/20103333MBt7e4H8p5.jpg

這對誰有用?很簡單,凡是已經開始客製化 Copilot CLI 的工程師都很適合。筆者前幾天陸續做了 畫流程圖的 subagent、session start 與 stop 的 hook、security scan command,以及 refactor skill。東西一多,原本只是幾個檔案,沒多久就變成「這個到底放哪裡」的考古現場。 所以今天筆者就來補完這個魔王關:把它們打包成一個可以重複安裝的 Plugin。

🧩 Plugin Marketplace,原來不是一個中央大賣場
筆者一開始看到 Marketplace,原本以為會有一個固定網站,大家把 Plugin 丟上去,使用者再進去 按一下下載。結果不是這樣,這個 Marketplace 的概念比較像是「每個 GitHub Repository 都可以 成為自己的小型商店」。

https://ithelp.ithome.com.tw/upload/images/20261008/20103333JhRl5bHO2G.jpg

你可以把 Plugin 放在自己的 GitHub Repository,再用一個 marketplace.json 描述裡面有哪些 Plugin。其他人先把你的 Repository 加入 Marketplace,之後才可以搜尋並安裝你提供的 Plugin。也就是說,人人都是 Marketplace, 只要你願意整理、發布,自己的工具就能分享出去。

💡 三個關鍵觀念
第一,Marketplace 要先加入,才能搜尋裡面的 Plugin。
第二,Plugin 可以放在 GitHub Repository 裡發布。
第三,Plugin 裝好之後是 CLI 層級可用,不是綁死某一個 Workspace。

官方會有提供兩個預設 Marketplace,但真正有趣的地方是,也可以建立自己的 Marketplace, 團隊也可以建立內部 Marketplace。這對企業內部共用工具來說,實務上非常實用。

📦 把既有的 agent、hook、skill 一次打包
筆者直接用 Agent Mode,請它把目前工作區裡的內容整理成一個 Copilot Plugin。 這次要打包的內容包括:

1 Agent
可產生流程圖的 code-flowchart agent。

2 Hooks
session start 與 session stop 的提示通知。

3 Command
security scan 的自訂 command。

4 Skill
協助程式重構的 refactor skill。

https://ithelp.ithome.com.tw/upload/images/20261008/20103333SfaOSfmLnP.jpg

⚙️ 安裝本機 Plugin:其實比想像中簡單
確認資料夾名稱後,安裝本機 Plugin 的流程就很直覺。筆者在目前目錄執行安裝命令, 讓 Copilot CLI 讀取這個 Plugin 資料夾裡的 manifest 與相關檔案。

copilot plugin install ./copilot-plugin

安裝完成後,可以使用 Plugin 相關指令查看目前已安裝的內容,例如列出 Plugin、確認名稱與版本。 筆者也會特別確認 manifest 裡的名稱,因為後面使用時,看到的名稱通常就是由 plugin.json 定義出來的。
Plugin manifest 會描述包含哪些 agent、hook、security 與 refactor 功能。

https://ithelp.ithome.com.tw/upload/images/20261008/20103333EfXcDm78Uj.jpg

🌍 Plugin 的特性:不是 Workspace 專屬,而是 CLI 共用
這是筆者覺得 Plugin 很有意思的地方。以前做 Workspace 層級的設定時,通常會綁定在特定專案 或特定資料夾裡;但 Plugin 安裝完成後,只要是在同一個 CLI 環境,就可以在其他資料夾使用。

https://ithelp.ithome.com.tw/upload/images/20261008/20103333HRMK5mPcfp.jpg

筆者特別開了另一個專案做測試,使用前幾天建立的 C# 範例專案,確認剛剛打包的功能是否真的 可以被叫起來。這就像把自己的工具箱帶到別的工地,不用每到一個地方就重新買一套螺絲起子, 實務上非常省時間。

📊 實際測試:成功叫出流程圖功能
筆者把指令補充清楚後再次測試,這次 Copilot 成功讀取專案程式碼,產生流程圖的 Markdown 檔案。從結果來看,Plugin 裡面的 agent 確實已經可以跨資料夾使用, 這就是今天這個練習最重要的里程碑。

https://ithelp.ithome.com.tw/upload/images/20261008/20103333aFLjl6d7zC.jpg

成功產生流程圖檔案
筆者覺得這招是絕對必學啊。開發久了,每個人多少都會有自己的工具包,有些是 PowerShell script,有些是 prompt,有些是 agent,有些是自己寫的 command。 如果每個專案都手動複製,久了不只浪費時間,版本也會開始分歧,最後變成「A 專案可以、 B 專案不行」的 IT 民間傳說。/images/emoticon/emoticon04.gif

https://ithelp.ithome.com.tw/upload/images/20261008/20103333mBm7eHmhuc.jpg

更多實作細節,請參考完整版影片囉

本日結論:使用Plugin的好處/images/emoticon/emoticon07.gif
♻️ 可重複使用、跨專案套用 — 將 Agent、Skill、Hook 與整合功能一次封裝,就能在不同專案重複使用。
👥 統一團隊開發規範 — 標準化 Copilot 的行為、工具、流程與最佳實務,讓團隊使用方式更一致。
📦 容易部署與更新 — 可透過 Marketplace、Git Repository 或本機路徑安裝,方便分享、版本管理與更新。


上一篇
Day24 - GitHub Copilot Custom Agents 與 Subagents 實測:把畫流程圖這件事外包出去
系列文
重新認識Github Copilot (續) 共 25 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言