aether-agent-sdk 1.0.5 ā 1.0.7
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 +17 -23
- package/dist/src/agents/SettlementAgent.d.ts +4 -1
- package/dist/src/agents/SettlementAgent.d.ts.map +1 -1
- package/dist/src/agents/SettlementAgent.js +49 -15
- package/dist/src/agents/SettlementAgent.js.map +1 -1
- package/dist/src/facilitator/X402FacilitatorServer.d.ts.map +1 -1
- package/dist/src/facilitator/X402FacilitatorServer.js +45 -19
- package/dist/src/facilitator/X402FacilitatorServer.js.map +1 -1
- package/package.json +1 -3
- package/dist/src/agents/AgentRegistry.d.ts +0 -48
- package/dist/src/agents/AgentRegistry.d.ts.map +0 -1
- package/dist/src/agents/AgentRegistry.js +0 -114
- package/dist/src/agents/AgentRegistry.js.map +0 -1
- package/dist/src/agents/AnalyzerAgent.d.ts +0 -18
- package/dist/src/agents/AnalyzerAgent.d.ts.map +0 -1
- package/dist/src/agents/AnalyzerAgent.js +0 -129
- package/dist/src/agents/AnalyzerAgent.js.map +0 -1
- package/dist/src/agents/IntelligentVerifierAgent.d.ts +0 -46
- package/dist/src/agents/IntelligentVerifierAgent.d.ts.map +0 -1
- package/dist/src/agents/IntelligentVerifierAgent.js +0 -262
- package/dist/src/agents/IntelligentVerifierAgent.js.map +0 -1
- package/dist/src/agents/SettlementAgentEnhanced.d.ts +0 -33
- package/dist/src/agents/SettlementAgentEnhanced.d.ts.map +0 -1
- package/dist/src/agents/SettlementAgentEnhanced.js +0 -219
- package/dist/src/agents/SettlementAgentEnhanced.js.map +0 -1
- package/dist/src/agents/VerifierAgent.d.ts +0 -30
- package/dist/src/agents/VerifierAgent.d.ts.map +0 -1
- package/dist/src/agents/VerifierAgent.js +0 -181
- package/dist/src/agents/VerifierAgent.js.map +0 -1
- package/dist/src/modes/HumanInTheLoopMode.d.ts +0 -92
- package/dist/src/modes/HumanInTheLoopMode.d.ts.map +0 -1
- package/dist/src/modes/HumanInTheLoopMode.js +0 -234
- package/dist/src/modes/HumanInTheLoopMode.js.map +0 -1
- package/dist/src/modes/index.d.ts +0 -8
- package/dist/src/modes/index.d.ts.map +0 -1
- package/dist/src/modes/index.js +0 -11
- package/dist/src/modes/index.js.map +0 -1
- package/dist/src/protocols/A2ANegotiation.d.ts +0 -122
- package/dist/src/protocols/A2ANegotiation.d.ts.map +0 -1
- package/dist/src/protocols/A2ANegotiation.js +0 -230
- package/dist/src/protocols/A2ANegotiation.js.map +0 -1
- package/dist/src/services/index.d.ts +0 -8
- package/dist/src/services/index.d.ts.map +0 -1
- package/dist/src/services/index.js +0 -13
- package/dist/src/services/index.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
# Aether
|
|
2
2
|
|
|
3
|
-
**Autonomous Agent Ecosystem SDK for Solana**
|
|
3
|
+
**Autonomous Agent Ecosystem SDK for Solana**
|
|
4
|
+
|
|
5
|
+
[](https://opensource.org/licenses/MIT)
|
|
6
|
+
[](https://www.typescriptlang.org/)
|
|
7
|
+
[](https://solana.com)
|
|
8
|
+
[](https://pump.fun/coin/5abiPeWqRLYb21DWNGYRFwrABML24dYuGn39ZpPYpump)
|
|
9
|
+
|
|
10
|
+
> **šŖ $ATHR Token**: [Trade on Pump.fun ā](https://pump.fun/coin/5abiPeWqRLYb21DWNGYRFwrABML24dYuGn39ZpPYpump)
|
|
4
11
|
|
|
5
|
-
[](https://opensource.org/licenses/MIT)
|
|
6
|
-
[](https://www.typescriptlang.org/)
|
|
7
|
-
[](https://solana.com)
|
|
8
|
-
[](https://solana.com/x402/what-is-x402)
|
|
9
12
|
|
|
10
13
|
Aether is a production-ready SDK for building autonomous agent-to-agent systems on Solana. It integrates the x402 Payment Protocol to enable intelligent agent communication and micropayment settlement.
|
|
11
14
|
|
|
@@ -64,12 +67,10 @@ import { SettlementAgent } from 'aether-agent-sdk'
|
|
|
64
67
|
const agent = new SettlementAgent()
|
|
65
68
|
await agent.init()
|
|
66
69
|
|
|
67
|
-
const
|
|
70
|
+
const paymentHeader = await agent.createSignedPayment(
|
|
68
71
|
'merchant_wallet_address',
|
|
69
|
-
1.0
|
|
72
|
+
1.0
|
|
70
73
|
)
|
|
71
|
-
|
|
72
|
-
console.log(`Payment sent: ${txHash}`)
|
|
73
74
|
```
|
|
74
75
|
|
|
75
76
|
---
|
|
@@ -85,22 +86,15 @@ console.log(`Payment sent: ${txHash}`)
|
|
|
85
86
|
|
|
86
87
|
## š¬ Demo
|
|
87
88
|
|
|
88
|
-
|
|
89
|
+
See the complete working demo with AI weather agents:
|
|
89
90
|
|
|
90
|
-
|
|
91
|
-
# Install dependencies
|
|
92
|
-
npm install
|
|
91
|
+
š **[github.com/4n0nn43x/aether-demo](https://github.com/4n0nn43x/aether-demo)**
|
|
93
92
|
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
# Edit .env with your credentials
|
|
100
|
-
|
|
101
|
-
# Run demo
|
|
102
|
-
npm run demo:payment
|
|
103
|
-
```
|
|
93
|
+
The demo shows:
|
|
94
|
+
- x402 payment-gated weather API
|
|
95
|
+
- AI-powered customer agent
|
|
96
|
+
- Real USDC settlements on Solana
|
|
97
|
+
- Full comparison with simple HTTP agents
|
|
104
98
|
|
|
105
99
|
---
|
|
106
100
|
|
|
@@ -9,6 +9,9 @@ export declare class SettlementAgent {
|
|
|
9
9
|
private createPaymentRequirements;
|
|
10
10
|
private executeSettlement;
|
|
11
11
|
private createPaymentPayload;
|
|
12
|
-
|
|
12
|
+
/**
|
|
13
|
+
* Creates a signed x402 payment
|
|
14
|
+
*/
|
|
15
|
+
createSignedPayment(recipientAddress: string, amountUsdc: number): Promise<string>;
|
|
13
16
|
}
|
|
14
17
|
//# sourceMappingURL=SettlementAgent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettlementAgent.d.ts","sourceRoot":"","sources":["../../../src/agents/SettlementAgent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SettlementAgent.d.ts","sourceRoot":"","sources":["../../../src/agents/SettlementAgent.ts"],"names":[],"mappings":"AASA,qBAAa,eAAe;IAC1B,OAAO,CAAC,UAAU,CAAY;IAC9B,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,cAAc,CAAQ;;IAmCxB,iBAAiB,CAAC,YAAY,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAY3B,OAAO,CAAC,yBAAyB;YAiBnB,iBAAiB;IAqC/B,OAAO,CAAC,oBAAoB;IAuB5B;;OAEG;IACG,mBAAmB,CAAC,gBAAgB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAuFzF"}
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.SettlementAgent = void 0;
|
|
7
7
|
const web3_js_1 = require("@solana/web3.js");
|
|
8
|
+
const spl_token_1 = require("@solana/spl-token");
|
|
8
9
|
const X402FacilitatorServer_1 = require("../facilitator/X402FacilitatorServer");
|
|
9
10
|
const chalk_1 = __importDefault(require("chalk"));
|
|
10
11
|
const dotenv_1 = __importDefault(require("dotenv"));
|
|
@@ -124,30 +125,63 @@ class SettlementAgent {
|
|
|
124
125
|
}
|
|
125
126
|
};
|
|
126
127
|
}
|
|
127
|
-
|
|
128
|
+
/**
|
|
129
|
+
* Creates a signed x402 payment
|
|
130
|
+
*/
|
|
131
|
+
async createSignedPayment(recipientAddress, amountUsdc) {
|
|
128
132
|
try {
|
|
129
133
|
if (!this.agentWallet) {
|
|
130
134
|
throw new Error('Agent wallet not initialized');
|
|
131
135
|
}
|
|
132
|
-
console.log(chalk_1.default.blue(
|
|
136
|
+
console.log(chalk_1.default.blue(`š Creating signed x402 payment...`));
|
|
133
137
|
console.log(chalk_1.default.blue(`šµ Amount: ${amountUsdc} USDC`));
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
+
console.log(chalk_1.default.blue(`š Recipient: ${recipientAddress}`));
|
|
139
|
+
const amountInMicroUsdc = Math.floor(amountUsdc * 1_000_000);
|
|
140
|
+
const recipientPubkey = new web3_js_1.PublicKey(recipientAddress);
|
|
141
|
+
const usdcMint = new web3_js_1.PublicKey(process.env.USDC_MINT || '4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU');
|
|
142
|
+
// Create token instance
|
|
143
|
+
const token = new spl_token_1.Token(this.connection, usdcMint, spl_token_1.TOKEN_PROGRAM_ID, this.agentWallet);
|
|
144
|
+
// Get or create token accounts
|
|
145
|
+
const fromTokenAccount = await token.getOrCreateAssociatedAccountInfo(this.agentWallet.publicKey);
|
|
146
|
+
const toTokenAccount = await token.getOrCreateAssociatedAccountInfo(recipientPubkey);
|
|
147
|
+
console.log(chalk_1.default.blue(`š From: ${this.agentWallet.publicKey.toBase58()}`));
|
|
148
|
+
console.log(chalk_1.default.blue(`š To: ${recipientAddress}`));
|
|
149
|
+
// Create transfer instruction
|
|
150
|
+
const transferInstruction = spl_token_1.Token.createTransferInstruction(spl_token_1.TOKEN_PROGRAM_ID, fromTokenAccount.address, toTokenAccount.address, this.agentWallet.publicKey, [], amountInMicroUsdc);
|
|
151
|
+
// Create transaction
|
|
152
|
+
const transaction = new web3_js_1.Transaction().add(transferInstruction);
|
|
153
|
+
// Get recent blockhash
|
|
154
|
+
const { blockhash } = await this.connection.getRecentBlockhash();
|
|
155
|
+
transaction.recentBlockhash = blockhash;
|
|
156
|
+
transaction.feePayer = this.agentWallet.publicKey;
|
|
157
|
+
// Sign transaction
|
|
158
|
+
transaction.sign(this.agentWallet);
|
|
159
|
+
console.log(chalk_1.default.green(`ā
Transaction signed`));
|
|
160
|
+
// Create x402 payload with signed transaction
|
|
161
|
+
const validBefore = Math.floor(Date.now() / 1000) + 300; // 5 minutes
|
|
162
|
+
const paymentPayload = {
|
|
163
|
+
x402Version: 1,
|
|
164
|
+
scheme: 'exact',
|
|
165
|
+
network: 'solana-devnet',
|
|
166
|
+
payload: {
|
|
167
|
+
authorization: {
|
|
168
|
+
from: this.agentWallet.publicKey.toBase58(),
|
|
169
|
+
to: recipientAddress,
|
|
170
|
+
value: amountInMicroUsdc.toString(),
|
|
171
|
+
asset: usdcMint.toBase58(),
|
|
172
|
+
validBefore: validBefore
|
|
173
|
+
},
|
|
174
|
+
signedTransaction: transaction.serialize().toString('base64')
|
|
175
|
+
}
|
|
138
176
|
};
|
|
139
|
-
|
|
177
|
+
// Encode to base64
|
|
140
178
|
const paymentHeader = Buffer.from(JSON.stringify(paymentPayload)).toString('base64');
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
console.log(chalk_1.default.green(`ā
Transfer successful: ${settlementResult.txHash}`));
|
|
144
|
-
return settlementResult.txHash;
|
|
145
|
-
}
|
|
146
|
-
return null;
|
|
179
|
+
console.log(chalk_1.default.green(`ā
x402 payment created (signed transaction included)`));
|
|
180
|
+
return paymentHeader;
|
|
147
181
|
}
|
|
148
182
|
catch (error) {
|
|
149
|
-
console.error('ā
|
|
150
|
-
|
|
183
|
+
console.error(chalk_1.default.red('ā Error creating signed payment:'), error);
|
|
184
|
+
throw error;
|
|
151
185
|
}
|
|
152
186
|
}
|
|
153
187
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettlementAgent.js","sourceRoot":"","sources":["../../../src/agents/SettlementAgent.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"SettlementAgent.js","sourceRoot":"","sources":["../../../src/agents/SettlementAgent.ts"],"names":[],"mappings":";;;;;;AAAA,6CAA6E;AAC7E,iDAA2D;AAC3D,gFAA4E;AAC5E,kDAAyB;AACzB,oDAA2B;AAC3B,gDAAuB;AAEvB,gBAAM,CAAC,MAAM,EAAE,CAAA;AAEf,MAAa,eAAe;IAClB,UAAU,CAAY;IACtB,WAAW,CAAU;IACrB,WAAW,CAAuB;IAClC,cAAc,CAAQ;IAE9B;QACE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,+BAA+B,CAAA;QAC5E,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAA;QACrD,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAA;QAE1D,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC,CAAA;YACpF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC,CAAA;YACrD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC,CAAA;YAC9D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAA;YACpD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAA;YACjD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAA;YAC/D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC,CAAA;YACzE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC,CAAA;YACpE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC,CAAA;YACvE,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;QACnF,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,IAAI,oBAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QACrD,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;QACpC,IAAI,CAAC,WAAW,GAAG,IAAI,6CAAqB,EAAE,CAAA;QAE9C,IAAI,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC;gBACH,MAAM,eAAe,GAAG,cAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;gBACpD,IAAI,CAAC,WAAW,GAAG,iBAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAA;gBACzD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,+CAA+C,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAA;YAClH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,gCAAgC,CAAC,EAAE,KAAK,CAAC,CAAA;YACnE,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,YAAiB;QACvC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,8CAA8C,CAAC,CAAC,CAAA;QACzE,MAAM,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAA;IAC5C,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAA;YAC/C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,0CAA0C,CAAC,CAAC,CAAA;YACrE,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,EAAE,CAAC,CAAA;YACtC,OAAO,CAAC,GAAG,CAAC,eAAe,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAA;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAA;YAC/D,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAEO,yBAAyB;QAC/B,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,KAAK,CAAC,CAAA;QAClF,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,SAAS,CAAC,CAAA;QAE/D,OAAO;YACL,MAAM,EAAE,OAAgB;YACxB,OAAO,EAAE,eAAe;YACxB,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,8CAA8C;YAC9E,KAAK,EAAE,IAAI,CAAC,cAAc;YAC1B,iBAAiB,EAAE,iBAAiB,CAAC,QAAQ,EAAE;YAC/C,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,yCAAyC;YACtD,QAAQ,EAAE,kBAAkB;YAC5B,iBAAiB,EAAE,GAAG;SACvB,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,YAAiB;QAC/C,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,4CAA4C,CAAC,CAAC,CAAA;YAEvE,MAAM,YAAY,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAA;YAErD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC,CAAA;YACvE,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAA;YAC9D,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAEpF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;YAEjG,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,CAAA;YAC1D,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,CAAA;YAErF,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;gBAChC,MAAM,IAAI,KAAK,CAAC,gCAAgC,kBAAkB,CAAC,aAAa,EAAE,CAAC,CAAA;YACrF,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC,CAAA;YAE7D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC,CAAA;YACrF,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,CAAA;YAEnF,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,8BAA8B,gBAAgB,CAAC,KAAK,EAAE,CAAC,CAAA;YACzE,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAA;YAC3D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,6BAA6B,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;YAC/E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,+CAA+C,gBAAgB,CAAC,MAAM,iBAAiB,CAAC,CAAC,CAAA;QAElH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAA;YACrD,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAEO,oBAAoB,CAAC,YAAiB;QAC5C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;QACjD,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,YAAY,CAAC,iBAAiB,CAAA;QAElF,OAAO;YACL,WAAW,EAAE,CAAC;YACd,MAAM,EAAE,YAAY,CAAC,MAAM;YAC3B,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,OAAO,EAAE;gBACP,aAAa,EAAE;oBACb,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE;oBAC3C,EAAE,EAAE,YAAY,CAAC,KAAK;oBACtB,KAAK,EAAE,YAAY,CAAC,iBAAiB;oBACrC,KAAK,EAAE,YAAY,CAAC,KAAK;oBACzB,WAAW,EAAE,WAAW;iBACzB;aACF;SACF,CAAA;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB,CAAC,gBAAwB,EAAE,UAAkB;QACpE,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;YACjD,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC,CAAA;YAC7D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,cAAc,UAAU,OAAO,CAAC,CAAC,CAAA;YACxD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iBAAiB,gBAAgB,EAAE,CAAC,CAAC,CAAA;YAE5D,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC,CAAA;YAC5D,MAAM,eAAe,GAAG,IAAI,mBAAS,CAAC,gBAAgB,CAAC,CAAA;YACvD,MAAM,QAAQ,GAAG,IAAI,mBAAS,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,8CAA8C,CAAC,CAAA;YAEvG,wBAAwB;YACxB,MAAM,KAAK,GAAG,IAAI,iBAAK,CACrB,IAAI,CAAC,UAAU,EACf,QAAQ,EACR,4BAAgB,EAChB,IAAI,CAAC,WAAW,CACjB,CAAA;YAED,+BAA+B;YAC/B,MAAM,gBAAgB,GAAG,MAAM,KAAK,CAAC,gCAAgC,CACnE,IAAI,CAAC,WAAW,CAAC,SAAS,CAC3B,CAAA;YAED,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,gCAAgC,CACjE,eAAe,CAChB,CAAA;YAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAA;YAC5E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,UAAU,gBAAgB,EAAE,CAAC,CAAC,CAAA;YAErD,8BAA8B;YAC9B,MAAM,mBAAmB,GAAG,iBAAK,CAAC,yBAAyB,CACzD,4BAAgB,EAChB,gBAAgB,CAAC,OAAO,EACxB,cAAc,CAAC,OAAO,EACtB,IAAI,CAAC,WAAW,CAAC,SAAS,EAC1B,EAAE,EACF,iBAAiB,CAClB,CAAA;YAED,qBAAqB;YACrB,MAAM,WAAW,GAAG,IAAI,qBAAW,EAAE,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;YAE9D,uBAAuB;YACvB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAA;YAChE,WAAW,CAAC,eAAe,GAAG,SAAS,CAAA;YACvC,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAA;YAEjD,mBAAmB;YACnB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAElC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAA;YAEhD,8CAA8C;YAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,CAAA,CAAC,YAAY;YAEpE,MAAM,cAAc,GAAG;gBACrB,WAAW,EAAE,CAAC;gBACd,MAAM,EAAE,OAAO;gBACf,OAAO,EAAE,eAAe;gBACxB,OAAO,EAAE;oBACP,aAAa,EAAE;wBACb,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE;wBAC3C,EAAE,EAAE,gBAAgB;wBACpB,KAAK,EAAE,iBAAiB,CAAC,QAAQ,EAAE;wBACnC,KAAK,EAAE,QAAQ,CAAC,QAAQ,EAAE;wBAC1B,WAAW,EAAE,WAAW;qBACzB;oBACD,iBAAiB,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;iBAC9D;aACF,CAAA;YAED,mBAAmB;YACnB,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAEpF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC,CAAA;YAEhF,OAAO,aAAa,CAAA;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,kCAAkC,CAAC,EAAE,KAAK,CAAC,CAAA;YACnE,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;CACF;AA/ND,0CA+NC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"X402FacilitatorServer.d.ts","sourceRoot":"","sources":["../../../src/facilitator/X402FacilitatorServer.ts"],"names":[],"mappings":"AAYA,qBAAa,qBAAqB;IAChC,OAAO,CAAC,UAAU,CAAY;IAC9B,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAW;;IAwBrB,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,mBAAmB,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAwB3E,OAAO,CAAC,sBAAsB;IA+CxB,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,mBAAmB,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;YAuC7D,mBAAmB;
|
|
1
|
+
{"version":3,"file":"X402FacilitatorServer.d.ts","sourceRoot":"","sources":["../../../src/facilitator/X402FacilitatorServer.ts"],"names":[],"mappings":"AAYA,qBAAa,qBAAqB;IAChC,OAAO,CAAC,UAAU,CAAY;IAC9B,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAW;;IAwBrB,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,mBAAmB,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAwB3E,OAAO,CAAC,sBAAsB;IA+CxB,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,mBAAmB,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;YAuC7D,mBAAmB;IA6FjC,mBAAmB,IAAI;QAAE,KAAK,EAAE,KAAK,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE;CAO7E"}
|
|
@@ -135,29 +135,55 @@ class X402FacilitatorServer {
|
|
|
135
135
|
}
|
|
136
136
|
async executeUSDCTransfer(paymentPayload, requirements) {
|
|
137
137
|
try {
|
|
138
|
-
console.log(chalk_1.default.blue('š°
|
|
139
|
-
if (!this.agentWallet) {
|
|
140
|
-
throw new Error('Agent wallet not initialized');
|
|
141
|
-
}
|
|
138
|
+
console.log(chalk_1.default.blue('š° Processing x402 payment on Solana...'));
|
|
142
139
|
const authorization = paymentPayload.payload?.authorization;
|
|
143
140
|
if (!authorization) {
|
|
144
141
|
throw new Error('No authorization found in payment payload');
|
|
145
142
|
}
|
|
146
|
-
|
|
147
|
-
const
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
143
|
+
// Check if payload contains a pre-signed transaction (standard x402 flow)
|
|
144
|
+
const signedTransactionBase64 = paymentPayload.payload?.signedTransaction;
|
|
145
|
+
if (signedTransactionBase64) {
|
|
146
|
+
// Standard x402 flow: Submit pre-signed transaction
|
|
147
|
+
console.log(chalk_1.default.blue('š Pre-signed transaction detected (standard x402 flow)'));
|
|
148
|
+
console.log(chalk_1.default.blue(`š From: ${authorization.from}`));
|
|
149
|
+
console.log(chalk_1.default.blue(`š To: ${authorization.to}`));
|
|
150
|
+
console.log(chalk_1.default.blue(`š Amount: ${Number(authorization.value) / 1_000_000} USDC`));
|
|
151
|
+
// Deserialize the transaction
|
|
152
|
+
const transactionBuffer = Buffer.from(signedTransactionBase64, 'base64');
|
|
153
|
+
const transaction = web3_js_1.Transaction.from(transactionBuffer);
|
|
154
|
+
console.log(chalk_1.default.yellow('š Submitting pre-signed transaction to Solana...'));
|
|
155
|
+
// Submit the pre-signed transaction
|
|
156
|
+
const signature = await this.connection.sendRawTransaction(transaction.serialize(), {
|
|
157
|
+
skipPreflight: false,
|
|
158
|
+
preflightCommitment: 'confirmed'
|
|
159
|
+
});
|
|
160
|
+
// Wait for confirmation
|
|
161
|
+
await this.connection.confirmTransaction(signature, 'confirmed');
|
|
162
|
+
console.log(chalk_1.default.green(`ā
Transaction confirmed: ${signature}`));
|
|
163
|
+
return signature;
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
// Fallback: Old behavior (facilitator creates and executes the transaction)
|
|
167
|
+
console.log(chalk_1.default.yellow('ā ļø No pre-signed transaction - using legacy flow'));
|
|
168
|
+
if (!this.agentWallet) {
|
|
169
|
+
throw new Error('Agent wallet not initialized (required for legacy flow)');
|
|
170
|
+
}
|
|
171
|
+
const recipientAddress = new web3_js_1.PublicKey(authorization.to);
|
|
172
|
+
const amount = Number(authorization.value);
|
|
173
|
+
const token = new spl_token_1.Token(this.connection, this.usdcMint, spl_token_1.TOKEN_PROGRAM_ID, this.agentWallet);
|
|
174
|
+
const fromTokenAccount = await token.getOrCreateAssociatedAccountInfo(this.agentWallet.publicKey);
|
|
175
|
+
const toTokenAccount = await token.getOrCreateAssociatedAccountInfo(recipientAddress);
|
|
176
|
+
console.log(chalk_1.default.blue(`š Current USDC balance: ${Number(fromTokenAccount.amount) / 1_000_000} USDC`));
|
|
177
|
+
console.log(chalk_1.default.blue(`š Transfer amount: ${amount / 1_000_000} USDC`));
|
|
178
|
+
console.log(chalk_1.default.blue(`š Recipient: ${recipientAddress.toBase58()}`));
|
|
179
|
+
if (Number(fromTokenAccount.amount) < amount) {
|
|
180
|
+
throw new Error(`Insufficient USDC balance: ${Number(fromTokenAccount.amount) / 1_000_000} < ${amount / 1_000_000}`);
|
|
181
|
+
}
|
|
182
|
+
console.log(chalk_1.default.yellow('š Submitting transaction...'));
|
|
183
|
+
const signature = await token.transfer(fromTokenAccount.address, toTokenAccount.address, this.agentWallet, [], amount);
|
|
184
|
+
console.log(chalk_1.default.green(`ā
Transfer confirmed: ${signature}`));
|
|
185
|
+
return signature;
|
|
186
|
+
}
|
|
161
187
|
}
|
|
162
188
|
catch (error) {
|
|
163
189
|
console.error('ā USDC transfer error:', error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"X402FacilitatorServer.js","sourceRoot":"","sources":["../../../src/facilitator/X402FacilitatorServer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"X402FacilitatorServer.js","sourceRoot":"","sources":["../../../src/facilitator/X402FacilitatorServer.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": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
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",
|
|
@@ -60,8 +60,6 @@
|
|
|
60
60
|
"build": "tsc",
|
|
61
61
|
"start": "node dist/index.js",
|
|
62
62
|
"dev": "ts-node src/index.ts",
|
|
63
|
-
"demo": "ts-node demo/orchestrator.ts",
|
|
64
|
-
"demo:payment": "ts-node demo/solana-x402-payment.ts",
|
|
65
63
|
"release": "npm run build && npm version patch && npm publish"
|
|
66
64
|
},
|
|
67
65
|
"repository": {
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* HCS-10 Agent Registry
|
|
3
|
-
* Manages agent registration, discovery, and metadata for HCS-10 compatible agents
|
|
4
|
-
*/
|
|
5
|
-
export interface AgentMetadata {
|
|
6
|
-
agentId: string;
|
|
7
|
-
agentName: string;
|
|
8
|
-
agentType: 'analyzer' | 'verifier' | 'settlement';
|
|
9
|
-
capabilities: string[];
|
|
10
|
-
supportedMessageTypes: string[];
|
|
11
|
-
topicId: string;
|
|
12
|
-
status: 'active' | 'inactive';
|
|
13
|
-
registrationTime?: number;
|
|
14
|
-
}
|
|
15
|
-
export declare class AgentRegistry {
|
|
16
|
-
private agents;
|
|
17
|
-
/**
|
|
18
|
-
* Register an agent in the local registry
|
|
19
|
-
*/
|
|
20
|
-
registerAgent(metadata: AgentMetadata): void;
|
|
21
|
-
/**
|
|
22
|
-
* Get agent metadata by ID
|
|
23
|
-
*/
|
|
24
|
-
getAgent(agentId: string): AgentMetadata | undefined;
|
|
25
|
-
/**
|
|
26
|
-
* Get all registered agents
|
|
27
|
-
*/
|
|
28
|
-
getAllAgents(): AgentMetadata[];
|
|
29
|
-
/**
|
|
30
|
-
* Discover agents by type
|
|
31
|
-
*/
|
|
32
|
-
discoverAgentsByType(type: string): AgentMetadata[];
|
|
33
|
-
/**
|
|
34
|
-
* Discover agents by capability
|
|
35
|
-
*/
|
|
36
|
-
discoverAgentsByCapability(capability: string): AgentMetadata[];
|
|
37
|
-
/**
|
|
38
|
-
* Check agent status
|
|
39
|
-
*/
|
|
40
|
-
isAgentActive(agentId: string): boolean;
|
|
41
|
-
/**
|
|
42
|
-
* Get agent summary
|
|
43
|
-
*/
|
|
44
|
-
getSummary(): string;
|
|
45
|
-
}
|
|
46
|
-
export declare const globalAgentRegistry: AgentRegistry;
|
|
47
|
-
export declare function initializeHCS10Agents(): void;
|
|
48
|
-
//# sourceMappingURL=AgentRegistry.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AgentRegistry.d.ts","sourceRoot":"","sources":["../../../src/agents/AgentRegistry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,UAAU,GAAG,UAAU,GAAG,YAAY,CAAA;IACjD,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,qBAAqB,EAAE,MAAM,EAAE,CAAA;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,QAAQ,GAAG,UAAU,CAAA;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAwC;IAEtD;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI;IAQ5C;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAIpD;;OAEG;IACH,YAAY,IAAI,aAAa,EAAE;IAI/B;;OAEG;IACH,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,EAAE;IAInD;;OAEG;IACH,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,EAAE;IAM/D;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAKvC;;OAEG;IACH,UAAU,IAAI,MAAM;CAQrB;AAGD,eAAO,MAAM,mBAAmB,eAAsB,CAAA;AAGtD,wBAAgB,qBAAqB,IAAI,IAAI,CA6C5C"}
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* HCS-10 Agent Registry
|
|
4
|
-
* Manages agent registration, discovery, and metadata for HCS-10 compatible agents
|
|
5
|
-
*/
|
|
6
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
8
|
-
};
|
|
9
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.globalAgentRegistry = exports.AgentRegistry = void 0;
|
|
11
|
-
exports.initializeHCS10Agents = initializeHCS10Agents;
|
|
12
|
-
const env_1 = require("../utils/env");
|
|
13
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
14
|
-
(0, env_1.loadEnvIfNeeded)();
|
|
15
|
-
class AgentRegistry {
|
|
16
|
-
agents = new Map();
|
|
17
|
-
/**
|
|
18
|
-
* Register an agent in the local registry
|
|
19
|
-
*/
|
|
20
|
-
registerAgent(metadata) {
|
|
21
|
-
this.agents.set(metadata.agentId, metadata);
|
|
22
|
-
console.log(chalk_1.default.green(`ā
Registered agent: ${metadata.agentName} (${metadata.agentId})`));
|
|
23
|
-
console.log(chalk_1.default.gray(` Type: ${metadata.agentType}`));
|
|
24
|
-
console.log(chalk_1.default.gray(` Capabilities: ${metadata.capabilities.join(', ')}`));
|
|
25
|
-
console.log(chalk_1.default.gray(` Topic: ${metadata.topicId}`));
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Get agent metadata by ID
|
|
29
|
-
*/
|
|
30
|
-
getAgent(agentId) {
|
|
31
|
-
return this.agents.get(agentId);
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Get all registered agents
|
|
35
|
-
*/
|
|
36
|
-
getAllAgents() {
|
|
37
|
-
return Array.from(this.agents.values());
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Discover agents by type
|
|
41
|
-
*/
|
|
42
|
-
discoverAgentsByType(type) {
|
|
43
|
-
return Array.from(this.agents.values()).filter(agent => agent.agentType === type);
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Discover agents by capability
|
|
47
|
-
*/
|
|
48
|
-
discoverAgentsByCapability(capability) {
|
|
49
|
-
return Array.from(this.agents.values()).filter(agent => agent.capabilities.includes(capability));
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Check agent status
|
|
53
|
-
*/
|
|
54
|
-
isAgentActive(agentId) {
|
|
55
|
-
const agent = this.agents.get(agentId);
|
|
56
|
-
return agent?.status === 'active';
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Get agent summary
|
|
60
|
-
*/
|
|
61
|
-
getSummary() {
|
|
62
|
-
const agents = this.getAllAgents();
|
|
63
|
-
return chalk_1.default.blue(`š Agent Registry: ${agents.length} agents registered\n` +
|
|
64
|
-
agents.map(agent => ` ${agent.agentName} (${agent.agentType}) - ${agent.status}`).join('\n'));
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
exports.AgentRegistry = AgentRegistry;
|
|
68
|
-
// Global registry instance
|
|
69
|
-
exports.globalAgentRegistry = new AgentRegistry();
|
|
70
|
-
// Register predefined agents from environment
|
|
71
|
-
function initializeHCS10Agents() {
|
|
72
|
-
// Analyzer Agent
|
|
73
|
-
if (process.env.ANALYZER_AGENT_ID && process.env.ANALYZER_TOPIC_ID) {
|
|
74
|
-
exports.globalAgentRegistry.registerAgent({
|
|
75
|
-
agentId: process.env.ANALYZER_AGENT_ID,
|
|
76
|
-
agentName: 'AnalyzerAgent',
|
|
77
|
-
agentType: 'analyzer',
|
|
78
|
-
capabilities: ['account-analysis', 'threshold-evaluation', 'proposal-generation'],
|
|
79
|
-
supportedMessageTypes: ['analysis_proposal', 'settlement_complete'],
|
|
80
|
-
topicId: process.env.ANALYZER_TOPIC_ID,
|
|
81
|
-
status: 'active',
|
|
82
|
-
registrationTime: Date.now()
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
// Verifier Agent
|
|
86
|
-
if (process.env.VERIFIER_AGENT_ID && process.env.VERIFIER_TOPIC_ID) {
|
|
87
|
-
exports.globalAgentRegistry.registerAgent({
|
|
88
|
-
agentId: process.env.VERIFIER_AGENT_ID,
|
|
89
|
-
agentName: 'VerifierAgent',
|
|
90
|
-
agentType: 'verifier',
|
|
91
|
-
capabilities: ['proposal-validation', 'approval-decision', 'business-logic'],
|
|
92
|
-
supportedMessageTypes: ['verification_result', 'analysis_proposal'],
|
|
93
|
-
topicId: process.env.VERIFIER_TOPIC_ID,
|
|
94
|
-
status: 'active',
|
|
95
|
-
registrationTime: Date.now()
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
// Settlement Agent
|
|
99
|
-
if (process.env.SETTLEMENT_AGENT_ID && process.env.SETTLEMENT_TOPIC_ID) {
|
|
100
|
-
exports.globalAgentRegistry.registerAgent({
|
|
101
|
-
agentId: process.env.SETTLEMENT_AGENT_ID,
|
|
102
|
-
agentName: 'SettlementAgent',
|
|
103
|
-
agentType: 'settlement',
|
|
104
|
-
capabilities: ['x402-payment', 'cross-chain-settlement', 'usdc-transfer'],
|
|
105
|
-
supportedMessageTypes: ['verification_result', 'settlement_complete'],
|
|
106
|
-
topicId: process.env.SETTLEMENT_TOPIC_ID,
|
|
107
|
-
status: 'active',
|
|
108
|
-
registrationTime: Date.now()
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
console.log(chalk_1.default.bold.green('\nšÆ HCS-10 Agents Initialized\n'));
|
|
112
|
-
console.log(exports.globalAgentRegistry.getSummary());
|
|
113
|
-
}
|
|
114
|
-
//# sourceMappingURL=AgentRegistry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AgentRegistry.js","sourceRoot":"","sources":["../../../src/agents/AgentRegistry.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;AAwFH,sDA6CC;AAlID,sCAA8C;AAC9C,kDAAyB;AAEzB,IAAA,qBAAe,GAAE,CAAA;AAajB,MAAa,aAAa;IAChB,MAAM,GAA+B,IAAI,GAAG,EAAE,CAAA;IAEtD;;OAEG;IACH,aAAa,CAAC,QAAuB;QACnC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QAC3C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,uBAAuB,QAAQ,CAAC,SAAS,KAAK,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC,CAAA;QAC3F,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,YAAY,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;QACzD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,oBAAoB,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;QAC/E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;IAC1D,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,OAAe;QACtB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IACjC,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;IACzC,CAAC;IAED;;OAEG;IACH,oBAAoB,CAAC,IAAY;QAC/B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,CAAA;IACnF,CAAC;IAED;;OAEG;IACH,0BAA0B,CAAC,UAAkB;QAC3C,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACrD,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CACxC,CAAA;IACH,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,OAAe;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACtC,OAAO,KAAK,EAAE,MAAM,KAAK,QAAQ,CAAA;IACnC,CAAC;IAED;;OAEG;IACH,UAAU;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA;QAClC,OAAO,eAAK,CAAC,IAAI,CAAC,sBAAsB,MAAM,CAAC,MAAM,sBAAsB;YACzE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CACjB,MAAM,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,OAAO,KAAK,CAAC,MAAM,EAAE,CAC/D,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAA;IACH,CAAC;CACF;AA/DD,sCA+DC;AAED,2BAA2B;AACd,QAAA,mBAAmB,GAAG,IAAI,aAAa,EAAE,CAAA;AAEtD,8CAA8C;AAC9C,SAAgB,qBAAqB;IACnC,iBAAiB;IACjB,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;QACnE,2BAAmB,CAAC,aAAa,CAAC;YAChC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;YACtC,SAAS,EAAE,eAAe;YAC1B,SAAS,EAAE,UAAU;YACrB,YAAY,EAAE,CAAC,kBAAkB,EAAE,sBAAsB,EAAE,qBAAqB,CAAC;YACjF,qBAAqB,EAAE,CAAC,mBAAmB,EAAE,qBAAqB,CAAC;YACnE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;YACtC,MAAM,EAAE,QAAQ;YAChB,gBAAgB,EAAE,IAAI,CAAC,GAAG,EAAE;SAC7B,CAAC,CAAA;IACJ,CAAC;IAED,iBAAiB;IACjB,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;QACnE,2BAAmB,CAAC,aAAa,CAAC;YAChC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;YACtC,SAAS,EAAE,eAAe;YAC1B,SAAS,EAAE,UAAU;YACrB,YAAY,EAAE,CAAC,qBAAqB,EAAE,mBAAmB,EAAE,gBAAgB,CAAC;YAC5E,qBAAqB,EAAE,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;YACnE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;YACtC,MAAM,EAAE,QAAQ;YAChB,gBAAgB,EAAE,IAAI,CAAC,GAAG,EAAE;SAC7B,CAAC,CAAA;IACJ,CAAC;IAED,mBAAmB;IACnB,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;QACvE,2BAAmB,CAAC,aAAa,CAAC;YAChC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;YACxC,SAAS,EAAE,iBAAiB;YAC5B,SAAS,EAAE,YAAY;YACvB,YAAY,EAAE,CAAC,cAAc,EAAE,wBAAwB,EAAE,eAAe,CAAC;YACzE,qBAAqB,EAAE,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;YACrE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;YACxC,MAAM,EAAE,QAAQ;YAChB,gBAAgB,EAAE,IAAI,CAAC,GAAG,EAAE;SAC7B,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAA;IACjE,OAAO,CAAC,GAAG,CAAC,2BAAmB,CAAC,UAAU,EAAE,CAAC,CAAA;AAC/C,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { HCS10Client } from '@hashgraphonline/standards-agent-kit';
|
|
2
|
-
import { HCS10ConnectionManager } from '../protocols/HCS10ConnectionManager';
|
|
3
|
-
export declare class AnalyzerAgent {
|
|
4
|
-
private hcsClient;
|
|
5
|
-
private hederaClient;
|
|
6
|
-
private connectionManager?;
|
|
7
|
-
private readonly MIRROR_NODE_URL;
|
|
8
|
-
constructor();
|
|
9
|
-
init(): Promise<void>;
|
|
10
|
-
queryAccount(accountId: string): Promise<any>;
|
|
11
|
-
queryAccountViaMirror(accountId: string): Promise<any>;
|
|
12
|
-
getHcsClient(): HCS10Client;
|
|
13
|
-
/**
|
|
14
|
-
* Get connection manager instance (if initialized)
|
|
15
|
-
*/
|
|
16
|
-
getConnectionManager(): HCS10ConnectionManager | undefined;
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=AnalyzerAgent.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AnalyzerAgent.d.ts","sourceRoot":"","sources":["../../../src/agents/AnalyzerAgent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAA;AAElE,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAA;AAO5E,qBAAa,aAAa;IACxB,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,iBAAiB,CAAC,CAAwB;IAClD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA0C;;IAmDpE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAuBrB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IA0B7C,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAgB5D,YAAY,IAAI,WAAW;IAI3B;;OAEG;IACH,oBAAoB,IAAI,sBAAsB,GAAG,SAAS;CAG3D"}
|