OpenClaw - 自託管 AI 智慧助手平臺
OpenClaw 教程 — 安裝 OpenClaw、對接 88API,快速搭建自託管 AI 助手。開源專案,支援 Telegram、Discord、WhatsApp 等多渠道整合。
專案介紹
OpenClaw 是一個開源、自託管的個人 AI 助手平臺,將訊息應用連線到執行在你自己硬體上的 AI 代理。專為開發者和高階使用者設計,無需交出資料控制權即可擁有自主 AI 助手。
OpenClaw 完全開源,你可以在 OpenClaw 的 GitHub 倉庫 瀏覽原始碼、提交 Issue 或參與貢獻。本教程涵蓋安裝、配置,以及將 OpenClaw 對接 88API 的完整步驟。
🌟 核心特性
多渠道整合
- 多渠道整合:支援 Telegram、Discord、WhatsApp、iMessage 等多種訊息渠道,也可透過外掛擴充套件更多平臺
- 單一閘道器:透過一個 Gateway 程序統一管理所有渠道
- 語音支援:支援 macOS/iOS/Android 語音互動
- Canvas 介面:可渲染互動式 Canvas 介面
自託管與資料安全
- 完全自託管:執行在你自己的機器或伺服器上
- 開源透明:MIT 開源協議,程式碼完全透明
- 資料本地化:上下文和技能儲存在你的本地計算機,而非雲端
智慧代理能力
- 持續執行:支援後臺常駐執行,擁有持久記憶
- 計劃任務:支援 cron 定時任務
- 會話隔離:按代理/工作區/傳送者隔離會話
- 多代理路由:支援多代理協同工作
- 工具呼叫:原生支援工具呼叫和程式碼執行
📦 接入前準備
準備資訊
- Node.js 22 或更高版本
- 一個可用的 88API 地址(通常以
/v1結尾) - 一個可用的 88API API Key
- 請使用您自己部署的 88API,或確認服務方具備合法上游授權和合規義務的 88API 服務。不要將來源不明的 API 地址或金鑰接入生產環境。
在開始接入 88API 之前,建議先按 OpenClaw 官方當前推薦流程把 Gateway 和 Control UI 跑起來。這樣後續排查問題時,更容易區分是 OpenClaw 本身未啟動,還是模型提供商配置有誤。
1. 安裝 OpenClaw(macOS/Linux)
curl -fsSL https://openclaw.ai/install.sh | bash其他安裝方式可參考 OpenClaw 官方文件:Getting Started。
2. 執行引導向導
openclaw onboard --install-daemon該向導會完成基礎認證、Gateway 設定,以及可選的渠道初始化。這裡的目標是先把 OpenClaw 跑起來,後面再把預設模型切到 88API。
3. 檢查 Gateway 與 Control UI
openclaw gateway statusopenclaw dashboard如果瀏覽器能開啟 Control UI,說明 OpenClaw 基礎執行已經正常。這個階段不需要先配置 Telegram、Discord、飛書等訊息渠道。
4. 定位配置檔案
OpenClaw 的配置檔案通常位於 ~/.openclaw/openclaw.json,你可以在引導向導生成的基礎上繼續修改。
路徑相關環境變數
如果你把 OpenClaw 跑在專用服務賬號下,或希望自定義配置/狀態目錄,可以使用:
OPENCLAW_HOMEOPENCLAW_STATE_DIROPENCLAW_CONFIG_PATH
詳細說明見官方環境變數文件:Environment Variables。
🚀 使用 88API 作為模型提供商
OpenClaw 支援透過 models.providers 接入自定義或相容 OpenAI 介面的模型閘道器。對於 88API,最常見的做法是把它作為一個自定義 provider 加進配置裡,再把預設模型指向 88api/模型ID。
接入思路
- 在
models.providers下宣告一個88apiprovider - 將
baseUrl指向你的 88API 地址,並確保包含/v1 - 將
api設為openai-completions - 在
models中列出你希望 OpenClaw 使用的模型 ID - 在
agents.defaults.model.primary中把預設模型切到88api/...
推薦做法:用環境變數儲存金鑰
先在當前 shell、服務環境,或 OpenClaw 可讀取的 .env 中提供你的 88API 金鑰:
export API88_API_KEY="sk-your-88api-key"然後在 openclaw.json 裡補充或修改以下片段:
{
models: {
mode: "merge",
providers: {
88api: {
baseUrl: "https://88api.ai/v1",
apiKey: "${API88_API_KEY}",
api: "openai-completions",
models: [
{ id: "gemini-2.5-flash", name: "Gemini 2.5 Flash" },
{ id: "kimi-k2.5", name: "Kimi K2.5" },
],
},
},
},
agents: {
defaults: {
model: {
primary: "88api/gemini-2.5-flash",
fallbacks: ["88api/kimi-k2.5"],
},
models: {
"88api/gemini-2.5-flash": { alias: "flash" },
"88api/kimi-k2.5": { alias: "kimi" },
},
},
},
}這不是一份必須原樣照抄的完整配置,而是接入 88API 最關鍵的部分。只要 provider、模型 ID 和預設模型引用對應正確,OpenClaw 就能透過 88API 呼叫你暴露出來的模型資源。
關鍵配置說明
| 配置項 | 說明 |
|---|---|
models.mode | 建議設為 merge,在保留 OpenClaw 內建 provider 的同時追加 88api |
models.providers.88api.baseUrl | 你的 88API 地址,通常需要帶上 /v1 |
models.providers.88api.apiKey | 88API 金鑰,推薦透過 ${API88_API_KEY} 注入 |
models.providers.88api.api | 對於 88API 這類 OpenAI 相容閘道器,使用 openai-completions |
models.providers.88api.models | 這裡列出的模型 ID 必須與你的 88API 實際暴露的模型名稱一致 |
agents.defaults.model.primary | 預設主模型,格式必須是 provider/model-id |
agents.defaults.model.fallbacks | 備選模型列表,主模型失敗時自動切換 |
agents.defaults.models | 可選,用來給模型起別名,方便在 UI 或會話裡引用 |
驗證是否接入成功
完成配置後,回到 Control UI 或重新開啟:
openclaw dashboard如果你能在 OpenClaw 中正常發起對話,並且預設模型已經變成 88api/...,說明接入成功。你也可以使用:
openclaw models list確認 88api/ 字首的模型已經出現在可選列表中。
常見問題
baseUrl沒帶/v1:這是最常見的接入錯誤之一。- 模型 ID 填錯:
primary和fallbacks必須與models.providers.88api.models裡的id對應。 - 金鑰只在當前終端生效:如果 Gateway 以後臺服務執行,請確保服務程序也能讀取
API88_API_KEY。 - 想前臺排障:可使用官方前臺執行方式
openclaw gateway --port 18789觀察日誌與報錯。