@clawcrony/claw-crony 1.2.2 → 1.2.3
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 +78 -78
- package/dist/index.js +1 -1
- package/openclaw.plugin.json +7 -7
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
# Claw Crony
|
|
2
|
-
|
|
3
|
-
OpenClaw A2A v0.3.0 Gateway
|
|
4
|
-
|
|
5
|
-
[](LICENSE)
|
|
6
|
-
[](https://github.com/google/A2A)
|
|
7
|
-
|
|
8
|
-
## Key Features
|
|
9
|
-
|
|
10
|
-
- **A2A Protocol v0.3.0**
|
|
11
|
-
- **Hub Matchmaking**
|
|
12
|
-
- **Smart Routing**
|
|
13
|
-
- **Secure Auth**
|
|
14
|
-
- **Resilience**
|
|
15
|
-
- **File Transfer**
|
|
16
|
-
- **Observability**
|
|
17
|
-
|
|
1
|
+
# Claw Crony
|
|
2
|
+
|
|
3
|
+
OpenClaw A2A v0.3.0 Gateway - Auto-discovery and secure communication between OpenClaw Agents on different servers.
|
|
4
|
+
|
|
5
|
+
[](LICENSE)
|
|
6
|
+
[](https://github.com/google/A2A)
|
|
7
|
+
|
|
8
|
+
## Key Features
|
|
9
|
+
|
|
10
|
+
- **A2A Protocol v0.3.0** - JSON-RPC / REST / gRPC with automatic fallback
|
|
11
|
+
- **Hub Matchmaking** - Auto-match peer Agents by skills with token exchange
|
|
12
|
+
- **Smart Routing** - Auto-select targets by message patterns, tags, or peer skills
|
|
13
|
+
- **Secure Auth** - Bearer Token + zero-downtime multi-token rotation
|
|
14
|
+
- **Resilience** - Health checks + exponential backoff + circuit breaker
|
|
15
|
+
- **File Transfer** - URI / base64 / MIME whitelist + SSRF protection
|
|
16
|
+
- **Observability** - JSONL audit logs + Telemetry metrics endpoint
|
|
17
|
+
|
|
18
18
|
## Hub Server
|
|
19
19
|
|
|
20
|
-
Default Hub: `https://www.
|
|
20
|
+
Default Hub: `https://www.clawcrony.com`
|
|
21
21
|
|
|
22
22
|
After installation, the plugin auto-registers with the Hub (requires `registrationEnabled: true`). Once registered, use the `a2a_match_request` tool to send a matchmaking request, and the Hub will return a matched peer Agent address together with the tokens needed for the current session.
|
|
23
23
|
|
|
@@ -30,66 +30,66 @@ After the user signs in to the Hub web dashboard, they can currently see:
|
|
|
30
30
|
- Whether requester/provider tokens have already been submitted for the match
|
|
31
31
|
|
|
32
32
|
A2A service port: **18800** (default)
|
|
33
|
-
|
|
34
|
-
## Installation
|
|
35
|
-
|
|
36
|
-
### Via npm (Recommended)
|
|
37
|
-
|
|
38
|
-
```bash
|
|
39
|
-
npm install @clawcrony/claw-crony
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
### Via Git Clone
|
|
43
|
-
|
|
44
|
-
```bash
|
|
45
|
-
git clone https://github.com/ccccl8/claw-crony.git
|
|
46
|
-
cd claw-crony
|
|
47
|
-
npm install
|
|
48
|
-
openclaw plugins install .
|
|
49
|
-
openclaw gateway restart
|
|
50
|
-
|
|
51
|
-
# Verify
|
|
52
|
-
curl -s http://localhost:18800/.well-known/agent-card.json
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
## Adding a Peer
|
|
56
|
-
|
|
57
|
-
```bash
|
|
58
|
-
openclaw config set plugins.entries.claw-crony.config.peers '[{
|
|
59
|
-
"name": "Peer Name",
|
|
60
|
-
"agentCardUrl": "http://<peerIP>:18800/.well-known/agent-card.json",
|
|
61
|
-
"auth": { "type": "bearer", "token": "<peerToken>" }
|
|
62
|
-
}]'
|
|
63
|
-
openclaw gateway restart
|
|
64
|
-
```
|
|
65
|
-
|
|
33
|
+
|
|
34
|
+
## Installation
|
|
35
|
+
|
|
36
|
+
### Via npm (Recommended)
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
npm install @clawcrony/claw-crony
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### Via Git Clone
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
git clone https://github.com/ccccl8/claw-crony.git
|
|
46
|
+
cd claw-crony
|
|
47
|
+
npm install
|
|
48
|
+
openclaw plugins install .
|
|
49
|
+
openclaw gateway restart
|
|
50
|
+
|
|
51
|
+
# Verify
|
|
52
|
+
curl -s http://localhost:18800/.well-known/agent-card.json
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Adding a Peer
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
openclaw config set plugins.entries.claw-crony.config.peers '[{
|
|
59
|
+
"name": "Peer Name",
|
|
60
|
+
"agentCardUrl": "http://<peerIP>:18800/.well-known/agent-card.json",
|
|
61
|
+
"auth": { "type": "bearer", "token": "<peerToken>" }
|
|
62
|
+
}]'
|
|
63
|
+
openclaw gateway restart
|
|
64
|
+
```
|
|
65
|
+
|
|
66
66
|
## Hub Matchmaking (a2a_match_request)
|
|
67
67
|
|
|
68
68
|
Send a matchmaking request to the Hub, which automatically finds registered Agents with the required skills:
|
|
69
|
-
|
|
70
|
-
```bash
|
|
71
|
-
# Agent calls a2a_match_request tool with params:
|
|
72
|
-
# { skills: ["chat"], description?: "optional description" }
|
|
73
|
-
#
|
|
74
|
-
# Returns: provider address + yourToken + peerToken
|
|
75
|
-
# Both sides configure each other as peers using the returned tokens to communicate
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
For detailed configuration steps, see [CONFIG.md](CONFIG.md).
|
|
79
|
-
|
|
80
|
-
## Endpoints
|
|
81
|
-
|
|
82
|
-
| Endpoint | Method | Description |
|
|
83
|
-
|----------|--------|-------------|
|
|
84
|
-
| `/.well-known/agent-card.json` | GET | Agent Card (discovery) |
|
|
85
|
-
| `/a2a/jsonrpc` | POST | A2A JSON-RPC |
|
|
86
|
-
| `/a2a/rest` | POST | A2A REST transport |
|
|
87
|
-
| `/a2a/metrics` | GET | Telemetry snapshot (when enabled) |
|
|
88
|
-
|
|
89
|
-
## License
|
|
90
|
-
|
|
91
|
-
MIT License
|
|
92
|
-
|
|
93
|
-
## Acknowledgments
|
|
94
|
-
|
|
95
|
-
This project is based on [win4r/openclaw-a2a-gateway](https://github.com/win4r/openclaw-a2a-gateway), MIT License.
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
# Agent calls a2a_match_request tool with params:
|
|
72
|
+
# { skills: ["chat"], description?: "optional description" }
|
|
73
|
+
#
|
|
74
|
+
# Returns: provider address + yourToken + peerToken
|
|
75
|
+
# Both sides configure each other as peers using the returned tokens to communicate
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
For detailed configuration steps, see [CONFIG.md](CONFIG.md).
|
|
79
|
+
|
|
80
|
+
## Endpoints
|
|
81
|
+
|
|
82
|
+
| Endpoint | Method | Description |
|
|
83
|
+
|----------|--------|-------------|
|
|
84
|
+
| `/.well-known/agent-card.json` | GET | Agent Card (discovery) |
|
|
85
|
+
| `/a2a/jsonrpc` | POST | A2A JSON-RPC |
|
|
86
|
+
| `/a2a/rest` | POST | A2A REST transport |
|
|
87
|
+
| `/a2a/metrics` | GET | Telemetry snapshot (when enabled) |
|
|
88
|
+
|
|
89
|
+
## License
|
|
90
|
+
|
|
91
|
+
MIT License
|
|
92
|
+
|
|
93
|
+
## Acknowledgments
|
|
94
|
+
|
|
95
|
+
This project is based on [win4r/openclaw-a2a-gateway](https://github.com/win4r/openclaw-a2a-gateway), MIT License.
|
package/dist/index.js
CHANGED
|
@@ -204,7 +204,7 @@ export function parseConfig(raw, resolvePath) {
|
|
|
204
204
|
},
|
|
205
205
|
},
|
|
206
206
|
hub: {
|
|
207
|
-
url: asString(hub.url, "https://www.
|
|
207
|
+
url: asString(hub.url, "https://www.clawcrony.com"),
|
|
208
208
|
enabled: asBoolean(hub.enabled, true),
|
|
209
209
|
registrationEnabled: asBoolean(hub.registrationEnabled, true),
|
|
210
210
|
},
|
package/openclaw.plugin.json
CHANGED
|
@@ -2,18 +2,18 @@
|
|
|
2
2
|
"id": "claw-crony",
|
|
3
3
|
"name": "Claw Crony",
|
|
4
4
|
"description": "OpenClaw A2A v0.3.0 gateway with Agent Card, JSON-RPC, REST, routing rules, transport fallback, and Hub matchmaking",
|
|
5
|
-
"version": "1.
|
|
5
|
+
"version": "1.2.3",
|
|
6
6
|
"defaultConfig": {
|
|
7
7
|
"agentCard": {
|
|
8
8
|
"name": "OpenClaw A2A Gateway",
|
|
9
9
|
"description": "A2A bridge for OpenClaw agents",
|
|
10
10
|
"skills": [{ "id": "chat", "name": "chat", "description": "Chat bridge" }]
|
|
11
|
-
},
|
|
12
|
-
"hub": {
|
|
13
|
-
"url": "https://www.
|
|
14
|
-
"enabled": true,
|
|
15
|
-
"registrationEnabled": true
|
|
16
|
-
}
|
|
11
|
+
},
|
|
12
|
+
"hub": {
|
|
13
|
+
"url": "https://www.clawcrony.com",
|
|
14
|
+
"enabled": true,
|
|
15
|
+
"registrationEnabled": true
|
|
16
|
+
}
|
|
17
17
|
},
|
|
18
18
|
"configSchema": {
|
|
19
19
|
"type": "object",
|