AI 正在初次分析文章並整理建議,請稍候…
Google Antigravity 賦予 AI 「上帝視角」?資深工程師教你配置 3 道防線,杜絕 Agent 誤刪專案的慘劇
嗨,我是 Eric,浪花科技的資深工程師。如果你的 IDE 還停留在 2024 年那種「你問它答」的 Copilot 時代,那你可能還沒意識到 2026 年的今天,我們正面臨著什麼樣的風險。
自從 Google Antigravity 成為主流開發環境後,我們終於解放了雙手。Agentic IDE(代理型開發環境)不再只是補全程式碼,它能直接操作終端機(Terminal)、讀寫檔案系統,甚至幫你部署 Docker 容器。這聽起來很美好,對吧?直到上週,我看到我們公司的一位實習生,眼睜睜看著他的 AI 代理人為了「清理暫存檔」,順手執行了一行 rm -rf ./src/*,然後還很有禮貌地回報:「任務已完成,環境已清理。」
那一刻,辦公室的空氣都凝結了。雖然有 Git,但那些還沒 Commit 的 3 小時心血直接化為烏有。
這就是 2026 年開發者必須面對的全新課題——開發者風險管理。當 AI 擁有對你電腦的「上帝視角」與執行權限時,你該如何確保它不會變成破壞王?今天這篇文章,不談虛無縹緲的理論,直接帶你實作 Google Antigravity 中的指令與檔案操作安全防禦策略。
從 Copilot 到 Agent:為什麼風險指數呈幾何級數上升?
在舊時代的 VS Code + Copilot 模式中,AI 的產出僅限於「編輯器」視窗內。它建議了一段爛 Code,你只要不存檔、不執行,它就傷害不了你。那是一個「被動諮詢」的時代。
但 Google Antigravity 是「主動執行」的。為了實現 Vibe Coding(氛圍編碼)和全自動除錯,Antigravity 預設會請求終端機的存取權限。這意味著:
- 檔案操作風險:AI 可能誤判檔案的重要性而進行覆寫或刪除。
- 指令執行風險:AI 可能為了安裝套件,執行了來源不明的 npm install scripts,或者修改了系統層級的 config。
- 資料洩漏風險:AI 可能將含有 API Key 的 .env 檔案內容作為 Context 傳送給第三方插件。
所以,別再讓你的 Agent 在「裸奔」狀態下工作了。以下是三個我在專案中強制實施的安全配置。
第一道防線:配置 .antigravity/permissions.json 白名單機制
Google Antigravity 引入了專案層級的權限控制檔,這有點像是 Android App 的權限宣告。很多開發者為了方便,直接設為 "mode": "unrestricted",這跟把家裡大門打開請小偷進來沒兩樣。
在你的專案根目錄下,檢查或建立 .antigravity/permissions.json。我建議的標準設定如下:
{
"version": "2.0",
"file_system": {
"scope": "project_only",
"protected_paths": [
".env",
".git/",
"config/production.json"
],
"allowed_actions": ["read", "write", "create"],
"require_approval_for": ["delete"]
},
"terminal": {
"allow_sudo": false,
"blocked_commands": [
"rm -rf /",
"mkfs",
"shutdown",
":(){ :|:& };:"
],
"network_access": {
"allow_domains": ["npm.pkg.github.com", "registry.npmjs.org"]
}
}
}
這段配置做了幾件關鍵的事:
- 鎖定敏感檔案:AI 無法讀取或修改
.env和 Git 目錄。 - 刪除需審核:AI 可以寫程式碼,但如果要刪除檔案,IDE 會彈出視窗要求你按 Y 確認。
- 禁止危險指令:直接封殺
sudo權限和毀滅性的 Linux 指令。
第二道防線:善用「沙盒模式 (Sandbox Mode)」與 Docker 隔離
如果你正在開發一個需要大量系統操作的腳本(例如自動化部署工具),上面的白名單可能會讓 AI 綁手綁腳。這時候,千萬不要解開權限,而是應該使用 Antigravity 內建的「Ephemeral Sandbox(拋棄式沙盒)」。
這是一個基於 WebAssembly 和微型 VM 的技術。當你開啟沙盒模式時,AI 看到的是一個虛擬的檔案系統。它可以盡情地 rm -rf,搞壞了只要按一個「Reset」鍵,你的實體硬碟毫髮無傷。
在 Antigravity 的 Command Palette (Cmd+Shift+P) 中,輸入:
> Antigravity: Start Session in Isolated Container
這對於測試那些「你看起來有點怕怕的」Shell Script 特別有用。身為資深工程師,我的習慣是:只要涉及到檔案系統的批量操作,一律先在沙盒跑一次。
第三道防線:人類介入迴圈 (Human-in-the-Loop) 的策略設定
技術防線再強,也比不上人類的直覺。Google Antigravity 允許我們設定 AI 的「自主層級 (Autonomy Level)」。
在 settings.json 中,我建議將開發環境設定為「協作模式」而非「全自動模式」:
"antigravity.agent.autonomyLevel": "collaborative",
"antigravity.agent.confirmations": {
"terminalExecution": "always",
"fileModification": "on_save",
"dependencyInstallation": "always"
}
這個設定的核心邏輯是:AI 可以幫我寫 Code,但要「執行」任何改變世界的動作(安裝套件、跑指令),必須經過我點頭。
雖然這會讓你多按幾次 Enter,但在 2026 年這個 AI 幻覺(Hallucination)仍未完全根除的年代,這就是你的保命符。我看過太多案例是 AI 為了修一個 Bug,擅自升級了專案的 Node.js 版本,導致整個專案的相依性地獄。
Eric 的小囉嗦:別把方便當隨便
我知道,大家用 AI 就是為了圖快。Antigravity 的強大在於它模糊了 IDE 和工程師的界線,但這也模糊了「責任」的界線。
當 AI 搞砸了你的環境,主管不會聽你解釋說「是 Gemini 做的」。Git log 上顯示的 Author 還是你的名字。做好風險管理,配置好這些安全防線,不僅是保護專案,也是保護你作為工程師的專業信譽。
記住,AI 是最強的副駕駛,但方向盤永遠要握在你自己手裡。
延伸閱讀:
- 一個人抵一個團隊?Google Antigravity 多代理人(Multi-Agent)開發工作流實戰:從架構設計到自動部署
- Google Antigravity 安裝與配置全攻略:從 VS Code 移民到 Agentic IDE 的第一步 (2026版)
- AI 寫 Code 不只是自動補全!Antigravity『任務導向』開發實戰:讓 AI 幫你規劃、實作、驗證一條龍
不想讓 AI 搞砸你的企業系統?
浪花科技專注於 2026 最新 AI 開發流程與資安防護。無論是團隊導入 Google Antigravity 的安全培訓,還是企業級的程式碼風險管理,我們都能提供協助。
常見問題 (FAQ)
Q1: Google Antigravity 的沙盒模式會影響效能嗎?
會有些微影響。因為沙盒模式是在隔離的微型 VM 或容器中運行,啟動時需要額外的幾秒鐘,且檔案 I/O 速度大約會比原生執行慢 10-15%。但對於高風險操作來說,這點效能犧牲絕對是值得的保險成本。
Q2: 如果 AI 已經誤刪了檔案,Git 也沒救到怎麼辦?
如果你開啟了 Antigravity 的「Local History(本地歷史記錄)」功能(預設通常是開啟的),你可以透過 Command Palette 搜尋 `Local History: Show`。即使檔案被 `rm` 指令刪除且未 Commit,IDE 的內部快取通常還會保留最近 24 小時的檔案快照,這是除了 Git 之外的最後一道防線。
Q3: permissions.json 設定後,團隊成員需要每個人都設定一次嗎?
不需要。.antigravity/permissions.json 應該被加入版控(Git)中。這樣一來,任何 clone 這份專案的成員(或是接手的 AI Agent),都會自動繼承這套安全規則,確保團隊協作時的安全標準一致。






