MoePeek:5MB 純 Swift 的 macOS 劃詞翻譯工具,能把翻譯模型留在本機

MoePeek 是用純 Swift 6 寫的 macOS 劃詞翻譯工具,5MB、AGPL-3.0 開源,可接 Ollama 與 Apple 系統翻譯走本機。本文從原始碼層級拆解它的隱私邊界:預設其實把翻譯送往 Google、有道的雲端引擎,要做到完全不出本機得自己改設定,而且整支程式真的找不到任何使用分析。

用 AI 摘要這篇文章:

劃詞翻譯是本地大型模型很該落地、卻常被忽略隱私的日常場景。你反白一段文字、按個快捷鍵,那段話通常就離開你的電腦,送到 Google、百度或某朵雲端模型。MoePeek 是用純 Swift 6 寫的 macOS 劃詞翻譯工具,安裝檔 5MB、背景記憶體約 50MB,它真正值得看的是把「模型留在本機」做成和雲端服務並列的正常選項,而且整支程式碼裡真的找不到任何使用分析。

TL;DR:MoePeek(GitHub:cosZone/MoePeek)是 AGPL-3.0 開源的 macOS 劃詞翻譯工具,純 Swift 6、5MB、可接 Ollama 與 Apple 系統翻譯走本機;但要留意預設啟用的是 Google、Bing、有道等雲端引擎,真正「不出本機」得自己進設定頁改。

5MB、純 Swift、不靠 Electron:MoePeek 的輕是一種設計選擇

MoePeek 是開發者 cosyu(GitHub 帳號 cosZone)做的 macOS 常駐選單列翻譯工具,2026 年 2 月開源,授權是 AGPL-3.0。它的賣點很集中:用純 Swift 6 原生開發,不靠 Electron 或 WebView,所以安裝檔只有約 5MB,背景記憶體穩定在 50MB 上下。不少走 Electron 或 WebView 的同類工具動輒一兩百 MB 起跳,這個體積在 Mac 翻譯工具裡算相當節制。作者在 README 直接點名,這個專案的起點是受 Easydict 與 Bob 兩款前輩啟發,Bob 是中文圈用了多年的老牌翻譯工具,Easydict 則是開源的同類前輩,MoePeek 等於是在它們的基礎上、用更原生的 Swift 路線再走一次。

作者在 README 裡寫得很明白,這是一個「AI vibe-coded side project」,用 AI 輔助寫出來的個人 side project,不是打磨過的商業產品。repo 裡甚至直接放了一份 CLAUDE.md,把 AI 協作的工作流程也一併公開,這個定位直接決定你該不該裝。它只內建三個依賴套件:KeyboardShortcuts、Defaults(都是 Sindre Sorhus 的 Swift 工具庫)和 Sparkle(macOS 標準的自動更新框架),整個專案沒有引入任何分析 SDK,這點稍後會用原始碼層級再確認一次。想看另一款也走純 Swift 與離線路線的 Mac 工具,可以對照 PasteMemo 剪貼簿管理器

MoePeek 在 GitHub 上的專案頁面,顯示約 686 顆星、AGPL-3.0 授權與 Swift 標籤Pin
MoePeek 的 GitHub 專案頁,純 Swift 6、AGPL-3.0 開源,由 cosZone 維護。

四種觸發方式與三層抓取邏輯

MoePeek 提供四種翻譯觸發方式,各自對應一個預設快捷鍵,涵蓋了日常查詞與整段翻譯的多數情境:

  • 劃詞翻譯(⌥D):反白選取文字後翻譯
  • OCR 截圖翻譯(⌥S):框選螢幕區塊,辨識後翻譯
  • 剪貼板翻譯(⌥V):翻譯剪貼板現有內容
  • 手動輸入(⌥A):自己貼文字進去翻譯

翻譯結果顯示在一個不搶焦點的浮動面板上,查字時你正在打的編輯器或瀏覽器,焦點不會跑掉,這對一邊寫東西一邊查詞的人很實用。它支援 14 種語言,會自動偵測語言並切換翻譯方向,譯文朗讀用的是 macOS 內建的語音合成(AVSpeechSynthesizer),不需要另外下載語音檔。最新版還能把浮動面板釘住,釘住之後點畫面其他地方或按 Esc 都不會關掉它,方便對著原文慢慢比對,這個細節看得出作者是真的在自己用。

MoePeek 取詞走三段式:先向 Accessibility API(輔助功能 API)要選取文字,要不到就改用 AppleScript,最後才退到剪貼板這條後路。這個設計是為了盡量涵蓋各種應用情境,因為不是每個 App 都對 Accessibility API 開放,能在多少軟體裡順利取詞,也是這類工具最常見的變數。

「隱私友善」得先過設定頁這關

