UStackUStack
Multitui icon

Multitui

Multitui 將 TUI 指令列程式包裝成獨立 macOS .app,提供檔案沙箱、網路過濾與 secrets filter,保護你的開發環境。

Multitui

Multitui 是什麼?

Multitui 是一個 macOS 應用程式工廠,將基於終端的 TUI(文字使用者介面)程式包裝成獨立的原生 .app 套件。它的目標是讓你繼續使用現有的指令列工具,但將它們在沙箱化的 macOS 終端應用程式中執行,而不是直接在你的常規 shell 中啟動。

沙箱化重點在保護開發機器免受不受信任或代理驅動程式碼的侵害。Multitui 套用檔案系統沙箱規則、網路過濾,以及 secrets filter,以降低在允許位置外讀寫或透過出站連線洩漏憑證的風險。

主要功能

  • TUI 轉 .app 包裝:將 TUI 程式轉換成個別 macOS 應用程式套件,擁有專屬 dock 圖示、Spotlight 整合與視窗管理。
  • 檔案系統沙箱化 (sandbox-exec):使用 macOS sandbox-exec,預設拒絕寫入與刪除,並為特定路徑提供針對性允許規則。
  • 網路沙箱控制:可封鎖所有出站網路存取,或套用網域層級規則,限制工具可聯繫的主機。
  • Secrets filter (gitleaks 驅動):在離開機器前,掃描出站網路流量中的 API 金鑰、權杖與憑證。
  • 拒絕/允許可見性與覆寫:提供拒絕動作記錄,讓你新增允許規則;另包含明確標記為 --dangerously-skip-permissions 的選項。

如何使用 Multitui

  1. macOS 15+ 下載並開啟 Multitui(頁面顯示 v0.13.1, 24 MB)。
  2. 選擇要包裝成 Multitui 應用程式的 TUI 程式,並設定其沙箱規則。
  3. 使用沙箱規則設定檔案系統權限(包含預設拒絕基準與針對性路徑)及網路規則(封鎖全部或網域/主機層級允許規則)。
  4. 儲存並執行產生的 macOS .app;保留為該工具的專屬視窗,同時你的常規終端仍可用於一般工作。

使用情境

  • 以降低影響範圍執行 AI 程式碼代理:包裝代理式 TUI,讓它運作時無需全面寫入/刪除存取你的開發環境,同時過濾出站連線。
  • 為工具提供專屬視窗而非堆疊分頁:將常用 TUI 轉換成專屬應用程式,擁有獨立 dock 圖示與 Spotlight 項目,減少終端分頁雜亂。
  • 實驗時保護敏感檔案與 secrets:使用檔案系統規則限制讀寫至專案資料夾,並拒絕其他位置的寫入/刪除;依賴 secrets filter 處理出站流量。
  • 限制指令列工具的網路存取:封鎖所有出站流量,或僅允許特定網域/主機,讓工具無法自由連網。
  • 鎖定代理權限並安全迭代:當某動作被封鎖時檢視拒絕動作記錄,然後新增針對性允許規則,而非開放廣泛權限。

常見問題

  • Multitui 沙箱化什麼—檔案、網路流量,或兩者皆是? Multitui 提供 檔案系統沙箱化(透過 sandbox-exec)與 網路過濾,並包含掃描出站網路流量的 secrets filter

  • 使用它需要容器或 VM 嗎? 頁面明確表示你 無需啟動容器或 VM

  • Multitui 如何處理檔案權限? 頁面描述對寫入與刪除採取 預設拒絕 方式,並為特定路徑(包含專案資料夾)提供 針對性允許規則,另有拒絕動作記錄協助你精煉規則。

  • Multitui 可完全封鎖網際網路存取嗎? 可以—其網路沙箱可設定為 封鎖所有出站網路存取,或僅允許特定主機/網域。

  • Secrets filter 偵測什麼? 它會掃描出站網路流量中的 API 金鑰、權杖與憑證,由 gitleaks 驅動。

替代方案

  • 直接在終端機執行 TUI 並手動控制程序:保留相同的終端機工作流程,但責任轉移到你身上(例如 SSH/VPN 規則、手動權限或外部沙箱),而非使用 Multitui 內建的應用程式層級沙箱設定。
  • 在 Multitui 外部使用通用 macOS 沙箱方法:不將 TUI 轉換成專用 .app 套件,而是透過其他 macOS 機制套用沙箱,但無法獲得這裡描述的每個工具的應用程式封裝與規則工具。
  • 使用容器/VM 隔離:這是產品頁面註明你不需要的主要替代方案。容器/VM 可隔離工具,但相較於產生原生應用程式,會增加運營負擔。
  • 僅使用終端機視窗管理工具:如果主要需求是減少終端機雜亂,視窗管理器/啟動器解決方案可幫助組織 TUI,但無法提供相同的檔案系統/網路/secrets 沙箱。