1. 簡介

在本程式碼研究室中,您將使用 Antigravity 中的平行多代理協調機制,建構多語言程式碼品質稽核和自動補救系統。您將部署專門的 AI 子代理,平行檢查不同語言堆疊,而非以傳統的手動線性方式審查多個獨立的服務目錄。
您將建立協調員代理程式,用於探索專案版面配置、管理子代理程式來執行單元測試、建構稽核計畫、掃描是否符合規範、建立稽核報告,以及自主重構程式碼集中的高優先順序程式設計問題。
課程內容
- 專案探索:如何部署協調器代理程式,以便在複雜的微服務架構中繪製目錄地圖,並偵測程式設計語言。
- 協調式平行處理:如何將程式碼稽核和單元測試,同時分配給獨立的語言專屬 AI 子代理程式。
- 人為介入監督:如何引導協調員代理建構稽核計畫,並在執行前安全地暫停,以供您審查及核准。
- 自動修正:如何部署專門的開發人員子代理程式,自主重構及解決高優先順序的程式碼和法規遵循問題。
- 驗證迴圈:如何自動重新執行測試套件,驗證 AI 生成的程式碼變更,確保沒有導入任何迴歸。
軟硬體需求
如要完成本程式碼研究室,您必須在本機安裝下列工具:
- Google Antigravity
- Git
- 環境中已設定一或多種下列語言:Go、Python、C# / .NET、NodeJS、Java
我們開始吧!
2. 環境設定
首先,請確認你已安裝 Antigravity。
接著,複製雲端微服務示範應用程式 Online Boutique:
git clone https://github.com/GoogleCloudPlatform/microservices-demo.git
使用程式碼在 Antigravity 中建立新專案。在 Antigravity 中,選取左側 Projects 下方的 Create New Project:

選取存放區資料夾:

您可以為 Agent Security Settings 選擇 Default 模式,並為專案使用相同名稱 microservices-demo。
3. 探索
在微服務架構中,程式碼集通常會涉及多個服務,涵蓋多個資料夾或存放區和程式設計堆疊。線上選品店示範應用程式也是如此。
啟動代理程式前,請先瞭解專案版面配置。在第一個步驟中,您將使用 Antigravity 部署協調器代理程式,在 src/ 下探索不同語言的各種微服務,並協調語言專屬的子代理程式,在後續步驟中處理各項微服務。
首先,請協調員代理程式探索程式碼集,並列出哪些目錄中有哪些服務,以及這些服務使用的語言。
在 Antigravity 中,於先前建立的 microservices-demo 專案中開始新對話。模型方面,您可以選擇思考程度中等的最新 Gemini 模型:

試試這則提示詞:
Identify all the microservices located under the src/ directory,
detect which programming language each service is written in, and
output the list as a clean markdown table showing: Service Name,
Directory, and Primary Language.
最後,Antigravity 應會傳回服務及其主要語言的精美表格,類似於以下內容:

