DeepSeek Harness Remote
DeepSeek Harness Remote 可將手機或另一台電腦與你運行 DeepSeek Harness 的電腦安全連接,隨時隨地繼續你的工作,方便隨時查看進度並繼續工作。
AI 翻譯
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Local-first, free, open-source speech-to-text for macOS. Press a key, talk, and your words are pasted. Nothing leaves your Mac.
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗Press a key, talk, press it again — your words are on the clipboard and pasted before you can look up.
Local-first speech to text for macOS. No account, no subscription, no word cap, and no audio ever leaves your machine.
Download · Releases · Changelog · ♥ Sponsor
Everything runs on your Mac. The only network requests Vocs ever makes are the first-run model download and an optional update check, and both are visible and both can be turned off.
pnpm install
pnpm tauri dev
First launch opens setup: grant the microphone, download the model, and test the hotkey. After that Vocs lives in the menu bar. Opening the app (from Finder, Launchpad or Spotlight) shows the dashboard; when it starts by itself at login it stays quietly in the menu bar.
pnpm tauri build
The bundle lands in src-tauri/target/release/bundle/ — a .app, a .dmg,
and an updater archive.
Signing the updater archive. Because a public key is configured, Tauri also signs the update artifact, and it needs the matching private key:
TAURI_SIGNING_PRIVATE_KEY="$(cat ~/.vocs-updater.key)" \
TAURI_SIGNING_PRIVATE_KEY_PASSWORD="" \
pnpm tauri build
Both variables are required. Setting the key without the password makes Tauri prompt for one interactively, which fails in any non-interactive shell with a misleading "incorrect password" error — the password is empty, it simply had no way to tell you so.
Without either, the .app and .dmg still build correctly and only the update
artifact goes unsigned. In CI both come from repository secrets.
Back that private key up somewhere you will still have in five years. It is the only thing that can sign an update. If it is lost, every existing installation is permanently stranded on whatever version it has — there is no recovery, because the public key is compiled into the apps already out there.
Vocs is distributed as a DMG from our own website, not the App Store, and without Apple notarisation. That works, with two consequences you must plan for.
What a user sees on the first launch. Gatekeeper blocks the DMG itself
("Vocs-macOS.dmg" Not Opened: "Apple could not verify…"), and may block the app
again once it is copied out. The user chooses Done (not Move to Trash), then
opens System Settings → Privacy & Security, scrolls to the message and
chooses Open Anyway (or runs xattr -dr com.apple.quarantine on the DMG,
and on /Applications/Vocs.app if asked). This happens once per file.
In-app updates are downloaded by the app itself, so they do not trigger it
again. The download page on the website must show these steps.
Sign every release with the same self-signed certificate, forever. An ad-hoc signature is new on every build, so each update would silently reset the user's Accessibility grant and pasting would stop working. A stable certificate keeps the grant. Create it once:
Vocs Signing, identity type Self Signed Root, type Code Signing..p12 and keep it in a password manager.
Losing or replacing it voids every user's Accessibility grant.APPLE_CERTIFICATE (base64 -i vocs.p12),
APPLE_CERTIFICATE_PASSWORD, and APPLE_SIGNING_IDENTITY (Vocs Signing).
Leave APPLE_ID, APPLE_PASSWORD and APPLE_TEAM_ID unset; the release
workflow then signs without notarising.The updater needs its own, separate keypair (pnpm tauri signer generate); its
private half goes in TAURI_SIGNING_PRIVATE_KEY.
If an Apple Developer account is added later, the only change is the secrets: a
Developer ID certificate in APPLE_CERTIFICATE and the three Apple variables.
Existing users then need to re-grant Accessibility once, because the signing
identity changes.
| Permission | Needed for | Without it |
|---|---|---|
| Microphone | Recording | Vocs cannot record. Required. |
| Accessibility | Pasting for you | Everything still works — text goes to the clipboard instead. |
macOS shows each of these prompts once per app. If you dismiss one, the dialog never comes back, so Vocs takes you straight to the right System Settings pane instead of asking again.
macOS keys permission grants to the bundle id plus the code signature. Builds here are ad-hoc signed, which produces a new signature every time, so every rebuild looks like a different app and the Accessibility grant is lost. Pasting silently degrades to clipboard-only and nothing explains why.
That is a development annoyance, not a bug, and it does not affect a released
build. If you are rebuilding often, create one self-signed code-signing
certificate in Keychain Access and sign every build with that same identity —
the signature then stays stable and macOS stops forgetting. docs/03 §3.4 has
the detail.
The architecture is documented in docs/, and CLAUDE.md is the rulebook.
Start with docs/00-START-HERE.md; read docs/06-CONVENTIONS-AND-GREP.md
before writing your first file, because navigation here works through a
comment-based search index rather than by reading the tree:
pnpm sot SessionState # which files own this symbol
pnpm sot:show AudioChunk # the same, with each file's header
Two ideas carry the codebase. The registry (src-tauri/src/registry/) is one
table describing every feature — adding an entry wires up its settings UI,
permission preflight, nav placement, hotkey and metrics at once. The command
factory (src-tauri/src/ipc/factory.rs) is the single function every IPC call
passes through, so validation, permissions, reentrancy, tracing and error
mapping have one implementation instead of one per handler.
Types cross to TypeScript through tauri-specta: src/lib/bindings.ts is
generated by cargo test and must never be hand-edited.
cargo test --manifest-path src-tauri/Cargo.toml # also regenerates bindings
pnpm typecheck
Issues and pull requests are welcome. Read CONTRIBUTING.md first, and report security problems privately as described in SECURITY.md. Everyone taking part follows the Code of Conduct.
MIT. See LICENSE. Third-party licences, including the models Vocs downloads, are listed in THIRD_PARTY_NOTICES.md.