這裡是最容易讓人誤解的地方。MoePeek 在 README 打出 Privacy-friendly,理由是 Apple Translation 完全在本機跑。這句話本身沒錯,但容易讓人誤以為「裝完就隱私」,實際狀況要拆兩層來看。

第一層,Apple Translation 確實是本機處理。它的原始碼 AppleTranslationProvider.swift 直接 import Translation,用 TranslationSession.Configuration 呼叫 Apple 從 macOS 15 才提供的翻譯框架,語言檔要自己下載,下載完確實不對外傳送。這點作者沒有誇大。

AppleTranslationProvider.swift 原始碼片段,顯示 import Translation 與 TranslationSession ConfigurationPin
原始碼直接呼叫 Apple Translation 框架,佐證 Apple 系統翻譯走本機。

第二層才是關鍵:MoePeek 預設啟用的翻譯服務,是 Google、Bing、有道這些雲端引擎。從 TranslationProviderRegistry.swift 的註冊順序看,開箱即用走的不是 Apple 系統翻譯,而是雲端免費方案。也就是說,你反白的每一段文字,預設會送到 Google 或有道的主機。LLM 類(OpenAI、Anthropic、DeepSeek、智譜 GLM)則是 BYOK,API Key 預設是空字串,你不填就不會啟用。

所以在 MoePeek 上,要做到翻譯不出本機,你得自己進設定頁,把引擎切成 Apple Translation(需 macOS 15 以上),或接上本機跑的 Ollama、LM Studio。原始碼裡這幾個本機服務的端點都是 http://localhost,路由確實留在本機。換句話說,如果你反白的是還沒公開的合約條款或公司內部文件,在預設狀態下它會先經過 Google 或有道的伺服器才回到你眼前;只有在你主動把引擎切到本機之後,這段文字才真的不出你的 Mac。如果你會在意送出去的內容,搭配一個 把敏感資訊先過濾掉的隱私遮蔽工具 會更安心。

正面的事也要講:MoePeek 是我能在原始碼層級確認完全沒有使用分析的翻譯工具之一。整個專案 grep 不到 Sentry、Firebase、PostHog、UMeng 任何一支分析 SDK,唯一的背景網路行為是 Sparkle 抓 GitHub 上的 appcast 檢查更新,以及設定 LLM 時去 models.dev 抓模型清單。它不會偷偷回報你的使用行為,這點比 README 上那四個字更實在。想看「真零網路」能乾淨到什麼程度,可以對照 OpResume 純前端履歷產生器

和 PopClip、Clicknow、Bob 的位置差在哪

macOS 上的劃詞工具已經很擠,MoePeek 切的是一個還沒被佔滿的位置:本地模型路由當一等公民的輕量翻譯器。先把幾款拉出來比,差異會清楚很多:

工具定位授權最適合
PopClip把選字後一連串動作做成外掛生態的平台商業外掛生態最完整的動作平台
Clicknow走商業化路線,主打順手與穩定商業最少設定的商業選項
Bob中文圈老牌翻譯工具,已開源開源習慣舊版翻譯流程的長期使用者
MoePeek輕量原生(5MB、純 Swift)、本地模型優先AGPL-3.0在意占用、能接本機 Ollama 的開源認同者
資料整理自各工具官方頁面,截至 2026 年 7 月。

差異化最清楚的一點:PopClip 是「動作平台」,翻譯只是它幾百個外掛裡的一種;MoePeek 只做翻譯,但把本地 LLM 路由做成一等公民。MoePeek 甚至自己提供了 PopClip 外掛,讓你在 PopClip 列上直接呼叫它,等於是用 PopClip 的殼、跑 MoePeek 的引擎。如果你的需求是「選字後什麼都要管」,PopClip 幾乎沒有直接對手;如果你只想要一個輕、不偷傳資料、能接本機 Ollama 的翻譯器,MoePeek 就站在那個位置上。同樣把 AI 翻譯做得很務實的,還有 AirTranslate 截 Mac 系統音訊做雙語字幕

拿到它之前要先付的三筆代價

MoePeek 不是裝完就能用,有三個門檻要先認帳,這也是它「輕量」背後的取捨。

先說授權。AGPL-3.0 是最強的 copyleft 之一,比常見的 GPL 更嚴的地方在於「網路使用」也算散布:如果你拿它的原始碼改成、再做成網路服務對外提供,就必須連你的修改一起開源。對單純下載來用的終端使用者沒有影響,但對想拿它二次開發做產品的人是硬約束,作者在 README 也直接寫了「衍生作品必須同樣開源」。

再來是公證。它沒有經過 Apple 公證,第一次打開會被 Gatekeeper 擋下、跳「檔案已損毀」的提示,不是真的壞了,在終端貼一行 sudo xattr -r -d com.apple.quarantine /Applications/MoePeek.app 解除隔離就能開。這是沒花錢做公證的代價,習慣折騰 Mac 軟體的人不以為意,但這一步就把不少「只想點兩下就裝好」的人擋在門外。

