1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
| cat <<EOF > openclaw-home/.openclaw/openclaw.json
{
"models": {
"mode": "merge",
"providers": {
"custom": {
"baseUrl": "https://x.x.x.x/v1",
"apiKey": "x.x.x.x",
"api": "openai-completions",
"models": [
{
"id": "default",
"name": "default",
"reasoning": false,
"input": [
"text"
],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 262144,
"maxTokens": 262144
}
]
}
}
},
"agents": {
"defaults": {
"model": {
"primary": "custom/qwen3.5-plus"
},
"models": {
"custom/qwen3.5-plus": {},
},
"workspace": "/root/.openclaw/workspace",
"compaction": {
"mode": "safeguard"
},
"timeoutSeconds": 120,
"maxConcurrent": 4,
"subagents": {
"maxConcurrent": 8
}
},
"list": [
{
"id": "main"
}
]
},
"tools": {
},
"messages": {
"ackReactionScope": "group-mentions"
},
"gateway": {
"port": 18789,
"mode": "local",
"bind": "lan",
"controlUi": {
"enabled": true,
"basePath": "/openclaw",
"allowInsecureAuth": true,
"allowedOrigins": [ "*" ]
},
"auth": {
"mode": "token",
"token": "$OPENCLAW_GATEWAY_TOKEN"
}
}
}
EOF
|