Herald:Go 寫的終端機 Mail Client,整合 Ollama 與 MCP
寫 mail 這件事在 GUI client 已經做到極致,從 Apple Mail 到 Spark,介面早就不是賽道。真正讓我從 mutt 換掉的痛點不是好看不好看,而是「能不能用語意搜尋找信」、「能不能讓 LLM 幫忙分類」、「能不能在 SSH 過去的機器上開一個跟桌機一致的收件箱」。
寫 mail 這件事在 GUI client 已經做到極致,從 Apple Mail 到 Spark,介面早就不是賽道。真正讓我從 mutt 換掉的痛點不是好看不好看,而是「能不能用語意搜尋找信」、「能不能讓 LLM 幫忙分類」、「能不能在 SSH 過去的機器上開一個跟桌機一致的收件箱」。
每個月帳單對齊一次的時候,會看到一條讓人很矛盾的紀錄:Claude Pro、ChatGPT Plus、Cursor、再加上幾個 API 帳號的 prepay。功能其實有重疊,配額也常常被分散。某一邊先用爆,另一邊還剩一半就過期作廢;同時 CLI 工具吐出的 git diff、grep 結果動輒幾千 token,每跑一次…
每隔一陣子就會有人問我「想學 Docker 該從哪本書、哪個課程開始」。過去幾年我給過的答案差不多都長一樣:先看官方 docs 的 Get Started、再讀一本入門書、然後挑一個小專案 dockerize 練手。流程沒錯,但實際照著走的人多半會卡在同一個地方——讀完線性教學後對著終端機,仍然不知道要敲什麼指令。
公司內部開到第三個 Kubernetes cluster 之後,事情就會慢慢失控。dev cluster 上有 Grafana、Prometheus、Loki、ArgoCD、Harbor、Kibana;staging cluster 多了一套 Jenkins 和 Sonar;prod cluster 又有自己的 Gra…
最近在 Claude Code 跟 Cursor 之間來回切換,最頭痛的不是模型不夠聰明,而是 context window。一個 Playwright snapshot 56 KB,跑一次 gh issue list 就 59 KB,看一份 access log 又 45 KB —— 半小時不到 200K conte…
對 Kubernetes 平台維運團隊來說,「儀表板」這個分類其實一直有點尷尬。原生的 kubernetes-dashboard 安裝麻煩、功能停留在「能看資源」的層次;Lens 雖然強大,但每個工程師都得自己裝 Electron 用戶端,且後續的 OpenLens 與商業版分歧讓選型更混亂;k9s 反應飛快,可是終端…
每天打開 Terminal,第一眼看到的就是 prompt。一天看幾百次的東西,理應是顯示「我現在在哪、目前狀態如何」最重要的介面,但實際上很多人從入行第一天到現在,prompt 都只是 user@host $,連目前在哪個 git 分支都看不到。
Git 用久了會發現一個奇怪的現象:CLI 強到讓人離不開,但每天輸入的指令其實不超過十個,而那十個又長得很像。git add -p、git commit --amend、git rebase -i HEAD~5、git stash pop,動作不複雜,麻煩的是要記得指令、記得 flag、然後在輸出和 vim 開出來的…
每次跳進一個沒看過的大型 repo,我第一個會跑的指令通常是 grep -rn "某個關鍵字" .。問題是只要這個 repo 含有 nodemodules、.git、vendor、build 產物,這條指令的速度就會非常崩潰:grep 不會理會 .gitignore,把所有東西都讀過一輪。在我手邊一個前端專案實測,純…
每天在終端機裡的時間,有大半都耗在「找東西」上:找前幾分鐘下過的指令、找專案裡某個忘記放在哪個資料夾的設定檔、找昨天那個 commit 是哪一筆、找 docker 那個一直 OOM 的容器 ID。bash 內建的 Ctrl-R 是反向歷史搜尋,但只能從尾端往前找最後一筆「精確子字串」匹配,按一次只跳一筆,要跨多筆 se…