@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,472 @@
1
+ [
2
+ {
3
+ "type": "constructor",
4
+ "inputs": [
5
+ {
6
+ "name": "entryPoint_",
7
+ "type": "address",
8
+ "internalType": "contract IEntryPoint"
9
+ },
10
+ {
11
+ "name": "delegationManager_",
12
+ "type": "address",
13
+ "internalType": "address"
14
+ },
15
+ {
16
+ "name": "custodyPolicy_",
17
+ "type": "address",
18
+ "internalType": "address"
19
+ },
20
+ {
21
+ "name": "bundlerSigner_",
22
+ "type": "address",
23
+ "internalType": "address"
24
+ },
25
+ {
26
+ "name": "sessionIssuer_",
27
+ "type": "address",
28
+ "internalType": "address"
29
+ },
30
+ {
31
+ "name": "governance_",
32
+ "type": "address",
33
+ "internalType": "address"
34
+ },
35
+ {
36
+ "name": "approvedHashRegistry_",
37
+ "type": "address",
38
+ "internalType": "address"
39
+ }
40
+ ],
41
+ "stateMutability": "nonpayable"
42
+ },
43
+ {
44
+ "type": "function",
45
+ "name": "MAX_INITIAL_CUSTODIANS",
46
+ "inputs": [],
47
+ "outputs": [
48
+ {
49
+ "name": "",
50
+ "type": "uint256",
51
+ "internalType": "uint256"
52
+ }
53
+ ],
54
+ "stateMutability": "view"
55
+ },
56
+ {
57
+ "type": "function",
58
+ "name": "accountImplementation",
59
+ "inputs": [],
60
+ "outputs": [
61
+ {
62
+ "name": "",
63
+ "type": "address",
64
+ "internalType": "contract AgentAccount"
65
+ }
66
+ ],
67
+ "stateMutability": "view"
68
+ },
69
+ {
70
+ "type": "function",
71
+ "name": "approvedHashRegistry",
72
+ "inputs": [],
73
+ "outputs": [
74
+ {
75
+ "name": "",
76
+ "type": "address",
77
+ "internalType": "address"
78
+ }
79
+ ],
80
+ "stateMutability": "view"
81
+ },
82
+ {
83
+ "type": "function",
84
+ "name": "bundlerSigner",
85
+ "inputs": [],
86
+ "outputs": [
87
+ {
88
+ "name": "",
89
+ "type": "address",
90
+ "internalType": "address"
91
+ }
92
+ ],
93
+ "stateMutability": "view"
94
+ },
95
+ {
96
+ "type": "function",
97
+ "name": "createAgentAccount",
98
+ "inputs": [
99
+ {
100
+ "name": "params",
101
+ "type": "tuple",
102
+ "internalType": "struct AgentAccountInitParams",
103
+ "components": [
104
+ {
105
+ "name": "mode",
106
+ "type": "uint8",
107
+ "internalType": "uint8"
108
+ },
109
+ {
110
+ "name": "custodians",
111
+ "type": "address[]",
112
+ "internalType": "address[]"
113
+ },
114
+ {
115
+ "name": "trustees",
116
+ "type": "address[]",
117
+ "internalType": "address[]"
118
+ },
119
+ {
120
+ "name": "initialPasskeyCredentialIdDigest",
121
+ "type": "bytes32",
122
+ "internalType": "bytes32"
123
+ },
124
+ {
125
+ "name": "initialPasskeyX",
126
+ "type": "uint256",
127
+ "internalType": "uint256"
128
+ },
129
+ {
130
+ "name": "initialPasskeyY",
131
+ "type": "uint256",
132
+ "internalType": "uint256"
133
+ },
134
+ {
135
+ "name": "initialPasskeyRpIdHash",
136
+ "type": "bytes32",
137
+ "internalType": "bytes32"
138
+ }
139
+ ]
140
+ },
141
+ {
142
+ "name": "timelockOverrides",
143
+ "type": "uint32[7]",
144
+ "internalType": "uint32[7]"
145
+ },
146
+ {
147
+ "name": "salt",
148
+ "type": "uint256",
149
+ "internalType": "uint256"
150
+ }
151
+ ],
152
+ "outputs": [
153
+ {
154
+ "name": "account",
155
+ "type": "address",
156
+ "internalType": "contract AgentAccount"
157
+ }
158
+ ],
159
+ "stateMutability": "nonpayable"
160
+ },
161
+ {
162
+ "type": "function",
163
+ "name": "custodyPolicy",
164
+ "inputs": [],
165
+ "outputs": [
166
+ {
167
+ "name": "",
168
+ "type": "address",
169
+ "internalType": "address"
170
+ }
171
+ ],
172
+ "stateMutability": "view"
173
+ },
174
+ {
175
+ "type": "function",
176
+ "name": "delegationManager",
177
+ "inputs": [],
178
+ "outputs": [
179
+ {
180
+ "name": "",
181
+ "type": "address",
182
+ "internalType": "address"
183
+ }
184
+ ],
185
+ "stateMutability": "view"
186
+ },
187
+ {
188
+ "type": "function",
189
+ "name": "getAddressForAgentAccount",
190
+ "inputs": [
191
+ {
192
+ "name": "params",
193
+ "type": "tuple",
194
+ "internalType": "struct AgentAccountInitParams",
195
+ "components": [
196
+ {
197
+ "name": "mode",
198
+ "type": "uint8",
199
+ "internalType": "uint8"
200
+ },
201
+ {
202
+ "name": "custodians",
203
+ "type": "address[]",
204
+ "internalType": "address[]"
205
+ },
206
+ {
207
+ "name": "trustees",
208
+ "type": "address[]",
209
+ "internalType": "address[]"
210
+ },
211
+ {
212
+ "name": "initialPasskeyCredentialIdDigest",
213
+ "type": "bytes32",
214
+ "internalType": "bytes32"
215
+ },
216
+ {
217
+ "name": "initialPasskeyX",
218
+ "type": "uint256",
219
+ "internalType": "uint256"
220
+ },
221
+ {
222
+ "name": "initialPasskeyY",
223
+ "type": "uint256",
224
+ "internalType": "uint256"
225
+ },
226
+ {
227
+ "name": "initialPasskeyRpIdHash",
228
+ "type": "bytes32",
229
+ "internalType": "bytes32"
230
+ }
231
+ ]
232
+ },
233
+ {
234
+ "name": "salt",
235
+ "type": "uint256",
236
+ "internalType": "uint256"
237
+ }
238
+ ],
239
+ "outputs": [
240
+ {
241
+ "name": "",
242
+ "type": "address",
243
+ "internalType": "address"
244
+ }
245
+ ],
246
+ "stateMutability": "view"
247
+ },
248
+ {
249
+ "type": "function",
250
+ "name": "governance",
251
+ "inputs": [],
252
+ "outputs": [
253
+ {
254
+ "name": "",
255
+ "type": "address",
256
+ "internalType": "address"
257
+ }
258
+ ],
259
+ "stateMutability": "view"
260
+ },
261
+ {
262
+ "type": "function",
263
+ "name": "paused",
264
+ "inputs": [],
265
+ "outputs": [
266
+ {
267
+ "name": "",
268
+ "type": "bool",
269
+ "internalType": "bool"
270
+ }
271
+ ],
272
+ "stateMutability": "view"
273
+ },
274
+ {
275
+ "type": "function",
276
+ "name": "sessionIssuer",
277
+ "inputs": [],
278
+ "outputs": [
279
+ {
280
+ "name": "",
281
+ "type": "address",
282
+ "internalType": "address"
283
+ }
284
+ ],
285
+ "stateMutability": "view"
286
+ },
287
+ {
288
+ "type": "function",
289
+ "name": "setBundlerSigner",
290
+ "inputs": [
291
+ {
292
+ "name": "newBundler",
293
+ "type": "address",
294
+ "internalType": "address"
295
+ }
296
+ ],
297
+ "outputs": [],
298
+ "stateMutability": "nonpayable"
299
+ },
300
+ {
301
+ "type": "function",
302
+ "name": "setSessionIssuer",
303
+ "inputs": [
304
+ {
305
+ "name": "newIssuer",
306
+ "type": "address",
307
+ "internalType": "address"
308
+ }
309
+ ],
310
+ "outputs": [],
311
+ "stateMutability": "nonpayable"
312
+ },
313
+ {
314
+ "type": "event",
315
+ "name": "AgentAccountCreated",
316
+ "inputs": [
317
+ {
318
+ "name": "account",
319
+ "type": "address",
320
+ "indexed": true,
321
+ "internalType": "address"
322
+ },
323
+ {
324
+ "name": "mode",
325
+ "type": "uint8",
326
+ "indexed": false,
327
+ "internalType": "uint8"
328
+ },
329
+ {
330
+ "name": "nExternalCustodians",
331
+ "type": "uint256",
332
+ "indexed": false,
333
+ "internalType": "uint256"
334
+ },
335
+ {
336
+ "name": "withPasskey",
337
+ "type": "bool",
338
+ "indexed": false,
339
+ "internalType": "bool"
340
+ },
341
+ {
342
+ "name": "salt",
343
+ "type": "uint256",
344
+ "indexed": false,
345
+ "internalType": "uint256"
346
+ }
347
+ ],
348
+ "anonymous": false
349
+ },
350
+ {
351
+ "type": "event",
352
+ "name": "BundlerSignerChanged",
353
+ "inputs": [
354
+ {
355
+ "name": "oldVal",
356
+ "type": "address",
357
+ "indexed": true,
358
+ "internalType": "address"
359
+ },
360
+ {
361
+ "name": "newVal",
362
+ "type": "address",
363
+ "indexed": true,
364
+ "internalType": "address"
365
+ }
366
+ ],
367
+ "anonymous": false
368
+ },
369
+ {
370
+ "type": "event",
371
+ "name": "SessionIssuerChanged",
372
+ "inputs": [
373
+ {
374
+ "name": "oldVal",
375
+ "type": "address",
376
+ "indexed": true,
377
+ "internalType": "address"
378
+ },
379
+ {
380
+ "name": "newVal",
381
+ "type": "address",
382
+ "indexed": true,
383
+ "internalType": "address"
384
+ }
385
+ ],
386
+ "anonymous": false
387
+ },
388
+ {
389
+ "type": "error",
390
+ "name": "InsufficientTrusteesForMode",
391
+ "inputs": [
392
+ {
393
+ "name": "mode",
394
+ "type": "uint8",
395
+ "internalType": "uint8"
396
+ },
397
+ {
398
+ "name": "actual",
399
+ "type": "uint256",
400
+ "internalType": "uint256"
401
+ },
402
+ {
403
+ "name": "required",
404
+ "type": "uint256",
405
+ "internalType": "uint256"
406
+ }
407
+ ]
408
+ },
409
+ {
410
+ "type": "error",
411
+ "name": "InvalidMode",
412
+ "inputs": [
413
+ {
414
+ "name": "mode",
415
+ "type": "uint8",
416
+ "internalType": "uint8"
417
+ }
418
+ ]
419
+ },
420
+ {
421
+ "type": "error",
422
+ "name": "NoInitialSigner",
423
+ "inputs": []
424
+ },
425
+ {
426
+ "type": "error",
427
+ "name": "NotGovernance",
428
+ "inputs": []
429
+ },
430
+ {
431
+ "type": "error",
432
+ "name": "SystemPaused",
433
+ "inputs": []
434
+ },
435
+ {
436
+ "type": "error",
437
+ "name": "TooManyInitialCustodians",
438
+ "inputs": [
439
+ {
440
+ "name": "actual",
441
+ "type": "uint256",
442
+ "internalType": "uint256"
443
+ },
444
+ {
445
+ "name": "max",
446
+ "type": "uint256",
447
+ "internalType": "uint256"
448
+ }
449
+ ]
450
+ },
451
+ {
452
+ "type": "error",
453
+ "name": "TrusteesRequiredForRecoverableMode",
454
+ "inputs": [
455
+ {
456
+ "name": "mode",
457
+ "type": "uint8",
458
+ "internalType": "uint8"
459
+ }
460
+ ]
461
+ },
462
+ {
463
+ "type": "error",
464
+ "name": "ZeroAddress",
465
+ "inputs": []
466
+ },
467
+ {
468
+ "type": "error",
469
+ "name": "ZeroGovernance",
470
+ "inputs": []
471
+ }
472
+ ]
@@ -6,6 +6,11 @@
6
6
  "name": "initializer_",
