請更新您的瀏覽器

您使用的瀏覽器版本較舊,已不再受支援。建議您更新瀏覽器版本,以獲得最佳使用體驗。

不想每次都重開AI?他用Claude Channels,4步驟打造24小時的AI助理

數位時代

更新於 04月04日04:32 • 發布於 04月06日00:00

近期有不少科技創作者開始分享這種做法:把 Claude 跑在一台永不關機的 Mac mini 上,搭配 Telegram 遠端下指令,讓 AI 助理真正 24 小時待命。

其中架構整理最清楚的,來自 X 上的 Nick Spisak。他展示了如何用 Claude Code 內建的 Channels 功能取代 OpenClaw,整套設定官方說法是 15 分鐘。

一般人用 Claude 的方式,是打開瀏覽器或 App 直接對話;這個方法則是把 Claude 跑在一台永不關機的 Mac mini 上,接管你的本地檔案與工具,然後透過 Telegram 接受遠端指令。

為什麼這個架構有效?

Claude Code Channels 本質上是一個訊息橋接層:Telegram 接收你的指令,轉給正在 Mac mini 上持續運行的 Claude 工作階段(session),Claude 用你的真實本地資料完成任務,再把結果送回 Telegram。

這套架構能運作的關鍵有兩個。

第一,Mac mini 不會睡眠,Claude 的 session 能保持常駐。Channels 沒有訊息佇列,Claude 不在線時傳過去的訊息直接消失,不會等到下次再送。筆電合蓋就會斷線,Mac mini 不會。

第二,Syncthing 讓兩台機器共享相同的 Skills、指令與設定,不需要在 Mac mini 上重新建置所有配置。

核心步驟

第一步:讓 Mac mini 永不入睡

進入「系統設定」→「能源」,將 Mac mini 設為永不睡眠。這是整個架構的地基,後面所有步驟都建立在機器保持清醒的前提上。

第二步:用 Syncthing 同步兩台機器的設定檔

Syncthing 是一套開放原始碼的點對點同步工具,2013 年上線至今被數萬名開發者使用,資料不經過任何雲端伺服器,直接在同一區域網路的兩台機器間傳輸,費用為零。

在 Mac mini 與筆電上分別執行:

brew install syncthingbrew services start syncthing

開啟瀏覽器前往 localhost:8384,兩台機器互相加入對方的裝置 ID,再選擇要同步的資料夾。

需要同步的資料夾:

~/.claude/skills/~/.claude/commands/~/.claude/settings.json你的知識庫(Obsidian vault、參考文件等)MCP 工具設定

絕對不能同步的檔案:

在 Syncthing 介面中,每個同步資料夾都可以設定「忽略清單」,也就是 .stignore 檔案。做法是在 Syncthing 的網頁介面(localhost:8384)點進對應的資料夾,選擇「Edit Ignores」,把以下內容貼入儲存即可,不需要自己手動建立檔案。

提醒:請在「第一次同步之前」就先把忽略清單設好,再按下同步。否則第一次 full sync 已經把不該同步的東西推過去,再改 .stignore 就只是「以後不要再犯同樣的錯」,救不了已經混在一起的紀錄。

settings.local.json ← 各機器獨立的覆寫設定history.jsonl ← 各機器獨立的對話紀錄projects/ ← Claude 用絕對路徑追蹤專案,不同機器路徑不同會衝突node_modules/.git/.env

有一個細節要特別強調:Claude Code 用「完整絕對路徑」追蹤專案。如果筆電的路徑是 /Users/nick/Projects/,Mac mini 是 /Users/admin/Projects/,Claude 會認為是兩個不同的專案。

解法:兩台機器使用相同的使用者名稱。

第三步:在 Mac mini 安裝並設定 Telegram Bot

確認 Bun 已安裝(在終端機輸入 bun --version,如果報錯先執行安裝):

curl -fsSL https://bun.sh/install | bash

接著在 Telegram 找 @BotFather,傳送 /newbot,依指示完成後複製取得的 Token。

回到 Mac mini 的 Claude Code,依序執行:

/plugin install telegram@claude-plugins-official/reload-plugins/telegram:configure <貼上你的 Token>

以下指令用來啟動附帶 Channels 的 Claude:

claude --channels plugin:telegram@claude-plugins-official

啟動後,在 Telegram 對你的 Bot 傳送任意訊息,Bot 會回覆一組配對碼。回到 Claude Code 輸入:

/telegram:access pair <配對碼>/telegram:access policy allowlist

最後一行是鎖定權限,避免陌生人也能操控你的機器。

第四步:建立自動重啟機制,讓 Claude 真正跑好跑滿

Claude 可能因為各種原因中斷,需要一個定期重啟的機制讓它保持穩定。原文使用 macOS 的 LaunchAgent 而非 cron,原因是 cron 運行在精簡環境中,無法存取登入憑證,而 Claude Code 需要使用者認證;LaunchAgent 跑在使用者工作階段內,能拿到正確的認證。

需要說明的是,這套機制提供的是「定時重啟」,不是「崩潰偵測後立即恢復」。LaunchAgent 會在開機時啟動一次、每天凌晨 4 點重啟一次,但如果 Claude 在下午 2 點意外中斷,不會自動拉起來,要等到凌晨 4 點才恢復。對大多數非緊急任務來說這已足夠,但若有時效性較高的工作流程,部署前請將這點納入考量。

第四步 A:建立重啟腳本

