libp2p-mesh 2026.6.26 → 2026.6.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +25 -23
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/src/mesh.d.ts +5 -0
- package/dist/src/mesh.js +13 -16
- package/dist/src/mesh.js.map +1 -1
- package/dist/src/setup-config.d.ts +14 -1
- package/dist/src/setup-config.js +29 -11
- package/dist/src/setup-config.js.map +1 -1
- package/dist/src/setup-wizard.d.ts +1 -1
- package/dist/src/setup-wizard.js +119 -75
- package/dist/src/setup-wizard.js.map +1 -1
- package/dist/src/types.d.ts +3 -1
- package/index.ts +3 -2
- package/package.json +1 -1
- package/src/mesh.ts +18 -14
- package/src/setup-config.ts +42 -13
- package/src/setup-wizard.ts +159 -88
- package/src/types.ts +3 -1
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@ P2P mesh network plugin for OpenClaw. Enables direct peer-to-peer communication
|
|
|
7
7
|
- **LAN Discovery** — Auto-discovers peers on the same local network via mDNS (Bonjour/Avahi)
|
|
8
8
|
- **Direct Messaging** — Send messages directly to another peer by its Peer ID
|
|
9
9
|
- **Broadcast** — Publish messages to a shared topic, flood-fill forwarded across the mesh
|
|
10
|
-
- **Bootstrap
|
|
10
|
+
- **Bootstrap Entries** — Optional static bootstrap peer list for non-LAN scenarios
|
|
11
11
|
- **WebSocket Transport** — Optional WebSocket support for NAT/firewall-friendly connections
|
|
12
12
|
- **NAT Traversal** — Built-in AutoNAT + UPnP + Circuit Relay v2 + DCUtR for peers behind home routers / firewalls
|
|
13
13
|
- **User Public Attributes** — Announce public tags and structured profile attributes so agents can dry-run and send to locally discovered instances by attribute
|
|
@@ -69,7 +69,6 @@ The default generated config shape is:
|
|
|
69
69
|
"libp2p-mesh": {
|
|
70
70
|
"enabled": true,
|
|
71
71
|
"config": {
|
|
72
|
-
"discovery": "mdns",
|
|
73
72
|
"deliveryAckTimeoutMs": 15000
|
|
74
73
|
}
|
|
75
74
|
}
|
|
@@ -108,12 +107,22 @@ openclaw gateway restart
|
|
|
108
107
|
openclaw libp2p-mesh setup
|
|
109
108
|
```
|
|
110
109
|
|
|
111
|
-
这个向导会写入 `plugins.entries["libp2p-mesh"].config`,不会写入 `channels["libp2p-mesh"]
|
|
110
|
+
这个向导会写入 `plugins.entries["libp2p-mesh"].config`,不会写入 `channels["libp2p-mesh"]`。
|
|
112
111
|
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
-
|
|
116
|
-
-
|
|
112
|
+
向导会把网络配置和入站投递分开处理。网络配置只决定当前节点如何发现或连接其他节点:
|
|
113
|
+
|
|
114
|
+
- 使用默认局域网发现。
|
|
115
|
+
- 添加 bootstrap / relay 地址用于跨网络连接。
|
|
116
|
+
- 将当前机器配置为公网 relay 节点。
|
|
117
|
+
|
|
118
|
+
入站投递配置决定收到 P2P 消息后显示到哪里:
|
|
119
|
+
|
|
120
|
+
- 从现有 channels 同步。
|
|
121
|
+
- 手动添加一个 target。
|
|
122
|
+
- 不把 P2P 消息投递到本地 channel。
|
|
123
|
+
- 暂时保持不变。
|
|
124
|
+
|
|
125
|
+
从现有 channels 同步时,某个 channel 的 target 可以直接留空,表示跳过该 channel。
|
|
117
126
|
|
|
118
127
|
入站目标示例:
|
|
119
128
|
|
|
@@ -241,7 +250,7 @@ Use the interactive setup command for advanced network settings and later edits:
|
|
|
241
250
|
openclaw libp2p-mesh setup
|
|
242
251
|
```
|
|
243
252
|
|
|
244
|
-
The wizard enables the plugin when needed and writes `plugins.entries["libp2p-mesh"].config`. On later runs, it edits the existing `libp2p-mesh` entry instead of replacing it blindly.
|
|
253
|
+
The wizard enables the plugin when needed and writes `plugins.entries["libp2p-mesh"].config`. On later runs, it edits the existing `libp2p-mesh` entry instead of replacing it blindly. Network discovery is automatic: mDNS, DHT, NAT traversal, relay transport, and hole punching are enabled by default. Network setup only adds optional bootstrap/relay entry addresses or public relay-node parameters; inbound delivery chooses where received P2P messages should appear. After each edit action, the wizard previews the final JSON and only writes after you confirm. When syncing from existing channels, leave a target empty to skip that channel.
|
|
245
254
|
|
|
246
255
|
The wizard uses OpenClaw's config writer, so the actual file is your normal OpenClaw config path, usually `~/.openclaw/openclaw.json`. You do not need to manually edit `openclaw.json`, and the wizard does not create `channels["libp2p-mesh"]`.
|
|
247
256
|
|
|
@@ -262,7 +271,6 @@ For two computers on the same WiFi or Ethernet segment, no setup wizard is requi
|
|
|
262
271
|
"libp2p-mesh": {
|
|
263
272
|
"enabled": true,
|
|
264
273
|
"config": {
|
|
265
|
-
"discovery": "mdns",
|
|
266
274
|
"deliveryAckTimeoutMs": 15000
|
|
267
275
|
}
|
|
268
276
|
}
|
|
@@ -271,7 +279,7 @@ For two computers on the same WiFi or Ethernet segment, no setup wizard is requi
|
|
|
271
279
|
}
|
|
272
280
|
```
|
|
273
281
|
|
|
274
|
-
This is sufficient for two computers on the same WiFi to discover each other.
|
|
282
|
+
This is sufficient for two computers on the same WiFi to discover each other. The runtime still enables mDNS and DHT automatically even when these fields are not written to `openclaw.json`.
|
|
275
283
|
|
|
276
284
|
### With Static Port (Optional)
|
|
277
285
|
|
|
@@ -284,7 +292,6 @@ By default, the node picks a random TCP port. To use a fixed port:
|
|
|
284
292
|
"libp2p-mesh": {
|
|
285
293
|
"enabled": true,
|
|
286
294
|
"config": {
|
|
287
|
-
"discovery": "mdns",
|
|
288
295
|
"listenAddrs": ["/ip4/0.0.0.0/tcp/4001"],
|
|
289
296
|
"deliveryAckTimeoutMs": 15000
|
|
290
297
|
}
|
|
@@ -296,7 +303,7 @@ By default, the node picks a random TCP port. To use a fixed port:
|
|
|
296
303
|
|
|
297
304
|
### With Bootstrap Nodes (Cross-Network)
|
|
298
305
|
|
|
299
|
-
If peers are on different networks, run the setup wizard and
|
|
306
|
+
If peers are on different networks, run the setup wizard and add bootstrap and optional relay multiaddrs. These addresses are entry points; they do not replace LAN discovery or DHT. The address prompts can be left empty if you do not have an entry node yet.
|
|
300
307
|
|
|
301
308
|
```json
|
|
302
309
|
{
|
|
@@ -305,7 +312,6 @@ If peers are on different networks, run the setup wizard and choose cross-networ
|
|
|
305
312
|
"libp2p-mesh": {
|
|
306
313
|
"enabled": true,
|
|
307
314
|
"config": {
|
|
308
|
-
"discovery": "bootstrap",
|
|
309
315
|
"bootstrapList": [
|
|
310
316
|
"/ip4/203.0.113.10/tcp/4001/p2p/12D3KooW..."
|
|
311
317
|
],
|
|
@@ -323,7 +329,7 @@ If peers are on different networks, run the setup wizard and choose cross-networ
|
|
|
323
329
|
|
|
324
330
|
### Multiple Inbound Targets
|
|
325
331
|
|
|
326
|
-
Inbound delivery is owned by the receiving OpenClaw instance. In the setup wizard, choose
|
|
332
|
+
Inbound delivery is owned by the receiving OpenClaw instance. In the setup wizard, choose where received P2P messages should appear: sync from existing channels, add a target manually, disable local-channel delivery, or leave the current setting unchanged. When syncing from existing channels, leave a target empty to skip that channel. The sender still sends to the receiver's peer ID or instance ID; the receiver decides which local channels display the incoming message.
|
|
327
333
|
|
|
328
334
|
Example wizard output with two targets:
|
|
329
335
|
|
|
@@ -334,7 +340,6 @@ Example wizard output with two targets:
|
|
|
334
340
|
"libp2p-mesh": {
|
|
335
341
|
"enabled": true,
|
|
336
342
|
"config": {
|
|
337
|
-
"discovery": "mdns",
|
|
338
343
|
"inboundTargets": [
|
|
339
344
|
{
|
|
340
345
|
"id": "feishu-main",
|
|
@@ -361,19 +366,21 @@ If `inboundTargets` is an empty array, inbound delivery is disabled. If `inbound
|
|
|
361
366
|
|
|
362
367
|
| Key | Type | Default | Description |
|
|
363
368
|
|-----|------|---------|-------------|
|
|
364
|
-
| `discovery` | `string` |
|
|
369
|
+
| `discovery` | `string` | legacy-compatible | Legacy hint. New setup does not write this field; runtime composes discovery from mDNS, DHT, and optional entry lists. |
|
|
365
370
|
| `listenAddrs` | `string[]` | `["/ip4/0.0.0.0/tcp/0"]` | libp2p listen multiaddrs |
|
|
366
|
-
| `bootstrapList` | `string[]` | `[]` |
|
|
371
|
+
| `bootstrapList` | `string[]` | `[]` | Optional static bootstrap peer multiaddrs. Non-empty values add bootstrap discovery without disabling mDNS or DHT. |
|
|
367
372
|
| `enableWebSocket` | `boolean` | `false` | Enable WebSocket transport for browser/NAT compatibility |
|
|
368
373
|
| `meshTopic` | `string` | `"openclaw-mesh"` | Default broadcast topic |
|
|
369
374
|
| `enableAgentSync` | `boolean` | `true` | Enable agent state synchronization over the mesh |
|
|
370
375
|
| `enableNATTraversal` | `boolean` | `true` | Master switch for identify + AutoNAT + UPnP + Circuit Relay v2 + DCUtR |
|
|
376
|
+
| `enableMDNS` | `boolean` | `true` | Enable mDNS LAN peer discovery |
|
|
371
377
|
| `enableIdentify` | `boolean` | `true` | libp2p identify protocol (required by AutoNAT and DCUtR) |
|
|
372
378
|
| `enableAutoNAT` | `boolean` | `true` | AutoNAT — detect whether this node is publicly reachable |
|
|
373
379
|
| `enableUPnP` | `boolean` | `true` | Attempt UPnP/PMP port mapping on the local gateway |
|
|
374
380
|
| `enableCircuitRelay` | `boolean` | `true` | Dial peers via /p2p-circuit relay addresses |
|
|
375
381
|
| `enableCircuitRelayServer` | `boolean` | `false` | Act as a Circuit Relay v2 server (only enable on a public node) |
|
|
376
382
|
| `enableDCUtR` | `boolean` | `true` | Hole-punching: upgrade a relayed connection to a direct one |
|
|
383
|
+
| `enableDHT` | `boolean` | `true` | Enable DHT for WAN peer discovery and the pubkey registry |
|
|
377
384
|
| `relayList` | `string[]` | `[]` | Multiaddrs of relays to reserve a slot on |
|
|
378
385
|
| `discoverRelays` | `number` | `0` | Auto-discover this many relays via content routing |
|
|
379
386
|
| `announceAddrs` | `string[]` | `[]` | Extra multiaddrs to announce on top of auto-detected ones |
|
|
@@ -425,7 +432,6 @@ You need at least one relay node with a public IP. Set it in `relayList`:
|
|
|
425
432
|
"libp2p-mesh": {
|
|
426
433
|
"enabled": true,
|
|
427
434
|
"config": {
|
|
428
|
-
"discovery": "bootstrap",
|
|
429
435
|
"bootstrapList": [
|
|
430
436
|
"/ip4/<RELAY-IP>/tcp/4001/p2p/<RELAY-PEER-ID>"
|
|
431
437
|
],
|
|
@@ -454,7 +460,6 @@ Add `enableCircuitRelayServer: true` to your config and announce the public addr
|
|
|
454
460
|
"libp2p-mesh": {
|
|
455
461
|
"enabled": true,
|
|
456
462
|
"config": {
|
|
457
|
-
"discovery": "bootstrap",
|
|
458
463
|
"listenAddrs": ["/ip4/0.0.0.0/tcp/4001"],
|
|
459
464
|
"announceAddrs": ["/ip4/<PUBLIC-IP>/tcp/4001"],
|
|
460
465
|
"enableNATTraversal": true,
|
|
@@ -557,7 +562,6 @@ Example result for a single Feishu target:
|
|
|
557
562
|
"libp2p-mesh": {
|
|
558
563
|
"enabled": true,
|
|
559
564
|
"config": {
|
|
560
|
-
"discovery": "mdns",
|
|
561
565
|
"inboundTargets": [
|
|
562
566
|
{
|
|
563
567
|
"id": "feishu-main",
|
|
@@ -585,7 +589,6 @@ The receiver chooses where inbound P2P messages appear:
|
|
|
585
589
|
"libp2p-mesh": {
|
|
586
590
|
"enabled": true,
|
|
587
591
|
"config": {
|
|
588
|
-
"discovery": "mdns",
|
|
589
592
|
"inboundTargets": [
|
|
590
593
|
{
|
|
591
594
|
"id": "feishu-main",
|
|
@@ -833,10 +836,9 @@ Privacy boundary: public attributes are broadcast with instance announce message
|
|
|
833
836
|
3. **Check mDNS** — Ensure mDNS/Bonjour/Avahi is running:
|
|
834
837
|
- macOS: built-in, should work
|
|
835
838
|
- Linux: `sudo systemctl status avahi-daemon`
|
|
836
|
-
4. **Use static port + manual IP** — If mDNS still fails,
|
|
839
|
+
4. **Use static port + manual IP** — If mDNS still fails, add the other node as a bootstrap entry by LAN IP:
|
|
837
840
|
```json
|
|
838
841
|
{
|
|
839
|
-
"discovery": "bootstrap",
|
|
840
842
|
"bootstrapList": [
|
|
841
843
|
"/ip4/192.168.1.42/tcp/4001/p2p/<PEER-ID-OF-OTHER-MACHINE>"
|
|
842
844
|
]
|
package/dist/index.js
CHANGED
|
@@ -32,11 +32,12 @@ function createLibp2pMeshConfigSchema() {
|
|
|
32
32
|
type: "string",
|
|
33
33
|
enum: ["mdns", "bootstrap", "dht"],
|
|
34
34
|
default: "mdns",
|
|
35
|
+
description: "Legacy discovery hint. Runtime now composes mDNS, DHT, and optional bootstrap entries automatically.",
|
|
35
36
|
},
|
|
36
37
|
bootstrapList: {
|
|
37
38
|
type: "array",
|
|
38
39
|
items: { type: "string" },
|
|
39
|
-
description: "
|
|
40
|
+
description: "Optional static bootstrap multiaddrs. Non-empty values add bootstrap discovery without disabling mDNS or DHT.",
|
|
40
41
|
},
|
|
41
42
|
meshTopic: {
|
|
42
43
|
type: "string",
|
|
@@ -53,7 +54,7 @@ function createLibp2pMeshConfigSchema() {
|
|
|
53
54
|
enableDHT: {
|
|
54
55
|
type: "boolean",
|
|
55
56
|
default: true,
|
|
56
|
-
description: "Enable DHT for WAN peer discovery and pubkey registry. Default true
|
|
57
|
+
description: "Enable DHT for WAN peer discovery and pubkey registry. Default true; can be explicitly disabled.",
|
|
57
58
|
},
|
|
58
59
|
instanceName: {
|
|
59
60
|
type: "string",
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,SAAS,4BAA4B;IACnC,OAAO;QACL,SAAS,CAAC,KAAc;YACtB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;YAC5C,CAAC;YACD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChE,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,EAAE;iBACrE,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QACxC,CAAC;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,oBAAoB,EAAE,KAAK;YAC3B,UAAU,EAAE;gBACV,WAAW,EAAE;oBACX,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,OAAO,EAAE,CAAC,oBAAoB,CAAC;iBAChC;gBACD,eAAe,EAAE;oBACf,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,KAAK;oBACd,WAAW,EAAE,+DAA+D;iBAC7E;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC;oBAClC,OAAO,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/mesh.d.ts
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import type { MeshConfig, MeshNetwork } from "./types.js";
|
|
2
|
+
export declare function planPeerDiscovery(config: MeshConfig): {
|
|
3
|
+
useMDNS: boolean;
|
|
4
|
+
bootstrapList: string[];
|
|
5
|
+
enableDHT: boolean;
|
|
6
|
+
};
|
|
2
7
|
export declare function createMeshNetwork(options: {
|
|
3
8
|
config?: MeshConfig;
|
|
4
9
|
logger?: {
|
package/dist/src/mesh.js
CHANGED
|
@@ -58,6 +58,13 @@ async function loadOrCreatePeerId(customPath) {
|
|
|
58
58
|
return peerId;
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
|
+
export function planPeerDiscovery(config) {
|
|
62
|
+
return {
|
|
63
|
+
useMDNS: config.enableMDNS !== false,
|
|
64
|
+
bootstrapList: config.bootstrapList ?? [],
|
|
65
|
+
enableDHT: config.enableDHT !== false,
|
|
66
|
+
};
|
|
67
|
+
}
|
|
61
68
|
export function createMeshNetwork(options) {
|
|
62
69
|
const config = options.config ?? {};
|
|
63
70
|
const logger = options.logger;
|
|
@@ -97,28 +104,18 @@ export function createMeshNetwork(options) {
|
|
|
97
104
|
transports.push(webSockets());
|
|
98
105
|
}
|
|
99
106
|
// Peer discovery: mDNS for LAN, bootstrap for WAN entry points
|
|
107
|
+
const discoveryPlan = planPeerDiscovery(config);
|
|
100
108
|
const peerDiscovery = [];
|
|
101
|
-
|
|
102
|
-
if (discoveryMechanism === "mdns") {
|
|
109
|
+
if (discoveryPlan.useMDNS) {
|
|
103
110
|
peerDiscovery.push(mdns({ interval: 1000 }));
|
|
104
111
|
logger?.info?.("[libp2p-mesh] Using mDNS discovery (LAN)");
|
|
105
112
|
}
|
|
106
|
-
if (
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
peerDiscovery.push(bootstrap({ list: bootstrapList }));
|
|
110
|
-
logger?.info?.(`[libp2p-mesh] Using bootstrap discovery (${bootstrapList.length} node(s))`);
|
|
111
|
-
}
|
|
112
|
-
else if (discoveryMechanism === "bootstrap") {
|
|
113
|
-
logger?.warn?.("[libp2p-mesh] discovery=bootstrap but bootstrapList is empty; falling back to mDNS");
|
|
114
|
-
peerDiscovery.push(mdns({ interval: 1000 }));
|
|
115
|
-
}
|
|
116
|
-
else {
|
|
117
|
-
logger?.warn?.("[libp2p-mesh] discovery=dht but bootstrapList is empty; DHT may not find peers");
|
|
118
|
-
}
|
|
113
|
+
if (discoveryPlan.bootstrapList.length > 0) {
|
|
114
|
+
peerDiscovery.push(bootstrap({ list: discoveryPlan.bootstrapList }));
|
|
115
|
+
logger?.info?.(`[libp2p-mesh] Using bootstrap discovery (${discoveryPlan.bootstrapList.length} node(s))`);
|
|
119
116
|
}
|
|
120
117
|
// Configure DHT for both WAN peer discovery and pubkey registry
|
|
121
|
-
const enableDHT =
|
|
118
|
+
const enableDHT = discoveryPlan.enableDHT;
|
|
122
119
|
const services = {};
|
|
123
120
|
if (enableDHT) {
|
|
124
121
|
services.dht = kadDHT({
|
package/dist/src/mesh.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mesh.js","sourceRoot":"","sources":["../../src/mesh.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mesh.js","sourceRoot":"","sources":["../../src/mesh.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { AnnounceLogDetail, InboundTargetConfig, MeshConfig } from "./types.js";
|
|
2
2
|
export declare const LIBP2P_MESH_PLUGIN_ID = "libp2p-mesh";
|
|
3
3
|
export declare const DEFAULT_DELIVERY_ACK_TIMEOUT_MS = 15000;
|
|
4
|
-
export type SetupMode = "lan" | "cross-network" | "relay-node"
|
|
4
|
+
export type SetupMode = "lan" | "cross-network" | "relay-node";
|
|
5
5
|
export type OpenClawConfigLike = {
|
|
6
6
|
plugins?: {
|
|
7
7
|
entries?: Record<string, {
|
|
@@ -21,6 +21,17 @@ export type RelayNodeOptions = {
|
|
|
21
21
|
listenAddrs: string[];
|
|
22
22
|
announceAddrs: string[];
|
|
23
23
|
};
|
|
24
|
+
export type NetworkEntryOptions = {
|
|
25
|
+
bootstrapList: string[];
|
|
26
|
+
relayList: string[];
|
|
27
|
+
};
|
|
28
|
+
export type PublicRelayNodeOptions = {
|
|
29
|
+
enabled: false;
|
|
30
|
+
} | {
|
|
31
|
+
enabled: true;
|
|
32
|
+
listenAddrs: string[];
|
|
33
|
+
announceAddrs: string[];
|
|
34
|
+
};
|
|
24
35
|
export type AddInboundTargetResult = {
|
|
25
36
|
ok: true;
|
|
26
37
|
targets: InboundTargetConfig[];
|
|
@@ -42,6 +53,8 @@ export declare function buildNetworkConfig(mode: SetupMode, options?: {
|
|
|
42
53
|
crossNetwork?: CrossNetworkOptions;
|
|
43
54
|
relayNode?: RelayNodeOptions;
|
|
44
55
|
}): MeshConfig;
|
|
56
|
+
export declare function buildNetworkEntryConfig(options: NetworkEntryOptions): MeshConfig;
|
|
57
|
+
export declare function buildPublicRelayNodeConfig(options: PublicRelayNodeOptions): MeshConfig;
|
|
45
58
|
export declare function applyDefaultMeshConfig(config: MeshConfig | undefined): MeshConfig;
|
|
46
59
|
export declare function applyPluginConfig(config: OpenClawConfigLike, pluginConfig: MeshConfig): OpenClawConfigLike;
|
|
47
60
|
export declare function applyAnnounceLogDetail(config: OpenClawConfigLike, announceLogDetail: AnnounceLogDetail): OpenClawConfigLike;
|
package/dist/src/setup-config.js
CHANGED
|
@@ -16,12 +16,6 @@ export function buildNetworkConfig(mode, options) {
|
|
|
16
16
|
discovery: "mdns",
|
|
17
17
|
deliveryAckTimeoutMs: DEFAULT_DELIVERY_ACK_TIMEOUT_MS,
|
|
18
18
|
};
|
|
19
|
-
case "tools-only":
|
|
20
|
-
return {
|
|
21
|
-
discovery: "mdns",
|
|
22
|
-
inboundTargets: [],
|
|
23
|
-
deliveryAckTimeoutMs: DEFAULT_DELIVERY_ACK_TIMEOUT_MS,
|
|
24
|
-
};
|
|
25
19
|
case "cross-network": {
|
|
26
20
|
const relayList = options?.crossNetwork?.relayList;
|
|
27
21
|
return {
|
|
@@ -43,6 +37,27 @@ export function buildNetworkConfig(mode, options) {
|
|
|
43
37
|
};
|
|
44
38
|
}
|
|
45
39
|
}
|
|
40
|
+
export function buildNetworkEntryConfig(options) {
|
|
41
|
+
return {
|
|
42
|
+
...(options.bootstrapList.length > 0 ? { bootstrapList: [...options.bootstrapList] } : {}),
|
|
43
|
+
...(options.relayList.length > 0 ? { relayList: [...options.relayList] } : {}),
|
|
44
|
+
deliveryAckTimeoutMs: DEFAULT_DELIVERY_ACK_TIMEOUT_MS,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
export function buildPublicRelayNodeConfig(options) {
|
|
48
|
+
if (!options.enabled) {
|
|
49
|
+
return {
|
|
50
|
+
enableCircuitRelayServer: false,
|
|
51
|
+
deliveryAckTimeoutMs: DEFAULT_DELIVERY_ACK_TIMEOUT_MS,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
return {
|
|
55
|
+
listenAddrs: [...options.listenAddrs],
|
|
56
|
+
...(options.announceAddrs.length > 0 ? { announceAddrs: [...options.announceAddrs] } : {}),
|
|
57
|
+
enableCircuitRelayServer: true,
|
|
58
|
+
deliveryAckTimeoutMs: DEFAULT_DELIVERY_ACK_TIMEOUT_MS,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
46
61
|
export function applyDefaultMeshConfig(config) {
|
|
47
62
|
const base = config && typeof config === "object" && !Array.isArray(config)
|
|
48
63
|
? config
|
|
@@ -108,14 +123,17 @@ export function listConfiguredChannels(config) {
|
|
|
108
123
|
export function planInboundTargetSync(existingTargets, configuredChannels) {
|
|
109
124
|
const targets = [];
|
|
110
125
|
const missingChannels = [];
|
|
111
|
-
const
|
|
126
|
+
const seenTargetKeys = new Set();
|
|
127
|
+
const coveredChannels = new Set();
|
|
112
128
|
for (const target of existingTargets) {
|
|
113
129
|
const channel = typeof target.channel === "string" ? target.channel.trim() : "";
|
|
114
130
|
const inboundTarget = typeof target.target === "string" ? target.target.trim() : "";
|
|
115
|
-
|
|
131
|
+
const targetKey = `${channel}\u0000${inboundTarget}`;
|
|
132
|
+
if (!channel || !inboundTarget || seenTargetKeys.has(targetKey)) {
|
|
116
133
|
continue;
|
|
117
134
|
}
|
|
118
|
-
|
|
135
|
+
seenTargetKeys.add(targetKey);
|
|
136
|
+
coveredChannels.add(channel);
|
|
119
137
|
targets.push({
|
|
120
138
|
...target,
|
|
121
139
|
channel,
|
|
@@ -124,10 +142,10 @@ export function planInboundTargetSync(existingTargets, configuredChannels) {
|
|
|
124
142
|
}
|
|
125
143
|
for (const configuredChannel of configuredChannels) {
|
|
126
144
|
const channel = typeof configuredChannel === "string" ? configuredChannel.trim() : "";
|
|
127
|
-
if (!channel || channel === LIBP2P_MESH_PLUGIN_ID ||
|
|
145
|
+
if (!channel || channel === LIBP2P_MESH_PLUGIN_ID || coveredChannels.has(channel)) {
|
|
128
146
|
continue;
|
|
129
147
|
}
|
|
130
|
-
|
|
148
|
+
coveredChannels.add(channel);
|
|
131
149
|
missingChannels.push(channel);
|
|
132
150
|
}
|
|
133
151
|
return { targets, missingChannels };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-config.js","sourceRoot":"","sources":["../../src/setup-config.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAAC;AACnD,MAAM,CAAC,MAAM,+BAA+B,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"setup-config.js","sourceRoot":"","sources":["../../src/setup-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { type OpenClawConfigLike } from "./setup-config.js";
|
|
|
3
3
|
export declare class SetupCancelledError extends Error {
|
|
4
4
|
constructor();
|
|
5
5
|
}
|
|
6
|
-
export type SetupPromptChoice = "continue" | "cancel" | "
|
|
6
|
+
export type SetupPromptChoice = "continue" | "cancel" | "add-targets" | "sync-from-channels" | "disable-inbound" | "skip-inbound" | "network-entry-addresses" | "public-relay-node" | "inbound-targets" | "convert-legacy-inbound" | "keep-legacy-inbound" | "replace-legacy-inbound" | "add-target" | "edit-target" | "remove-target" | "finish-targets";
|
|
7
7
|
export type SetupPrompter = {
|
|
8
8
|
confirm(message: string, defaultValue?: boolean): Promise<boolean>;
|
|
9
9
|
select<T extends string>(message: string, choices: Array<{
|