跳到主要内容OpenClaw 高级使用:多 Agent 协作与云端本地联动配置指南 | 极客日志JavaScriptNode.jsAI
OpenClaw 高级使用:多 Agent 协作与云端本地联动配置指南
OpenClaw 是一款支持多模型调度与多 Agent 协作的 AI 平台。本文介绍其模型容灾配置、记忆检索设置,以及通过 SSH 反向隧道实现云端 Gateway 远程操控本地 macOS 设备的完整流程。重点涵盖节点配对、权限配置及连接验证步骤,帮助开发者构建高效的分布式 AI 工作流。
OpenClaw 是一款基于开源架构的 AI 智能体平台,核心优势在于强大的多模型调度能力。它支持 Anthropic、OpenAI、Google 等主流模型的自动容灾切换,确保服务稳定性。内置的智能记忆检索系统通过 Embedding 实现混合搜索,让 Agent 在持续使用中积累经验。其多 Agent 协作机制支持线性流水线、依赖图并行及辩论模式,可组建虚拟开发团队,一条指令即可交付生产级代码。此外,它还支持云端与本地设备通过 SSH 反向隧道配对,实现跨端操控。
模型容灾机制配置
修改配置文件 /home/ubuntu/.openclaw/openclaw.json,定义主模型与备用模型列表。
{
"agents": {
"defaults": {
"model": {
"primary": "anthropic/claude-opus-4-6",
"fallbacks": [
"openai-codex/gpt-5.3-codex",
"google-antigravity/claude-opus-4-6-thinking"
]
}
},
"list": [
{
"id": "main",
"default": true,
"model": {
"primary": "anthropic/claude-opus-4-6",
"fallbacks"
:
[
"openai-codex/gpt-5.3-codex"
,
"google-antigravity/claude-opus-4-6-thinking"
]
}
}
]
}
}
多认证 Profile + Token 轮换
支持多种 Provider 的认证管理,可配置 OAuth 或 Token 模式,并设定调用顺序。
{
"auth": {
"profiles": {
"openai-codex:default": { "provider": "openai-codex", "mode": "oauth" },
"anthropic:default": { "provider": "anthropic", "mode": "token" },
"anthropic:manual": { "provider": "anthropic", "mode": "token" },
"google-antigravity:[email protected]": { "provider": "google-antigravity", "mode": "oauth", "email": "[email protected]" },
"google-antigravity:[email protected]": { "provider": "google-antigravity", "mode": "oauth" }
},
"order": {
"anthropic": ["anthropic:default", "anthropic:manual"],
"google-antigravity": ["google-antigravity:[email protected]", "google-antigravity:[email protected]"]
}
}
}
Memory Search 配置
启用混合搜索(向量 + 文本),设置远程 API Key 及模型参数。
文件路径:/home/ubuntu/.openclaw/openclaw.json
{
"agents": {
"defaults": {
"memorySearch": {
"sources": ["memory", "sessions"],
"experimental": { "sessionMemory": true },
"provider": "gemini",
"remote": { "apiKey": "AIzaSy***************" },
"fallback": "gemini",
"model": "gemini-embedding-001",
"query": {
"hybrid": {
"enabled": true,
"vectorWeight": 0.7,
"textWeight": 0.3
}
}
}
}
}
}
云端 Gateway 与本地 macOS 联动
架构概览
当 macOS 处于 NAT 内网无公网 IP 时,无法被 AWS 主动连接。解决方案是 Mac 主动建立 SSH 反向隧道至 AWS,将流量转发到本地 Node 服务。
┌─────────────────────────┐ SSH 反向隧道 ┌─────────────────────────┐
│ 云端 AWS (Ubuntu) │ ◄────────────│ 本地 macOS (MacBook) │
│ │ │ │
│ 端口 18790 │ │ 端口 18789 │
│ OpenClaw Gateway │ │ OpenClaw Node │
│ 监听:127.0.0.1:18789 │ │ 连接:localhost:18790 │
│ 公网 IP: xx.xx.xx.xx │ │ NAT 内网 │
└─────────────────────────┘ └─────────────────────────┘
前置条件
| 项目 | 要求 |
|---|
| AWS 服务器 | OpenClaw Gateway 已安装并运行 |
| macOS | Node.js ≥ 22, npm |
| SSH | Mac 能 SSH 到 AWS(公钥已添加) |
| 网络 | Mac 有互联网访问 |
配置步骤
npm install -g openclaw
openclaw --version
在 AWS 上查看配置文件中的 gateway.auth.token 值:
cat ~/.openclaw/openclaw.json | grep -A2 '"auth'"
openclaw gateway config | grep token
在 Mac 终端执行,将本地端口映射到 AWS Gateway:
ssh -N -L 18790:127.0.0.1:18789 ubuntu@<AWS 公网 IP>
-N:不执行远程命令,仅做端口转发。
-L 18790:127.0.0.1:18789:Mac 本地 18790 → AWS 的 18789。
- 首次连接需确认指纹输入
yes。
curl -s http://localhost:18790/health
在 Mac 另一个终端启动 Node,连接到 Gateway:
OPENCLAW_GATEWAY_TOKEN="<你的 Gateway Token>" \
openclaw node run \
--host 127.0.0.1 \
--port 18790 \
--display-name "Master-Mac"
🔗 Connecting to gateway at ws:
✅ Connected! Waiting for pairing approval...
在 AWS 终端或通过 Agent 执行批准操作:
openclaw node pending
openclaw node approve <node-id>
为安全起见,需设置 Node 的执行权限。推荐通过命令设置:
openclaw node exec-approvals set defaults.security full
或者手动创建配置文件 ~/.openclaw/exec-approvals.json:
{
"defaults": {
"security": "full"
}
}
注意:defaults.security 必须设为 full,否则即使白名单配了 * 也会拒绝执行命令。
从 AWS 的 OpenClaw Agent 测试远程执行:
nodes(action="status")
nodes(action="run", node="Master-Mac", command=["echo", "Hello from Mac!"])
nodes(action="run", node="Master-Mac", command=["sw_vers"])
通过以上步骤,即可完成云端与本地设备的深度联动,实现高效的分布式 AI 开发环境。
相关免费在线工具
- RSA密钥对生成器
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
- Mermaid 预览与可视化编辑
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
- Keycode 信息
查找任何按下的键的javascript键代码、代码、位置和修饰符。 在线工具,Keycode 信息在线工具,online
- Escape 与 Native 编解码
JavaScript 字符串转义/反转义;Java 风格 \uXXXX(Native2Ascii)编码与解码。 在线工具,Escape 与 Native 编解码在线工具,online
- JavaScript / HTML 格式化
使用 Prettier 在浏览器内格式化 JavaScript 或 HTML 片段。 在线工具,JavaScript / HTML 格式化在线工具,online
- JavaScript 压缩与混淆
Terser 压缩、变量名混淆,或 javascript-obfuscator 高强度混淆(体积会增大)。 在线工具,JavaScript 压缩与混淆在线工具,online