生活分享

CLI 權限:忽略檔案、可信任資料夾與沙箱

Gemini CLI 能讀取檔案與呼叫工具,因此開始使用前,要理解忽略檔案、資料夾信任與沙箱各控制什麼。本篇在獨立練習專案中建立 .geminiignore,檢查資料夾信任選項,再辨識啟動沙箱所需條件。完成後,你能說明每一層的用途,而不會把文字規則當成檔案存取的完整隔離。

更新日期: 閱讀時間約 4 分鐘

存取控制有不同層次的原創插畫,以文件、裝置與流程等物件呼應忽略檔案、可信任資料夾與沙箱;非產品介面。
圖片:Mokaair (© Mokaair)
本篇目錄
  1. 開始前:準備可安心測試的專案
  2. 先理解:三個不同的控制層
  3. 實作:忽略檔案與確認權限
  4. 驗證:看動作與結果
  5. 常見問題與操作習慣
  6. 完成後的檢核

Gemini CLI 能讀取檔案與呼叫工具,因此開始使用前,要理解忽略檔案、資料夾信任與各控制什麼。本篇在獨立練習專案中建立 .geminiignore,檢查資料夾信任選項,再辨識啟動沙箱所需條件。完成後,你能說明每一層的用途,而不會把文字規則當成檔案存取的完整隔離。

忽略檔案:限制一般檔案探索;信任設定:確認專案來源;沙箱與權限:限制工具執行範圍
存取控制有不同層次。此為原創教學圖解,並非產品畫面或實測輸出。 · 圖片:Mokaair (© Mokaair)

開始前:準備可安心測試的專案

建立一個不含私人資料的練習資料夾,內含 README.md、output 目錄與一個叫 private-demo.txt 的虛構檔案。最後一個檔案可以只寫「測試資料」,不要放真的密碼。先完成與,並記下目前版本。

如果你從網路下載專案,不要先執行其中的腳本來「看看會發生什麼」。先檢視 GEMINI.md、.gemini 設定、、擴充與 hooks 內容,瞭解它們可能載入什麼工具或命令。資料夾信任是一個有實際後果的設定,應在理解內容後再決定。

先理解:三個不同的控制層

.geminiignore 使用忽略模式,讓支援該規則的檔案探索或引用流程略過指定內容。它適合排除產物、快取或不需要加入上下文的資料,但不應被當成作業系統的存取控制。例如你允許的 shell 命令可能仍有檔案讀取能力,因此不能只靠忽略規則保護秘密。

可信任資料夾控制專案設定與相關能力是否可載入。沙箱則涉及工具程式的執行環境,是否啟用、可用後端及限制依平臺與設定而定。還有互動核准:工具執行前詢問你是否同意某個動作。這些層次可以一起使用,卻不能互相取代;看見確認提示也不代表所有操作都在隔離環境中。

實作:忽略檔案與確認權限

  1. 在練習專案根目錄建立 .geminiignore,加入下面的測試模式。
  2. 啟動 CLI,先要求列出會處理的檔案,再使用 @ 引用目錄,觀察哪些內容被略過。
  3. 對照原始資料夾,確認正常檔案仍可使用,產物目錄與測試檔不會不必要地混入上下文。
  4. 使用 /permissions 檢視目前版本提供的選項,依介面檢查資料夾信任狀態。不要對不熟悉的路徑直接授予廣泛信任。
  5. 如果要測試沙箱,先檢視官方平臺支援與所需執行環境,再以 gemini --sandbox 啟動,確認啟動狀態而非只看命令有沒有輸入。
.geminiignore · text
output/
private-demo.txt
*.log
從測試專案啟動 · bash
gemini --sandbox

沙箱可能需要 Docker、Podman 或平臺提供的隔離能力;實際選擇依目前官方文件。若啟動失敗,先閱讀錯誤並確認後端可用,不要刪掉沙箱引數後仍宣稱測試在沙箱內完成。Windows、macOS、Linux 的程式與檔案權限也不完全相同,應分別驗證。

驗證:看動作與結果

