— 為開發者打造 · 不只是聽寫

用想的速度,
寫程式與文件。

一個你能對話的助理 —— 跨越編輯器、終端機,和你出貨用的每一個工具。把 commit、PR、文件用說的送進游標。選取一段錯誤訊息,直接開口問。中英怎麼說就怎麼留。這份工作慢的,從來不是程式碼。

聽寫 翻譯 提問 潤飾
macOS 13+ ·免費每週 2,000 字·支援終端機
zsh — ~/saytomo
$ git commit -m "fix: token refresh race" $ claude review
auth.ts
async function refresh() { // 這個 API 有點 flaky — retry await retry(3, getToken) }
聽寫 · 忠實
Dictate 聆聽中…
開發者為什麼選它

在你本來就打字的地方,用說的。

更快

說話約 220 字/分,打字只有 ~45。趁念頭還在,先把它說出來。

中英一字不改

這個 API 有點 flaky 就維持原樣 —— 絕不被「順」成單一語言。

直接進終端機

整理好的文字能貼進 Terminal、iTerm2,甚至像 Claude Code 這種即時 TUI —— 也能進任何編輯器。

四個專屬鍵

聽寫、翻譯、提問、潤飾,各有自己的快速鍵。對的工具,不用翻選單。

一段過程,一幕一幕

一個按鍵,六個時刻。

捲動看一次開發過程 —— 每個轉折,對的鍵就接手。

COMMIT_EDITMSG · git
fix: 解決 token refresh 的 race condition
加上 regression test,避免高負載時更新
重複觸發。
✓ 忠實 —— 你說的話,整理過
錄音中…
#backend — Slack
你 · 剛剛
這個 API 有點 flaky,先加 retry,等等再 ship
✓ 中英保留 · 絕不翻譯
不是 「這個 API 有點不穩定」 —— flaky 維持英文,有點 維持中文。
terminal — 測試執行
12at Auth.refresh (auth.ts:41)
13TypeError: Cannot read property 'token' of undefined
14at processTicksAndRejections
提問回答 · 程式碼不動
在程式預期是物件的地方拿到了 undefined —— 多半是 session 在讀 .token 之前還沒載入。
複製插入關閉
口說 → 乾淨 prompt
你說的「嗯…我想把這個拆成小 function 但是 public api 要保持一樣」
可直接貼 → ChatGPT / Claude
把這個函式重構成更小的單位。保留公開 API、行為不變,並替每個新函式加上文件註解。
個人字典
useFetchUser Saytomo kAXSelectedText pnpm
你說的「在 render 之前呼叫 use fetch user」
已對應
在 render 之前呼叫 useFetchUser
✓ 完整單字精準對應 —— 每次都對
zsh — claude code
~ 幫我把這份 diff 摘要一下
然後寫一段 PR 說明
⌘V 進 Terminal · iTerm2 · Claude Code
聽寫

Commit 與 PR 訊息

說出這次改了什麼 —— Saytomo 去掉「嗯」和卡頓,留下一則乾淨的訊息。忠實:它絕不替你編造你沒講的理由。

聽寫 · 中英

flaky 的那則訊息

用你真正會說的方式留一則快訊:這個 API 有點 flaky。每個字都留在你說它的語言裡 —— flaky 永遠不會變成不穩定。這就是差別所在。

提問 · 選取文字

看懂錯誤

選取那段 stack trace,按下提問,說「這在講什麼?」答案會串流到編輯器旁的面板 —— 你的程式碼完全不動。

提問

模糊想法 → 銳利 prompt

把你要的東西含糊地說出來 —— 半成形、帶著「嗯」也沒關係。換回一段乾淨、有結構的 prompt,可以直接貼進 ChatGPT 或 Claude。

聽寫 · 字典

你的符號,拼得對

把你的變數名、API 和函式庫加進個人字典一次。說「use fetch user」,它就對應成 useFetchUser —— 完整單字、精準、每次都對。

聽寫

直接進終端機

整理好的文字以 ⌘V 直接貼在提示符上 —— 經過驗證、不會默默掉字 —— 在 Terminal、iTerm2,甚至像 Claude Code 的即時 TUI。接著說出你的下一個指令。

阻力

慢的,從來不是程式碼。

你出貨很快。然後是那些文字、視窗切換,以及鍵盤本身,把你拖慢回去。

文字才是稅

程式碼很順,PR 說明、commit、文件、Slack 更新,才是吃掉一小時的那部分。

切視窗去問

離開編輯器去開聊天機器人 —— 貼上、重講一遍前因後果、再切回來 —— 你原本握著的思路就斷了。

你的手腕

一天數千次擊鍵,年復一年。RSI 是真的 —— 唯一的解,是少打一點。

只有 Saytomo

當作基礎建設來打造。

開發者真正會檢查的那些保證 —— 可預測、安全、私密。

中英忠實度

這個 API 有點 flaky 一字不改 —— 中英不被翻。借來的名詞、形容詞、動詞,全都留在原本的語言。沒有別家做得到。

取代有安全鎖

當你請提問改寫一段選取文字時,它只在收到明確訊號時才取代。不確定?它就只回答 —— 絕不靠猜把你的選取毀掉

為符號而生的字典

把 API、函式庫、品牌名加進去一次 —— useFetchUserpnpm、你自己的產品。以完整單字精準對應,每次都拼對。

懂終端機的輸入

文字以 ⌘V 進入 Terminal、iTerm2 和即時 TUI —— 經過驗證、不會默默掉字。也能在任何編輯器或文字欄位裡,直接在游標處輸入。

預設就私密

音訊當下處理、絕不儲存。逐字稿不會留在伺服器,你的程式碼與 prompt 也絕不會被拿去訓練模型。

40+ 種語言

40 多種語言的原生 code-switching,加上簡繁中文轉換(台灣字形)。你怎麼混著想,就怎麼說。

你寫程式的地方都能用

整條工具鏈,用說的。

…以及任何有文字欄位的 Mac App。macOS 13+。

數字

說話,勝過打字。

0

字/分,口說

0

字/分,打字

~0×

用說的,更快

逐字算下來大約快五倍。一週的 commit、PR、文件、Slack 累積起來,那道落差就是省下的時間 —— 這是估計值,會隨你寫多少而變動。

開發者的問題

簡短的答案。

它在終端機和我的編輯器裡能用嗎?
可以。Saytomo 透過剪貼簿貼上(⌘V)把整理好的文字送進 Terminal、iTerm2,甚至像 Claude Code 的即時 TUI —— 經過驗證、不會默默掉字。在編輯器和任何有文字欄位的 Mac App 裡,它會在游標處直接輸入。不需要安裝特殊整合;它在作業系統層級運作。
它會把我中英夾雜的筆記翻譯掉嗎?
不會 —— 而這正是重點。預設的「聽寫」是忠實的:像 這個 API 有點 flaky,先加 retry 這樣的訊息會原封不動。flaky 維持英文,有點 維持中文 —— 每個字都留在你說它的語言裡,借來的名詞、形容詞、動詞都一樣。只有在你刻意按下專屬的「翻譯」鍵時,才會進行翻譯。
我的程式碼會被送去哪裡,或拿去訓練模型嗎?
音訊當下處理、絕不儲存。逐字稿不會留在伺服器,你的程式碼與 prompt 也絕不會被拿去訓練模型。當你對選取文字使用「提問」時,只有那段被選取的文字會在那一次請求中被送出 —— 不會在背景被動讀取任何東西。完整的次處理者清單在隱私頁。
它能處理程式碼註解和符號名稱嗎?
可以。它能用 40 多種語言聽寫註解與文字,而個人字典讓符號名稱精準落地 —— 把 useFetchUserkAXSelectedText、你的函式庫與產品名加進去一次,Saytomo 就會用完整單字、精準對應把口說對到它們。「潤飾」也能把一段粗略口說的 RFC 或文件,整理成乾淨的文字,同時把你的主張與事實原封保留。
有免費方案嗎?
有 —— 以滾動式 7 天計算,每週 2,000 字,免信用卡、永久免費。如果你想要沒有每週上限、助理鍵也無限制,Pro 是每月 $13(或年繳每月 $11)。macOS 13+,支援 Apple Silicon 與 Intel。完整細節請見定價頁

別再打那些無聊的部分。
用說的,然後出貨。

下載 Saytomo,一分鐘內就能用說的寫下你的下一個 commit。永久免費 —— 等它變成你的工作方式,再升級。

下載 Mac 版 Apple Silicon & Intel · v0.0.8