4. 選擇語言
現在您已繪製程式碼基底,接下來需要選擇要使用的語言。請務必確認您擁有所選語言所需的編譯器/工具 (例如 C# 的 dotnet 工具、Java 的 javac 等)。
選取要使用的語言後,請務必執行該語言的相應單元測試,驗證目前的程式碼健康狀態。
您可以使用專門的平行子代理程式,以每種語言執行測試套件。這項研究凸顯了多代理工作流程的核心力量:在獨立的語言專屬工作區中,同時執行隔離測試。
根據您的環境調整並執行下列提示:
I have [C#, Python, Go, Java, Node.js] setup locally.
Run the unit tests for services in these languages
in parallel subagents and report back in a clean markdown
on their pass/fail status.
您應該會看到多個代理程式以每種語言執行測試。請務必審查每個子代理程式的權限要求,如下所示:

所有子代理程式完成後,您應該會收到單元測試的精美報表,類似於下列內容:

5. 規劃稽核作業
方案
在複雜的工作流程中,如果沒有計畫就啟動程式碼變更,可能會導致衝突。我們希望建立結構化且透明的藍圖,說明稽核的目標。您會要求協調員代理設計稽核計畫,其中包含程式碼品質檢查、例外狀況處理、查詢衛生檢查等。
為確保人工監督 (人機迴圈),協調員會將計畫寫入構件,並立即暫停,等待您審查。
試試這則提示詞,擬定稽核計畫:
We want to audit these microservices for code quality,
exception handling and database query formatting standards
for the languages I have set up locally. Design an audit plan
detailing what you will check and save it as an Audit Plan artifact.
Do not execute the audit yet. Stop after writing the plan and wait
for my instructions.
您應該會在對話中看到稽核計畫構件:

查看
現在請檢查產生的稽核計畫,確保目標檔案和標準正確無誤。您也可以選擇新增自訂限制 (例如檢查內嵌註解或樣式指南),然後再核准繼續進行。
按一下生成的稽核計畫,即可查看詳細計畫:

選用:您可以為計畫新增註解 (例如「請確保所有公開方法都有詳細說明文件」),並根據註解進行變更和疊代,直到對計畫感到滿意為止。
6. 執行稽核作業
執行
稽核計畫核准後,我們就開始執行稽核。協調員代理程式會為每個語言堆疊產生獨立的平行子代理程式。每個代理程式會在各自的服務資料夾中並行運作,避免檔案衝突,同時加快掃描程序。協調員代理程式會將結果合併到統一的品質資訊主頁。
以下是下一個可以試試看的提示:
Execute the audit plan by spawning the parallel language subagents.
Once they finish scanning, collect their findings into an audit
report artifact, sorted by language and then priority. Include the
file paths, line ranges, snippets, and explanation of why it is a
finding. Stop after writing the report.
您應該會再次看到多個代理程式:

請務必觀察每個子代理程式,並授予執行稽核所需的權限。最後,您應該會看到稽核報告構件:

查看
開啟稽核報告後,您應該也會看到每種語言的詳細調查結果。舉例來說,以下是 C# 中 cartservice 的高優先順序問題:

請查看稽核報告的其餘部分,瞭解稽核結果。
7. 修復
診斷程式碼品質問題只是第一步。現在,我們將使用代理解決問題。我們不必手動編寫程式碼,而是將重構作業委派給語言範圍的開發人員子代理,由子代理重新編寫程式碼,使其符合最佳做法。
您可以嘗試下列方法:
- 您可以為每種語言產生一個代理程式,讓所有代理程式同時修正所有問題。這或許可行,但同時追蹤及審查所有問題可能過於複雜。
- 您可以一次為一種語言產生一個代理程式,讓該程式處理該語言的問題。這樣做較容易管理,但您仍需信任代理程式,讓它對多個檔案進行多項變更。
- 您可以讓一位代理商一次處理一個問題,並在檢查結果後再處理下一個問題。這種做法較為保守,但可確保您掌握每次變更的最新資訊。
我們將採用較保守的方法 #3,並使用以下提示:
Select the top high-priority finding in [pick a language, e.g., C#]
and remediate the finding. Show me the code changes once complete.
幾秒後,系統就會以所選語言顯示代理程式處理最高優先順序問題的過程,並修正問題。
最後,您也可能會收到「逐步解說」構件,顯示代理程式變更的內容:

選用:此時,您可以要求專員變更實作方式,或在滿意變更內容後,要求專員新增單元測試,涵蓋這些變更。
8. 驗證
在軟體開發中,修正項目必須經過驗證才算完成。在最後一個步驟中,我們可以要求代理執行測試套件,確保程式碼變更不會導致回歸,並重新執行稽核掃描器,確認問題已完全解決。
這個步驟會顯示規劃、掃描、修正和驗證的完整自動化意見回饋迴路。
執行下列提示:
Rerun the unit tests for the changed language. If they pass, rerun
the relevant audit agent to check if the finding is resolved. If it
is resolved, mark the issue as resolved in the audit report.
您應該會看到 Test Runner 子代理啟動並執行測試,然後看到 Auditor 子代理更新稽核報告。最後,您應該會看到稽核報告更新為最新狀態:

一個問題解決了!現在,您可以處理其餘問題,這次或許可以採取較不保守的做法,讓代理程式完成更多工作,再由您審查。
9. 恭喜
恭喜!您剛使用 Antigravity 完成複雜的多語言程式碼審查和自動化修正工作流程。
您運用 Antigravity 的多代理架構,不僅自動執行靜態檢查,還調度管理自動化品質保證團隊。專責語言的虛擬服務專員同時處理特定語言的問題,而協調員虛擬服務專員則彙整集中式計畫和報告,隨後管理目標程式碼重構。
重點回顧
- 協調式平行處理:您已瞭解如何將稽核和測試作業分配給平行執行的獨立語言專屬子代理程式,避免線性審查瓶頸。
- Human-in-the-Loop:您在執行稽核計畫前審查並註解生成的計畫,維持對自主作業的監督。
- 自動修正和驗證:您已瞭解 AI 代理不僅能診斷程式碼品質差異,還能重構程式碼,並根據本機測試套件驗證自己的變更。