要求 CLI 只整理 README.md 的標題,先閱讀它準備使用的工具與路徑。若它要求執行 shell,確認命令是否符合題目,是否會寫檔,以及工作目錄是否正確。你可以拒絕不必要的動作,再要求用更小的閱讀步驟完成,不必為了繼續對話而全部同意。

再給一個需要輸出新檔的練習,觀察核準流程與結果。完成後檢查哪些檔案真的新增或修改,和工具回覆逐一比對。若專案使用 Git,可檢視差異;尚未使用 Git,也可以保留原始資料夾副本。判斷依據是實際檔案,而不是「已完成」這句話。

常見問題與操作習慣

測試時讓檔案內容包含容易辨識的虛構,例如「測試資料甲」。先列出可見檔案,再要求讀取指定檔案,分別記錄兩個結果;這樣能分清楚探索被忽略與直接讀取被阻擋的差異。

「已經忽略,為什麼工具還讀得到?」先辨識是哪個工具與路徑。忽略模式通常管理上下文探索,不是對所有程式施加禁止讀取的政策。機密資料應放在適當的存取控制範圍,測試專案則一開始就不應包含它們。

「信任後為什麼多了指令或工具?」專案可能帶有自訂命令、MCP 或擴充設定。回到 .gemini 檢查來源,使用逐一確認能力。如果內容不是你預期的,停用相關設定並重新測試,不要只看工具名稱判斷用途。

「怎麼讓所有操作都不用問?」入門練習不需要開啟全面自動核准。先把工作切成小步,確認常見工具動作與結果,再按實際需求設計核准政策。Headless 自動化也應有清楚的輸入範圍、失敗處理與結果檢查;詳見。

最後保留一張簡單的環境記錄:CLI 版本、作業系統、啟動資料夾、是否啟用沙箱,以及本次允許的動作。之後換電腦或更新版本時,重做同一組小測試,就能比較差異。不要將「在某臺電腦成功」推論成所有平臺都有相同的檔案隔離能力。

完成後的檢核

完成實作後逐項確認。
檢查項目通過條件
操作能依正文重做一次,說明每一步使用的輸入。
結果能用原始資料或可重現測試核對輸出,而非只看語氣。
延伸知道下一篇教學解決的問題,以及什麼時候需要它。

接著可以閱讀 、,把本篇的操作接到下一個工作流程。

  • 生活分享

    完整實作:文件摘要與資料擷取工具

    這篇把前面學過的提示詞、API 呼叫與 JSON 驗證串成一個可執行的檔案工具。輸入一份 UTF-8 活動公告,程式產生摘要、五個固定欄位、原文引用與待確認問題,再存成待審 JSON。你會練習把模型當作資料處理的一個步驟,讓驗證與儲存仍由程式明確控制。

  • 生活分享

    API 額度與錯誤:費用、重試與成本控制

    Gemini API 的費用取決於模型、輸入輸出、服務模式及使用的工具;速率限制則決定你的專案在一段時間內能送出多少工作。本篇教你找到真正對應的用量頁面、估算一次檔案處理成本、分類錯誤,並設計有限重試與停止條件,避免把每個失敗都當成多按一次就能解決。

  • 生活分享

    API 檔案與 JSON:結構化輸出及驗證

    Gemini API 可以讀取 PDF,再把結果整理成指定的 JSON 結構。本篇用虛構活動公告示範檔案輸入、欄位設計與本地驗證。學完後,你會知道「收到合法 JSON」與「內容確實來自檔案」是兩件需要分別檢查的事,並能保留缺漏資訊而不讓模型自行補齊。

  • 生活分享

    AI Studio 與第一個 Gemini API 呼叫

    Google AI Studio 是試用模型與建立 Gemini API 金鑰的開發入口。本篇從一個簡單提示詞開始,帶你建立獨立專案環境,分別用 Python 與 JavaScript 呼叫 API。完成後,你會知道網頁試跑、程式執行與帳號用量各自在哪裡確認,不再把消費者版 Gemini 的操作直接套程式式。

最新旅遊情報攻略

資料來源

生活分享