agentbnb 9.1.1 → 9.2.0
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/dist/{card-UF465O7O.js → card-VVXNKHDX.js} +2 -2
- package/dist/{chunk-RVOZHVM7.js → chunk-53Q2HHHH.js} +6 -6
- package/dist/{chunk-5CC6O6SO.js → chunk-AA25Z6FW.js} +1 -1
- package/dist/{chunk-Y7CO3VLF.js → chunk-B6AKTLXB.js} +2 -2
- package/dist/{chunk-2HH2F3DM.js → chunk-CMGJ52SX.js} +54 -1
- package/dist/{chunk-I4E5ERDN.js → chunk-EC6DIVE5.js} +1 -1
- package/dist/{chunk-O44N3KR7.js → chunk-FK54LVDR.js} +2 -2
- package/dist/{chunk-AMABG5SI.js → chunk-GGRH5PCD.js} +7 -7
- package/dist/{chunk-W6LOCBWQ.js → chunk-IWAK4WHK.js} +1 -1
- package/dist/{chunk-ZYOMPJGG.js → chunk-KKFP5Y2Z.js} +2 -2
- package/dist/{chunk-F2CIPAN2.js → chunk-MQIT2F5V.js} +1 -1
- package/dist/{chunk-AW4VSROG.js → chunk-RNALIVRR.js} +1 -1
- package/dist/{chunk-G4TF4LB4.js → chunk-UPWAXWY2.js} +1 -1
- package/dist/{chunk-WARYO57F.js → chunk-V5TJXK3F.js} +3 -3
- package/dist/{chunk-TCA63C42.js → chunk-WEZ7PSOE.js} +9 -9
- package/dist/{chunk-LENX5NUW.js → chunk-Z7XWQ63B.js} +55 -2
- package/dist/cli/index.js +45 -45
- package/dist/{client-XOSXFC7Q.js → client-KL67WZVJ.js} +2 -2
- package/dist/{conduct-MALC6HEK.js → conduct-JRLLA4PB.js} +10 -10
- package/dist/{conduct-UT6ZYSJD.js → conduct-QLWXU2ZU.js} +10 -10
- package/dist/{conductor-mode-UJKMO2GW.js → conductor-mode-66IITI4I.js} +3 -3
- package/dist/{conductor-mode-3WLLERB4.js → conductor-mode-PFO2VLH6.js} +9 -9
- package/dist/{credits-action-KOUJNR36.js → credits-action-XERUEDF3.js} +4 -4
- package/dist/{did-action-UHUYMA4Y.js → did-action-ODWTBVXL.js} +2 -2
- package/dist/{execute-UFMGTXET.js → execute-NOQVN7ZG.js} +9 -9
- package/dist/{execute-3RADNI74.js → execute-YBNCDAOX.js} +2 -2
- package/dist/{openclaw-setup-HEWZZOY7.js → openclaw-setup-4RIZRMXA.js} +11 -11
- package/dist/{openclaw-skills-5XLQFRWT.js → openclaw-skills-TQ2JVBRM.js} +2 -2
- package/dist/{publish-capability-LM4RSQXX.js → publish-capability-2FMD3K6Z.js} +3 -3
- package/dist/{request-LID2N42Y.js → request-EYN4CVXC.js} +8 -8
- package/dist/{serve-skill-CDNSHTEE.js → serve-skill-NWERGVH5.js} +9 -9
- package/dist/{server-QIAO3YSK.js → server-UPOPLZ24.js} +10 -10
- package/dist/{service-coordinator-FB44QL7L.js → service-coordinator-ZOZTW2U6.js} +233 -35
- package/dist/{session-action-GYITLYOE.js → session-action-OSBZB4TX.js} +2 -2
- package/dist/signing-AQTKYJDB.js +16 -0
- package/dist/skills/agentbnb/bootstrap.js +221 -23
- package/dist/{store-C4DLIXYM.js → store-74EWU77V.js} +2 -2
- package/dist/{vc-action-BWGNQ77Y.js → vc-action-A6VBKERF.js} +2 -2
- package/package.json +1 -1
- package/dist/{chunk-YNBZLXYS.js → chunk-65GNX2KC.js} +0 -0
- package/dist/{chunk-7VZ4M4CT.js → chunk-C56X7EFJ.js} +3 -3
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
attachCanonicalAgentId
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-C56X7EFJ.js";
|
|
4
|
+
import "./chunk-GZUTU6IZ.js";
|
|
4
5
|
import "./chunk-J4RFJVXI.js";
|
|
5
6
|
import {
|
|
6
7
|
CapabilityCardV2Schema
|
|
7
8
|
} from "./chunk-UVCNMRPS.js";
|
|
8
9
|
import "./chunk-4XTYT4JW.js";
|
|
9
|
-
import "./chunk-GZUTU6IZ.js";
|
|
10
10
|
import "./chunk-3RG5ZIWI.js";
|
|
11
11
|
|
|
12
12
|
// src/conductor/card.ts
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
syncCreditsFromRegistry
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-KKFP5Y2Z.js";
|
|
4
4
|
import {
|
|
5
5
|
resolveTargetCapability
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-FK54LVDR.js";
|
|
7
7
|
import {
|
|
8
8
|
getBalance,
|
|
9
9
|
holdEscrow,
|
|
@@ -13,7 +13,10 @@ import {
|
|
|
13
13
|
import {
|
|
14
14
|
getCard,
|
|
15
15
|
updateReputation
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-C56X7EFJ.js";
|
|
17
|
+
import {
|
|
18
|
+
emitProviderEvent
|
|
19
|
+
} from "./chunk-GZUTU6IZ.js";
|
|
17
20
|
import {
|
|
18
21
|
AgentBnBError
|
|
19
22
|
} from "./chunk-UVCNMRPS.js";
|
|
@@ -23,9 +26,6 @@ import {
|
|
|
23
26
|
import {
|
|
24
27
|
insertRequestLog
|
|
25
28
|
} from "./chunk-4XTYT4JW.js";
|
|
26
|
-
import {
|
|
27
|
-
emitProviderEvent
|
|
28
|
-
} from "./chunk-GZUTU6IZ.js";
|
|
29
29
|
|
|
30
30
|
// src/gateway/execute.ts
|
|
31
31
|
import { randomUUID } from "crypto";
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
decompose,
|
|
5
5
|
matchSubTasks,
|
|
6
6
|
orchestrate
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-V5TJXK3F.js";
|
|
8
8
|
import {
|
|
9
9
|
BudgetManager
|
|
10
10
|
} from "./chunk-QG2LLVXP.js";
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
import {
|
|
15
15
|
listCards,
|
|
16
16
|
openDatabase
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-C56X7EFJ.js";
|
|
18
18
|
import {
|
|
19
19
|
RelayClient
|
|
20
20
|
} from "./chunk-UPNREF4L.js";
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
saveKeyPair,
|
|
32
32
|
signEscrowReceipt,
|
|
33
33
|
verifyEscrowReceipt
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-65GNX2KC.js";
|
|
35
35
|
import {
|
|
36
36
|
AgentBnBError
|
|
37
37
|
} from "./chunk-UVCNMRPS.js";
|
|
@@ -391,6 +391,58 @@ function signRequest(method, path, body, privateKey, publicKeyHex, agentIdOverri
|
|
|
391
391
|
"X-Agent-Timestamp": timestamp
|
|
392
392
|
};
|
|
393
393
|
}
|
|
394
|
+
async function tryVerifyIdentity(request, options = {}) {
|
|
395
|
+
const agentIdHeader = request.headers["x-agent-id"];
|
|
396
|
+
const publicKeyHeader = request.headers["x-agent-publickey"];
|
|
397
|
+
const signatureHeader = request.headers["x-agent-signature"];
|
|
398
|
+
const timestampHeader = request.headers["x-agent-timestamp"];
|
|
399
|
+
const agentId = agentIdHeader?.trim();
|
|
400
|
+
const publicKeyHex = publicKeyHeader?.trim();
|
|
401
|
+
const signature = signatureHeader?.trim();
|
|
402
|
+
const timestamp = timestampHeader?.trim();
|
|
403
|
+
if (!agentId || !publicKeyHex || !signature || !timestamp) {
|
|
404
|
+
return { valid: false, reason: "missing_headers" };
|
|
405
|
+
}
|
|
406
|
+
const requestTime = new Date(timestamp).getTime();
|
|
407
|
+
if (isNaN(requestTime) || Math.abs(Date.now() - requestTime) > MAX_REQUEST_AGE_MS) {
|
|
408
|
+
return { valid: false, reason: "expired" };
|
|
409
|
+
}
|
|
410
|
+
if (!/^[0-9a-fA-F]+$/.test(publicKeyHex) || publicKeyHex.length % 2 !== 0) {
|
|
411
|
+
return { valid: false, reason: "invalid_key" };
|
|
412
|
+
}
|
|
413
|
+
let expectedAgentId;
|
|
414
|
+
try {
|
|
415
|
+
expectedAgentId = deriveAgentId(publicKeyHex);
|
|
416
|
+
} catch {
|
|
417
|
+
return { valid: false, reason: "invalid_key" };
|
|
418
|
+
}
|
|
419
|
+
if (agentId !== expectedAgentId) {
|
|
420
|
+
return { valid: false, reason: "agent_id_mismatch" };
|
|
421
|
+
}
|
|
422
|
+
let publicKeyBuffer;
|
|
423
|
+
try {
|
|
424
|
+
publicKeyBuffer = Buffer.from(publicKeyHex, "hex");
|
|
425
|
+
} catch {
|
|
426
|
+
return { valid: false, reason: "invalid_key" };
|
|
427
|
+
}
|
|
428
|
+
const knownAgent = options.agentDb ? lookupAgent(options.agentDb, agentId) : null;
|
|
429
|
+
if (knownAgent && knownAgent.public_key.toLowerCase() !== publicKeyHex.toLowerCase()) {
|
|
430
|
+
return { valid: false, reason: "key_drift" };
|
|
431
|
+
}
|
|
432
|
+
const payload = buildIdentityPayload(
|
|
433
|
+
request.method,
|
|
434
|
+
request.url,
|
|
435
|
+
timestamp,
|
|
436
|
+
publicKeyHex,
|
|
437
|
+
agentId,
|
|
438
|
+
request.body
|
|
439
|
+
);
|
|
440
|
+
const valid = verifyEscrowReceipt(payload, signature, publicKeyBuffer);
|
|
441
|
+
if (!valid) {
|
|
442
|
+
return { valid: false, reason: "invalid_signature" };
|
|
443
|
+
}
|
|
444
|
+
return { valid: true, agentId, publicKey: publicKeyHex };
|
|
445
|
+
}
|
|
394
446
|
|
|
395
447
|
// src/credit/registry-credit-ledger.ts
|
|
396
448
|
var HTTP_TIMEOUT_MS = 1e4;
|
|
@@ -1208,6 +1260,7 @@ export {
|
|
|
1208
1260
|
loadOrRepairIdentity,
|
|
1209
1261
|
ensureIdentity,
|
|
1210
1262
|
identityAuthPlugin,
|
|
1263
|
+
tryVerifyIdentity,
|
|
1211
1264
|
createLedger,
|
|
1212
1265
|
syncCreditsFromRegistry,
|
|
1213
1266
|
notifyProviderEvent,
|
|
@@ -3,10 +3,10 @@ import {
|
|
|
3
3
|
} from "./chunk-ELFGYC22.js";
|
|
4
4
|
import {
|
|
5
5
|
searchCards
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-EC6DIVE5.js";
|
|
7
7
|
import {
|
|
8
8
|
getCard
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-C56X7EFJ.js";
|
|
10
10
|
import {
|
|
11
11
|
resolveCanonicalIdentity
|
|
12
12
|
} from "./chunk-J4RFJVXI.js";
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createPendingRequest
|
|
3
3
|
} from "./chunk-5PV5YCSN.js";
|
|
4
|
-
import {
|
|
5
|
-
getAutonomyTier,
|
|
6
|
-
insertAuditEvent
|
|
7
|
-
} from "./chunk-G5WKW3ED.js";
|
|
8
4
|
import {
|
|
9
5
|
resolveTargetCapability
|
|
10
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-FK54LVDR.js";
|
|
11
7
|
import {
|
|
12
8
|
fetchRemoteCards
|
|
13
9
|
} from "./chunk-ELFGYC22.js";
|
|
10
|
+
import {
|
|
11
|
+
getAutonomyTier,
|
|
12
|
+
insertAuditEvent
|
|
13
|
+
} from "./chunk-G5WKW3ED.js";
|
|
14
14
|
import {
|
|
15
15
|
searchCards
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-EC6DIVE5.js";
|
|
17
17
|
import {
|
|
18
18
|
holdEscrow,
|
|
19
19
|
releaseEscrow,
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
import {
|
|
26
26
|
requestCapability,
|
|
27
27
|
requestViaRelay
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-IWAK4WHK.js";
|
|
29
29
|
import {
|
|
30
30
|
resolveCanonicalIdentity
|
|
31
31
|
} from "./chunk-J4RFJVXI.js";
|
|
@@ -3,20 +3,20 @@ import {
|
|
|
3
3
|
} from "./chunk-3MJT4PZG.js";
|
|
4
4
|
import {
|
|
5
5
|
scorePeers
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-GGRH5PCD.js";
|
|
7
7
|
import {
|
|
8
8
|
fetchRemoteCards
|
|
9
9
|
} from "./chunk-ELFGYC22.js";
|
|
10
10
|
import {
|
|
11
11
|
searchCards
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-EC6DIVE5.js";
|
|
13
13
|
import {
|
|
14
14
|
loadCoreConfig
|
|
15
15
|
} from "./chunk-QXRNW4OJ.js";
|
|
16
16
|
import {
|
|
17
17
|
requestCapability,
|
|
18
18
|
requestCapabilityBatch
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-IWAK4WHK.js";
|
|
20
20
|
|
|
21
21
|
// src/conductor/decomposition-validator.ts
|
|
22
22
|
function validateAndNormalizeSubtasks(raw, context) {
|
|
@@ -3,22 +3,22 @@ import {
|
|
|
3
3
|
buildDraftCard,
|
|
4
4
|
detectApiKeys,
|
|
5
5
|
detectOpenPorts
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-UPWAXWY2.js";
|
|
7
|
+
import {
|
|
8
|
+
createLedger
|
|
9
|
+
} from "./chunk-Z7XWQ63B.js";
|
|
10
|
+
import {
|
|
11
|
+
loadOrRepairIdentity
|
|
12
|
+
} from "./chunk-AA25Z6FW.js";
|
|
7
13
|
import {
|
|
8
14
|
parseSoulMd
|
|
9
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-RNALIVRR.js";
|
|
10
16
|
import {
|
|
11
17
|
DEFAULT_BUDGET_CONFIG
|
|
12
18
|
} from "./chunk-QG2LLVXP.js";
|
|
13
19
|
import {
|
|
14
20
|
DEFAULT_AUTONOMY_CONFIG
|
|
15
21
|
} from "./chunk-G5WKW3ED.js";
|
|
16
|
-
import {
|
|
17
|
-
createLedger
|
|
18
|
-
} from "./chunk-LENX5NUW.js";
|
|
19
|
-
import {
|
|
20
|
-
loadOrRepairIdentity
|
|
21
|
-
} from "./chunk-5CC6O6SO.js";
|
|
22
22
|
import {
|
|
23
23
|
bootstrapAgent,
|
|
24
24
|
getBalance,
|
|
@@ -30,7 +30,7 @@ import {
|
|
|
30
30
|
insertCard,
|
|
31
31
|
listCards,
|
|
32
32
|
openDatabase
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-C56X7EFJ.js";
|
|
34
34
|
import {
|
|
35
35
|
createAgentRecord,
|
|
36
36
|
lookupAgent,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
deriveAgentId
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-AA25Z6FW.js";
|
|
4
4
|
import {
|
|
5
5
|
bootstrapAgent,
|
|
6
6
|
getBalance,
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
import {
|
|
15
15
|
signEscrowReceipt,
|
|
16
16
|
verifyEscrowReceipt
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-65GNX2KC.js";
|
|
18
18
|
import {
|
|
19
19
|
lookupAgent
|
|
20
20
|
} from "./chunk-J4RFJVXI.js";
|
|
@@ -230,6 +230,58 @@ function signRequest(method, path, body, privateKey, publicKeyHex, agentIdOverri
|
|
|
230
230
|
"X-Agent-Timestamp": timestamp
|
|
231
231
|
};
|
|
232
232
|
}
|
|
233
|
+
async function tryVerifyIdentity(request, options = {}) {
|
|
234
|
+
const agentIdHeader = request.headers["x-agent-id"];
|
|
235
|
+
const publicKeyHeader = request.headers["x-agent-publickey"];
|
|
236
|
+
const signatureHeader = request.headers["x-agent-signature"];
|
|
237
|
+
const timestampHeader = request.headers["x-agent-timestamp"];
|
|
238
|
+
const agentId = agentIdHeader?.trim();
|
|
239
|
+
const publicKeyHex = publicKeyHeader?.trim();
|
|
240
|
+
const signature = signatureHeader?.trim();
|
|
241
|
+
const timestamp = timestampHeader?.trim();
|
|
242
|
+
if (!agentId || !publicKeyHex || !signature || !timestamp) {
|
|
243
|
+
return { valid: false, reason: "missing_headers" };
|
|
244
|
+
}
|
|
245
|
+
const requestTime = new Date(timestamp).getTime();
|
|
246
|
+
if (isNaN(requestTime) || Math.abs(Date.now() - requestTime) > MAX_REQUEST_AGE_MS) {
|
|
247
|
+
return { valid: false, reason: "expired" };
|
|
248
|
+
}
|
|
249
|
+
if (!/^[0-9a-fA-F]+$/.test(publicKeyHex) || publicKeyHex.length % 2 !== 0) {
|
|
250
|
+
return { valid: false, reason: "invalid_key" };
|
|
251
|
+
}
|
|
252
|
+
let expectedAgentId;
|
|
253
|
+
try {
|
|
254
|
+
expectedAgentId = deriveAgentId(publicKeyHex);
|
|
255
|
+
} catch {
|
|
256
|
+
return { valid: false, reason: "invalid_key" };
|
|
257
|
+
}
|
|
258
|
+
if (agentId !== expectedAgentId) {
|
|
259
|
+
return { valid: false, reason: "agent_id_mismatch" };
|
|
260
|
+
}
|
|
261
|
+
let publicKeyBuffer;
|
|
262
|
+
try {
|
|
263
|
+
publicKeyBuffer = Buffer.from(publicKeyHex, "hex");
|
|
264
|
+
} catch {
|
|
265
|
+
return { valid: false, reason: "invalid_key" };
|
|
266
|
+
}
|
|
267
|
+
const knownAgent = options.agentDb ? lookupAgent(options.agentDb, agentId) : null;
|
|
268
|
+
if (knownAgent && knownAgent.public_key.toLowerCase() !== publicKeyHex.toLowerCase()) {
|
|
269
|
+
return { valid: false, reason: "key_drift" };
|
|
270
|
+
}
|
|
271
|
+
const payload = buildIdentityPayload(
|
|
272
|
+
request.method,
|
|
273
|
+
request.url,
|
|
274
|
+
timestamp,
|
|
275
|
+
publicKeyHex,
|
|
276
|
+
agentId,
|
|
277
|
+
request.body
|
|
278
|
+
);
|
|
279
|
+
const valid = verifyEscrowReceipt(payload, signature, publicKeyBuffer);
|
|
280
|
+
if (!valid) {
|
|
281
|
+
return { valid: false, reason: "invalid_signature" };
|
|
282
|
+
}
|
|
283
|
+
return { valid: true, agentId, publicKey: publicKeyHex };
|
|
284
|
+
}
|
|
233
285
|
|
|
234
286
|
// src/credit/registry-credit-ledger.ts
|
|
235
287
|
var HTTP_TIMEOUT_MS = 1e4;
|
|
@@ -453,5 +505,6 @@ function createLedger(opts) {
|
|
|
453
505
|
|
|
454
506
|
export {
|
|
455
507
|
identityAuthPlugin,
|
|
508
|
+
tryVerifyIdentity,
|
|
456
509
|
createLedger
|
|
457
510
|
};
|
package/dist/cli/index.js
CHANGED
|
@@ -2,6 +2,9 @@
|
|
|
2
2
|
import {
|
|
3
3
|
discoverLocalAgents
|
|
4
4
|
} from "../chunk-TA73FIZU.js";
|
|
5
|
+
import {
|
|
6
|
+
syncCreditsFromRegistry
|
|
7
|
+
} from "../chunk-KKFP5Y2Z.js";
|
|
5
8
|
import {
|
|
6
9
|
resolveSelfCli
|
|
7
10
|
} from "../chunk-7S4ZLFVI.js";
|
|
@@ -11,17 +14,28 @@ import {
|
|
|
11
14
|
injectHeartbeatSection,
|
|
12
15
|
performInit,
|
|
13
16
|
publishFromSoulV2
|
|
14
|
-
} from "../chunk-
|
|
17
|
+
} from "../chunk-WEZ7PSOE.js";
|
|
15
18
|
import {
|
|
16
19
|
getPricingStats
|
|
17
|
-
} from "../chunk-
|
|
18
|
-
import
|
|
20
|
+
} from "../chunk-UPWAXWY2.js";
|
|
21
|
+
import {
|
|
22
|
+
createLedger
|
|
23
|
+
} from "../chunk-Z7XWQ63B.js";
|
|
24
|
+
import {
|
|
25
|
+
ensureIdentity
|
|
26
|
+
} from "../chunk-AA25Z6FW.js";
|
|
27
|
+
import "../chunk-RNALIVRR.js";
|
|
19
28
|
import "../chunk-RJNKX347.js";
|
|
20
29
|
import {
|
|
21
30
|
AutoRequestor,
|
|
22
31
|
requestViaTemporaryRelay
|
|
23
|
-
} from "../chunk-
|
|
32
|
+
} from "../chunk-GGRH5PCD.js";
|
|
24
33
|
import "../chunk-5PV5YCSN.js";
|
|
34
|
+
import "../chunk-FK54LVDR.js";
|
|
35
|
+
import {
|
|
36
|
+
fetchRemoteCards,
|
|
37
|
+
mergeResults
|
|
38
|
+
} from "../chunk-ELFGYC22.js";
|
|
25
39
|
import {
|
|
26
40
|
BudgetManager,
|
|
27
41
|
DEFAULT_BUDGET_CONFIG
|
|
@@ -29,24 +43,10 @@ import {
|
|
|
29
43
|
import {
|
|
30
44
|
DEFAULT_AUTONOMY_CONFIG
|
|
31
45
|
} from "../chunk-G5WKW3ED.js";
|
|
32
|
-
import {
|
|
33
|
-
syncCreditsFromRegistry
|
|
34
|
-
} from "../chunk-ZYOMPJGG.js";
|
|
35
|
-
import {
|
|
36
|
-
createLedger
|
|
37
|
-
} from "../chunk-LENX5NUW.js";
|
|
38
|
-
import {
|
|
39
|
-
ensureIdentity
|
|
40
|
-
} from "../chunk-5CC6O6SO.js";
|
|
41
|
-
import "../chunk-O44N3KR7.js";
|
|
42
|
-
import {
|
|
43
|
-
fetchRemoteCards,
|
|
44
|
-
mergeResults
|
|
45
|
-
} from "../chunk-ELFGYC22.js";
|
|
46
46
|
import {
|
|
47
47
|
filterCards,
|
|
48
48
|
searchCards
|
|
49
|
-
} from "../chunk-
|
|
49
|
+
} from "../chunk-EC6DIVE5.js";
|
|
50
50
|
import {
|
|
51
51
|
getBalance,
|
|
52
52
|
getTransactions,
|
|
@@ -59,18 +59,19 @@ import {
|
|
|
59
59
|
insertCard,
|
|
60
60
|
listCards,
|
|
61
61
|
openDatabase
|
|
62
|
-
} from "../chunk-
|
|
62
|
+
} from "../chunk-C56X7EFJ.js";
|
|
63
|
+
import "../chunk-GZUTU6IZ.js";
|
|
63
64
|
import "../chunk-UPNREF4L.js";
|
|
64
65
|
import "../chunk-Q5OFZ2JR.js";
|
|
65
66
|
import "../chunk-QXRNW4OJ.js";
|
|
66
67
|
import {
|
|
67
68
|
requestCapability
|
|
68
|
-
} from "../chunk-
|
|
69
|
+
} from "../chunk-IWAK4WHK.js";
|
|
69
70
|
import {
|
|
70
71
|
generateKeyPair,
|
|
71
72
|
loadKeyPair,
|
|
72
73
|
saveKeyPair
|
|
73
|
-
} from "../chunk-
|
|
74
|
+
} from "../chunk-65GNX2KC.js";
|
|
74
75
|
import "../chunk-YDGXKH2T.js";
|
|
75
76
|
import "../chunk-J4RFJVXI.js";
|
|
76
77
|
import {
|
|
@@ -88,7 +89,6 @@ import {
|
|
|
88
89
|
saveConfig
|
|
89
90
|
} from "../chunk-3XPBFF6H.js";
|
|
90
91
|
import "../chunk-4XTYT4JW.js";
|
|
91
|
-
import "../chunk-GZUTU6IZ.js";
|
|
92
92
|
import "../chunk-3RG5ZIWI.js";
|
|
93
93
|
|
|
94
94
|
// src/cli/index.ts
|
|
@@ -241,7 +241,7 @@ Skills: ${skills2.skillCount} skill(s) in ${skills2.path}`);
|
|
|
241
241
|
if (!skipServe) {
|
|
242
242
|
try {
|
|
243
243
|
const { ProcessGuard } = await import("../process-guard-6324CZDC.js");
|
|
244
|
-
const { ServiceCoordinator } = await import("../service-coordinator-
|
|
244
|
+
const { ServiceCoordinator } = await import("../service-coordinator-ZOZTW2U6.js");
|
|
245
245
|
const guard = new ProcessGuard(join(initResult.configDir, ".pid"));
|
|
246
246
|
const coordinator = new ServiceCoordinator(initResult.config, guard);
|
|
247
247
|
const result = await coordinator.ensureRunning({
|
|
@@ -303,7 +303,7 @@ Skills: ${skills2.skillCount} skill(s) in ${skills2.path}`);
|
|
|
303
303
|
}
|
|
304
304
|
|
|
305
305
|
// src/cli/index.ts
|
|
306
|
-
var VERSION = true ? "9.
|
|
306
|
+
var VERSION = true ? "9.2.0" : "0.0.0-dev";
|
|
307
307
|
function loadIdentityAuth(owner) {
|
|
308
308
|
const configDir = getConfigDir();
|
|
309
309
|
let keys;
|
|
@@ -517,7 +517,7 @@ program.command("publish-skills").description("Publish capabilities from skills.
|
|
|
517
517
|
process.exit(1);
|
|
518
518
|
}
|
|
519
519
|
const { parseSkillsFile } = await import("../skill-config-VYNF7BCY.js");
|
|
520
|
-
const { skillConfigToSkill } = await import("../publish-capability-
|
|
520
|
+
const { skillConfigToSkill } = await import("../publish-capability-2FMD3K6Z.js");
|
|
521
521
|
const skillsPath = typeof opts.fromSkills === "string" ? opts.fromSkills : "./skills.yaml";
|
|
522
522
|
let yamlContent;
|
|
523
523
|
try {
|
|
@@ -1159,7 +1159,7 @@ program.command("serve").description("Start the AgentBnB gateway server").option
|
|
|
1159
1159
|
process.exit(1);
|
|
1160
1160
|
}
|
|
1161
1161
|
const { ProcessGuard } = await import("../process-guard-6324CZDC.js");
|
|
1162
|
-
const { ServiceCoordinator } = await import("../service-coordinator-
|
|
1162
|
+
const { ServiceCoordinator } = await import("../service-coordinator-ZOZTW2U6.js");
|
|
1163
1163
|
const port = opts.port ? parseInt(opts.port, 10) : config.gateway_port;
|
|
1164
1164
|
const registryPort = parseInt(opts.registryPort, 10);
|
|
1165
1165
|
if (!Number.isFinite(port) || !Number.isFinite(registryPort)) {
|
|
@@ -1619,34 +1619,34 @@ openclaw.command("rules").description("Print HEARTBEAT.md rules block (or inject
|
|
|
1619
1619
|
}
|
|
1620
1620
|
});
|
|
1621
1621
|
openclaw.command("setup").description("Interactive onboarding: connect an OpenClaw agent to AgentBnB").option("--agent <name>", "Agent name to set up (skip interactive selection)").option("--soul-path <path>", "Override SOUL.md path").option("-y, --yes", "Skip confirmation prompts").action(async (opts) => {
|
|
1622
|
-
const { runOpenClawSetup } = await import("../openclaw-setup-
|
|
1622
|
+
const { runOpenClawSetup } = await import("../openclaw-setup-4RIZRMXA.js");
|
|
1623
1623
|
await runOpenClawSetup(opts);
|
|
1624
1624
|
});
|
|
1625
1625
|
var skills = openclaw.command("skills").description("Manage shared skills on AgentBnB");
|
|
1626
1626
|
skills.command("list").description("List all shared skills with stats").action(async () => {
|
|
1627
|
-
const { skillsList } = await import("../openclaw-skills-
|
|
1627
|
+
const { skillsList } = await import("../openclaw-skills-TQ2JVBRM.js");
|
|
1628
1628
|
await skillsList({});
|
|
1629
1629
|
});
|
|
1630
1630
|
skills.command("add").description("Add a skill to share (interactive or --manual)").option("--manual", "Non-interactive: use flags instead of prompts").option("--name <id>", "Skill ID").option("--type <type>", "Skill type (command|openclaw)").option("--price <n>", "Credits per call", parseFloat).option("--description <text>", "Skill description").action(
|
|
1631
1631
|
async (opts) => {
|
|
1632
|
-
const { skillsAdd } = await import("../openclaw-skills-
|
|
1632
|
+
const { skillsAdd } = await import("../openclaw-skills-TQ2JVBRM.js");
|
|
1633
1633
|
await skillsAdd(opts);
|
|
1634
1634
|
}
|
|
1635
1635
|
);
|
|
1636
1636
|
skills.command("remove <skillId>").description("Remove a skill from AgentBnB").action(async (skillId) => {
|
|
1637
|
-
const { skillsRemove } = await import("../openclaw-skills-
|
|
1637
|
+
const { skillsRemove } = await import("../openclaw-skills-TQ2JVBRM.js");
|
|
1638
1638
|
await skillsRemove(skillId);
|
|
1639
1639
|
});
|
|
1640
1640
|
skills.command("price <skillId> <price>").description("Update skill price").action(async (skillId, price) => {
|
|
1641
|
-
const { skillsPrice } = await import("../openclaw-skills-
|
|
1641
|
+
const { skillsPrice } = await import("../openclaw-skills-TQ2JVBRM.js");
|
|
1642
1642
|
await skillsPrice(skillId, parseFloat(price));
|
|
1643
1643
|
});
|
|
1644
1644
|
skills.command("stats").description("Revenue and performance report").option("--days <n>", "Days to look back", parseInt, 7).action(async (opts) => {
|
|
1645
|
-
const { skillsStats } = await import("../openclaw-skills-
|
|
1645
|
+
const { skillsStats } = await import("../openclaw-skills-TQ2JVBRM.js");
|
|
1646
1646
|
await skillsStats(opts);
|
|
1647
1647
|
});
|
|
1648
1648
|
program.command("conduct <task>").description("Orchestrate a complex task across the AgentBnB network").option("--plan-only", "Show execution plan without executing").option("--max-budget <credits>", "Maximum credits to spend", "100").option("--json", "Output as JSON").action(async (task, opts) => {
|
|
1649
|
-
const { conductAction } = await import("../conduct-
|
|
1649
|
+
const { conductAction } = await import("../conduct-JRLLA4PB.js");
|
|
1650
1650
|
const result = await conductAction(task, opts);
|
|
1651
1651
|
if (opts.json) {
|
|
1652
1652
|
console.log(JSON.stringify(result, null, 2));
|
|
@@ -1764,7 +1764,7 @@ skill.command("wrap").description("Wrap a CLI command as a rentable AgentBnB ski
|
|
|
1764
1764
|
});
|
|
1765
1765
|
var did = program.command("did").description("Decentralized Identity commands");
|
|
1766
1766
|
did.command("show").description("Display local agent DID identifiers").option("--json", "Output as JSON").action(async (opts) => {
|
|
1767
|
-
const { didShow, didShowJson } = await import("../did-action-
|
|
1767
|
+
const { didShow, didShowJson } = await import("../did-action-ODWTBVXL.js");
|
|
1768
1768
|
if (opts.json) {
|
|
1769
1769
|
await didShowJson();
|
|
1770
1770
|
} else {
|
|
@@ -1773,45 +1773,45 @@ did.command("show").description("Display local agent DID identifiers").option("-
|
|
|
1773
1773
|
});
|
|
1774
1774
|
var vc = program.command("vc").description("Verifiable Credentials commands");
|
|
1775
1775
|
vc.command("show").description("Display Verifiable Credentials for this agent").option("--json", "Output as JSON").action(async (opts) => {
|
|
1776
|
-
const { vcShow } = await import("../vc-action-
|
|
1776
|
+
const { vcShow } = await import("../vc-action-A6VBKERF.js");
|
|
1777
1777
|
await vcShow(opts);
|
|
1778
1778
|
});
|
|
1779
1779
|
var credits = program.command("credits").description("Credit balance and transaction management");
|
|
1780
1780
|
credits.command("sync").description("Sync local credit balance from remote registry").action(async () => {
|
|
1781
|
-
const { creditsSync } = await import("../credits-action-
|
|
1781
|
+
const { creditsSync } = await import("../credits-action-XERUEDF3.js");
|
|
1782
1782
|
await creditsSync();
|
|
1783
1783
|
});
|
|
1784
1784
|
credits.command("history").description("Show recent credit transactions").option("--limit <n>", "Number of transactions to show", "20").option("--json", "Output as JSON").action(async (opts) => {
|
|
1785
|
-
const { creditsHistory } = await import("../credits-action-
|
|
1785
|
+
const { creditsHistory } = await import("../credits-action-XERUEDF3.js");
|
|
1786
1786
|
await creditsHistory(opts);
|
|
1787
1787
|
});
|
|
1788
1788
|
credits.command("grant <agent_id> <amount>").description("Admin: grant credits to an agent (requires ADMIN_TOKEN)").action(async (agentId, amount) => {
|
|
1789
|
-
const { creditsGrant } = await import("../credits-action-
|
|
1789
|
+
const { creditsGrant } = await import("../credits-action-XERUEDF3.js");
|
|
1790
1790
|
await creditsGrant(agentId, amount);
|
|
1791
1791
|
});
|
|
1792
1792
|
var sessionCmd = program.command("session").description("Manage interactive agent-to-agent sessions");
|
|
1793
1793
|
sessionCmd.command("open <card_id>").description("Open an interactive session with a provider agent").requiredOption("--skill <skill_id>", "Skill ID to use").requiredOption("--budget <credits>", "Maximum credits for this session", parseInt).requiredOption("--message <msg>", "Initial message to send").option("--pricing <model>", "Pricing model: per_message, per_minute, per_session", "per_message").action(async (cardId, opts) => {
|
|
1794
|
-
const { sessionOpen } = await import("../session-action-
|
|
1794
|
+
const { sessionOpen } = await import("../session-action-OSBZB4TX.js");
|
|
1795
1795
|
await sessionOpen(cardId, opts);
|
|
1796
1796
|
});
|
|
1797
1797
|
sessionCmd.command("send <session_id> <message>").description("Send a message within an active session").action(async (sessionId, message) => {
|
|
1798
|
-
const { sessionSend } = await import("../session-action-
|
|
1798
|
+
const { sessionSend } = await import("../session-action-OSBZB4TX.js");
|
|
1799
1799
|
await sessionSend(sessionId, message);
|
|
1800
1800
|
});
|
|
1801
1801
|
sessionCmd.command("end <session_id>").description("End an active session").option("--reason <reason>", "End reason: completed, cancelled", "completed").action(async (sessionId, opts) => {
|
|
1802
|
-
const { sessionEnd } = await import("../session-action-
|
|
1802
|
+
const { sessionEnd } = await import("../session-action-OSBZB4TX.js");
|
|
1803
1803
|
await sessionEnd(sessionId, opts.reason);
|
|
1804
1804
|
});
|
|
1805
1805
|
sessionCmd.command("list").description("List active sessions").action(async () => {
|
|
1806
|
-
const { sessionList } = await import("../session-action-
|
|
1806
|
+
const { sessionList } = await import("../session-action-OSBZB4TX.js");
|
|
1807
1807
|
await sessionList();
|
|
1808
1808
|
});
|
|
1809
1809
|
sessionCmd.command("status <session_id>").description("Show session details").action(async (sessionId) => {
|
|
1810
|
-
const { sessionStatus } = await import("../session-action-
|
|
1810
|
+
const { sessionStatus } = await import("../session-action-OSBZB4TX.js");
|
|
1811
1811
|
await sessionStatus(sessionId);
|
|
1812
1812
|
});
|
|
1813
1813
|
program.command("mcp-server").description("Start an MCP (Model Context Protocol) server for IDE integration").action(async () => {
|
|
1814
|
-
const { startMcpServer } = await import("../server-
|
|
1814
|
+
const { startMcpServer } = await import("../server-UPOPLZ24.js");
|
|
1815
1815
|
await startMcpServer();
|
|
1816
1816
|
});
|
|
1817
1817
|
await program.parseAsync(process.argv);
|
|
@@ -6,8 +6,8 @@ import {
|
|
|
6
6
|
requestCapability,
|
|
7
7
|
requestCapabilityBatch,
|
|
8
8
|
requestViaRelay
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
9
|
+
} from "./chunk-IWAK4WHK.js";
|
|
10
|
+
import "./chunk-65GNX2KC.js";
|
|
11
11
|
import "./chunk-UVCNMRPS.js";
|
|
12
12
|
import "./chunk-3RG5ZIWI.js";
|
|
13
13
|
export {
|