在 macOS 上安裝
一個指令碼完成整個安裝:它會準備 Homebrew、.NET 與 Python,把代理複製到你的家目錄,並註冊為
登入時啟動。它以你的一般使用者身分執行——不需要 sudo。
Apple Silicon 還是 Intel?
每種晶片家族各有一個壓縮檔,選錯的那一個會得到一個根本無法執行的二進位檔:
filemote-<版本>-osx-arm64.tar.gz—— Apple Silicon(M1 以後的機型)filemote-<版本>-osx-x64.tar.gz—— Intel
若不確定,請開啟 → 關於這台 Mac。顯示「晶片:Apple M…」是 Apple Silicon;顯示 「處理器:Intel」則是 Intel。
安裝步驟
tar xzf filemote-<版本>-osx-arm64.tar.gz
cd filemote-<版本>-osx-arm64
xattr -dr com.apple.quarantine .
chmod +x install-macos.sh
./install-macos.sh
xattr 這一行會清除 macOS 附加在下載檔案上的隔離標記。若你是用 Finder 解壓縮的,它很重要;
若不是,它也無害——請參閱
macOS 為何封鎖下載。
不要以 sudo 執行該指令碼。它本來就設計為安裝到你自己的帳戶中,只有當你把 --prefix 指向你的
使用者無法寫入的位置時,才需要提升權限。
指令碼會準備什麼
- Homebrew,若缺少則從官方指令碼安裝。在 Apple Silicon 上還會把 Homebrew 加入你的
~/.zprofile。 - .NET 8 執行階段,透過 Homebrew 安裝;若 Homebrew 套件無法取得,則改用 Microsoft 的安裝
指令碼裝到
~/.dotnet。 - Python 3.12,透過 Homebrew 安裝,前提是系統中沒有高於 3.10 的版本。
- 代理本身,裝到
~/Applications/Filemote,並清除已安裝副本上的隔離標記。
由於一切都以你的使用者身分執行,代理只能存取你的帳戶可以讀取的檔案——而且僅限你已登入的期間。
launchd 代理
除非你傳入 --no-autostart,指令碼會寫入
~/Library/LaunchAgents/com.filemote.agent.plist 並載入它,因此代理會在每次登入時啟動,當機後
也會自行重新啟動。
launchctl start com.filemote.agent # 立即啟動
launchctl stop com.filemote.agent # 停止
tail -f ~/Library/Logs/Filemote/filemote-agent.log
使用 --no-autostart 時既沒有 launchd 項目也沒有記錄檔,因此這兩個指令都不適用——需要你自己執行
~/Applications/Filemote/FilemoteAgent。
指令碼參數
| 參數 | 作用 |
|---|---|
--no-ai | 略過 AI 服務——不裝 Python,也不裝相依套件 |
--no-autostart | 只安裝檔案,不向 launchd 註冊任何內容 |
--prefix /path | 安裝到 ~/Applications/Filemote 以外的位置 |
--model <id> | 預先選定主 AI 模型 |
--device cpu|gpu|auto | AI 運算裝置 |
--hf-token <token> | Hugging Face 權杖,用於存取受限模型 |
--gpu 在 macOS 上會被接受但忽略。Apple Silicon 本來就能取得 Metal 加速,因為 AI 引擎會自行
啟用;Intel Mac 無論如何都在 CPU 上執行該引擎。
Mac 上的 AI
安裝 AI 相依套件會編譯 llama.cpp 引擎,這需要 Xcode 命令列工具;若尚未安裝,指令碼會觸發其安裝。 在 Apple Silicon 上引擎會帶 Metal 加速編譯,在 Intel 上則執行於 CPU。
從更名前的安裝升級
若舊的 com.rfm.agent launchd 項目仍在,指令碼會將它卸載並刪除——否則兩個代理會爭奪同一個
帳戶——並把你的設定與已下載的模型從 ~/Applications/RFM 搬移過來,舊資料夾留給你自行刪除。
下一步
代理已安裝,但尚未連接到你的帳戶: 用配對碼將裝置連結到你的帳戶。
更新於 2026-07-31