在 ADO Pipeline 中使用 GitHub Copilot CLI:實現全天候24h開發的夢想
我跟你說,我夢想著實現這個功能很久了✌
我一直希望能夠在 CI/CD Pipeline 中加入 LLM 的力量。
我一直想透過 CLI 讓 LLM 在 Pipeline 中自動處理重複性任務。例如,在晚上讓 AI 自動幫我找 bugs、自動做 Code Review、甚至自動撰寫說明文件或一部分程式碼…
然後,我夢寐以求的 “兩班制全天候24h開發團隊” 就可以實現了!!!
白天,由 Developer 搭配 AI 進行開發。
晚上,由 AI 自己去做比較不需要人監督或無傷大雅的工作,像是寫文件,找 bugs 之類的。
然後隔天早上工程師上班之後,就可以繼續接手 AI 昨晚產出的成果,接著進行開發。
嘿嘿,這樣是不是太完美了? 想想都覺得興奮。
緣起
在現代軟體開發中,效率與自動化是不可或缺的要素。
GitHub Copilot CLI 的出現,為我們提供了一個強大的工具,能夠在開發過程中自動生成程式碼、撰寫技術文件,甚至協助除錯。
假設我能將這項工具整合到 Azure DevOps 的 Pipeline 中,自動在晚上運行,就可以實現我之前說的全天候的開發流程。(以前是把程式碼發包給印度的工程師,現在 AI 就是我的夜班工程師!!!)
嘗試在 Azure DevOps Pipeline 中使用 GitHub Copilot CLI
想要將 GitHub Copilot CLI 整合到 Azure DevOps Pipeline 中,有幾個關鍵步驟。
首先,你要能夠在 Build Agent 上安裝 GitHub Copilot CLI。要這麼做不難,只需透過底下這個 bash script 指令就可以完成安裝 。
npm install -g @github/copilot
只是,你得先確定 Node.js 已經安裝在你的 Agent 上,且是最新版本。
因此,我們會在 pipeline 中,先用一個 step 來安裝 Node.js。
steps:
- task: NodeTool@0
displayName: 'Use Node 22.x'
inputs:
versionSpec: 22.x

接著,我們就可以安裝 GitHub Copilot CLI 了。
我們可以透過以下的指令碼來完成這個步驟:
steps:
- bash: |
npm install -g @github/copilot
export GITHUB_TOKEN="github_pat_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
(...略...)
這邊有一個非常重要的重點,為了讓 GitHub Copilot CLI 能夠運作,你必須先建立一個 GitHub Personal Access Token (PAT),並且再設定在名為 GITHUB_TOKEN 的環境變數中。
這個 PAT Token 需要有 Copilot requests 的權限。這樣 GitHub Copilot CLI 才能夠在你的 Pipeline 中進行操作。
接下來,你可以根據你的需求,在 CI/CD Pipeline 中使用 GitHub Copilot CLI 來生成技術文件、進行程式碼分析,或是其他的自動化任務(像是 改bugs 或 寫新功能)。
例如,我們底下的這串指令碼中的提示,就是透過運行 GitHub Copilot CLI 讓 LLM 幫我們檢視專案中所有程式碼,找出所有可能的 bugs,最後生成 bugs.md 文件。
(...承上...)
copilot -p "閱讀完整的程式碼,將找到的bugs寫入 bugs.md,所有輸出使用正體中文" --allow-all-tools
git add bugs.md
git commit -m "update bugs.md" || echo "⚠️ 無變更可提交"
上面的 Copilot 指令中,-p 參數用來指定我們的 prompt,告訴 Copilot 我們希望它完成什麼任務。
而 --allow-all-tools 參數,允許 Copilot 使用所有可用的工具來完成任務。這樣可以確保 Copilot 有足夠的資源來進行程式碼分析與文件寫入。
當 Copilot 完成任務後,我們使用 git 指令將生成的 bugs.md 文件提交到版本控制系統中。
整合到夜間執行的 Pipeline
最後,我們可以將這條 Pipeline 配置成一個夜間執行的 schedule :

白天,開發人員上班的時候,就會看到昨天半夜我的 AI 開發團隊(也就是 GitHub Copilot CLI) 幫忙找出來的 bugs(位於bugs.md),並且可以直接接手,進行程式碼的修正:

意不意外? 驚不驚喜?
我們 24h 不打烊的軟體開發工廠,就這麼誕生了!!!
你想要讓夜班 AI 工程師幹什麼都行!
寫程式、產文件、 找 bugs、檢查資安問題、跑E2E自動化 UI 測試,寫測試報告…只有你想不出,沒有你做不到。
未來,迎接著我們的,將會是一個更卷更高效率、更自動化的軟體開發時代 !!!
結語
透過將 GitHub Copilot CLI 整合到 Azure DevOps Pipeline 中,我們可以實現真正的 “兩班制24h全天候開發”。白天由工程師專注於創造性工作,晚上由 AI 自動化處理重複性任務,極大化地提升了 開發效率 與 產品品質。
這不僅是技術的進步,更將是開發流程的一場革命。🖖
留言