@agentxv2/sdk 0.3.0 → 0.4.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/README.md +25 -16
- package/dist/core.d.mts +64 -0
- package/dist/core.d.ts +64 -0
- package/dist/core.js +275 -0
- package/dist/core.js.map +1 -0
- package/dist/core.mjs +240 -0
- package/dist/core.mjs.map +1 -0
- package/dist/{agent/agent-runner.d.ts → index-DhXVi_ub.d.ts} +94 -10
- package/dist/index-eQO4iaOr.d.mts +208 -0
- package/dist/index.d.mts +269 -0
- package/dist/index.d.ts +269 -10
- package/dist/index.js +2416 -31
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2363 -0
- package/dist/index.mjs.map +1 -0
- package/dist/react.d.mts +3 -0
- package/dist/react.d.ts +3 -0
- package/dist/react.js +755 -0
- package/dist/react.js.map +1 -0
- package/dist/react.mjs +735 -0
- package/dist/react.mjs.map +1 -0
- package/dist/{core/types.d.ts → types-2aHUvS4M.d.mts} +34 -33
- package/dist/types-2aHUvS4M.d.ts +297 -0
- package/package.json +12 -11
- package/dist/a2a/a2a.d.ts +0 -37
- package/dist/a2a/a2a.d.ts.map +0 -1
- package/dist/a2a/a2a.js +0 -252
- package/dist/a2a/a2a.js.map +0 -1
- package/dist/a2a/index.d.ts +0 -4
- package/dist/a2a/index.d.ts.map +0 -1
- package/dist/a2a/index.js +0 -4
- package/dist/a2a/index.js.map +0 -1
- package/dist/agent/agent-runner.d.ts.map +0 -1
- package/dist/agent/agent-runner.js +0 -249
- package/dist/agent/agent-runner.js.map +0 -1
- package/dist/agent/index.d.ts +0 -3
- package/dist/agent/index.d.ts.map +0 -1
- package/dist/agent/index.js +0 -3
- package/dist/agent/index.js.map +0 -1
- package/dist/config/config.d.ts +0 -31
- package/dist/config/config.d.ts.map +0 -1
- package/dist/config/config.js +0 -95
- package/dist/config/config.js.map +0 -1
- package/dist/config/index.d.ts +0 -4
- package/dist/config/index.d.ts.map +0 -1
- package/dist/config/index.js +0 -4
- package/dist/config/index.js.map +0 -1
- package/dist/core/crypto.d.ts +0 -62
- package/dist/core/crypto.d.ts.map +0 -1
- package/dist/core/crypto.js +0 -291
- package/dist/core/crypto.js.map +0 -1
- package/dist/core/index.d.ts +0 -3
- package/dist/core/index.d.ts.map +0 -1
- package/dist/core/index.js +0 -4
- package/dist/core/index.js.map +0 -1
- package/dist/core/types.d.ts.map +0 -1
- package/dist/core/types.js +0 -30
- package/dist/core/types.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/mcp/connector.d.ts +0 -43
- package/dist/mcp/connector.d.ts.map +0 -1
- package/dist/mcp/connector.js +0 -79
- package/dist/mcp/connector.js.map +0 -1
- package/dist/mcp/index.d.ts +0 -4
- package/dist/mcp/index.d.ts.map +0 -1
- package/dist/mcp/index.js +0 -4
- package/dist/mcp/index.js.map +0 -1
- package/dist/react/index.d.ts +0 -4
- package/dist/react/index.d.ts.map +0 -1
- package/dist/react/index.js +0 -3
- package/dist/react/index.js.map +0 -1
- package/dist/react/useAgentRunner.d.ts +0 -16
- package/dist/react/useAgentRunner.d.ts.map +0 -1
- package/dist/react/useAgentRunner.js +0 -204
- package/dist/react/useAgentRunner.js.map +0 -1
- package/dist/registry/agent-registry.d.ts +0 -52
- package/dist/registry/agent-registry.d.ts.map +0 -1
- package/dist/registry/agent-registry.js +0 -221
- package/dist/registry/agent-registry.js.map +0 -1
- package/dist/registry/index.d.ts +0 -7
- package/dist/registry/index.d.ts.map +0 -1
- package/dist/registry/index.js +0 -6
- package/dist/registry/index.js.map +0 -1
- package/dist/registry/ipfs-fetcher.d.ts +0 -39
- package/dist/registry/ipfs-fetcher.d.ts.map +0 -1
- package/dist/registry/ipfs-fetcher.js +0 -139
- package/dist/registry/ipfs-fetcher.js.map +0 -1
- package/dist/reputation/index.d.ts +0 -4
- package/dist/reputation/index.d.ts.map +0 -1
- package/dist/reputation/index.js +0 -4
- package/dist/reputation/index.js.map +0 -1
- package/dist/reputation/reputation.d.ts +0 -26
- package/dist/reputation/reputation.d.ts.map +0 -1
- package/dist/reputation/reputation.js +0 -113
- package/dist/reputation/reputation.js.map +0 -1
- package/dist/subscription/agent-x402.d.ts +0 -33
- package/dist/subscription/agent-x402.d.ts.map +0 -1
- package/dist/subscription/agent-x402.js +0 -144
- package/dist/subscription/agent-x402.js.map +0 -1
- package/dist/subscription/index.d.ts +0 -6
- package/dist/subscription/index.d.ts.map +0 -1
- package/dist/subscription/index.js +0 -5
- package/dist/subscription/index.js.map +0 -1
- package/dist/subscription/subscription.d.ts +0 -67
- package/dist/subscription/subscription.d.ts.map +0 -1
- package/dist/subscription/subscription.js +0 -346
- package/dist/subscription/subscription.js.map +0 -1
package/dist/a2a/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/a2a/index.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAEnC,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"agent-runner.d.ts","sourceRoot":"","sources":["../../src/agent/agent-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,249 +0,0 @@
|
|
|
1
|
-
// ---------------------------------------------------------------------------
|
|
2
|
-
// @agentx/sdk — Agent Runner
|
|
3
|
-
// ---------------------------------------------------------------------------
|
|
4
|
-
// The unified entry point for "using" an Agent.
|
|
5
|
-
//
|
|
6
|
-
// const runner = new AgentRunner({ reader, wallet })
|
|
7
|
-
// const ctx = await runner.useAgent(42)
|
|
8
|
-
// // ctx.prompt → system prompt for LLM
|
|
9
|
-
// // ctx.skills → [{ name, description, inputSchema, execute }]
|
|
10
|
-
// // ctx.mcp → MCP connection info
|
|
11
|
-
//
|
|
12
|
-
// 对于 Open Skill: 直接本地执行(源码在解密后的 payload 里)
|
|
13
|
-
// 对于 Closed Skill:通过 MCP 远程调用 → 发布者服务器执行 + 校验订阅
|
|
14
|
-
// ---------------------------------------------------------------------------
|
|
15
|
-
import { eciesEncrypt, generateAesKey } from '../core/crypto';
|
|
16
|
-
import { unpackAgent } from '../core/crypto';
|
|
17
|
-
import { IPFSFetcher } from '../registry/ipfs-fetcher';
|
|
18
|
-
import { AgentXError, AgentXErrorCode } from '../core/types';
|
|
19
|
-
// ── Agent Runner ───────────────────────────────────────────────────────────
|
|
20
|
-
export class AgentRunner {
|
|
21
|
-
reader;
|
|
22
|
-
wallet;
|
|
23
|
-
ipfs;
|
|
24
|
-
constructor(config) {
|
|
25
|
-
this.reader = config.reader;
|
|
26
|
-
this.wallet = config.wallet;
|
|
27
|
-
this.ipfs = config.ipfsFetcher ?? new IPFSFetcher({
|
|
28
|
-
fallbackGateways: config.ipfsGateways ?? [
|
|
29
|
-
'gateway.pinata.cloud',
|
|
30
|
-
'dweb.link',
|
|
31
|
-
'cf-ipfs.com',
|
|
32
|
-
],
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
// ── Primary API: useAgent ────────────────────────────────────────────────
|
|
36
|
-
/**
|
|
37
|
-
* Load and decrypt an Agent, returning a run context ready to inject
|
|
38
|
-
* into any LLM conversation.
|
|
39
|
-
*
|
|
40
|
-
* Steps:
|
|
41
|
-
* 1. Verify on-chain subscription (frontend check)
|
|
42
|
-
* 2. Fetch metadata → get encryptedPayloadCid + eciesEncryptedKey
|
|
43
|
-
* 3. IPFS fetch encrypted payload
|
|
44
|
-
* 4. ECIES decrypt AES key (using wallet private key)
|
|
45
|
-
* 5. AES-256-GCM decrypt payload → { prompt, skills, mcp }
|
|
46
|
-
* 6. Build RunnableSkill wrappers (Open: local stub, Closed: MCP remote)
|
|
47
|
-
*/
|
|
48
|
-
async useAgent(agentId) {
|
|
49
|
-
// 1. Subscription check (frontend — MCP server also checks)
|
|
50
|
-
const address = await this.wallet.getAddress();
|
|
51
|
-
const isActive = await this.reader.hasActiveSubscription(address, agentId);
|
|
52
|
-
if (!isActive) {
|
|
53
|
-
const err = new AgentXError(AgentXErrorCode.NOT_SUBSCRIBED, `No active subscription for Agent #${agentId}. ` +
|
|
54
|
-
`Check error.paymentInfo for auto-subscribe via wallet/X402.`);
|
|
55
|
-
err.paymentInfo = {
|
|
56
|
-
agentId,
|
|
57
|
-
};
|
|
58
|
-
throw err;
|
|
59
|
-
}
|
|
60
|
-
// 2. Read on-chain metadata
|
|
61
|
-
const attrs = await this.reader.getAttributes(agentId);
|
|
62
|
-
const encryptedPayloadCid = attrs.encryptedPayloadCid;
|
|
63
|
-
const eciesEncryptedKey = attrs.eciesEncryptedKey;
|
|
64
|
-
if (!encryptedPayloadCid || !eciesEncryptedKey) {
|
|
65
|
-
throw new AgentXError(AgentXErrorCode.AGENT_NOT_FOUND, `Agent #${agentId} metadata incomplete — missing encryptedPayloadCid or eciesEncryptedKey`);
|
|
66
|
-
}
|
|
67
|
-
// 3. Fetch encrypted payload from IPFS
|
|
68
|
-
let encryptedPayload;
|
|
69
|
-
try {
|
|
70
|
-
encryptedPayload = await this.ipfs.fetchEncryptedPayload(encryptedPayloadCid);
|
|
71
|
-
}
|
|
72
|
-
catch (e) {
|
|
73
|
-
throw new AgentXError(AgentXErrorCode.IPFS_FETCH_FAILED, `Failed to fetch encrypted payload for agent #${agentId}: ${e}`);
|
|
74
|
-
}
|
|
75
|
-
// 4 + 5. ECIES + AES decrypt
|
|
76
|
-
let privatePayload;
|
|
77
|
-
try {
|
|
78
|
-
const privKey = await this._getPrivateKey();
|
|
79
|
-
privatePayload = unpackAgent(encryptedPayload, eciesEncryptedKey, privKey);
|
|
80
|
-
}
|
|
81
|
-
catch (e) {
|
|
82
|
-
throw new AgentXError(AgentXErrorCode.DECRYPTION_FAILED, `Failed to decrypt agent #${agentId}: ${e}`);
|
|
83
|
-
}
|
|
84
|
-
// 6. Build runnable skills
|
|
85
|
-
const skills = privatePayload.skills.map(s => this._wrapSkill(s));
|
|
86
|
-
return {
|
|
87
|
-
agentId,
|
|
88
|
-
prompt: privatePayload.prompt,
|
|
89
|
-
skills,
|
|
90
|
-
mcp: {
|
|
91
|
-
type: privatePayload.mcp.type,
|
|
92
|
-
url: privatePayload.mcp.url,
|
|
93
|
-
toolFilter: privatePayload.mcp.toolFilter,
|
|
94
|
-
},
|
|
95
|
-
subscriptionExpiry: 0,
|
|
96
|
-
};
|
|
97
|
-
}
|
|
98
|
-
// ── Publishing ───────────────────────────────────────────────────────────
|
|
99
|
-
/**
|
|
100
|
-
* Pack an AgentPayload for publishing (encryption only, no IPFS upload).
|
|
101
|
-
* Caller is responsible for IPFS upload and on-chain registration.
|
|
102
|
-
*/
|
|
103
|
-
packForPublish(payload, publicKey) {
|
|
104
|
-
const key = generateAesKey();
|
|
105
|
-
return {
|
|
106
|
-
encryptedCid: '',
|
|
107
|
-
publicCid: '',
|
|
108
|
-
aesKeyHex: key,
|
|
109
|
-
eciesEncryptedKeyHex: eciesEncrypt(key, publicKey),
|
|
110
|
-
};
|
|
111
|
-
}
|
|
112
|
-
// ── Internals ────────────────────────────────────────────────────────────
|
|
113
|
-
/** Wrap a SkillDef into a RunnableSkill with execute(). */
|
|
114
|
-
_wrapSkill(skill) {
|
|
115
|
-
let mode = 'open';
|
|
116
|
-
let executeFn;
|
|
117
|
-
if (skill.execution) {
|
|
118
|
-
if (skill.execution.type === 'mcp') {
|
|
119
|
-
mode = 'mcp';
|
|
120
|
-
const endpoint = skill.execution.endpoint ?? '';
|
|
121
|
-
const toolName = skill.execution.toolName ?? skill.name;
|
|
122
|
-
executeFn = async (input) => {
|
|
123
|
-
return this._executeMCPTool(endpoint, toolName, input);
|
|
124
|
-
};
|
|
125
|
-
}
|
|
126
|
-
else if (skill.execution.type === 'a2a') {
|
|
127
|
-
mode = 'a2a';
|
|
128
|
-
executeFn = async (input) => {
|
|
129
|
-
return this._executeA2ASkill(skill, input);
|
|
130
|
-
};
|
|
131
|
-
}
|
|
132
|
-
else {
|
|
133
|
-
throw new AgentXError(AgentXErrorCode.INVALID_SCHEMA, `Unknown execution type "${skill.execution.type}" for skill "${skill.name}"`);
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
else {
|
|
137
|
-
executeFn = async () => {
|
|
138
|
-
throw new AgentXError(AgentXErrorCode.INVALID_SCHEMA, `Open skill "${skill.name}" has no local executor. ` +
|
|
139
|
-
`Implement execute() or switch to execution.type = "mcp" or "a2a".`);
|
|
140
|
-
};
|
|
141
|
-
}
|
|
142
|
-
return {
|
|
143
|
-
name: skill.name,
|
|
144
|
-
description: skill.description,
|
|
145
|
-
inputSchema: skill.inputSchema,
|
|
146
|
-
outputSchema: skill.outputSchema,
|
|
147
|
-
mode,
|
|
148
|
-
execute: executeFn,
|
|
149
|
-
/** If A2A, carry delegation metadata so the LLM can see it */
|
|
150
|
-
a2aTargetAgentId: skill.execution?.type === 'a2a' ? skill.execution.targetAgentId : undefined,
|
|
151
|
-
};
|
|
152
|
-
}
|
|
153
|
-
/** Call a tool on the publisher's MCP server (Closed skill). */
|
|
154
|
-
async _executeMCPTool(endpoint, toolName, params) {
|
|
155
|
-
const address = await this.wallet.getAddress();
|
|
156
|
-
const timestamp = Math.floor(Date.now() / 1000);
|
|
157
|
-
const message = `agentx:mcp:${toolName}:${timestamp}`;
|
|
158
|
-
const signature = await this.wallet.signMessage(message);
|
|
159
|
-
const res = await fetch(endpoint, {
|
|
160
|
-
method: 'POST',
|
|
161
|
-
headers: {
|
|
162
|
-
'Content-Type': 'application/json',
|
|
163
|
-
'X-Subscriber-Address': address,
|
|
164
|
-
'X-Signature': signature,
|
|
165
|
-
'X-Timestamp': String(timestamp),
|
|
166
|
-
},
|
|
167
|
-
body: JSON.stringify({
|
|
168
|
-
method: 'tools/call',
|
|
169
|
-
params: {
|
|
170
|
-
name: toolName,
|
|
171
|
-
arguments: params,
|
|
172
|
-
},
|
|
173
|
-
}),
|
|
174
|
-
});
|
|
175
|
-
if (!res.ok) {
|
|
176
|
-
const text = await res.text();
|
|
177
|
-
if (res.status === 403) {
|
|
178
|
-
throw new AgentXError(AgentXErrorCode.SUBSCRIPTION_EXPIRED, `MCP server rejected request: subscription may have expired. ${text}`);
|
|
179
|
-
}
|
|
180
|
-
throw new AgentXError(AgentXErrorCode.TX_FAILED, `MCP tool "${toolName}" failed (HTTP ${res.status}): ${text}`);
|
|
181
|
-
}
|
|
182
|
-
const data = await res.json();
|
|
183
|
-
const content = data.content?.[0];
|
|
184
|
-
if (content?.type === 'text' && content.text) {
|
|
185
|
-
try {
|
|
186
|
-
return JSON.parse(content.text);
|
|
187
|
-
}
|
|
188
|
-
catch {
|
|
189
|
-
return content.text;
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
return data;
|
|
193
|
-
}
|
|
194
|
-
/**
|
|
195
|
-
* Execute an A2A skill — delegate to another AgentX Agent.
|
|
196
|
-
*
|
|
197
|
-
* Standard Interface:
|
|
198
|
-
* Input: { task, ...taskSpecificParams }
|
|
199
|
-
* Output: { agentId, prompt, skills[] }
|
|
200
|
-
*
|
|
201
|
-
* The caller (LLM) receives the sub-Agent's prompt + skill list.
|
|
202
|
-
* The LLM then decides how to use the sub-Agent — typically by
|
|
203
|
-
* injecting the sub-Agent's system prompt and calling its skills.
|
|
204
|
-
*/
|
|
205
|
-
async _executeA2ASkill(skill, input) {
|
|
206
|
-
const exec = skill.execution;
|
|
207
|
-
if (!exec || exec.type !== 'a2a') {
|
|
208
|
-
throw new AgentXError(AgentXErrorCode.INVALID_SCHEMA, `Skill "${skill.name}" is not an A2A delegation skill`);
|
|
209
|
-
}
|
|
210
|
-
const targetAgentId = exec.targetAgentId;
|
|
211
|
-
// Load the target Agent's full context
|
|
212
|
-
let subContext;
|
|
213
|
-
try {
|
|
214
|
-
subContext = await this.useAgent(targetAgentId);
|
|
215
|
-
}
|
|
216
|
-
catch (e) {
|
|
217
|
-
throw new AgentXError(AgentXErrorCode.AGENT_NOT_FOUND, `A2A delegation failed: cannot load Agent #${targetAgentId}. ${e}`);
|
|
218
|
-
}
|
|
219
|
-
// Apply skill filter if specified
|
|
220
|
-
if (exec.skillFilter && exec.skillFilter.length > 0) {
|
|
221
|
-
const filterSet = new Set(exec.skillFilter);
|
|
222
|
-
subContext = {
|
|
223
|
-
...subContext,
|
|
224
|
-
skills: subContext.skills.filter(s => filterSet.has(s.name)),
|
|
225
|
-
};
|
|
226
|
-
}
|
|
227
|
-
// Apply prompt override if specified
|
|
228
|
-
if (exec.promptOverride) {
|
|
229
|
-
subContext = { ...subContext, prompt: exec.promptOverride };
|
|
230
|
-
}
|
|
231
|
-
return {
|
|
232
|
-
agentId: targetAgentId,
|
|
233
|
-
prompt: subContext.prompt,
|
|
234
|
-
skills: subContext.skills.map(s => ({
|
|
235
|
-
name: s.name,
|
|
236
|
-
description: s.description,
|
|
237
|
-
inputSchema: s.inputSchema,
|
|
238
|
-
})),
|
|
239
|
-
// Pass the caller's input to the sub-agent's context
|
|
240
|
-
callerInput: input,
|
|
241
|
-
};
|
|
242
|
-
}
|
|
243
|
-
async _getPrivateKey() {
|
|
244
|
-
if (this.wallet.getPrivateKey)
|
|
245
|
-
return this.wallet.getPrivateKey();
|
|
246
|
-
throw new AgentXError(AgentXErrorCode.WALLET_NOT_CONNECTED, 'Wallet must support getPrivateKey() for ECIES decryption.');
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
|
-
//# sourceMappingURL=agent-runner.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"agent-runner.js","sourceRoot":"","sources":["../../src/agent/agent-runner.ts"],"names":[],"mappings":"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"}
|
package/dist/agent/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agent/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,YAAY,EACV,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,cAAc,EACd,aAAa,EACb,YAAY,GACb,MAAM,gBAAgB,CAAA"}
|
package/dist/agent/index.js
DELETED
package/dist/agent/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agent/index.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA"}
|
package/dist/config/config.d.ts
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import type { PublicClient, WalletClient, Address, Hash } from 'viem';
|
|
2
|
-
export interface ChainConfig {
|
|
3
|
-
chainId: number;
|
|
4
|
-
contracts: {
|
|
5
|
-
identityRegistry: Address;
|
|
6
|
-
subscriptionManager: Address;
|
|
7
|
-
paymentGateway: Address;
|
|
8
|
-
a2aProtocolRegistry: Address;
|
|
9
|
-
reputationRegistry: Address;
|
|
10
|
-
configurationRegistry: Address;
|
|
11
|
-
};
|
|
12
|
-
ipfsGateways: string[];
|
|
13
|
-
rpcUrl?: string;
|
|
14
|
-
}
|
|
15
|
-
export declare const KNOWN_CHAINS: Record<number, ChainConfig>;
|
|
16
|
-
export interface ConfigRegistryOpts {
|
|
17
|
-
contractAddress: Address;
|
|
18
|
-
publicClient: PublicClient;
|
|
19
|
-
walletClient: WalletClient;
|
|
20
|
-
}
|
|
21
|
-
export declare class ConfigurationRegistry {
|
|
22
|
-
private address;
|
|
23
|
-
private publicClient;
|
|
24
|
-
private walletClient;
|
|
25
|
-
constructor(opts: ConfigRegistryOpts);
|
|
26
|
-
private get account();
|
|
27
|
-
set(key: string, value: string): Promise<Hash>;
|
|
28
|
-
get(key: string): Promise<string>;
|
|
29
|
-
getAll(): Promise<Record<string, string>>;
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AA8BrE,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE;QACT,gBAAgB,EAAE,OAAO,CAAA;QACzB,mBAAmB,EAAE,OAAO,CAAA;QAC5B,cAAc,EAAE,OAAO,CAAA;QACvB,mBAAmB,EAAE,OAAO,CAAA;QAC5B,kBAAkB,EAAE,OAAO,CAAA;QAC3B,qBAAqB,EAAE,OAAO,CAAA;KAC/B,CAAA;IACD,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAepD,CAAA;AAID,MAAM,WAAW,kBAAkB;IACjC,eAAe,EAAE,OAAO,CAAA;IACxB,YAAY,EAAE,YAAY,CAAA;IAC1B,YAAY,EAAE,YAAY,CAAA;CAC3B;AAED,qBAAa,qBAAqB;IAChC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,YAAY,CAAc;gBAEtB,IAAI,EAAE,kBAAkB;IAMpC,OAAO,KAAK,OAAO,GAKlB;IAEK,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY9C,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAUjC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAYhD"}
|
package/dist/config/config.js
DELETED
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
// ---------------------------------------------------------------------------
|
|
2
|
-
// @agentx/sdk — Configuration
|
|
3
|
-
// ---------------------------------------------------------------------------
|
|
4
|
-
// Wraps ConfigurationRegistry contract for key-value settings.
|
|
5
|
-
// ---------------------------------------------------------------------------
|
|
6
|
-
import { stringToHex, hexToString } from 'viem';
|
|
7
|
-
const CONFIG_ABI = {
|
|
8
|
-
setConfig: {
|
|
9
|
-
inputs: [{ name: 'key', type: 'string' }, { name: 'value', type: 'bytes' }],
|
|
10
|
-
name: 'setConfig',
|
|
11
|
-
outputs: [],
|
|
12
|
-
stateMutability: 'nonpayable',
|
|
13
|
-
type: 'function',
|
|
14
|
-
},
|
|
15
|
-
getConfig: {
|
|
16
|
-
inputs: [{ name: 'key', type: 'string' }],
|
|
17
|
-
name: 'getConfig',
|
|
18
|
-
outputs: [{ name: '', type: 'bytes' }],
|
|
19
|
-
stateMutability: 'view',
|
|
20
|
-
type: 'function',
|
|
21
|
-
},
|
|
22
|
-
getAllConfig: {
|
|
23
|
-
inputs: [],
|
|
24
|
-
name: 'getAllConfig',
|
|
25
|
-
outputs: [{ name: '', type: 'tuple[]', components: [{ name: 'key', type: 'string' }, { name: 'value', type: 'bytes' }] }],
|
|
26
|
-
stateMutability: 'view',
|
|
27
|
-
type: 'function',
|
|
28
|
-
},
|
|
29
|
-
};
|
|
30
|
-
export const KNOWN_CHAINS = {
|
|
31
|
-
// Sepolia
|
|
32
|
-
// Sepolia v2 (deployed 2026-07-13): platformFee=500bps(5%), multi-currency, trial escrow
|
|
33
|
-
11155111: {
|
|
34
|
-
chainId: 11155111,
|
|
35
|
-
contracts: {
|
|
36
|
-
identityRegistry: '0xe94ad380d3F8d08a7590eda0C84f354a93F96e5F',
|
|
37
|
-
subscriptionManager: '0xC15fE80b9d800abb72121F353a6ae6d6E9077E63',
|
|
38
|
-
paymentGateway: '0x0000000000000000000000000000000000000000',
|
|
39
|
-
a2aProtocolRegistry: '0x0000000000000000000000000000000000000000',
|
|
40
|
-
reputationRegistry: '0x0000000000000000000000000000000000000000',
|
|
41
|
-
configurationRegistry: '0x0000000000000000000000000000000000000000',
|
|
42
|
-
},
|
|
43
|
-
ipfsGateways: ['ipfs.io', 'gateway.pinata.cloud', 'dweb.link', 'cf-ipfs.com'],
|
|
44
|
-
},
|
|
45
|
-
};
|
|
46
|
-
export class ConfigurationRegistry {
|
|
47
|
-
address;
|
|
48
|
-
publicClient;
|
|
49
|
-
walletClient;
|
|
50
|
-
constructor(opts) {
|
|
51
|
-
this.address = opts.contractAddress;
|
|
52
|
-
this.publicClient = opts.publicClient;
|
|
53
|
-
this.walletClient = opts.walletClient;
|
|
54
|
-
}
|
|
55
|
-
get account() {
|
|
56
|
-
return this.walletClient.getAddresses().then(a => {
|
|
57
|
-
if (!a[0])
|
|
58
|
-
throw new Error('Wallet not connected');
|
|
59
|
-
return a[0];
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
async set(key, value) {
|
|
63
|
-
const acct = await this.account;
|
|
64
|
-
const { request } = await this.publicClient.simulateContract({
|
|
65
|
-
account: acct,
|
|
66
|
-
address: this.address,
|
|
67
|
-
abi: [CONFIG_ABI.setConfig],
|
|
68
|
-
functionName: 'setConfig',
|
|
69
|
-
args: [key, stringToHex(value)],
|
|
70
|
-
});
|
|
71
|
-
return this.walletClient.writeContract(request);
|
|
72
|
-
}
|
|
73
|
-
async get(key) {
|
|
74
|
-
const r = await this.publicClient.readContract({
|
|
75
|
-
address: this.address,
|
|
76
|
-
abi: [CONFIG_ABI.getConfig],
|
|
77
|
-
functionName: 'getConfig',
|
|
78
|
-
args: [key],
|
|
79
|
-
});
|
|
80
|
-
return hexToString(r);
|
|
81
|
-
}
|
|
82
|
-
async getAll() {
|
|
83
|
-
const r = await this.publicClient.readContract({
|
|
84
|
-
address: this.address,
|
|
85
|
-
abi: [CONFIG_ABI.getAllConfig],
|
|
86
|
-
functionName: 'getAllConfig',
|
|
87
|
-
});
|
|
88
|
-
const map = {};
|
|
89
|
-
for (const { key, value } of r) {
|
|
90
|
-
map[key] = hexToString(value);
|
|
91
|
-
}
|
|
92
|
-
return map;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
//# sourceMappingURL=config.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"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"}
|
package/dist/config/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC9D,YAAY,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAC/D,eAAO,MAAM,cAAc,UAAU,CAAA"}
|
package/dist/config/index.js
DELETED
package/dist/config/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAE9D,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAA"}
|
package/dist/core/crypto.d.ts
DELETED
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { bytesToHex, hexToBytes } from '@noble/ciphers/utils.js';
|
|
2
|
-
export declare function randomBytes(length: number): Uint8Array;
|
|
3
|
-
import type { EncryptedPayload, AgentPrivatePayload } from './types';
|
|
4
|
-
import type { PackResult } from './types';
|
|
5
|
-
export { bytesToHex, hexToBytes };
|
|
6
|
-
/**
|
|
7
|
-
* Encrypt with AES-256-GCM.
|
|
8
|
-
* Wire format (same as aihunter-saas): base64( IV[12] || ciphertext || authTag[16] )
|
|
9
|
-
*/
|
|
10
|
-
export declare function aesEncrypt(plaintext: string, keyHex: string): string;
|
|
11
|
-
/**
|
|
12
|
-
* Decrypt AES-256-GCM (same wire format as aihunter-saas).
|
|
13
|
-
*/
|
|
14
|
-
export declare function aesDecrypt(encryptedBase64: string, keyHex: string): string;
|
|
15
|
-
/**
|
|
16
|
-
* Generate a cryptographically random AES-256 key (hex, 64 chars).
|
|
17
|
-
*/
|
|
18
|
-
export declare function generateAesKey(): string;
|
|
19
|
-
/**
|
|
20
|
-
* Encrypt data with recipient's secp256k1 public key (ECIES).
|
|
21
|
-
*
|
|
22
|
-
* @param dataHex The data to encrypt (hex, e.g. AES key)
|
|
23
|
-
* @param publicKey Recipient's public key (hex, 04-prefixed uncompressed or 02/03 compressed)
|
|
24
|
-
*/
|
|
25
|
-
export declare function eciesEncrypt(dataHex: string, publicKey: string): string;
|
|
26
|
-
/**
|
|
27
|
-
* Decrypt ECIES ciphertext with recipient's secp256k1 private key.
|
|
28
|
-
*/
|
|
29
|
-
export declare function eciesDecrypt(dataHex: string, privateKey: string): string;
|
|
30
|
-
/**
|
|
31
|
-
* Encrypt an Agent's private payload with AES-256-GCM.
|
|
32
|
-
*/
|
|
33
|
-
export declare function encryptPayload(payload: AgentPrivatePayload, keyHex?: string): EncryptedPayload;
|
|
34
|
-
/**
|
|
35
|
-
* Decrypt an EncryptedPayload.
|
|
36
|
-
*/
|
|
37
|
-
export declare function decryptPayload(encrypted: EncryptedPayload, keyHex: string): AgentPrivatePayload;
|
|
38
|
-
/**
|
|
39
|
-
* Pack an AgentPayload for publishing.
|
|
40
|
-
* 1. Split public/private
|
|
41
|
-
* 2. AES-256-GCM encrypt private part
|
|
42
|
-
* 3. ECIES wrap AES key with creator's public key
|
|
43
|
-
*/
|
|
44
|
-
export declare function packAgentForPublish(agent: import('./types').AgentPayload, publicKey: string, aesKeyHex?: string): PackResult;
|
|
45
|
-
/**
|
|
46
|
-
* Unpack an Agent:
|
|
47
|
-
* 1. ECIES decrypt the AES key (private key)
|
|
48
|
-
* 2. AES-256-GCM decrypt the payload
|
|
49
|
-
*/
|
|
50
|
-
export declare function unpackAgent(encryptedPayload: EncryptedPayload, eciesEncryptedKey: string, privateKey: string): AgentPrivatePayload;
|
|
51
|
-
/**
|
|
52
|
-
* Generate a secp256k1 keypair compatible with Ethereum wallets.
|
|
53
|
-
*/
|
|
54
|
-
export declare function generateKeyPair(): {
|
|
55
|
-
privateKey: string;
|
|
56
|
-
publicKey: string;
|
|
57
|
-
};
|
|
58
|
-
/**
|
|
59
|
-
* Derive public key from private key (hex).
|
|
60
|
-
*/
|
|
61
|
-
export declare function getPublicKey(privateKey: string): string;
|
|
62
|
-
//# sourceMappingURL=crypto.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../src/core/crypto.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAIhE,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAWtD;AAED,OAAO,KAAK,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAIzC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAA;AA4BjC;;;GAGG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAkBpE;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAgB1E;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAkED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAsCvE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CA2BxE;AAWD;;GAEG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,mBAAmB,EAC5B,MAAM,CAAC,EAAE,MAAM,GACd,gBAAgB,CAOlB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,gBAAgB,EAC3B,MAAM,EAAE,MAAM,GACb,mBAAmB,CAKrB;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,OAAO,SAAS,EAAE,YAAY,EACrC,SAAS,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,GACjB,UAAU,CAWZ;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,gBAAgB,EAAE,gBAAgB,EAClC,iBAAiB,EAAE,MAAM,EACzB,UAAU,EAAE,MAAM,GACjB,mBAAmB,CAGrB;AAID;;GAEG;AACH,wBAAgB,eAAe,IAAI;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAI3E;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEvD"}
|