@agenticprimitives/contracts 1.0.0-alpha.4 → 1.0.0-alpha.6

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.
Files changed (57) hide show
  1. package/AUDIT.md +304 -47
  2. package/README.md +19 -8
  3. package/deployments-base-sepolia.json +1 -0
  4. package/dist/abi/AgentAccount.json +1647 -0
  5. package/dist/abi/AgentAccountFactory.json +472 -0
  6. package/dist/abi/AgentNameRegistry.json +46 -0
  7. package/dist/abi/AgreementRegistry.json +432 -0
  8. package/dist/abi/AttestationRegistry.json +436 -0
  9. package/dist/abi/CallDataHashEnforcer.json +119 -0
  10. package/dist/abi/CustodyPolicy.json +1111 -0
  11. package/dist/abi/DelegationManager.json +645 -0
  12. package/dist/abi/GeoFeatureRegistry.json +625 -0
  13. package/dist/abi/IAgentAccount.json +262 -0
  14. package/dist/abi/IAgentAccountFactoryAccessor.json +15 -0
  15. package/dist/abi/IAgentAccountFactoryView.json +41 -0
  16. package/dist/abi/IAgentAccountPauseView.json +15 -0
  17. package/dist/abi/IAgenticPrimitivesAgentAccount.json +15 -0
  18. package/dist/abi/IApprovedHashRegistryView.json +26 -0
  19. package/dist/abi/ICustodyPolicyFactoryView.json +15 -0
  20. package/dist/abi/ICustodyPolicyPauseView.json +15 -0
  21. package/dist/abi/IDelegationManager.json +171 -0
  22. package/dist/abi/IERC7579HookLike.json +44 -0
  23. package/dist/abi/IERC7579ModuleLike.json +28 -0
  24. package/dist/abi/PermissionlessSubregistry.json +5 -0
  25. package/dist/abi/QuorumEnforcer.json +295 -0
  26. package/dist/abi/SignatureSlotRecovery.json +88 -0
  27. package/dist/abi/SkillDefinitionRegistry.json +491 -0
  28. package/dist/abi/SmartAgentPaymaster.json +664 -0
  29. package/dist/abi/UniversalSignatureValidator.json +65 -0
  30. package/dist/abi/index.d.ts +23 -0
  31. package/dist/abi/index.js +23 -0
  32. package/dist/deployments/base-sepolia.d.ts +37 -0
  33. package/dist/deployments/base-sepolia.js +35 -0
  34. package/dist/deployments/index.d.ts +8 -0
  35. package/dist/deployments/index.js +13 -0
  36. package/package.json +20 -3
  37. package/src/AgentAccount.sol +130 -9
  38. package/src/AgentAccountFactory.sol +34 -5
  39. package/src/SmartAgentPaymaster.sol +2 -0
  40. package/src/UniversalSignatureValidator.sol +3 -0
  41. package/src/agency/DelegationManager.sol +155 -0
  42. package/src/agency/IDelegationManager.sol +35 -0
  43. package/src/agreement/AgreementRegistry.sol +306 -0
  44. package/src/attestation/AttestationRegistry.sol +320 -0
  45. package/src/custody/CustodyPolicy.sol +79 -2
  46. package/src/enforcers/AllowedMethodsEnforcer.sol +6 -0
  47. package/src/enforcers/AllowedTargetsEnforcer.sol +6 -0
  48. package/src/enforcers/CallDataHashEnforcer.sol +61 -0
  49. package/src/enforcers/QuorumEnforcer.sol +8 -0
  50. package/src/enforcers/TimestampEnforcer.sol +7 -0
  51. package/src/enforcers/ValueEnforcer.sol +6 -0
  52. package/src/geo/GeoFeatureRegistry.sol +197 -0
  53. package/src/naming/AgentNameRegistry.sol +25 -13
  54. package/src/naming/AgentNameUniversalResolver.sol +1 -1
  55. package/src/naming/PermissionlessSubregistry.sol +19 -2
  56. package/src/relationships/AgentRelationship.sol +8 -0
  57. package/src/skills/SkillDefinitionRegistry.sol +187 -0