另一道關是系統權限。劃詞會用到「輔助功能」權限(讀你選的字),OCR 截圖則需要「螢幕錄影」授權。這兩個都是 macOS 最敏感的權限等級,等於你授權一支程式看你選的字、看你的螢幕。開源加 AGPL 在這裡變成實質保障:它讀得到什麼、有沒有偷偷外傳,你能自己翻原始碼驗證,這是閉源工具給不了的安全感。另一款同樣要你信任系統權限的純 Swift 工具,可以參考 FlowScroll 全域滾動工具

作者自己說它是「AI vibe-coded side project」

這一段特別拉出來,因為作者的誠實值得尊重、也直接影響你的期待。README 的 Limitations 段寫得明白:這是個 AI 輔助寫出來的個人 side project,對作者自己的使用情境沒問題,但不是打磨過的生產級工具,很多文字選取與視窗處理的邊界情境,商業工具花了很多年才磨平,MoePeek 大概率沒有。

作者還直接建議:如果你需要穩定可靠的方案,Clicknow 與 PopClip 都是成熟的選擇。一個開源專案在自家 README 把競品推薦給要求穩定的人,這在工具圈不算常見。舉個具體例子,issue #75 有人反映滑鼠取詞無法觸發懸浮球,這類邊界 bug 就是它「非生產級」要承擔的代價。

不過它也不是晾著不動。最近一個月接連出了 v0.14、v0.15,新增了 Pin 浮窗、自訂選單列圖示、可自訂快捷鍵,而且有外部貢獻者送 PR。作者自承白天有正職、通常週末批次處理 issue 與 PR,所以更新節奏是穩定但慢,這對期待它快速成熟的人是個要先接受的現實。

誰會真的用得下去

如果你本來就在 Mac 上跑 Ollama,卻還在用會把反白文字送往 Google 的劃詞工具,MoePeek 就是為這個尷尬的中間地帶做的:輕、不偷傳資料、能把本地模型接上劃詞翻譯。代價是你要能接受在終端打指令解除隔離、認同 AGPL 開源、願意把發現的問題開 issue 回報。要把「完全不出本機」做到底,把引擎改成 Apple 系統翻譯或本機 Ollama 是關鍵一步,這段本機處理的拆解邏輯可以對照 Secure PDF Editor 的本機處理三層校正。怕打 xattr 或要商業級穩定的人,作者自己也說去用 PopClip 或 Clicknow。

能不能當主力,最實際的方法是裝起來、在你最常用的三個 App 裡各試一次取詞,相容度當場見真章。它最後會變成一支安靜的本機翻譯器,還是只是另一支輕量的雲端翻譯器,關鍵就看你願不願意花十分鐘把引擎從預設雲端改成 Apple 系統翻譯或本機 Ollama。

常見問題

MoePeek 免費嗎?

是,AGPL-3.0 開源免費,下載與使用都不收費。但接的雲端翻譯服務(DeepL、OpenAI、DeepSeek 等)各自計價,用本機 Ollama 或 Apple 系統翻譯才完全不花錢。

它預設把翻譯送哪裡?

預設走 Google、Bing、有道這些雲端引擎,文字會出本機。想完全留在本機,就把引擎換成 Apple 系統翻譯(要 macOS 15 以上)或自己跑的 Ollama。

沒經過 Apple 公證,裝了安全嗎?

風險可控但要看你能不能接受。它是開源、可審計的,有沒有偷外傳能自己翻原始碼驗證;但第一次要手動用 xattr 解除隔離,而且要授權輔助功能與螢幕錄影兩個敏感權限。完全不碰終端的人建議跳過。

它和 Bob、PopClip 比呢?

PopClip 是動作生態標竿,翻譯只是外掛之一;Bob 是中文圈老牌翻譯工具;MoePeek 只做翻譯,差異在 5MB 純 Swift、本地模型優先、AGPL 開源。它還提供 PopClip 外掛,可以兩個一起搭配著用。

支援哪些 macOS 版本?

App 本身要 macOS 14(Sonoma)以上。但 Apple 系統翻譯這個本機引擎要 macOS 15 以上才有,舊版 macOS 拿不到那條「完全不出本機」的路。

如果你正好在 Mac 上養了一個本機模型,又嫌現在的翻譯工具又重又愛偷傳資料,MoePeek 值得花十分鐘設定看看;裝之前先把它的 GitHub 原始碼翻一遍,你會對它 5MB 的體積和零使用分析更有底。

Sliven 褚崇名
Sliven 褚崇名

每日分享科技新知、免費資源以及 WordPress、虛擬主機相關主題,任何問題歡迎在科技月球下方留言,或是發送 Email 至 [email protected] 與我聯繫。

文章: 651

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *


目錄
Share to...