@agenticprimitives/contracts 0.1.0-alpha.2

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 (84) hide show
  1. package/AUDIT.md +67 -0
  2. package/CLAUDE.md +40 -0
  3. package/LICENSE +21 -0
  4. package/README.md +45 -0
  5. package/deployments-anvil.json +1 -0
  6. package/deployments-base-sepolia.json +1 -0
  7. package/dist/abi/AgentNameAttributeResolver.json +798 -0
  8. package/dist/abi/AgentNamePredicates.json +1 -0
  9. package/dist/abi/AgentNameRegistry.json +826 -0
  10. package/dist/abi/AgentNameUniversalResolver.json +222 -0
  11. package/dist/abi/AgentProfilePredicates.json +1 -0
  12. package/dist/abi/AgentProfileResolver.json +1044 -0
  13. package/dist/abi/AgentRelationship.json +583 -0
  14. package/dist/abi/AgentRelationshipPredicates.json +1 -0
  15. package/dist/abi/AgenticGovernance.json +259 -0
  16. package/dist/abi/AllowedMethodsEnforcer.json +108 -0
  17. package/dist/abi/AllowedTargetsEnforcer.json +103 -0
  18. package/dist/abi/ApprovedHashRegistry.json +114 -0
  19. package/dist/abi/AttributeStorage.json +557 -0
  20. package/dist/abi/CaveatEnforcerBase.json +130 -0
  21. package/dist/abi/GovernanceManaged.json +43 -0
  22. package/dist/abi/IAttributeReader.json +98 -0
  23. package/dist/abi/ICaveatEnforcer.json +98 -0
  24. package/dist/abi/IDelegationManager.json +211 -0
  25. package/dist/abi/IERC7579Module.json +34 -0
  26. package/dist/abi/IERC7579ModuleLifecycle.json +60 -0
  27. package/dist/abi/IGovernanceView.json +34 -0
  28. package/dist/abi/MultiSendCallOnly.json +29 -0
  29. package/dist/abi/MultiSendCallOnlyHarness.json +42 -0
  30. package/dist/abi/OntologyTermRegistry.json +397 -0
  31. package/dist/abi/P256Verifier.json +1 -0
  32. package/dist/abi/PermissionlessSubregistry.json +207 -0
  33. package/dist/abi/RelationshipTypeRegistry.json +455 -0
  34. package/dist/abi/ShapeRegistry.json +627 -0
  35. package/dist/abi/SmartAgentModuleTypes.json +1 -0
  36. package/dist/abi/TimestampEnforcer.json +108 -0
  37. package/dist/abi/ValueEnforcer.json +103 -0
  38. package/dist/abi/WebAuthnLib.json +1 -0
  39. package/dist/abi/index.d.ts +35 -0
  40. package/dist/abi/index.js +35 -0
  41. package/package.json +48 -0
  42. package/spec.md +52 -0
  43. package/src/AgentAccount.sol +1374 -0
  44. package/src/AgentAccountFactory.sol +274 -0
  45. package/src/ApprovedHashRegistry.sol +57 -0
  46. package/src/IAgentAccount.sol +138 -0
  47. package/src/SmartAgentPaymaster.sol +281 -0
  48. package/src/UniversalSignatureValidator.sol +136 -0
  49. package/src/agency/DelegationManager.sol +374 -0
  50. package/src/agency/ICaveatEnforcer.sol +62 -0
  51. package/src/agency/IDelegationManager.sol +69 -0
  52. package/src/custody/CustodyPolicy.sol +892 -0
  53. package/src/custody/IERC7579Module.sol +60 -0
  54. package/src/enforcers/AllowedMethodsEnforcer.AUDIT.md +51 -0
  55. package/src/enforcers/AllowedMethodsEnforcer.sol +48 -0
  56. package/src/enforcers/AllowedTargetsEnforcer.AUDIT.md +49 -0
  57. package/src/enforcers/AllowedTargetsEnforcer.sol +44 -0
  58. package/src/enforcers/CaveatEnforcerBase.sol +19 -0
  59. package/src/enforcers/QuorumEnforcer.AUDIT.md +71 -0
  60. package/src/enforcers/QuorumEnforcer.sol +191 -0
  61. package/src/enforcers/TimestampEnforcer.AUDIT.md +50 -0
  62. package/src/enforcers/TimestampEnforcer.sol +43 -0
  63. package/src/enforcers/ValueEnforcer.AUDIT.md +51 -0
  64. package/src/enforcers/ValueEnforcer.sol +41 -0
  65. package/src/governance/AgenticGovernance.sol +140 -0
  66. package/src/governance/GovernanceManaged.sol +75 -0
  67. package/src/governance/IGovernance.sol +15 -0
  68. package/src/identity/AgentProfilePredicates.sol +40 -0
  69. package/src/identity/AgentProfileResolver.sol +194 -0
  70. package/src/libraries/MultiSendCallOnly.sol +95 -0
  71. package/src/libraries/P256Verifier.sol +47 -0
  72. package/src/libraries/SignatureSlotRecovery.sol +196 -0
  73. package/src/libraries/WebAuthnLib.sol +164 -0
  74. package/src/naming/AgentNameAttributeResolver.sol +95 -0
  75. package/src/naming/AgentNamePredicates.sol +74 -0
  76. package/src/naming/AgentNameRegistry.sol +362 -0
  77. package/src/naming/AgentNameUniversalResolver.sol +210 -0
  78. package/src/naming/PermissionlessSubregistry.sol +98 -0
  79. package/src/ontology/AttributeStorage.sol +289 -0
  80. package/src/ontology/OntologyTermRegistry.sol +146 -0
  81. package/src/ontology/ShapeRegistry.sol +240 -0
  82. package/src/relationships/AgentRelationship.sol +289 -0
  83. package/src/relationships/AgentRelationshipPredicates.sol +44 -0
  84. package/src/relationships/RelationshipTypeRegistry.sol +143 -0