7
7
  "type": "address",
8
8
  "internalType": "address"
9
+ },
10
+ {
11
+ "name": "governance_",
12
+ "type": "address",
13
+ "internalType": "address"
9
14
  }
10
15
  ],
11
16
  "stateMutability": "nonpayable"
@@ -148,6 +153,19 @@
148
153
  ],
149
154
  "stateMutability": "view"
150
155
  },
156
+ {
157
+ "type": "function",
158
+ "name": "governance",
159
+ "inputs": [],
160
+ "outputs": [
161
+ {
162
+ "name": "",
163
+ "type": "address",
164
+ "internalType": "address"
165
+ }
166
+ ],
167
+ "stateMutability": "view"
168
+ },
151
169
  {
152
170
  "type": "function",
153
171
  "name": "initializeRoot",
@@ -328,6 +346,19 @@
328
346
  ],
329
347
  "stateMutability": "view"
330
348
  },
349
+ {
350
+ "type": "function",
351
+ "name": "paused",
352
+ "inputs": [],
353
+ "outputs": [
354
+ {
355
+ "name": "",
356
+ "type": "bool",
357
+ "internalType": "bool"
358
+ }
359
+ ],
360
+ "stateMutability": "view"
361
+ },
331
362
  {
332
363
  "type": "function",
333
364
  "name": "primaryName",
@@ -792,6 +823,11 @@
792
823
  "name": "NotAuthorized",
793
824
  "inputs": []
794
825
  },
826
+ {
827
+ "type": "error",
828
+ "name": "NotGovernance",
829
+ "inputs": []
830
+ },
795
831
  {
796
832
  "type": "error",
797
833
  "name": "NotInitializer",
@@ -818,6 +854,16 @@
818
854
  "name": "RootAlreadyInitialized",
819
855
  "inputs": []
820
856
  },
857
+ {
858
+ "type": "error",
859
+ "name": "SystemPaused",
860
+ "inputs": []
861
+ },
862
+ {
863
+ "type": "error",
864
+ "name": "ZeroGovernance",
865
+ "inputs": []
866
+ },
821
867
  {
822
868
  "type": "error",
823
869
  "name": "ZeroOwner",