在 mac 前面打開 Terminal 跟從別台電腦 SSH 進來,看起來都是同一個帳號的 zsh,行為卻差很多:keychain 解鎖狀態、環境變數、TCC 權限、pbcopy、TouchID、osascript 通知全部不一樣。這些差異的根源都能用 launchctl managername 回報的 Aqua 或 Background 看出來。這篇整理實際會踩到哪些差異、背後的 launchd domain 機制,還有把 mac 當伺服器時如何讓 SSH session 更接近 GUI 行為。