OpenClaw 夜間倉庫巡檢會呼叫 linter、測試與 grep,把數 MB 的 JSON灌進模型上下文。按 Anthropic 標價原樣付費,自律的自動化也會變成四位數 API 賬單。Headroom 插在閘道器與供應商之間:預設 8787 埠的本地代理,在請求抵達 api.anthropic.com 前用 SmartCrusher / CodeCompressor / CCR 壓縮工具輸出、日誌與歷史。公開基準顯示 SRE 類追蹤可減 92% 令牌,程式碼搜尋負載 73–92%——本指南在工具密集回合上瞄準 60–80%+,無需改動 Skill Markdown。
請與 OpenClaw 令牌預算與工具節流、macOS 上的 LaunchAgent 與 cron 搭配;金鑰衛生見 openclaw.json 與 .env 配置。
披露:MacHTML 可選提供雲 Mac mini 用於閘道器演練;本手冊廠商中立,適用於任意 macOS 主機。
為何 OpenClaw + Headroom 是獨特組合
OpenClaw 擅長常開閘道器:Slack/Telegram 入口、工具白名單、反覆讀取巨型工作區的多步 Skill。Headroom 擅長上下文壓縮——不是改寫你的意圖,而是縮小工具返回值。多數團隊只拉一根槓桿,因此這一組合少見:
| 槓桿 | 削減物件 | 盲點 |
|---|---|---|
| 僅 OpenClaw 節流 | 回合數、併發 | 仍原樣送入 50 KB linter JSON |
| 僅換小模型 | 輸入/輸出單價 | 複雜審計易漏報 |
| Skill 內手工截斷日誌 | 臨時手工 | 破壞 cron 可復現性 |
| Headroom 代理 + OpenClaw | 供應商前的工具/RAG/日誌令牌 | 需本地 Python 3.10+ 程序 |
Headroom README 將 OpenClaw 列為一級整合(ContextEngine 外掛與通用 OpenAI 相容代理)。你保留 OpenClaw 編排;Headroom 改寫模型看到的載荷形態。
外部參考:Headroom GitHub、Headroom 代理文件、Anthropic API。
架構:閘道器 → 代理 → Anthropic
┌─────────────┐ HTTP/SSE ┌──────────────────────┐ HTTPS ┌─────────────────┐
│ OpenClaw │ ────────────► │ Headroom proxy │ ────────► │ api.anthropic.com│
│ gateway │ 127.0.0.1:8787│ SmartCrusher + CCR │ │ (real API key) │
│ :8788 tools │ │ /v1/messages │ └─────────────────┘
└─────────────┘ └──────────────────────┘
▲ │
│ tool stdout/json │ headroom_retrieve if model needs originals
└──────────────────────────────┘
路由規則:OpenClaw 從環境(~/.openclaw/.env)與 openclaw.json 讀取供應商 Base URL。將 Anthropic 流量指向 Headroom,而非公網端點。Headroom 用代理程序環境中的真實 ANTHROPIC_API_KEY 轉發——OpenClaw 可沿用同一變數名,但主機須為本地。
埠紀律:Headroom 預設繫結 8787——與許多 OpenClaw 閘道器示例相同。生產環境建議 Headroom 佔 8787、OpenClaw 閘道器改 8788(亦可對調)。在 LaunchAgent plist 中成對記錄。
分步手冊(macOS 2026)
1. 安裝帶 proxy 擴充套件的 Headroom
python3 --version # must be 3.10+
pip install "headroom-ai[proxy]"
headroom --version
Apple Silicon 上磁碟允許可裝 pip install "headroom-ai[all]";僅 proxy 可減小映象體積。
2. 啟動代理並開啟日誌與統計
export ANTHROPIC_API_KEY="sk-ant-..." # real key — proxy forwards upstream
headroom proxy \
--host 127.0.0.1 \
--port 8787 \
--log-file ~/.headroom/openclaw-proxy.jsonl
驗證健康狀態:
curl -s http://127.0.0.1:8787/health | python3 -m json.tool
curl -s http://127.0.0.1:8787/stats | python3 -m json.tool
測試流量後應看到 optimize: true 與持續增長的 tokens_saved。
3. 將 OpenClaw 的 Anthropic 呼叫經代理路由
編輯 ~/.openclaw/.env(chmod 600):
ANTHROPIC_API_KEY=sk-ant-...
ANTHROPIC_BASE_URL=http://127.0.0.1:8787
# If you use OpenAI-compatible models in the same gateway:
# OPENAI_BASE_URL=http://127.0.0.1:8787/v1
確認閘道器在啟動前解析環境——見 JSON 與 .env 配置。勿提交這些行。
4. 必要時將 OpenClaw 閘道器移出 8787
當 Headroom 佔用 8787 時,在 ~/.openclaw/openclaw.json 將閘道器監聽設為 8788:
{
"gateway": {
"port": 8788,
"host": "127.0.0.1"
}
}
重啟閘道器;健康探針應對準 8788,而非 Headroom 埠。
5. 可選——Headroom OpenClaw 原生外掛路徑
Headroom 將 OpenClaw 文件化為 ContextEngine 外掛(headroom/providers/openclaw)。若偏好外掛而非裸 Base URL:
pip install "headroom-ai[all]"
headroom wrap openclaw # when available in your installed version
若無 wrap openclaw,請堅持 proxy + ANTHROPIC_BASE_URL——見 代理文件的通用路徑。
6. 用大工具載荷做冒煙壓縮測試
觸發返回大 JSON 的 Skill(測試輸出或 find)。對比:
curl -s http://127.0.0.1:8787/stats | python3 -m json.tool
tail -n 5 ~/.headroom/openclaw-proxy.jsonl
目標:首次真實審計 savings_percent 趨向 ≥40%;工具密集夜間常超 60–80%。
7. 用 launchd 持久化 Headroom(與 OpenClaw 並行)
建立 ~/Library/LaunchAgents/ai.headroom.proxy.plist,ProgramArguments 呼叫 headroom proxy --host 127.0.0.1 --port 8787,EnvironmentVariables 注入 ANTHROPIC_API_KEY,StandardOutPath 指向 ~/.headroom/logs/。在 ai.openclaw.gateway 之前載入,確保閘道器啟動時 Base URL 可用——模式見 LaunchAgent 指南。
8. 接入 MCP / Claude Code 邊車(可選)
Headroom 暴露 MCP 工具(headroom_compress、headroom_retrieve、headroom_stats)。為 Claude Code 沙箱供料 OpenClaw Skill 時,安裝一次 MCP:
headroom mcp install
OpenClaw Skill 可呼叫 http://127.0.0.1:8787/stats 做看板。
9. 在代理上設定預算護欄
headroom proxy --port 8787 --budget 50.0 --log-file ~/.headroom/openclaw-proxy.jsonl
--budget 50.0 在 Headroom 內設定美元日上限——補充而非替代 OpenClaw 單回合節流。
10. 用 openclaw doctor 驗證
openclaw doctor
Doctor 應顯示閘道器在 8788 健康、供應商經 127.0.0.1:8787 可達,且無埠衝突(EADDRINUSE)。
夜間巡檢流水線模式
典型本地 02:00 cron 或 LaunchAgent 觸發 OpenClaw Skill:
git fetch --all並與maindiff- 經允許的工具執行
npm test/eslint/ 自定義審計指令碼 - 將摘要發到 Slack
無 Headroom 時,步驟 2 常注入 1.5萬–6.5萬 令牌 stderr(公開 SRE 基準:65,694 → 5,118)。經代理壓縮,模型可透過 CCR 取回 還原 FATAL 行。
可引用:經 127.0.0.1:8787 的 Headroom 路由 OpenClaw Anthropic 流量,可在保留 CCR 可逆性的同時將工具密集上下文減少 60–92%——與 OpenClaw 節流疊加控費,而非替代。
若將記憶壓縮與 HTTP 層工具壓縮分離,請對照 Hermes 與 OpenClaw。
故障排查
聊天返回 502 / 連線被拒絕
現象:啟用代理後 OpenClaw 日誌立即出現上游錯誤。
修復:確認 Headroom 在監聽(curl http://127.0.0.1:8787/health)。若閘道器與代理爭搶 8787,拆分埠(步驟 4)。按序過載 LaunchAgent:先 Headroom,後 OpenClaw。
/stats 節省率接近 0%
現象:tokens_saved 持平;transforms 為空。
修復:確保流量經代理——ANTHROPIC_BASE_URL 須設在閘道器程序環境,而非僅互動 Shell。除錯可臨時 headroom proxy --no-optimize 對比。大載荷須為工具/訊息體,而非短提示。
模型“丟失”堆疊細節
現象:壓縮回合缺少審計期望的行號。
修復:Headroom CCR 本地存原文;在 Skill 中允許 headroom_retrieve,或單次診斷回合設 x-headroom-bypass: true。勿為夜間任務全域性關壓縮——改檢索策略。
Mac mini 上 EMFILE 或 CPU 飆升
現象:併發審計 + ML 壓縮(--llmlingua)打滿 Apple Silicon。
修復:非必要去掉 --llmlingua;對齊 工具並行 / ulimit。cron 視窗將 OpenClaw 併發工具呼叫限制為 3–5。
常見問題
Headroom 會取代 OpenClaw 令牌節流嗎?
不會。Headroom 縮小進入模型的內容;OpenClaw 限制工具觸發頻率。兩者並用——見 令牌預算手冊。
80% 節省是否保證?
Headroom 按負載公佈 60–95% 區間。OpenClaw 工具密集審計常見 60–92%;短對話節省更少。用倉庫實測 /stats。
Anthropic 會攔截代理請求嗎?
Headroom 用金鑰轉發官方 API——與直連 SDK 相同。僅在代理主機儲存 ANTHROPIC_API_KEY;日誌洩露則輪換。
Headroom 在 Linux、OpenClaw 在 macOS 可行嗎?
可以——防火牆允許時設 ANTHROPIC_BASE_URL=http://linux-host:8787。延遲敏感閘道器宜在同一 Mac mini共置代理。
與 Hermes 軌跡壓縮有何不同?
Hermes 壓縮Agent 記憶軌跡;Headroom 在 HTTP 層壓縮工具輸出與訊息。選型見 Hermes 與 OpenClaw——可分機共存。
改用本地 Ollama而非 Anthropic?同一 Headroom 代理可壓縮端側模型的工具載荷——參閱 Headroom + Ollama 本地加速指南,修復 16 GB Mac mini 上的預填充卡頓。