@@ -0,0 +1,664 @@
1
+ [
2
+ {
3
+ "type": "constructor",
4
+ "inputs": [
5
+ {
6
+ "name": "entryPointAddr",
7
+ "type": "address",
8
+ "internalType": "contract IEntryPoint"
9
+ },
10
+ {
11
+ "name": "initialOwner",
12
+ "type": "address",
13
+ "internalType": "address"
14
+ },
15
+ {
16
+ "name": "governance_",
17
+ "type": "address",
18
+ "internalType": "address"
19
+ },
20
+ {
21
+ "name": "devMode_",
22
+ "type": "bool",
23
+ "internalType": "bool"
24
+ },
25
+ {
26
+ "name": "verifyingSigner_",
27
+ "type": "address",
28
+ "internalType": "address"
29
+ }
30
+ ],
31
+ "stateMutability": "nonpayable"
32
+ },
33
+ {
34
+ "type": "function",
35
+ "name": "acceptOwnership",
36
+ "inputs": [],
37
+ "outputs": [],
38
+ "stateMutability": "nonpayable"
39
+ },
40
+ {
41
+ "type": "function",
42
+ "name": "addStake",
43
+ "inputs": [
44
+ {
45
+ "name": "unstakeDelaySec",
46
+ "type": "uint32",
47
+ "internalType": "uint32"
48
+ }
49
+ ],
50
+ "outputs": [],
51
+ "stateMutability": "payable"
52
+ },
53
+ {
54
+ "type": "function",
55
+ "name": "deposit",
56
+ "inputs": [],
57
+ "outputs": [],
58
+ "stateMutability": "payable"
59
+ },
60
+ {
61
+ "type": "function",
62
+ "name": "devMode",
63
+ "inputs": [],
64
+ "outputs": [
65
+ {
66
+ "name": "",
67
+ "type": "bool",
68
+ "internalType": "bool"
69
+ }
70
+ ],
71
+ "stateMutability": "view"
72
+ },
73
+ {
74
+ "type": "function",
75
+ "name": "entryPoint",
76
+ "inputs": [],
77
+ "outputs": [
78
+ {
79
+ "name": "",
80
+ "type": "address",
81
+ "internalType": "contract IEntryPoint"
82
+ }
83
+ ],
84
+ "stateMutability": "view"
85
+ },
86
+ {
87
+ "type": "function",
88
+ "name": "getDeposit",
89
+ "inputs": [],
90
+ "outputs": [
91
+ {
92
+ "name": "",
93
+ "type": "uint256",
94
+ "internalType": "uint256"
95
+ }
96
+ ],
97
+ "stateMutability": "view"
98
+ },
99
+ {
100
+ "type": "function",
101
+ "name": "getHash",
102
+ "inputs": [
103
+ {
104
+ "name": "userOp",
105
+ "type": "tuple",
106
+ "internalType": "struct PackedUserOperation",
107
+ "components": [
108
+ {
109
+ "name": "sender",
110
+ "type": "address",
111
+ "internalType": "address"
112
+ },
113
+ {
114
+ "name": "nonce",
115
+ "type": "uint256",
116
+ "internalType": "uint256"
117
+ },
118
+ {
119
+ "name": "initCode",
120
+ "type": "bytes",
121
+ "internalType": "bytes"
122
+ },
123
+ {
124
+ "name": "callData",
125
+ "type": "bytes",
126
+ "internalType": "bytes"
127
+ },
128
+ {
129
+ "name": "accountGasLimits",
130
+ "type": "bytes32",
131
+ "internalType": "bytes32"
132
+ },
133
+ {
134
+ "name": "preVerificationGas",
135
+ "type": "uint256",
136
+ "internalType": "uint256"
137
+ },
138
+ {
139
+ "name": "gasFees",
140
+ "type": "bytes32",
141
+ "internalType": "bytes32"
142
+ },
143
+ {
144
+ "name": "paymasterAndData",
145
+ "type": "bytes",
146
+ "internalType": "bytes"
147
+ },
148
+ {
149
+ "name": "signature",
150
+ "type": "bytes",
151
+ "internalType": "bytes"
152
+ }
153
+ ]
154
+ },
155
+ {
156
+ "name": "validUntil",
157
+ "type": "uint48",
158
+ "internalType": "uint48"
159
+ },
160
+ {
161
+ "name": "validAfter",
162
+ "type": "uint48",
163
+ "internalType": "uint48"
164
+ }
165
+ ],
166
+ "outputs": [
167
+ {
168
+ "name": "",
169
+ "type": "bytes32",
170
+ "internalType": "bytes32"
171
+ }
172
+ ],
173
+ "stateMutability": "view"
174
+ },
175
+ {
176
+ "type": "function",
177
+ "name": "governance",
178
+ "inputs": [],
179
+ "outputs": [
180
+ {
181
+ "name": "",
182
+ "type": "address",
183
+ "internalType": "address"
184
+ }
185
+ ],
186
+ "stateMutability": "view"
187
+ },
188
+ {
189
+ "type": "function",
190
+ "name": "isAccepted",
191
+ "inputs": [
192
+ {
193
+ "name": "sender",
194
+ "type": "address",
195
+ "internalType": "address"
196
+ }
197
+ ],
198
+ "outputs": [
199
+ {
200
+ "name": "",
201
+ "type": "bool",
202
+ "internalType": "bool"
203
+ }
204
+ ],
205
+ "stateMutability": "view"
206
+ },
207
+ {
208
+ "type": "function",
209
+ "name": "owner",
210
+ "inputs": [],
211
+ "outputs": [
212
+ {
213
+ "name": "",
214
+ "type": "address",
215
+ "internalType": "address"
216
+ }
217
+ ],
218
+ "stateMutability": "view"
219
+ },
220
+ {
221
+ "type": "function",
222
+ "name": "pendingOwner",
223
+ "inputs": [],
224
+ "outputs": [
225
+ {
226
+ "name": "",
227
+ "type": "address",
228
+ "internalType": "address"
229
+ }
230
+ ],
231
+ "stateMutability": "view"
232
+ },
233
+ {
234
+ "type": "function",
235
+ "name": "postOp",
236
+ "inputs": [
237
+ {
238
+ "name": "mode",
239
+ "type": "uint8",
240
+ "internalType": "enum IPaymaster.PostOpMode"
241
+ },
242
+ {
243
+ "name": "context",
244
+ "type": "bytes",
245
+ "internalType": "bytes"
246
+ },
247
+ {
248
+ "name": "actualGasCost",
249
+ "type": "uint256",
250
+ "internalType": "uint256"
251
+ },
252
+ {
253
+ "name": "actualUserOpFeePerGas",
254
+ "type": "uint256",
255
+ "internalType": "uint256"
256
+ }
257
+ ],
258
+ "outputs": [],
259
+ "stateMutability": "nonpayable"
260
+ },
261
+ {
262
+ "type": "function",
263
+ "name": "renounceOwnership",
264
+ "inputs": [],
265
+ "outputs": [],
266
+ "stateMutability": "nonpayable"
267
+ },
268
+ {
269
+ "type": "function",
270
+ "name": "setAccepted",
271
+ "inputs": [
272
+ {
273
+ "name": "sender",
274
+ "type": "address",
275
+ "internalType": "address"
276
+ },
277
+ {
278
+ "name": "accepted",
279
+ "type": "bool",
280
+ "internalType": "bool"
281
+ }
282
+ ],
283
+ "outputs": [],
284
+ "stateMutability": "nonpayable"
285
+ },
286
+ {
287
+ "type": "function",
288
+ "name": "setAcceptedBatch",
289
+ "inputs": [
290
+ {
291
+ "name": "senders",
292
+ "type": "address[]",
293
+ "internalType": "address[]"
294
+ },
295
+ {
296
+ "name": "accepted",
297
+ "type": "bool",
298
+ "internalType": "bool"
299
+ }
300
+ ],
301
+ "outputs": [],
302
+ "stateMutability": "nonpayable"
303
+ },
304
+ {
305
+ "type": "function",
306
+ "name": "setDevMode",
307
+ "inputs": [
308
+ {
309
+ "name": "dev",
310
+ "type": "bool",
311
+ "internalType": "bool"
312
+ }
313
+ ],
314
+ "outputs": [],
315
+ "stateMutability": "nonpayable"
316
+ },
317
+ {
318
+ "type": "function",
319
+ "name": "setVerifyingSigner",
320
+ "inputs": [
321
+ {
322
+ "name": "newSigner",
323
+ "type": "address",
324
+ "internalType": "address"
325
+ }
326
+ ],
327
+ "outputs": [],
328
+ "stateMutability": "nonpayable"
329
+ },
330
+ {
331
+ "type": "function",
332
+ "name": "transferOwnership",
333
+ "inputs": [
334
+ {
335
+ "name": "newOwner",
336
+ "type": "address",
337
+ "internalType": "address"
338
+ }
339
+ ],
340
+ "outputs": [],
341
+ "stateMutability": "nonpayable"
342
+ },
343
+ {
344
+ "type": "function",
345
+ "name": "unlockStake",
346
+ "inputs": [],
347
+ "outputs": [],
348
+ "stateMutability": "nonpayable"
349
+ },
350
+ {
351
+ "type": "function",
352
+ "name": "validatePaymasterUserOp",
353
+ "inputs": [
354
+ {
355
+ "name": "userOp",
356
+ "type": "tuple",
357
+ "internalType": "struct PackedUserOperation",
358
+ "components": [
359
+ {
360
+ "name": "sender",
361
+ "type": "address",
362
+ "internalType": "address"
363
+ },
364
+ {
365
+ "name": "nonce",
366
+ "type": "uint256",
367
+ "internalType": "uint256"
368
+ },
369
+ {
370
+ "name": "initCode",
371
+ "type": "bytes",
372
+ "internalType": "bytes"
373
+ },
374
+ {
375
+ "name": "callData",
376
+ "type": "bytes",
377
+ "internalType": "bytes"
378
+ },
379
+ {
380
+ "name": "accountGasLimits",
381
+ "type": "bytes32",
382
+ "internalType": "bytes32"
383
+ },
384
+ {
385
+ "name": "preVerificationGas",
386
+ "type": "uint256",
387
+ "internalType": "uint256"
388
+ },
389
+ {
390
+ "name": "gasFees",
391
+ "type": "bytes32",
392
+ "internalType": "bytes32"
393
+ },
394
+ {
395
+ "name": "paymasterAndData",
396
+ "type": "bytes",
397
+ "internalType": "bytes"
398
+ },
399
+ {
400
+ "name": "signature",
401
+ "type": "bytes",
402
+ "internalType": "bytes"
403
+ }
404
+ ]
405
+ },
406
+ {
407
+ "name": "userOpHash",
408
+ "type": "bytes32",
409
+ "internalType": "bytes32"
410
+ },
411
+ {
412
+ "name": "maxCost",
413
+ "type": "uint256",
414
+ "internalType": "uint256"
415
+ }
416
+ ],
417
+ "outputs": [
418
+ {
419
+ "name": "context",
420
+ "type": "bytes",
421
+ "internalType": "bytes"
422
+ },
423
+ {
424
+ "name": "validationData",
425
+ "type": "uint256",
426
+ "internalType": "uint256"
427
+ }
428
+ ],
429
+ "stateMutability": "nonpayable"
430
+ },
431
+ {
432
+ "type": "function",
433
+ "name": "verifyingSigner",
434
+ "inputs": [],
435
+ "outputs": [
436
+ {
437
+ "name": "",
438
+ "type": "address",
439
+ "internalType": "address"
440
+ }
441
+ ],
442
+ "stateMutability": "view"
443
+ },
444
+ {
445
+ "type": "function",
446
+ "name": "withdrawStake",
447
+ "inputs": [
448
+ {
449
+ "name": "withdrawAddress",
450
+ "type": "address",
451
+ "internalType": "address payable"
452
+ }
453
+ ],
454
+ "outputs": [],
455
+ "stateMutability": "nonpayable"
456
+ },
457
+ {
458
+ "type": "function",
459
+ "name": "withdrawTo",
460
+ "inputs": [
461
+ {
462
+ "name": "withdrawAddress",
463
+ "type": "address",
464
+ "internalType": "address payable"
465
+ },
466
+ {
467
+ "name": "amount",
468
+ "type": "uint256",
469
+ "internalType": "uint256"
470
+ }
471
+ ],
472
+ "outputs": [],
473
+ "stateMutability": "nonpayable"
474
+ },
475
+ {
476
+ "type": "event",
477
+ "name": "DevModeSet",
478
+ "inputs": [
479
+ {
480
+ "name": "dev",
481
+ "type": "bool",
482
+ "indexed": false,
483
+ "internalType": "bool"
484
+ }
485
+ ],
486
+ "anonymous": false
487
+ },
488
+ {
489
+ "type": "event",
490
+ "name": "OwnershipTransferStarted",
491
+ "inputs": [
492
+ {
493
+ "name": "previousOwner",
494
+ "type": "address",
495
+ "indexed": true,
496
+ "internalType": "address"
497
+ },
498
+ {
499
+ "name": "newOwner",
500
+ "type": "address",
501
+ "indexed": true,
502
+ "internalType": "address"
503
+ }
504
+ ],
505
+ "anonymous": false
506
+ },
507
+ {
508
+ "type": "event",
509
+ "name": "OwnershipTransferred",
510
+ "inputs": [
511
+ {
512
+ "name": "previousOwner",
513
+ "type": "address",
514
+ "indexed": true,
515
+ "internalType": "address"
516
+ },
517
+ {
518
+ "name": "newOwner",
519
+ "type": "address",
520
+ "indexed": true,
521
+ "internalType": "address"
522
+ }
523
+ ],
524
+ "anonymous": false
525
+ },
526
+ {
527
+ "type": "event",
528
+ "name": "SenderAcceptedSet",
529
+ "inputs": [
530
+ {
531
+ "name": "sender",
532
+ "type": "address",
533
+ "indexed": true,
534
+ "internalType": "address"
535
+ },
536
+ {
537
+ "name": "accepted",
538
+ "type": "bool",
539
+ "indexed": false,
540
+ "internalType": "bool"
541
+ }
542
+ ],
543
+ "anonymous": false
544
+ },
545
+ {
546
+ "type": "event",
547
+ "name": "VerifyingSignerSet",
548
+ "inputs": [
549
+ {
550
+ "name": "oldSigner",
551
+ "type": "address",
552
+ "indexed": true,
553
+ "internalType": "address"
554
+ },
555
+ {
556
+ "name": "newSigner",
557
+ "type": "address",
558
+ "indexed": true,
559
+ "internalType": "address"
560
+ }
561
+ ],
562
+ "anonymous": false
563
+ },
564
+ {
565
+ "type": "error",
566
+ "name": "ERC165Error",
567
+ "inputs": [
568
+ {
569
+ "name": "entryPoint",
570
+ "type": "address",
571
+ "internalType": "address"
572
+ },
573
+ {
574
+ "name": "interfaceId",
575
+ "type": "bytes4",
576
+ "internalType": "bytes4"
577
+ }
578
+ ]
579
+ },
580
+ {
581
+ "type": "error",
582
+ "name": "MustOverride",
583
+ "inputs": []
584
+ },
585
+ {
586
+ "type": "error",
587
+ "name": "NotFromEntryPoint",
588
+ "inputs": [
589
+ {
590
+ "name": "msgSender",
591
+ "type": "address",
592
+ "internalType": "address"
593
+ },
594
+ {
595
+ "name": "entity",
596
+ "type": "address",
597
+ "internalType": "address"
598
+ },
599
+ {
600
+ "name": "entryPoint",
601
+ "type": "address",
602
+ "internalType": "address"
603
+ }
604
+ ]
605
+ },
606
+ {
607
+ "type": "error",
608
+ "name": "NotGovernance",
609
+ "inputs": []
610
+ },
611
+ {
612
+ "type": "error",
613
+ "name": "OwnableInvalidOwner",
614
+ "inputs": [
615
+ {
616
+ "name": "owner",
617
+ "type": "address",
618
+ "internalType": "address"
619
+ }
620
+ ]
621
+ },
622
+ {
623
+ "type": "error",
624
+ "name": "OwnableUnauthorizedAccount",
625
+ "inputs": [
626
+ {
627
+ "name": "account",
628
+ "type": "address",
629
+ "internalType": "address"
630
+ }
631
+ ]
632
+ },
633
+ {
634
+ "type": "error",
635
+ "name": "PaymasterDataMalformed",
636
+ "inputs": []
637
+ },
638
+ {
639
+ "type": "error",
640
+ "name": "PaymasterSignatureInvalid",
641
+ "inputs": []
642
+ },
643
+ {
644
+ "type": "error",
645
+ "name": "SenderNotAccepted",
646
+ "inputs": [
647
+ {
648
+ "name": "sender",
649
+ "type": "address",
650
+ "internalType": "address"
651
+ }
652
+ ]
653
+ },
654
+ {
655
+ "type": "error",
656
+ "name": "SystemPaused",
657
+ "inputs": []
658
+ },
659
+ {
660
+ "type": "error",
661
+ "name": "ZeroGovernance",
662
+ "inputs": []
663
+ }
664
+ ]