@agentic-trust/agentic-trust-sdk 1.0.43
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/LICENSE +22 -0
- package/README.md +213 -0
- package/abis/BaseRegistrarImplementation.json +1013 -0
- package/abis/ETHRegistrarController.json +1004 -0
- package/abis/IdentityRegistry.json +1044 -0
- package/abis/NameWrapper.json +2026 -0
- package/abis/PublicResolver.json +1772 -0
- package/abis/ReputationRegistry.json +701 -0
- package/abis/ValidationRegistry.json +505 -0
- package/dist/AIAgentAssociationClient.d.ts +58 -0
- package/dist/AIAgentAssociationClient.d.ts.map +1 -0
- package/dist/AIAgentAssociationClient.js +100 -0
- package/dist/AIAgentAssociationClient.js.map +1 -0
- package/dist/AIAgentDiscoveryClient.d.ts +673 -0
- package/dist/AIAgentDiscoveryClient.d.ts.map +1 -0
- package/dist/AIAgentDiscoveryClient.js +3184 -0
- package/dist/AIAgentDiscoveryClient.js.map +1 -0
- package/dist/AIAgentENSClient.d.ts +149 -0
- package/dist/AIAgentENSClient.d.ts.map +1 -0
- package/dist/AIAgentENSClient.js +958 -0
- package/dist/AIAgentENSClient.js.map +1 -0
- package/dist/AIAgentIdentityClient.d.ts +159 -0
- package/dist/AIAgentIdentityClient.d.ts.map +1 -0
- package/dist/AIAgentIdentityClient.js +660 -0
- package/dist/AIAgentIdentityClient.js.map +1 -0
- package/dist/AIAgentL2ENSDurenClient.d.ts +120 -0
- package/dist/AIAgentL2ENSDurenClient.d.ts.map +1 -0
- package/dist/AIAgentL2ENSDurenClient.js +735 -0
- package/dist/AIAgentL2ENSDurenClient.js.map +1 -0
- package/dist/AIAgentL2ENSNamespaceClient.d.ts +58 -0
- package/dist/AIAgentL2ENSNamespaceClient.d.ts.map +1 -0
- package/dist/AIAgentL2ENSNamespaceClient.js +214 -0
- package/dist/AIAgentL2ENSNamespaceClient.js.map +1 -0
- package/dist/AIAgentReputationClient.d.ts +69 -0
- package/dist/AIAgentReputationClient.d.ts.map +1 -0
- package/dist/AIAgentReputationClient.js +203 -0
- package/dist/AIAgentReputationClient.js.map +1 -0
- package/dist/AIAgentValidationClient.d.ts +60 -0
- package/dist/AIAgentValidationClient.d.ts.map +1 -0
- package/dist/AIAgentValidationClient.js +123 -0
- package/dist/AIAgentValidationClient.js.map +1 -0
- package/dist/OrgIdentityClient.d.ts +27 -0
- package/dist/OrgIdentityClient.d.ts.map +1 -0
- package/dist/OrgIdentityClient.js +169 -0
- package/dist/OrgIdentityClient.js.map +1 -0
- package/dist/abis/BaseRegistrarImplementation.json +1013 -0
- package/dist/abis/ETHRegistrarController.json +1004 -0
- package/dist/abis/IdentityRegistry.json +1044 -0
- package/dist/abis/NameWrapper.json +2026 -0
- package/dist/abis/PublicResolver.json +1772 -0
- package/dist/abis/ReputationRegistry.json +701 -0
- package/dist/abis/ValidationRegistry.json +505 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +24 -0
- package/dist/index.js.map +1 -0
- package/dist/schema.d.ts +13 -0
- package/dist/schema.d.ts.map +1 -0
- package/dist/schema.js +696 -0
- package/dist/schema.js.map +1 -0
- package/dist/schemaKb.d.ts +12 -0
- package/dist/schemaKb.d.ts.map +1 -0
- package/dist/schemaKb.js +593 -0
- package/dist/schemaKb.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/utils/did8004.d.ts +57 -0
- package/dist/utils/did8004.d.ts.map +1 -0
- package/dist/utils/did8004.js +127 -0
- package/dist/utils/did8004.js.map +1 -0
- package/dist/utils/didEns.d.ts +46 -0
- package/dist/utils/didEns.d.ts.map +1 -0
- package/dist/utils/didEns.js +107 -0
- package/dist/utils/didEns.js.map +1 -0
- package/dist/utils/didEthr.d.ts +40 -0
- package/dist/utils/didEthr.d.ts.map +1 -0
- package/dist/utils/didEthr.js +87 -0
- package/dist/utils/didEthr.js.map +1 -0
- package/package.json +79 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AIAgentL2ENSDurenClient.js","sourceRoot":"","sources":["../AIAgentL2ENSDurenClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { AIAgentENSClient } from './AIAgentENSClient';
|
|
2
|
+
export declare class AIAgentL2ENSNamespaceClient extends AIAgentENSClient {
|
|
3
|
+
private namespaceClient;
|
|
4
|
+
constructor(chain: any, rpcUrl: string, adapter: any, ensRegistryAddress: `0x${string}`, ensResolverAddress: `0x${string}`, identityRegistryAddress: `0x${string}`);
|
|
5
|
+
/**
|
|
6
|
+
* Override to ensure L2 client always returns true for isL2()
|
|
7
|
+
*/
|
|
8
|
+
isL2(): boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Override to ensure L2 client always returns false for isL1()
|
|
11
|
+
*/
|
|
12
|
+
isL1(): boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Override to ensure L2 client always returns 'L2'
|
|
15
|
+
*/
|
|
16
|
+
getChainType(): 'L1' | 'L2';
|
|
17
|
+
private initializeNamespaceClient;
|
|
18
|
+
getAgentUrlByName(name: string): Promise<string | null>;
|
|
19
|
+
/**
|
|
20
|
+
* Override getAgentAccountByName to use namespace.ninja for L2 availability checking
|
|
21
|
+
*/
|
|
22
|
+
getAgentAccountByName(name: string): Promise<`0x${string}` | null>;
|
|
23
|
+
/**
|
|
24
|
+
* Get the namespace client instance
|
|
25
|
+
*/
|
|
26
|
+
getNamespaceClient(): any;
|
|
27
|
+
/**
|
|
28
|
+
* Note: getAgentEoaByAgentAccount is not a method of AIAgentENSClient
|
|
29
|
+
* This method is actually in AIAgentIdentityClient, so we don't need to override it here.
|
|
30
|
+
* The ownership detection logic is handled in the UI layer (AddAgentModal.tsx)
|
|
31
|
+
*/
|
|
32
|
+
/**
|
|
33
|
+
* Override hasAgentNameOwner to use namespace.ninja for L2 availability checking
|
|
34
|
+
*/
|
|
35
|
+
hasAgentNameOwner(orgName: string, agentName: string): Promise<boolean>;
|
|
36
|
+
/**
|
|
37
|
+
* Override prepareAddAgentNameToOrgCalls to use namespace.ninja SDK for L2
|
|
38
|
+
*/
|
|
39
|
+
prepareAddAgentNameToOrgCalls(params: {
|
|
40
|
+
agentAddress: `0x${string}`;
|
|
41
|
+
orgName: string;
|
|
42
|
+
agentName: string;
|
|
43
|
+
agentUrl: string;
|
|
44
|
+
}): Promise<{
|
|
45
|
+
calls: {
|
|
46
|
+
to: `0x${string}`;
|
|
47
|
+
data: `0x${string}`;
|
|
48
|
+
value?: bigint;
|
|
49
|
+
}[];
|
|
50
|
+
}>;
|
|
51
|
+
prepareSetNameUriCalls(name: string, uri: string): Promise<{
|
|
52
|
+
calls: {
|
|
53
|
+
to: `0x${string}`;
|
|
54
|
+
data: `0x${string}`;
|
|
55
|
+
}[];
|
|
56
|
+
}>;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=AIAgentL2ENSNamespaceClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AIAgentL2ENSNamespaceClient.d.ts","sourceRoot":"","sources":["../AIAgentL2ENSNamespaceClient.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAMtD,qBAAa,2BAA4B,SAAQ,gBAAgB;IAC/D,OAAO,CAAC,eAAe,CAAa;gBAGlC,KAAK,EAAE,GAAG,EACV,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,GAAG,EACZ,kBAAkB,EAAE,KAAK,MAAM,EAAE,EACjC,kBAAkB,EAAE,KAAK,MAAM,EAAE,EACjC,uBAAuB,EAAE,KAAK,MAAM,EAAE;IAMxC;;OAEG;IACH,IAAI,IAAI,OAAO;IAIf;;OAEG;IACH,IAAI,IAAI,OAAO;IAIf;;OAEG;IACH,YAAY,IAAI,IAAI,GAAG,IAAI;IAI3B,OAAO,CAAC,yBAAyB;IAkB3B,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA8B7D;;OAEG;IACG,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,MAAM,EAAE,GAAG,IAAI,CAAC;IA8BxE;;OAEG;IACH,kBAAkB,IAAI,GAAG;IAIzB;;;;OAIG;IAEH;;OAEG;IACG,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyB7E;;OAEG;IACG,6BAA6B,CAAC,MAAM,EAAE;QAC1C,YAAY,EAAE,KAAK,MAAM,EAAE,CAAC;QAC5B,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAA;KACjB,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE;YAAE,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;YAAC,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAAE,CAAC;IAwE9E,sBAAsB,CAC1B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;QAAE,KAAK,EAAE;YAAE,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;YAAC,IAAI,EAAE,KAAK,MAAM,EAAE,CAAA;SAAE,EAAE,CAAA;KAAE,CAAC;CASpE"}
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* L2 ENS Client for Base Sepolia and Optimism Sepolia
|
|
3
|
+
* Extends AIAgentENSClient with namespace.ninja integration for L2 subname operations
|
|
4
|
+
*/
|
|
5
|
+
import { encodeFunctionData, namehash } from 'viem';
|
|
6
|
+
import { AIAgentENSClient } from './AIAgentENSClient';
|
|
7
|
+
// @ts-ignore - @thenamespace/mint-manager doesn't have type definitions
|
|
8
|
+
import { createMintClient } from '@thenamespace/mint-manager';
|
|
9
|
+
import { createIndexerClient } from '@thenamespace/indexer';
|
|
10
|
+
import { sepolia, baseSepolia, optimismSepolia } from 'viem/chains';
|
|
11
|
+
export class AIAgentL2ENSNamespaceClient extends AIAgentENSClient {
|
|
12
|
+
namespaceClient = null;
|
|
13
|
+
constructor(chain, rpcUrl, adapter, ensRegistryAddress, ensResolverAddress, identityRegistryAddress) {
|
|
14
|
+
super(chain, rpcUrl, adapter, ensRegistryAddress, ensResolverAddress, identityRegistryAddress);
|
|
15
|
+
this.initializeNamespaceClient();
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Override to ensure L2 client always returns true for isL2()
|
|
19
|
+
*/
|
|
20
|
+
isL2() {
|
|
21
|
+
return true; // This is always an L2 client
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Override to ensure L2 client always returns false for isL1()
|
|
25
|
+
*/
|
|
26
|
+
isL1() {
|
|
27
|
+
return false; // This is never an L1 client
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Override to ensure L2 client always returns 'L2'
|
|
31
|
+
*/
|
|
32
|
+
getChainType() {
|
|
33
|
+
return 'L2';
|
|
34
|
+
}
|
|
35
|
+
initializeNamespaceClient() {
|
|
36
|
+
try {
|
|
37
|
+
const client = createMintClient({
|
|
38
|
+
isTestnet: true, // Use testnet (sepolia)
|
|
39
|
+
cursomRpcUrls: {
|
|
40
|
+
[sepolia.id]: process.env.ETH_SEPOLIA_RPC_URL || '',
|
|
41
|
+
[baseSepolia.id]: process.env.BASE_SEPOLIA_RPC_URL || '',
|
|
42
|
+
[optimismSepolia.id]: process.env.OP_SEPOLIA_RPC_URL || '',
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
this.namespaceClient = client;
|
|
46
|
+
console.info('Namespace.ninja L2 client initialized successfully');
|
|
47
|
+
}
|
|
48
|
+
catch (error) {
|
|
49
|
+
console.error('Failed to initialize namespace.ninja L2 client:', error);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
async getAgentUrlByName(name) {
|
|
53
|
+
// If standard lookup fails and we have namespace client, try L2 lookup
|
|
54
|
+
if (this.namespaceClient) {
|
|
55
|
+
try {
|
|
56
|
+
const chainId = this.chain.id;
|
|
57
|
+
const isAvailable = await this.namespaceClient.isL2SubnameAvailable(name, chainId);
|
|
58
|
+
if (!isAvailable) {
|
|
59
|
+
const client = createIndexerClient();
|
|
60
|
+
const subname = await client.getL2Subname({
|
|
61
|
+
chainId: this.chain.id,
|
|
62
|
+
nameOrNamehash: namehash(name)
|
|
63
|
+
});
|
|
64
|
+
console.info("subname for name: ", name, " is: ", subname);
|
|
65
|
+
if (subname) {
|
|
66
|
+
if (subname.records?.texts?.url) {
|
|
67
|
+
const url = subname.records?.texts?.url;
|
|
68
|
+
return url;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
75
|
+
console.error('Error checking L2 subname availability 1:', error);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Override getAgentAccountByName to use namespace.ninja for L2 availability checking
|
|
82
|
+
*/
|
|
83
|
+
async getAgentAccountByName(name) {
|
|
84
|
+
console.info("AIAgentL2ENSClient.getAgentAccountByName: ", name);
|
|
85
|
+
// If standard lookup fails and we have namespace client, try L2 lookup
|
|
86
|
+
if (this.namespaceClient) {
|
|
87
|
+
try {
|
|
88
|
+
const chainId = this.chain.id;
|
|
89
|
+
const isAvailable = await this.namespaceClient.isL2SubnameAvailable(name, chainId);
|
|
90
|
+
if (!isAvailable) {
|
|
91
|
+
console.info("AIAgentL2ENSClient.getAgentAccountByName: not available");
|
|
92
|
+
const client = createIndexerClient();
|
|
93
|
+
const subname = await client.getL2Subname({
|
|
94
|
+
chainId: this.chain.id,
|
|
95
|
+
nameOrNamehash: namehash(name)
|
|
96
|
+
});
|
|
97
|
+
console.info("AIAgentL2ENSClient.getAgentAccountByName: subname: ", subname);
|
|
98
|
+
if (subname) {
|
|
99
|
+
console.info("AIAgentL2ENSClient.getAgentAccountByName: subname.owner: ", subname.owner);
|
|
100
|
+
return subname.owner;
|
|
101
|
+
}
|
|
102
|
+
return null;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
catch (error) {
|
|
106
|
+
console.error('Error checking L2 subname availability 2:', error);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
return null;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Get the namespace client instance
|
|
113
|
+
*/
|
|
114
|
+
getNamespaceClient() {
|
|
115
|
+
return this.namespaceClient;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Note: getAgentEoaByAgentAccount is not a method of AIAgentENSClient
|
|
119
|
+
* This method is actually in AIAgentIdentityClient, so we don't need to override it here.
|
|
120
|
+
* The ownership detection logic is handled in the UI layer (AddAgentModal.tsx)
|
|
121
|
+
*/
|
|
122
|
+
/**
|
|
123
|
+
* Override hasAgentNameOwner to use namespace.ninja for L2 availability checking
|
|
124
|
+
*/
|
|
125
|
+
async hasAgentNameOwner(orgName, agentName) {
|
|
126
|
+
console.info("AIAgentL2ENSNamespaceClient.hasAgentNameOwner");
|
|
127
|
+
const clean = (s) => (s || '').trim().toLowerCase();
|
|
128
|
+
const parent = clean(orgName) + ".eth";
|
|
129
|
+
const label = clean(agentName).replace(/\s+/g, '-');
|
|
130
|
+
const fullSubname = `${label}.${parent}`;
|
|
131
|
+
// Use namespace.ninja to check if subname exists
|
|
132
|
+
if (this.namespaceClient) {
|
|
133
|
+
try {
|
|
134
|
+
const chainId = this.chain.id;
|
|
135
|
+
const isAvailable = await this.namespaceClient.isL2SubnameAvailable(fullSubname, chainId);
|
|
136
|
+
const hasOwner = !isAvailable; // If not available, it has an owner
|
|
137
|
+
console.info(`AIAgentL2ENSNamespaceClient.hasAgentNameOwner: "${fullSubname}" ${hasOwner ? 'HAS owner' : 'has NO owner'}`);
|
|
138
|
+
return hasOwner;
|
|
139
|
+
}
|
|
140
|
+
catch (error) {
|
|
141
|
+
console.error('Error checking agent name owner:', error);
|
|
142
|
+
return false;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
return false;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Override prepareAddAgentNameToOrgCalls to use namespace.ninja SDK for L2
|
|
149
|
+
*/
|
|
150
|
+
async prepareAddAgentNameToOrgCalls(params) {
|
|
151
|
+
console.log("AIAgentL2ENSClient.prepareAddAgentNameToOrgCalls");
|
|
152
|
+
console.log("orgName: ", params.orgName);
|
|
153
|
+
console.log("agentName: ", params.agentName);
|
|
154
|
+
console.log("agentAddress: ", params.agentAddress);
|
|
155
|
+
const clean = (s) => (s || '').trim().toLowerCase();
|
|
156
|
+
const parent = clean(params.orgName) + ".eth";
|
|
157
|
+
const label = clean(params.agentName).replace(/\s+/g, '-');
|
|
158
|
+
const fullSubname = `${label}.${parent}.eth`;
|
|
159
|
+
const agentAddress = params.agentAddress;
|
|
160
|
+
const agentUrl = params.agentUrl;
|
|
161
|
+
const chainName = this.chain.name.toLowerCase().replace(/\s+/g, '-');
|
|
162
|
+
console.info("parent: ", parent);
|
|
163
|
+
console.info("label: ", label);
|
|
164
|
+
console.info("agentAddress: ", agentAddress);
|
|
165
|
+
console.info("chainName: ", chainName);
|
|
166
|
+
console.info("agentUrl: ", agentUrl);
|
|
167
|
+
// Prepare mint transaction parameters using namespace.ninja SDK
|
|
168
|
+
const mintRequest = {
|
|
169
|
+
parentName: parent, // e.g., "theorg.eth"
|
|
170
|
+
label: label, // e.g., "atl-test-1"
|
|
171
|
+
owner: agentAddress,
|
|
172
|
+
minterAddress: agentAddress,
|
|
173
|
+
records: {
|
|
174
|
+
texts: [
|
|
175
|
+
{ key: 'name', value: label },
|
|
176
|
+
{ key: 'url', value: agentUrl },
|
|
177
|
+
{ key: 'description', value: `Agent: ${label}` },
|
|
178
|
+
{ key: 'chain', value: chainName },
|
|
179
|
+
{ key: 'agent-account', value: agentAddress },
|
|
180
|
+
],
|
|
181
|
+
addresses: [
|
|
182
|
+
{
|
|
183
|
+
chain: 60, // Ethereum coin type
|
|
184
|
+
value: agentAddress
|
|
185
|
+
},
|
|
186
|
+
],
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
console.info("mintRequest: ", mintRequest);
|
|
190
|
+
const mintParams = await this.namespaceClient.getMintTransactionParameters(mintRequest);
|
|
191
|
+
console.info("mintParams: ", mintParams);
|
|
192
|
+
const { to, data, value } = {
|
|
193
|
+
to: mintParams.contractAddress,
|
|
194
|
+
data: encodeFunctionData({
|
|
195
|
+
abi: mintParams.abi,
|
|
196
|
+
functionName: mintParams.functionName,
|
|
197
|
+
args: mintParams.args,
|
|
198
|
+
}),
|
|
199
|
+
value: mintParams.value || 0n
|
|
200
|
+
};
|
|
201
|
+
const rtnCalls = [{
|
|
202
|
+
to: to,
|
|
203
|
+
data: data,
|
|
204
|
+
value: value,
|
|
205
|
+
}];
|
|
206
|
+
// Return the mint transaction parameters as calls
|
|
207
|
+
return { calls: rtnCalls };
|
|
208
|
+
}
|
|
209
|
+
async prepareSetNameUriCalls(name, uri) {
|
|
210
|
+
const calls = [];
|
|
211
|
+
return { calls };
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
//# sourceMappingURL=AIAgentL2ENSNamespaceClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AIAgentL2ENSNamespaceClient.js","sourceRoot":"","sources":["../AIAgentL2ENSNamespaceClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { ReputationClient as BaseReputationClient, AccountProvider, type TxRequest } from '@agentic-trust/8004-sdk';
|
|
2
|
+
import type { MetadataEntry } from '@agentic-trust/8004-sdk';
|
|
3
|
+
export interface GiveFeedbackParams {
|
|
4
|
+
agent: string;
|
|
5
|
+
score: number;
|
|
6
|
+
feedback: string;
|
|
7
|
+
metadata?: MetadataEntry[];
|
|
8
|
+
tag1?: string;
|
|
9
|
+
tag2?: string;
|
|
10
|
+
endpoint?: string;
|
|
11
|
+
feedbackHash?: string;
|
|
12
|
+
feedbackUri?: string;
|
|
13
|
+
agentId?: string;
|
|
14
|
+
feedbackAuth?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface AppendToFeedbackParams {
|
|
17
|
+
agentId: string | number | bigint;
|
|
18
|
+
clientAddress: `0x${string}`;
|
|
19
|
+
feedbackIndex: string | number | bigint;
|
|
20
|
+
responseUri?: string;
|
|
21
|
+
responseHash?: `0x${string}`;
|
|
22
|
+
}
|
|
23
|
+
export declare class AIAgentReputationClient extends BaseReputationClient {
|
|
24
|
+
private chain;
|
|
25
|
+
private accountProvider;
|
|
26
|
+
private ensRegistryAddress;
|
|
27
|
+
private reputationAddress;
|
|
28
|
+
private publicClient;
|
|
29
|
+
constructor(accountProvider: AccountProvider, registrationRegistryAddress: `0x${string}`, identityRegistryAddress: `0x${string}`, ensRegistryAddress: `0x${string}`);
|
|
30
|
+
getIdentityRegistry(): Promise<string>;
|
|
31
|
+
getLastIndex(agentId: bigint, clientAddress: string): Promise<bigint>;
|
|
32
|
+
createFeedbackAuth(agentId: bigint, clientAddress: string, indexLimit: bigint, expiry: bigint, chainId: bigint, signerAddress: string): any;
|
|
33
|
+
signFeedbackAuth(auth: any): Promise<string>;
|
|
34
|
+
static create(accountProvider: AccountProvider, identityRegistryAddress: `0x${string}`, registrationRegistryAddress: `0x${string}`, ensRegistryAddress: `0x${string}`): Promise<AIAgentReputationClient>;
|
|
35
|
+
/**
|
|
36
|
+
* Submit feedback for an agent
|
|
37
|
+
* Updated ABI:
|
|
38
|
+
* giveFeedback(uint256 agentId, uint8 score, string tag1, string tag2, string endpoint, string feedbackURI, bytes32 feedbackHash)
|
|
39
|
+
*
|
|
40
|
+
* @param params - Feedback parameters (score is MUST, others are OPTIONAL)
|
|
41
|
+
* @returns Transaction result
|
|
42
|
+
*/
|
|
43
|
+
giveClientFeedback(params: GiveFeedbackParams): Promise<{
|
|
44
|
+
txHash: string;
|
|
45
|
+
}>;
|
|
46
|
+
/**
|
|
47
|
+
* Prepare the giveFeedback transaction data without sending it.
|
|
48
|
+
*/
|
|
49
|
+
prepareGiveFeedbackTx(params: GiveFeedbackParams): Promise<TxRequest>;
|
|
50
|
+
/**
|
|
51
|
+
* Append a response to an existing feedback entry for an agent.
|
|
52
|
+
*
|
|
53
|
+
* Wraps the ReputationRegistry `appendResponse(agentId, clientAddress, feedbackIndex, responseUri, responseHash)`
|
|
54
|
+
* function using the same AccountProvider / ClientApp wiring as giveClientFeedback.
|
|
55
|
+
*/
|
|
56
|
+
appendToFeedback(params: AppendToFeedbackParams): Promise<{
|
|
57
|
+
txHash: string;
|
|
58
|
+
}>;
|
|
59
|
+
/**
|
|
60
|
+
* Revoke a previously submitted feedback entry for an agent.
|
|
61
|
+
*
|
|
62
|
+
* This wraps the ReputationRegistry `revokeFeedback(uint256 tokenId, uint256 feedbackIndex)`
|
|
63
|
+
* function using the same AccountProvider / ClientApp wiring as giveClientFeedback.
|
|
64
|
+
*/
|
|
65
|
+
revokeFeedback(agentId: bigint, feedbackIndex: bigint): Promise<{
|
|
66
|
+
txHash: string;
|
|
67
|
+
}>;
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=AIAgentReputationClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AIAgentReputationClient.d.ts","sourceRoot":"","sources":["../AIAgentReputationClient.ts"],"names":[],"mappings":"AASA,OAAO,EACL,gBAAgB,IAAI,oBAAoB,EACxC,eAAe,EACf,KAAK,SAAS,EACf,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAClC,aAAa,EAAE,KAAK,MAAM,EAAE,CAAC;IAC7B,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;CAC9B;AAED,qBAAa,uBAAwB,SAAQ,oBAAoB;IAC/D,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,iBAAiB,CAAgB;IACzC,OAAO,CAAC,YAAY,CAA6B;gBAG/C,eAAe,EAAE,eAAe,EAChC,2BAA2B,EAAE,KAAK,MAAM,EAAE,EAC1C,uBAAuB,EAAE,KAAK,MAAM,EAAE,EACtC,kBAAkB,EAAE,KAAK,MAAM,EAAE;IAuCnC,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC;IAGtC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAGrE,kBAAkB,CAChB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,GACpB,GAAG;IAaN,gBAAgB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;WAK/B,MAAM,CACjB,eAAe,EAAE,eAAe,EAChC,uBAAuB,EAAE,KAAK,MAAM,EAAE,EACtC,2BAA2B,EAAE,KAAK,MAAM,EAAE,EAC1C,kBAAkB,EAAE,KAAK,MAAM,EAAE,GAChC,OAAO,CAAC,uBAAuB,CAAC;IAUnC;;;;;;;OAOG;IACG,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAwDjF;;OAEG;IACG,qBAAqB,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC;IAoC3E;;;;;OAKG;IACG,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IA4BnF;;;;;OAKG;IACG,cAAc,CAClB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAmB/B"}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
import { ethers } from 'ethers';
|
|
2
|
+
import { sepolia } from 'viem/chains';
|
|
3
|
+
import { ReputationClient as BaseReputationClient, } from '@agentic-trust/8004-sdk';
|
|
4
|
+
import ReputationRegistryABI from './abis/ReputationRegistry.json';
|
|
5
|
+
export class AIAgentReputationClient extends BaseReputationClient {
|
|
6
|
+
chain;
|
|
7
|
+
accountProvider;
|
|
8
|
+
ensRegistryAddress;
|
|
9
|
+
reputationAddress;
|
|
10
|
+
publicClient = null;
|
|
11
|
+
constructor(accountProvider, registrationRegistryAddress, identityRegistryAddress, ensRegistryAddress) {
|
|
12
|
+
// For now, we still need to pass a BlockchainAdapter to BaseReputationClient
|
|
13
|
+
// TODO: Update BaseReputationClient to use AccountProvider
|
|
14
|
+
// We'll create a minimal adapter wrapper for compatibility
|
|
15
|
+
const minimalAdapter = {
|
|
16
|
+
call: async (to, abi, functionName, args) => {
|
|
17
|
+
return accountProvider?.call({ to: to, abi, functionName, args });
|
|
18
|
+
},
|
|
19
|
+
send: async (to, abi, functionName, args) => {
|
|
20
|
+
const data = await accountProvider?.encodeFunctionData({ abi, functionName, args: args || [] });
|
|
21
|
+
if (data) {
|
|
22
|
+
const tx = { to: to, data };
|
|
23
|
+
const result = await accountProvider?.send(tx);
|
|
24
|
+
return { hash: result?.hash, txHash: result?.hash };
|
|
25
|
+
}
|
|
26
|
+
return { hash: undefined, txHash: undefined };
|
|
27
|
+
},
|
|
28
|
+
signMessage: async (message) => {
|
|
29
|
+
return accountProvider?.signMessage(message);
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
super(minimalAdapter, registrationRegistryAddress, identityRegistryAddress);
|
|
33
|
+
this.chain = sepolia;
|
|
34
|
+
this.accountProvider = accountProvider;
|
|
35
|
+
this.reputationAddress = registrationRegistryAddress;
|
|
36
|
+
this.ensRegistryAddress = ensRegistryAddress;
|
|
37
|
+
// Try to extract publicClient from AccountProvider if it's a ViemAccountProvider
|
|
38
|
+
const viemProvider = accountProvider;
|
|
39
|
+
if (viemProvider.publicClient) {
|
|
40
|
+
this.publicClient = viemProvider.publicClient;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
// Expose base-class methods so TypeScript recognizes them on this subclass
|
|
44
|
+
getIdentityRegistry() {
|
|
45
|
+
return BaseReputationClient.prototype.getIdentityRegistry.call(this);
|
|
46
|
+
}
|
|
47
|
+
getLastIndex(agentId, clientAddress) {
|
|
48
|
+
return BaseReputationClient.prototype.getLastIndex.call(this, agentId, clientAddress);
|
|
49
|
+
}
|
|
50
|
+
createFeedbackAuth(agentId, clientAddress, indexLimit, expiry, chainId, signerAddress) {
|
|
51
|
+
console.info("----------> createFeedbackAuth", agentId, clientAddress, indexLimit, expiry, chainId, signerAddress);
|
|
52
|
+
return BaseReputationClient.prototype.createFeedbackAuth.call(this, agentId, clientAddress, indexLimit, expiry, chainId, signerAddress);
|
|
53
|
+
}
|
|
54
|
+
signFeedbackAuth(auth) {
|
|
55
|
+
return BaseReputationClient.prototype.signFeedbackAuth.call(this, auth);
|
|
56
|
+
}
|
|
57
|
+
// Factory: resolve identityRegistry from reputation/registration registry before constructing
|
|
58
|
+
static async create(accountProvider, identityRegistryAddress, registrationRegistryAddress, ensRegistryAddress) {
|
|
59
|
+
return new AIAgentReputationClient(accountProvider, registrationRegistryAddress, identityRegistryAddress, ensRegistryAddress);
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Submit feedback for an agent
|
|
63
|
+
* Updated ABI:
|
|
64
|
+
* giveFeedback(uint256 agentId, uint8 score, string tag1, string tag2, string endpoint, string feedbackURI, bytes32 feedbackHash)
|
|
65
|
+
*
|
|
66
|
+
* @param params - Feedback parameters (score is MUST, others are OPTIONAL)
|
|
67
|
+
* @returns Transaction result
|
|
68
|
+
*/
|
|
69
|
+
async giveClientFeedback(params) {
|
|
70
|
+
// Validate score is 0-100 (MUST per spec)
|
|
71
|
+
if (params.score < 0 || params.score > 100) {
|
|
72
|
+
throw new Error('Score MUST be between 0 and 100');
|
|
73
|
+
}
|
|
74
|
+
const tag1 = params.tag1 || '';
|
|
75
|
+
const tag2 = params.tag2 || '';
|
|
76
|
+
const endpoint = params.endpoint || '';
|
|
77
|
+
const feedbackHash = params.feedbackHash || ethers.ZeroHash;
|
|
78
|
+
const feedbackUri = params.feedbackUri || '';
|
|
79
|
+
// Convert agentId to bigint (contract expects uint256)
|
|
80
|
+
if (!params.agentId) {
|
|
81
|
+
throw new Error('agentId is required');
|
|
82
|
+
}
|
|
83
|
+
const agentId = BigInt(params.agentId);
|
|
84
|
+
console.info("params.feedbackAuth", JSON.stringify(params.feedbackAuth, null, 2));
|
|
85
|
+
console.info("this.reputationAddress", this.reputationAddress);
|
|
86
|
+
console.info("agentId", agentId.toString());
|
|
87
|
+
console.info("score", params.score);
|
|
88
|
+
console.info("tag1", tag1);
|
|
89
|
+
console.info("tag2", tag2);
|
|
90
|
+
console.info("feedbackUri", feedbackUri);
|
|
91
|
+
console.info("feedbackHash", feedbackHash);
|
|
92
|
+
// Encode function data using AccountProvider
|
|
93
|
+
const data = await this.accountProvider?.encodeFunctionData({
|
|
94
|
+
abi: ReputationRegistryABI,
|
|
95
|
+
functionName: 'giveFeedback',
|
|
96
|
+
args: [
|
|
97
|
+
agentId,
|
|
98
|
+
params.score,
|
|
99
|
+
tag1,
|
|
100
|
+
tag2,
|
|
101
|
+
endpoint,
|
|
102
|
+
feedbackUri,
|
|
103
|
+
feedbackHash,
|
|
104
|
+
],
|
|
105
|
+
});
|
|
106
|
+
// Send transaction using AccountProvider
|
|
107
|
+
const tx = {
|
|
108
|
+
to: this.reputationAddress,
|
|
109
|
+
data: data || '0x',
|
|
110
|
+
value: 0n,
|
|
111
|
+
};
|
|
112
|
+
const result = await this.accountProvider?.send(tx, {
|
|
113
|
+
simulation: true,
|
|
114
|
+
});
|
|
115
|
+
return { txHash: result?.hash || '' };
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Prepare the giveFeedback transaction data without sending it.
|
|
119
|
+
*/
|
|
120
|
+
async prepareGiveFeedbackTx(params) {
|
|
121
|
+
if (params.score < 0 || params.score > 100) {
|
|
122
|
+
throw new Error('Score MUST be between 0 and 100');
|
|
123
|
+
}
|
|
124
|
+
if (!params.agentId) {
|
|
125
|
+
throw new Error('agentId is required');
|
|
126
|
+
}
|
|
127
|
+
const tag1 = params.tag1 || '';
|
|
128
|
+
const tag2 = params.tag2 || '';
|
|
129
|
+
const endpoint = params.endpoint || '';
|
|
130
|
+
const feedbackHash = params.feedbackHash || ethers.ZeroHash;
|
|
131
|
+
const feedbackUri = params.feedbackUri || '';
|
|
132
|
+
const agentId = BigInt(params.agentId);
|
|
133
|
+
const data = await this.accountProvider?.encodeFunctionData({
|
|
134
|
+
abi: ReputationRegistryABI,
|
|
135
|
+
functionName: 'giveFeedback',
|
|
136
|
+
args: [
|
|
137
|
+
agentId,
|
|
138
|
+
params.score,
|
|
139
|
+
tag1,
|
|
140
|
+
tag2,
|
|
141
|
+
endpoint,
|
|
142
|
+
feedbackUri,
|
|
143
|
+
feedbackHash,
|
|
144
|
+
],
|
|
145
|
+
});
|
|
146
|
+
return {
|
|
147
|
+
to: this.reputationAddress,
|
|
148
|
+
data: data || '0x',
|
|
149
|
+
value: 0n,
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Append a response to an existing feedback entry for an agent.
|
|
154
|
+
*
|
|
155
|
+
* Wraps the ReputationRegistry `appendResponse(agentId, clientAddress, feedbackIndex, responseUri, responseHash)`
|
|
156
|
+
* function using the same AccountProvider / ClientApp wiring as giveClientFeedback.
|
|
157
|
+
*/
|
|
158
|
+
async appendToFeedback(params) {
|
|
159
|
+
const agentId = BigInt(params.agentId);
|
|
160
|
+
const feedbackIndex = BigInt(params.feedbackIndex);
|
|
161
|
+
const responseUri = params.responseUri || '';
|
|
162
|
+
const responseHash = params.responseHash && params.responseHash.length === 66
|
|
163
|
+
? params.responseHash
|
|
164
|
+
: ethers.ZeroHash;
|
|
165
|
+
const data = await this.accountProvider?.encodeFunctionData({
|
|
166
|
+
abi: ReputationRegistryABI,
|
|
167
|
+
functionName: 'appendResponse',
|
|
168
|
+
args: [agentId, params.clientAddress, feedbackIndex, responseUri, responseHash],
|
|
169
|
+
});
|
|
170
|
+
const tx = {
|
|
171
|
+
to: this.reputationAddress,
|
|
172
|
+
data: data || '0x',
|
|
173
|
+
value: 0n,
|
|
174
|
+
};
|
|
175
|
+
const result = await this.accountProvider?.send(tx, {
|
|
176
|
+
simulation: true,
|
|
177
|
+
});
|
|
178
|
+
return { txHash: result?.hash || '' };
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Revoke a previously submitted feedback entry for an agent.
|
|
182
|
+
*
|
|
183
|
+
* This wraps the ReputationRegistry `revokeFeedback(uint256 tokenId, uint256 feedbackIndex)`
|
|
184
|
+
* function using the same AccountProvider / ClientApp wiring as giveClientFeedback.
|
|
185
|
+
*/
|
|
186
|
+
async revokeFeedback(agentId, feedbackIndex) {
|
|
187
|
+
const data = await this.accountProvider?.encodeFunctionData({
|
|
188
|
+
abi: ReputationRegistryABI,
|
|
189
|
+
functionName: 'revokeFeedback',
|
|
190
|
+
args: [agentId, feedbackIndex],
|
|
191
|
+
});
|
|
192
|
+
const tx = {
|
|
193
|
+
to: this.reputationAddress,
|
|
194
|
+
data: data || '0x',
|
|
195
|
+
value: 0n,
|
|
196
|
+
};
|
|
197
|
+
const result = await this.accountProvider?.send(tx, {
|
|
198
|
+
simulation: true,
|
|
199
|
+
});
|
|
200
|
+
return { txHash: result?.hash || '' };
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
//# sourceMappingURL=AIAgentReputationClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AIAgentReputationClient.js","sourceRoot":"","sources":["../AIAgentReputationClient.ts"],"names":[],"mappings":"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"}
|