@@ -0,0 +1,222 @@
1
+ [
2
+ {
3
+ "type": "constructor",
4
+ "inputs": [
5
+ {
6
+ "name": "registry",
7
+ "type": "address",
8
+ "internalType": "contract AgentNameRegistry"
9
+ }
10
+ ],
11
+ "stateMutability": "nonpayable"
12
+ },
13
+ {
14
+ "type": "function",
15
+ "name": "REGISTRY",
16
+ "inputs": [],
17
+ "outputs": [
18
+ {
19
+ "name": "",
20
+ "type": "address",
21
+ "internalType": "contract AgentNameRegistry"
22
+ }
23
+ ],
24
+ "stateMutability": "view"
25
+ },
26
+ {
27
+ "type": "function",
28
+ "name": "getChildren",
29
+ "inputs": [
30
+ {
31
+ "name": "parentNode",
32
+ "type": "bytes32",
33
+ "internalType": "bytes32"
34
+ }
35
+ ],
36
+ "outputs": [
37
+ {
38
+ "name": "childNodes",
39
+ "type": "bytes32[]",
40
+ "internalType": "bytes32[]"
41
+ },
42
+ {
43
+ "name": "owners",
44
+ "type": "address[]",
45
+ "internalType": "address[]"
46
+ }
47
+ ],
48
+ "stateMutability": "view"
49
+ },
50
+ {
51
+ "type": "function",
52
+ "name": "nameOf",
53
+ "inputs": [
54
+ {
55
+ "name": "node",
56
+ "type": "bytes32",
57
+ "internalType": "bytes32"
58
+ }
59
+ ],
60
+ "outputs": [
61
+ {
62
+ "name": "",
63
+ "type": "string",
64
+ "internalType": "string"
65
+ }
66
+ ],
67
+ "stateMutability": "view"
68
+ },
69
+ {
70
+ "type": "function",
71
+ "name": "resolveAddress",
72
+ "inputs": [
73
+ {
74
+ "name": "node",
75
+ "type": "bytes32",
76
+ "internalType": "bytes32"
77
+ },
78
+ {
79
+ "name": "predicate",
80
+ "type": "bytes32",
81
+ "internalType": "bytes32"
82
+ }
83
+ ],
84
+ "outputs": [
85
+ {
86
+ "name": "",
87
+ "type": "address",
88
+ "internalType": "address"
89
+ }
90
+ ],
91
+ "stateMutability": "view"
92
+ },
93
+ {
94
+ "type": "function",
95
+ "name": "resolveBytes32",
96
+ "inputs": [
97
+ {
98
+ "name": "node",
99
+ "type": "bytes32",
100
+ "internalType": "bytes32"
101
+ },
102
+ {
103
+ "name": "predicate",
104
+ "type": "bytes32",
105
+ "internalType": "bytes32"
106
+ }
107
+ ],
108
+ "outputs": [
109
+ {
110
+ "name": "",
111
+ "type": "bytes32",
112
+ "internalType": "bytes32"
113
+ }
114
+ ],
115
+ "stateMutability": "view"
116
+ },
117
+ {
118
+ "type": "function",
119
+ "name": "resolveName",
120
+ "inputs": [
121
+ {
122
+ "name": "node",
123
+ "type": "bytes32",
124
+ "internalType": "bytes32"
125
+ }
126
+ ],
127
+ "outputs": [
128
+ {
129
+ "name": "",
130
+ "type": "address",
131
+ "internalType": "address"
132
+ }
133
+ ],
134
+ "stateMutability": "view"
135
+ },
136
+ {
137
+ "type": "function",
138
+ "name": "resolveString",
139
+ "inputs": [
140
+ {
141
+ "name": "node",
142
+ "type": "bytes32",
143
+ "internalType": "bytes32"
144
+ },
145
+ {
146
+ "name": "predicate",
147
+ "type": "bytes32",
148
+ "internalType": "bytes32"
149
+ }
150
+ ],
151
+ "outputs": [
152
+ {
153
+ "name": "",
154
+ "type": "string",
155
+ "internalType": "string"
156
+ }
157
+ ],
158
+ "stateMutability": "view"
159
+ },
160
+ {
161
+ "type": "function",
162
+ "name": "resolveStringBatch",
163
+ "inputs": [
164
+ {
165
+ "name": "node",
166
+ "type": "bytes32",
167
+ "internalType": "bytes32"
168
+ },
169
+ {
170
+ "name": "predicates",
171
+ "type": "bytes32[]",
172
+ "internalType": "bytes32[]"
173
+ }
174
+ ],
175
+ "outputs": [
176
+ {
177
+ "name": "values",
178
+ "type": "string[]",
179
+ "internalType": "string[]"
180
+ }
181
+ ],
182
+ "stateMutability": "view"
183
+ },
184
+ {
185
+ "type": "function",
186
+ "name": "reverseResolve",
187
+ "inputs": [
188
+ {
189
+ "name": "agent",
190
+ "type": "address",
191
+ "internalType": "address"
192
+ }
193
+ ],
194
+ "outputs": [
195
+ {
196
+ "name": "node",
197
+ "type": "bytes32",
198
+ "internalType": "bytes32"
199
+ }
200
+ ],
201
+ "stateMutability": "view"
202
+ },
203
+ {
204
+ "type": "function",
205
+ "name": "reverseResolveString",
206
+ "inputs": [
207
+ {
208
+ "name": "agent",
209
+ "type": "address",
210
+ "internalType": "address"
211
+ }
212
+ ],
213
+ "outputs": [
214
+ {
215
+ "name": "",
216
+ "type": "string",
217
+ "internalType": "string"
218
+ }
219
+ ],
220
+ "stateMutability": "view"
221
+ }
222
+ ]
@@ -0,0 +1 @@
1
+ []