mkdir -p ~/.claude/scriptsnano ~/.claude/scripts/claude-channels-restart.sh

將以下內容貼入:

#!/bin/zsh# 確保 PATH 在 LaunchAgent 環境下也找得到 tmux、claude 等工具export PATH="/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin"# 關閉現有的 Claude session,從乾淨狀態重新啟動# (tmux 是「背景終端機」,讓程式在你不看的時候繼續執行)# (2>/dev/null 的意思是:如果沒有 session 可關閉,不要顯示錯誤)tmux kill-session -t claude-channels 2>/dev/null# 等待 2 秒讓清理完成sleep 2# 開啟新的背景終端機工作階段# -d = 在背景啟動,-s = 命名為 "claude-channels",-c = 從 Projects 資料夾開始tmux new-session -d -s claude-channels -c ~/Projects# 清除一個會讓 Claude 誤以為自己已在執行的環境變數tmux send-keys -t claude-channels "unset CLAUDECODE" Enter# 啟動 Claude Code 並連接 Telegramtmux send-keys -t claude-channels "claude --channels plugin:telegram@claude-plugins-official" Enter# 等待 20 秒讓 Claude 完全啟動sleep 20# 告訴 Claude 開始監聽你的訊息tmux send-keys -t claude-channels "Resume monitoring. Check channels for any messages." Enter

儲存後(Ctrl+X、Y、Enter),賦予執行權限:

chmod +x ~/.claude/scripts/claude-channels-restart.sh

第四步 B:建立 LaunchAgent

nano ~/Library/LaunchAgents/com.claude.channels.plist

貼入以下設定:

Label com.claude.channels ProgramArguments /bin/zsh -c ~/.claude/scripts/claude-channels-restart.sh RunAtLoad StartCalendarInterval Hour 4 Minute 0 StandardOutPath /tmp/claude-channels.log StandardErrorPath /tmp/claude-channels.log

儲存後啟用:

launchctl load ~/Library/LaunchAgents/com.claude.channels.plist

RunAtLoad 讓 Claude 在開機時自動啟動;StartCalendarInterval 設定每天凌晨 4 點自動重啟清空 session。

第四步 C:驗證是否正常運作

launchctl list | grep claude

若看到 com.claude.channels,代表 LaunchAgent 已正確載入。接著在 Telegram 傳訊息給 Bot,確認有回應。

測試手動重啟流程:

tmux kill-session -t claude-channels~/.claude/scripts/claude-channels-restart.sh

手動刪除 session 再執行重啟腳本,確認整個流程跑得通。這也是 Claude 意外中斷時你可以立刻手動呼叫的恢復指令。

這套架構的前提條件

這個設定有幾個限制需要誠實說明。

第一,你需要一台實體桌機或常時開機的機器,Mac mini 或任何不睡眠的 macOS 機器皆可,但這意味著一筆額外硬體成本或持續的電費支出。

第二,Channels 目前處於 research preview 階段,需要 Claude Code v2.1.80 以上版本,且必須登入 claude.ai 帳號才能使用。執行前請先確認版本:claude --version。

第三,整套流程涉及終端機指令、tmux、LaunchAgent,技術門檻不算低。若你從未接觸過 launchctl 或 tmux,需要預留時間排查問題。

第四,Syncthing 的同步設定若出錯(特別是誤把 projects/ 或 history.jsonl 同步進去),會讓 Claude 在兩台機器上產生路徑衝突或混用對話紀錄。.stignore 的設定必須在第一次同步前就確認正確。

工具不決定效果,常駐才決定效果

OpenClaw 做的事,Claude Channels 現在內建了。差別只在你的架構夠不夠穩,例如機器會不會睡、session 會不會斷、崩潰了有沒有人把它叫回來。

最後要說的是,本文整理自 Nick Spisak 的公開分享,編輯過程中已逐一核對指令語法,但不同的 macOS 版本、Claude Code 版本、網路環境,都可能讓某個步驟的行為跟這裡寫的不一樣。

建議動手前,先備份現有的 Claude 設定,遇到問題優先查官方文件或原文討論串。套一句投資圈的名言:Do your own research(DYOR)。

延伸閱讀:「軟體設計流程已死!」Anthropic設計總監:拒用Claude Code的主管,決策將嚴重脫節

資料來源:Nick Spisak(@NickSpisak_)

本文初稿為 AI 編撰,整理・編輯/李先泰

延伸閱讀

機票變貴了!2026機票附加費全面調漲,燃油費、訂位費漲多少?4家航空費率一次看
英特爾買回愛爾蘭廠!砸142億美元讓Apollo賺走30億,為何還是一樁划算生意?
「加入《數位時代》LINE好友,科技新聞不漏接」

查看原始文章

更多理財相關文章

01

PCB史上首檔「千金股」!金像電從10元股價浮沉,楊長基父子「十年磨一劍」,苦命代工如何迎來大翻身?

今周刊
02

台積電今發股息!張忠謀躺著領7.5億 驚人持股數曝光

三立新聞網
03

台泥重訊證實 服務逾50年大將呂克甫病逝

NOWNEWS今日新聞
04

4月ETF配息一文看!這檔ETF黑馬配息12.2%

NOWNEWS今日新聞
05

台積電200萬股東準備領錢 將發1556億股息

NOWNEWS今日新聞
06

記憶體大缺貨時代來了?DDR4以下全面狂飆、Q2價格再衝5成

新頭殼
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...