aether-agent-sdk 2.1.3 → 3.0.1

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 (38) hide show
  1. package/README.md +8 -3
  2. package/dist/src/agents/SettlementAgent.d.ts +3 -0
  3. package/dist/src/agents/SettlementAgent.d.ts.map +1 -1
  4. package/dist/src/agents/SettlementAgent.js +58 -44
  5. package/dist/src/agents/SettlementAgent.js.map +1 -1
  6. package/dist/src/facilitator/X402FacilitatorServer.d.ts +8 -0
  7. package/dist/src/facilitator/X402FacilitatorServer.d.ts.map +1 -1
  8. package/dist/src/facilitator/X402FacilitatorServer.js +202 -74
  9. package/dist/src/facilitator/X402FacilitatorServer.js.map +1 -1
  10. package/dist/src/index.d.ts +2 -2
  11. package/dist/src/index.d.ts.map +1 -1
  12. package/dist/src/index.js +6 -2
  13. package/dist/src/index.js.map +1 -1
  14. package/dist/src/marketplace/MarketplaceConsumer.d.ts +3 -1
  15. package/dist/src/marketplace/MarketplaceConsumer.d.ts.map +1 -1
  16. package/dist/src/marketplace/MarketplaceConsumer.js +34 -30
  17. package/dist/src/marketplace/MarketplaceConsumer.js.map +1 -1
  18. package/dist/src/marketplace/MarketplaceProvider.d.ts +2 -1
  19. package/dist/src/marketplace/MarketplaceProvider.d.ts.map +1 -1
  20. package/dist/src/marketplace/MarketplaceProvider.js +26 -24
  21. package/dist/src/marketplace/MarketplaceProvider.js.map +1 -1
  22. package/dist/src/utils/index.d.ts +4 -0
  23. package/dist/src/utils/index.d.ts.map +1 -1
  24. package/dist/src/utils/index.js +12 -1
  25. package/dist/src/utils/index.js.map +1 -1
  26. package/dist/src/utils/logger.d.ts +7 -0
  27. package/dist/src/utils/logger.d.ts.map +1 -0
  28. package/dist/src/utils/logger.js +27 -0
  29. package/dist/src/utils/logger.js.map +1 -0
  30. package/dist/src/utils/solana.d.ts +11 -0
  31. package/dist/src/utils/solana.d.ts.map +1 -0
  32. package/dist/src/utils/solana.js +33 -0
  33. package/dist/src/utils/solana.js.map +1 -0
  34. package/dist/src/utils/wallet.d.ts +14 -0
  35. package/dist/src/utils/wallet.d.ts.map +1 -0
  36. package/dist/src/utils/wallet.js +85 -0
  37. package/dist/src/utils/wallet.js.map +1 -0
  38. package/package.json +4 -14
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solana.d.ts","sourceRoot":"","sources":["../../../src/utils/solana.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,GAAG,cAAc,CAAA;AAEjE,UAAU,mBAAmB;IAC3B,OAAO,EAAE,aAAa,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;CAClB;AAkBD,wBAAgB,oBAAoB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,mBAAmB,CAQ9F;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAEzD;AAED,wBAAgB,WAAW,CAAC,MAAM,GAAE,MAAW,GAAG,MAAM,CAGvD"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveSolanaNetwork = resolveSolanaNetwork;
4
+ exports.isMainnet = isMainnet;
5
+ exports.createNonce = createNonce;
6
+ const web3_js_1 = require("@solana/web3.js");
7
+ const NETWORK_ID_PREFIX = 'solana';
8
+ function normalizeNetwork(raw) {
9
+ const value = (raw || 'devnet').toLowerCase();
10
+ if (value === 'mainnet' || value === 'mainnet-beta' || value === 'mainnetbeta') {
11
+ return 'mainnet-beta';
12
+ }
13
+ if (value === 'testnet') {
14
+ return 'testnet';
15
+ }
16
+ return 'devnet';
17
+ }
18
+ function resolveSolanaNetwork(env = process.env) {
19
+ const network = normalizeNetwork(env.SOLANA_NETWORK);
20
+ const rpcUrl = env.SOLANA_RPC_URL || (0, web3_js_1.clusterApiUrl)(network);
21
+ const networkId = network === 'mainnet-beta'
22
+ ? `${NETWORK_ID_PREFIX}-mainnet-beta`
23
+ : `${NETWORK_ID_PREFIX}-${network}`;
24
+ return { network, rpcUrl, networkId };
25
+ }
26
+ function isMainnet(network) {
27
+ return network === 'mainnet-beta';
28
+ }
29
+ function createNonce(length = 16) {
30
+ const { randomBytes } = require('crypto');
31
+ return randomBytes(length).toString('hex');
32
+ }
33
+ //# sourceMappingURL=solana.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solana.js","sourceRoot":"","sources":["../../../src/utils/solana.ts"],"names":[],"mappings":";;AA0BA,oDAQC;AAED,8BAEC;AAED,kCAGC;AA3CD,6CAAwD;AAUxD,MAAM,iBAAiB,GAAG,QAAQ,CAAA;AAElC,SAAS,gBAAgB,CAAC,GAAY;IACpC,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAA;IAE7C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,cAAc,IAAI,KAAK,KAAK,aAAa,EAAE,CAAC;QAC/E,OAAO,cAAc,CAAA;IACvB,CAAC;IAED,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAgB,oBAAoB,CAAC,MAAyB,OAAO,CAAC,GAAG;IACvE,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IACpD,MAAM,MAAM,GAAG,GAAG,CAAC,cAAc,IAAI,IAAA,uBAAa,EAAC,OAAkB,CAAC,CAAA;IACtE,MAAM,SAAS,GAAG,OAAO,KAAK,cAAc;QAC1C,CAAC,CAAC,GAAG,iBAAiB,eAAe;QACrC,CAAC,CAAC,GAAG,iBAAiB,IAAI,OAAO,EAAE,CAAA;IAErC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;AACvC,CAAC;AAED,SAAgB,SAAS,CAAC,OAAsB;IAC9C,OAAO,OAAO,KAAK,cAAc,CAAA;AACnC,CAAC;AAED,SAAgB,WAAW,CAAC,SAAiB,EAAE;IAC7C,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,QAAQ,CAA4B,CAAA;IACpE,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC5C,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { Connection, Keypair, PublicKey } from '@solana/web3.js';
2
+ import { SolanaNetwork } from './solana';
3
+ export interface WalletLoadResult {
4
+ keypair?: Keypair;
5
+ source: 'path' | 'env' | 'kms' | 'none';
6
+ }
7
+ export declare function loadKeypairFromEnv(env?: NodeJS.ProcessEnv): WalletLoadResult;
8
+ export declare function generateDevWallet(connection: Connection, network: SolanaNetwork, airdropSol?: number): Promise<{
9
+ keypair: Keypair;
10
+ airdropTx?: string;
11
+ }>;
12
+ export declare function assertMatchingMint(expected: string, actual: string): void;
13
+ export declare function parsePublicKey(value: string | PublicKey): PublicKey;
14
+ //# sourceMappingURL=wallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../src/utils/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAoB,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAKlF,OAAO,EAAa,aAAa,EAAE,MAAM,UAAU,CAAA;AAEnD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,CAAA;CACxC;AAED,wBAAgB,kBAAkB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,gBAAgB,CA8BzF;AAyBD,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,aAAa,EACtB,UAAU,GAAE,MAAU,GACrB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAiBnD;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAIzE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAEnE"}
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.loadKeypairFromEnv = loadKeypairFromEnv;
7
+ exports.generateDevWallet = generateDevWallet;
8
+ exports.assertMatchingMint = assertMatchingMint;
9
+ exports.parsePublicKey = parsePublicKey;
10
+ const web3_js_1 = require("@solana/web3.js");
11
+ const fs_1 = __importDefault(require("fs"));
12
+ const path_1 = __importDefault(require("path"));
13
+ const bs58_1 = __importDefault(require("bs58"));
14
+ const env_1 = require("./env");
15
+ const solana_1 = require("./solana");
16
+ function loadKeypairFromEnv(env = process.env) {
17
+ (0, env_1.loadEnvIfNeeded)();
18
+ // 1. Try explicit file path
19
+ const walletPath = env.AGENT_WALLET_PATH || env.SOLANA_WALLET_PATH;
20
+ if (walletPath) {
21
+ const resolvedPath = path_1.default.resolve(walletPath);
22
+ const raw = fs_1.default.readFileSync(resolvedPath, 'utf-8').trim();
23
+ const keypair = parseKeypair(raw);
24
+ return { keypair, source: 'path' };
25
+ }
26
+ // 2. KMS placeholder
27
+ if (env.AGENT_KMS_KEY) {
28
+ throw new Error('KMS key loading not implemented: please supply a local keypair or AGENT_PRIVATE_KEY');
29
+ }
30
+ // 3. JSON or base58 in SOLANA_WALLET
31
+ if (env.SOLANA_WALLET) {
32
+ const keypair = parseKeypair(env.SOLANA_WALLET.trim());
33
+ return { keypair, source: 'env' };
34
+ }
35
+ // 4. Legacy AGENT_PRIVATE_KEY (base58 secret key)
36
+ if (env.AGENT_PRIVATE_KEY) {
37
+ const keypair = web3_js_1.Keypair.fromSecretKey(bs58_1.default.decode(env.AGENT_PRIVATE_KEY.trim()));
38
+ return { keypair, source: 'env' };
39
+ }
40
+ return { source: 'none' };
41
+ }
42
+ function parseKeypair(raw) {
43
+ try {
44
+ // Array of numbers
45
+ if (raw.startsWith('[')) {
46
+ const secret = JSON.parse(raw);
47
+ return web3_js_1.Keypair.fromSecretKey(new Uint8Array(secret));
48
+ }
49
+ // JSON with secretKey
50
+ if (raw.startsWith('{')) {
51
+ const parsed = JSON.parse(raw);
52
+ if (Array.isArray(parsed.secretKey)) {
53
+ return web3_js_1.Keypair.fromSecretKey(new Uint8Array(parsed.secretKey));
54
+ }
55
+ }
56
+ // Base58 string
57
+ return web3_js_1.Keypair.fromSecretKey(bs58_1.default.decode(raw));
58
+ }
59
+ catch (error) {
60
+ throw new Error('Unable to parse keypair from provided data');
61
+ }
62
+ }
63
+ async function generateDevWallet(connection, network, airdropSol = 1) {
64
+ const keypair = web3_js_1.Keypair.generate();
65
+ if (!(0, solana_1.isMainnet)(network)) {
66
+ try {
67
+ const signature = await connection.requestAirdrop(keypair.publicKey, Math.max(0, airdropSol) * web3_js_1.LAMPORTS_PER_SOL);
68
+ await connection.confirmTransaction(signature, 'confirmed');
69
+ return { keypair, airdropTx: signature };
70
+ }
71
+ catch (error) {
72
+ return { keypair };
73
+ }
74
+ }
75
+ return { keypair };
76
+ }
77
+ function assertMatchingMint(expected, actual) {
78
+ if (expected && actual && expected !== actual) {
79
+ throw new Error(`Mint mismatch: expected ${expected}, got ${actual}`);
80
+ }
81
+ }
82
+ function parsePublicKey(value) {
83
+ return typeof value === 'string' ? new web3_js_1.PublicKey(value) : value;
84
+ }
85
+ //# sourceMappingURL=wallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../src/utils/wallet.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aether-agent-sdk",
3
- "version": "2.1.3",
3
+ "version": "3.0.1",
4
4
  "description": "Autonomous Agent Ecosystem SDK for Solana - A2A Protocol, x402 Payment Standard, and Agent-to-Agent Communication",
