網頁用 PNG 若缺 ICC/色彩描述,跨裝置預覽容易偏色;手動重新匯出又難稽核。遠端 Mac 長開機搭配 OpenClaw,可監聽 Chrome/Safari/Edge 等下載或「另存圖片」目錄,對新檔做嵌入校驗與命名範本歸檔。安裝總覽見 OpenClaw 全平台安裝指南;ICC 與無損重包政策見 PNG 元數據與 ICC 實戰;自動命名與校驗可對照 PNG 自動命名與批量校驗工作流。
OpenClaw/閘道最小安裝與權限
目標是把「匯出即入庫」做成可重播流水線:同一台遠端機器上只跑一個 worker 帳號,路徑與權限寫死,避免本機筆電休眠打斷監聽。
- 依官方 README 安裝 OpenClaw CLI 與閘道,釘死 Node/執行檔版本並記錄於 runbook。
- 建立六區目錄(皆為絕對路徑):
inbox(瀏覽器匯出落點或符號連結)、staging、icc_ok、rename_ok、failed、logs。 chown給 worker 使用者;launchdplist 內禁止裸寫~,改填完整路徑並注入HOME。- 安裝校驗工具:
brew install exiftool;可選pngcheck做結構煙測。 - 系統設定 → 隱私權與安全性:必要時開啟完整磁碟取用與檔案與資料夾存取給終端機/守護行程。
安裝驗收清單
- 同殼層可執行
exiftool -ver與 OpenClaw/閘道健康檢查(README 內建探活指令)。 - 六區皆可由 worker 建立測試檔並刪除。
- 閘道 API 或本機 socket 僅綁定
127.0.0.1或內網 ACL 白名單。
資料夾監聽配置
瀏覽器寫檔多為「先暫存、再置換」,觸發過早會讀到半套 PNG。建議用 fswatch 或等價 API,並在腳本內做穩定化。
- 將瀏覽器預設下載路徑指到
inbox,或把inbox做成該路徑的符號連結(注意權限與沙箱)。 - 監聽篩選:
*.png;忽略.crdownload、.part、零位元組檔。 - 防抖:事件後等待 1~3 秒,並連續兩次
stat大小與 mtime 不變再入列。 - 入列載荷含:絕對路徑、位元組大小、偵測時間;worker 先
mv至staging再跑校驗,避免與瀏覽器同寫。 - 常駐:
launchd或tmux;開機自動拉起監聽管線。
監聽驗收清單
- 連續匯出十張 PNG,無「半寫入」誤觸發。
- 大量小圖批次下載時,佇列不丟事件(可設背壓上限與捨棄策略並寫入日誌)。
ICC/色彩設定檔校驗規則
網頁素材常規要求是嵌入 sRGB(或組織明訂的單一 ICC),避免 P3 螢幕與 sRGB 網頁混用時出現難以追查的色差。
- 讀取:
exiftool -j -ICC_Profile:All或簡化欄位;確認存在iCCPchunk 或等價描述。 - 允許清單:描述字串包含
sRGB、Display P3等之一(依品牌規範擇一,預設建議只放行 sRGB)。 - 拒收:無 ICC、或描述為 CMYK/未知廠牌;標記規則編號並移入
failed,附 JSON 旁車說明。 - 修補策略(可選):若政策允許,用
sips或轉檔管線嵌入 sRGB 後再二次校驗;需與設計約定「不得改像素」時改走人工退回。
實例:單檔檢查(staging 內路徑自行替換)
exiftool -s -ICC_Profile:Description "/abs/path/staging/hero.png"
ICC 驗收清單
- 抽樣 20 張,人工在 sRGB 校正螢幕與一般筆電對照,無規則外描述。
- 失敗件可追溯規則 ID 與原始檔名。
命名範本與失敗重試
通過 ICC 校驗後,依專案範本重新命名並搬移,便於 CDN 與元件庫引用。範例範本:{專案}_{元件}_{寬}x{高}_{版本}.png,寬高可由 sips -g pixelWidth -g pixelHeight 取得。
- ICC 通過 → 搬至
icc_ok;依範本改名(衝突時 suffix_2遞增)。 - 命名與路徑合法字元檢查(無空白、無全形標點);不符則
failed。 - 全流程成功 → 移入
rename_ok作為「可上線目錄」,必要時再 rsync 到物件儲存。 - 重試:暫態 IO/鎖檔錯誤採指數退避(例如 5s、20s、60s),單檔日嘗試封頂;資料錯誤不重試。
- 每筆工作寫入
logs/jobs-YYYYMMDD.jsonl:時間、規則、階段、結束碼、耗時、最終路徑。
歸檔驗收清單
- 隨機抽檔,檔名與 manifest 或 Git LFS 清單一致。
- 失敗目錄僅含可追溯 JSON 與原檔,不與成功件混放。
常見報錯 FAQ
監聽到了但 exiftool 報錯/讀不到? 多半是檔案尚未寫完;加長防抖或比對兩次大小。若已移入 staging 仍失敗,用 pngcheck 看是否結構截斷。
明明有色彩描述仍被判不合格? 核對組織允許清單是否過嚴;注意大小寫與別名(例如 sRGB IEC61966-2.1)。
launchd 裡找不到 brew 指令? 在 plist 內寫 exiftool/bash 的絕對路徑,或匯出完整 PATH。
瀏覽器更新後路徑變了? 以腳本定期檢查下載目錄是否存在;失效時告警並寫入日誌。
與 OpenClaw 任務不同步? 先把監聽腳本輸出標準 JSON 行,再由閘道訂閱或 webhook 觸發技能,避免雙寫競態。
託管 ICC 校驗與命名流水線的 Apple Silicon 節點
遠端 Mac 適合長時監聽與批量校驗;租用後可依 使用說明與幫助 連線部署。延伸閱讀:PNG 監聽、重試與日誌歸檔、sRGB/Display P3 色彩管理清單、OpenClaw 創意自動化管線。