← 返回作品集
Automation 上線中

Telegram 助理 Telegram Assistant

用一支 Telegram bot,把整台 Mac 變成可以遠端指揮的個人助理。

上線
2026.05
開發
約 3 週
團隊
獨立開發
狀態
上線中
Stack
Telegram Bot API · Python · Cloudflare Workers · Notion API
Telegram 助理 截圖 1

人在外面,卻常常需要家裡那台 Mac 上的某個檔案、某個自動化結果。與其開遠端桌面慢慢點,不如讓一支 Telegram bot 當「嘴巴跟手」—— 我用自然語言下指令,它在家裡的 Mac 上跑完,再把結果傳回手機。

專案背景

自己一個人工作,幾乎所有事都長在這台 Mac 上:草稿、自動化腳本、Notion 資料庫的更新工具。但人不可能整天坐在電腦前。我要的是一個「隨身遙控器」—— 走在路上、在咖啡廳、在客戶現場,都能把一句話丟給它,讓家裡的機器把事做完。

核心設計

  1. 一句話就是一個指令。 不背指令格式,直接用中文講「把這張收據存起來」「今天還有什麼沒做」,由一層路由判斷該呼叫哪個工具。
  2. 手機只當輸入輸出,運算留在 Mac。 真正的工作(OCR、寫 Notion、跑腳本)都在家裡那台機器跑,手機只負責收訊息、看結果,敏感資料不外流。
  3. 閉環,不要半套。 待辦要能「建立 → 提醒 → 完成」整條走完;記帳要能分流到不同帳本,不會把旅行花費混進日常。
  4. 主動,而不只是被動回答。 每天早上 8 點主動推一份當日摘要,不用我去問。

技術架構

  • 入口:Telegram Bot API 收訊息,Cloudflare Workers 當輕量中繼,負責轉發與補跨排程
  • 大腦:Mac 上的 Python 服務做自然語言路由,把訊息對應到對應的工具函式
  • 能力:收據 OCR 走 macOS 內建影像辨識、資料寫入走 Notion API、待辦與記帳各自獨立的資料表
  • 排程:每天定時主動推播,搭配冪等設計避免重複發送

工程挑戰

  • 無人值守的穩定性:bot 要 24 小時活著,曾因連線鎖被其他程式搶走而掛掉,最後用獨立啟用 + 自動搶回的機制根治。
  • 權限邊界:要存取受系統保護的資料夾,必須處理 macOS 的權限機制,不能讓背景程式硬闖。
  • 冪等推播:排程偶爾會漏觸發或重觸發,加了補跨機制與去重,確保每天的摘要不多不少剛好一份。

功能亮點

  • 自然語言下指令,不用記格式
  • 拍張收據丟進來,自動 OCR 並歸檔到 Notion
  • 待辦「建立 → 提醒 → 完成」完整閉環
  • 每早 8 點主動推當日摘要
  • 旅行記帳與日常帳本自動隔離