5
5
  "main": "./dist/src/index.js",
6
6
  "types": "./dist/src/index.d.ts",
@@ -20,16 +20,6 @@
20
20
  "require": "./dist/src/protocols/index.js",
21
21
  "types": "./dist/src/protocols/index.d.ts"
22
22
  },
23
- "./services": {
24
- "import": "./dist/src/services/index.js",
25
- "require": "./dist/src/services/index.js",
26
- "types": "./dist/src/services/index.d.ts"
27
- },
28
- "./modes": {
29
- "import": "./dist/src/modes/index.js",
30
- "require": "./dist/src/modes/index.js",
31
- "types": "./dist/src/modes/index.d.ts"
32
- },
33
23
  "./facilitator": {
34
24
  "import": "./dist/src/facilitator/index.js",
35
25
  "require": "./dist/src/facilitator/index.js",
@@ -69,14 +59,14 @@
69
59
  },
70
60
  "repository": {
71
61
  "type": "git",
72
- "url": "git+https://github.com/4n0nn43x/Aether.git"
62
+ "url": "git+https://github.com/AETHER-SDK/aether-sdk.git"
73
63
  },
74
64
  "author": "4n0nn43x",
75
65
  "license": "MIT",
76
66
  "bugs": {
77
- "url": "https://github.com/4n0nn43x/Aether/issues"
67
+ "url": "https://github.com/AETHER-SDK/aether-sdk/issues"
78
68
  },
79
- "homepage": "https://github.com/4n0nn43x/Aether#readme",
69
+ "homepage": "https://github.com/AETHER-SDK/aether-sdk#readme",
80
70
  "dependencies": {
81
71
  "@langchain/core": "^1.0.1",
82
72
  "@langchain/ollama": "^1.0.0",