DeepSeek Harness Remote
DeepSeek Harness Remote 可将手机或另一台电脑与你运行 DeepSeek Harness 的电脑安全连接,随时随地继续你的工作,方便随时查看进度并继续工作。
Translation pending
UTUVO Type — free, open-source voice typing. A keyboard with an orb for iPhone, and a local-first menu bar app for Mac.
ProductivitySwift · KotlinGitHub @mickyyang-1407OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Free, open-source voice typing: an orb keyboard for iPhone and Android, and a local-first menu bar app for Mac (on-device Qwen3-ASR). Zhuyin/Pinyin prediction, Traditional Chinese cleanup. MIT.
Taken from the repository README
Loading the full README.
Read the full README ↗一個還不錯的語音輸入。 免費、開源(MIT),iPhone、Android、Mac都能用。說話,打出整理好的文字,不用註冊帳號。
| 📱 iPhone | 🤖 Android | 💻 Mac |
|---|---|---|
| App Store 免費下載 | APK 測試版 | DMG(Apple Silicon) |
Mac 版:全本機可用、deterministic-first 的 macOS menu bar 語音輸入 App。 雲端只在你自己選擇雲端 provider 並提供憑證時啟用。
🇹🇼 中文(本檔)|English
授權:MIT。「UTUVO Type」名稱與 logo 不在 MIT 範圍內,請保留出處。
| 最低 | 建議 | |
|---|---|---|
| 晶片 | Apple Silicon(M1 以上)——本機引擎走 MLX | Intel Mac 只能用雲端或系統內建語音 |
| macOS | 14 Sonoma | 26 以上有 Liquid Glass 介面 |
| 記憶體 | 8 GB:Fast Dictate(Qwen3-ASR 0.6B 常駐約 1 GB) | 16 GB:Smart/Edit 的本機 editor(Qwen3-4B 4-bit,約 3 GB);Deep 本機 27B 需 48 GB 以上,否則請用雲端 |
| 磁碟 | 1.5 GB(ASR 模型+venv) | +3 GB 本機 editor;+30 GB 若要 27B |
| 其他 | Python 3.10+(xcode-select --install 或 brew install [email protected]) | 第一次安裝引擎需要網路 |
App 第一次啟動會依硬體判定建議路徑(Apple Silicon+8 GB 以上=完全本機;記憶體較少=只用 Fast;Intel=雲端),一鍵套用、隨時可改。
UTUVO-Type-<版本>-macOS-arm64.dmg(Developer ID 簽章+Apple 公證)。~/Library/Application Support/UTUVO Type/engine/。安裝前仍可用雲端模式。Mac 0.1.13 已可下載:直接下載 DMG(Developer ID 簽章+Apple 公證)。本版加入軟體更新介面,以及錄音、轉錄與背景整理期間的更新重啟保護。App 內自動更新尚未啟用,現階段請手動下載安裝。Kordan 模型、整理 prompt、品質把關設定與既有條列排版維持原樣。
App Store 免費下載,需要 iOS 18 以上。鍵盤要開「允許完整取用」。 App Store 版提供:注音邊打邊出候選(簡拼、不打聲調)、拼音、聯想詞、整頁候選、英文建議列、選取文字後說出要怎麼改、長按光球翻譯;句尾標點看語意(問句用「?」、感嘆用「!」,最後一句不加句號),鍵盤左上齒輪可直接回到設定。
以下是本分支的修改,不代表已上架的 App Store 版本。到 設定 → 語音處理路徑 選擇:
| 模式 | 辨識與整理 | 失敗時 |
|---|---|---|
| 本機・隱私優先 | 鍵盤由主 App 的背景語音工作階段使用 Apple 裝置端辨識,再由可用的本機模型整理;音訊與文字不上傳 | 整理不可用時保留辨識結果;沒有可用辨識器時明確提示 |
| 雲端・準確優先 | 在「智慧整理」選擇辨識與文字整理服務,兩者可使用不同服務與自己的 key | 有本機辨識結果時回退本機完整整理;沒有本機備援時明確提示失敗 |
使用ChatGPT和iOS26 → 使用 ChatGPT 和 iOS26。字典指定的專名、大小寫與內部空格優先,網址、Email 與反引號程式碼受到保護。設定畫面、路由細節與驗收限制見 iOS 使用者手冊及 iOS dictation routing。模擬器測試不等於真實 iPhone 背景錄音或 Groq 延遲已驗證。
UTUVO-Type-0.3.5-android.apk(附 SHA-256)。目前不在 Google Play。鍵盤功能與 iPhone 版同步:注音(簡拼、不打聲調)、拼音、聯想詞、整頁候選、英文建議列、選取文字後說出要怎麼改、長按光球翻譯、語言徽章。
之前用 Android Studio 裝過開發版的話要先移除,簽章不同無法直接覆蓋。從原始碼建置:cd android && ./gradlew :app:assembleDebug(JDK 21、Android SDK 36)。
git clone <repo-url> && cd utuvo-type
./scripts/bootstrap-runtime.sh # 建 Python venv、裝相依、下載 ASR 模型(約 1.2 GB,一次性)
./scripts/build-app.sh # 產生並簽署 dist/UTUVO Type.app
open "dist/UTUVO Type.app"
簽名需求:
build-app.sh預設用 Developer ID Application 憑證簽名(讓 TCC 授權跨 rebuild 存活)。沒有 Apple 開發者憑證也能跑:UTUVO_TYPE_ALLOW_ADHOC=1 ./scripts/build-app.sh改用 adhoc 簽名(缺點:每次重建後需重新授權麥克風/輔助使用)。
UTUVO Type 是 UTUVO 小型工具系列中的語音輸入 App,package slug 仍是
utuvo-type。它把口述/選取內容即時整理成
可直接貼上的繁體中文文本。先在地端做確定性格式化(標點、贅詞、自修正、
數字/日期/金額、字典詞彙、清單線索),需要時再走百鍊雲端 formatter。
模型 fallback 與 27B 本機模式都受到嚴格路由策略管控。
| 階段 | 內容 | 狀態 |
|---|---|---|
| M0 | SwiftPM 核心、deterministic normalizer、路由策略、30 題 benchmark、腳本 | 已完成 |
| M1 | AppKit menu bar、可設定快捷鍵、麥克風/輔助使用權限、貼上、四模式 | 已完成 |
| M2 | 百鍊 WebSocket ASR、SSE formatter、provider fallback | 已接 adapter;待真機/帳號 benchmark |
| M3 | 小型本機 editor 與本機 ASR runtime | 已完成;Qwen3-ASR 0.6B + Qwen3 4B |
| M4 | 27B 本機 Deep mode(adapter) | 已接 adapter;需手動設定 model,絕不自動下載 |
尚未用真實 provider 宣告 latency/模型指標;本檔不假造數字。
已發布版本與原始碼差異見 2026-10-26 交接說明。 使用手冊:macOS|iOS。
./scripts/verify-scaffold.sh # fixture、秘密衛生、Swift build/test
./scripts/run-benchmark.sh # 跑 30 題 deterministic benchmark
./scripts/build-app.sh # 產生 dist/UTUVO Type.app
open "dist/UTUVO Type.app" # 啟動 menu bar App
目前預設是 Fast Dictate + 本機優先,不需要任何付費 API 或 API key。本機
runtime 已放在產品資料夾內;在這台開發機上,App 第一次啟動會自動填入
runtime/utuvo-type-asr 與 runtime/utuvo-type-editor.py 的獨立 executable
路徑。若把產品資料夾搬到別處,到 Settings → Local runtime 更新路徑即可:
第一次使用各 runtime 會載入模型,之後保持 warm;權重位於被 Git 忽略的 .models/,不會進入 repo。Fast 永遠不呼叫 editor;Smart 的短句也只用 deterministic normalizer。若本機 provider 失敗,App 仍會保留原始 transcript 並貼出 deterministic 結果。
若要重新檢查本機 runtime:
printf '%s' '嗯我今天下午三點開會,不是三點,是四點。' | runtime/utuvo-type-editor.py
runtime/utuvo-type-asr /path/to/audio.wav
不需要手動設定 Ollama,也不會重載或修改現有 27B。百鍊仍是可選 adapter, 但本機模式不會嘗試連線。
Transcribe Shortcut、Push to Talk、
Language、Microphone、Input Channel、Mute While Recording、Audio Feedback
與 Output Device。輸入端點與聲道會在下一次錄音套用。History 可播放、複製、加星、重試、刪除與開啟錄音資料夾;Models 顯示
Qwen3-ASR 0.6B、本機 editor 與選配百鍊;Advanced 提供 overlay、Escape
cancel、Voice Activity Detection、Clipboard/Accessibility direct 貼上、Auto
Submit、history retention、prompt path 與每 App preset;About 顯示權限、
資料與 log 路徑。Accessibility direct 失敗時會自動回到 Clipboard,不遺失文字。預設為 Fast Dictate + 本機模式:普通短句不呼叫大型模型、不需要 API key。
目前 App 的顯示名稱是 UTUVO Type,橘色 accent 為 #F97316;產品程式碼
與資料夾仍固定在 utuvo-type/。
百鍊模式的 key 只從 macOS Keychain(service com.utuvo.type.bailian)或
UTUVO_TYPE_BAILIAN_API_KEY/DASHSCOPE_API_KEY 讀取。App 不在 UI、log、
fixture 或 Git 顯示 key。
PRIVACY.md 與 docs/SETUP.md。utuvo-type-cli --toggle-transcription 等)走
DistributedNotificationCenter,機器內任一進程皆可觸發白名單命令。這與
同類工具的 CLI 同級:本機攻擊者本來就有程式執行權,且錄音時有 overlay 與
提示音可見。開源版不做進一步加固,僅在此聲明。Sources/UTUVOTypeCore/ — Swift 核心(normalizer、routing、prompt loader)Sources/UTUVOTypeApp/ — 原生 AppKit/SwiftUI menu bar app、AudioEngine、AX、paste、provider adaptersSources/UTUVOBench/ — benchmark 執行檔Tests/UTUVOTypeCoreTests/ — 單元測試docs/SETUP.md — 權限、快捷鍵與密鑰邊界docs/BRAND.md — UTUVO Tiny Tools 系列與 Type logo 規則prompts/ — formatter prompt 範本config/ — routing / dictionary 範例(無真實金鑰)benchmarks/ — 30 題 JSONL + 評估說明 + M0 報告scripts/ — verify / run-benchmark / build-app本 repo 只管 UTUVO Type 自己;其他 App 的設定、系統上的 Ollama 與本機模型一律不動。
詳細政策見 PRODUCT.md 與 ARCHITECTURE.md。