@clawnch/clawtomaton 0.5.1 → 0.7.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.
Files changed (41) hide show
  1. package/dist/agent/index.d.ts +5 -0
  2. package/dist/agent/index.d.ts.map +1 -1
  3. package/dist/agent/index.js +92 -11
  4. package/dist/agent/index.js.map +1 -1
  5. package/dist/agent/prompt.d.ts +4 -0
  6. package/dist/agent/prompt.d.ts.map +1 -1
  7. package/dist/agent/prompt.js +211 -28
  8. package/dist/agent/prompt.js.map +1 -1
  9. package/dist/constants.d.ts +17 -0
  10. package/dist/constants.d.ts.map +1 -1
  11. package/dist/constants.js +21 -0
  12. package/dist/constants.js.map +1 -1
  13. package/dist/heartbeat/index.d.ts +13 -0
  14. package/dist/heartbeat/index.d.ts.map +1 -1
  15. package/dist/heartbeat/index.js +245 -20
  16. package/dist/heartbeat/index.js.map +1 -1
  17. package/dist/market/index.d.ts +12 -1
  18. package/dist/market/index.d.ts.map +1 -1
  19. package/dist/market/index.js +34 -4
  20. package/dist/market/index.js.map +1 -1
  21. package/dist/skills/index.d.ts +2 -1
  22. package/dist/skills/index.d.ts.map +1 -1
  23. package/dist/skills/index.js +5 -1
  24. package/dist/skills/index.js.map +1 -1
  25. package/dist/skills/wayfinder.d.ts +13 -0
  26. package/dist/skills/wayfinder.d.ts.map +1 -0
  27. package/dist/skills/wayfinder.js +475 -0
  28. package/dist/skills/wayfinder.js.map +1 -0
  29. package/dist/state/index.d.ts +3 -1
  30. package/dist/state/index.d.ts.map +1 -1
  31. package/dist/state/index.js +16 -0
  32. package/dist/state/index.js.map +1 -1
  33. package/dist/survival/index.d.ts +8 -3
  34. package/dist/survival/index.d.ts.map +1 -1
  35. package/dist/survival/index.js +14 -7
  36. package/dist/survival/index.js.map +1 -1
  37. package/dist/types.d.ts +263 -0
  38. package/dist/types.d.ts.map +1 -1
  39. package/dist/types.js +13 -0
  40. package/dist/types.js.map +1 -1
  41. package/package.json +2 -2
@@ -0,0 +1,475 @@
1
+ /**
2
+ * Skill: wayfinder — Cross-chain DeFi via Wayfinder Paths.
3
+ *
4
+ * Two tiers:
5
+ * REST (always available): pools, balances, quote, resolve_token
6
+ * CLI (requires Python + wayfinder-paths): execute_swap, strategy
7
+ *
8
+ * Configurable via autonomy.wayfinder in ClawtomatonConfig.
9
+ * Requires WAYFINDER_API_KEY env var or config.autonomy.wayfinder.apiKey.
10
+ */
11
+ import { WayfinderClient } from '@clawnch/clawncher-sdk';
12
+ // ============================================================================
13
+ // Skill Definition
14
+ // ============================================================================
15
+ export const wayfinderSkill = {
16
+ name: 'wayfinder',
17
+ description: [
18
+ 'Cross-chain DeFi via Wayfinder Paths.',
19
+ 'Actions: pools (search DeFi yields), balances (multi-chain portfolio), quote (cross-chain swap quote),',
20
+ 'resolve_token (token lookup), execute_swap (swap via CLI, needs Python), strategy (run strategies, needs Python).',
21
+ 'REST actions are always available. CLI actions require Python 3.12+ and wayfinder-paths.',
22
+ ].join(' '),
23
+ parameters: [
24
+ {
25
+ name: 'action',
26
+ type: 'string',
27
+ description: 'Action: "pools", "balances", "quote", "resolve_token", "execute_swap", "strategy"',
28
+ required: true,
29
+ },
30
+ {
31
+ name: 'protocol',
32
+ type: 'string',
33
+ description: 'For pools: filter by protocol (e.g. "moonwell", "aave", "morpho")',
34
+ required: false,
35
+ },
36
+ {
37
+ name: 'chainId',
38
+ type: 'number',
39
+ description: 'Chain ID filter. Default: 8453 (Base)',
40
+ required: false,
41
+ },
42
+ {
43
+ name: 'address',
44
+ type: 'address',
45
+ description: 'Wallet address for balances. Defaults to agent wallet.',
46
+ required: false,
47
+ },
48
+ {
49
+ name: 'fromToken',
50
+ type: 'string',
51
+ description: 'Source token address or ID (for quote/execute_swap)',
52
+ required: false,
53
+ },
54
+ {
55
+ name: 'toToken',
56
+ type: 'string',
57
+ description: 'Destination token address or ID (for quote/execute_swap)',
58
+ required: false,
59
+ },
60
+ {
61
+ name: 'amount',
62
+ type: 'string',
63
+ description: 'Amount in raw units for quote, or human-readable for execute_swap',
64
+ required: false,
65
+ },
66
+ {
67
+ name: 'fromChain',
68
+ type: 'number',
69
+ description: 'Source chain ID for quote (default: 8453)',
70
+ required: false,
71
+ },
72
+ {
73
+ name: 'toChain',
74
+ type: 'number',
75
+ description: 'Destination chain ID for quote (default: 8453)',
76
+ required: false,
77
+ },
78
+ {
79
+ name: 'query',
80
+ type: 'string',
81
+ description: 'Token query for resolve_token (name, symbol, address, or CoinGecko ID)',
82
+ required: false,
83
+ },
84
+ {
85
+ name: 'strategy',
86
+ type: 'string',
87
+ description: 'Strategy name for strategy action (e.g. "basis_trading_strategy")',
88
+ required: false,
89
+ },
90
+ {
91
+ name: 'strategyAction',
92
+ type: 'string',
93
+ description: 'Strategy sub-action: "status", "deposit", "update", "exit", "withdraw", "analyze", "quote"',
94
+ required: false,
95
+ },
96
+ {
97
+ name: 'mainTokenAmount',
98
+ type: 'number',
99
+ description: 'Main token amount for strategy deposit',
100
+ required: false,
101
+ },
102
+ {
103
+ name: 'slippage',
104
+ type: 'number',
105
+ description: 'Slippage tolerance for quote (e.g. 0.005 for 0.5%). Default: 0.005',
106
+ required: false,
107
+ },
108
+ {
109
+ name: 'walletLabel',
110
+ type: 'string',
111
+ description: 'Wallet label for CLI operations (must match wayfinder config.json). Default: "main"',
112
+ required: false,
113
+ },
114
+ {
115
+ name: 'minApy',
116
+ type: 'number',
117
+ description: 'For pools: minimum supply APY filter (e.g. 2.0 for 2%)',
118
+ required: false,
119
+ },
120
+ {
121
+ name: 'tokenSymbol',
122
+ type: 'string',
123
+ description: 'For pools: filter by underlying token symbol (e.g. "WETH", "USDC")',
124
+ required: false,
125
+ },
126
+ ],
127
+ execute: async (params, ctx) => {
128
+ try {
129
+ const action = params.action;
130
+ if (!action) {
131
+ return { callId: '', success: false, result: null, error: 'Missing action parameter.' };
132
+ }
133
+ const client = getWayfinderClient(ctx);
134
+ if (!client) {
135
+ return {
136
+ callId: '',
137
+ success: false,
138
+ result: null,
139
+ error: 'Wayfinder not configured. Set WAYFINDER_API_KEY env var or autonomy.wayfinder.apiKey in config.',
140
+ };
141
+ }
142
+ switch (action) {
143
+ case 'pools':
144
+ return handlePools(client, params, ctx);
145
+ case 'balances':
146
+ return handleBalances(client, params, ctx);
147
+ case 'quote':
148
+ return handleQuote(client, params, ctx);
149
+ case 'resolve_token':
150
+ return handleResolveToken(client, params);
151
+ case 'execute_swap':
152
+ return handleExecuteSwap(client, params);
153
+ case 'strategy':
154
+ return handleStrategy(client, params);
155
+ default:
156
+ return {
157
+ callId: '',
158
+ success: false,
159
+ result: null,
160
+ error: `Unknown action: "${action}". Use: pools, balances, quote, resolve_token, execute_swap, strategy`,
161
+ };
162
+ }
163
+ }
164
+ catch (err) {
165
+ return { callId: '', success: false, result: null, error: err instanceof Error ? err.message : String(err) };
166
+ }
167
+ },
168
+ };
169
+ // ============================================================================
170
+ // Client factory
171
+ // ============================================================================
172
+ function getWayfinderClient(ctx) {
173
+ // Try autonomy config first, then env var
174
+ const apiKey = ctx.__wayfinderApiKey
175
+ ?? process.env.WAYFINDER_API_KEY;
176
+ if (!apiKey)
177
+ return null;
178
+ return new WayfinderClient({ apiKey });
179
+ }
180
+ // ============================================================================
181
+ // Action handlers
182
+ // ============================================================================
183
+ async function handlePools(client, params, ctx) {
184
+ const chainId = params.chainId ?? 8453;
185
+ const protocol = params.protocol;
186
+ const minApy = params.minApy;
187
+ const tokenSymbol = params.tokenSymbol?.toUpperCase();
188
+ let pools = await client.getPools(chainId, protocol);
189
+ // Filter by minimum APY
190
+ if (minApy !== undefined) {
191
+ pools = pools.filter(p => p.supplyApy >= minApy);
192
+ }
193
+ // Filter by token symbol
194
+ if (tokenSymbol) {
195
+ pools = pools.filter(p => p.tokenSymbol.toUpperCase() === tokenSymbol);
196
+ }
197
+ // Sort by supply APY descending
198
+ pools.sort((a, b) => b.supplyApy - a.supplyApy);
199
+ // Limit output
200
+ const topPools = pools.slice(0, 20);
201
+ if (topPools.length === 0) {
202
+ const filters = [];
203
+ if (protocol)
204
+ filters.push(`protocol=${protocol}`);
205
+ if (minApy)
206
+ filters.push(`minApy=${minApy}%`);
207
+ if (tokenSymbol)
208
+ filters.push(`token=${tokenSymbol}`);
209
+ return {
210
+ callId: '',
211
+ success: true,
212
+ result: `No pools found matching filters: ${filters.join(', ') || 'none'}. Try broadening your search.`,
213
+ };
214
+ }
215
+ const lines = [`DeFi Pools (chain: ${chainId}, showing top ${topPools.length} of ${pools.length})`, ''];
216
+ for (const p of topPools) {
217
+ const tvl = p.totalSupplyUsd > 1_000_000
218
+ ? `$${(p.totalSupplyUsd / 1_000_000).toFixed(1)}M`
219
+ : `$${(p.totalSupplyUsd / 1_000).toFixed(0)}K`;
220
+ lines.push(`${p.protocol} | ${p.tokenSymbol} | APY: ${p.supplyApy.toFixed(2)}% | TVL: ${tvl} | ${p.address}`);
221
+ }
222
+ return { callId: '', success: true, result: lines.join('\n') };
223
+ }
224
+ async function handleBalances(client, params, ctx) {
225
+ const address = params.address ?? ctx.identity.address;
226
+ const balances = await client.getBalances(address);
227
+ const tokens = balances.tokens.filter(t => t.balanceUsd > 0.01);
228
+ if (tokens.length === 0) {
229
+ return { callId: '', success: true, result: `No token balances found for ${address}.` };
230
+ }
231
+ // Sort by USD value descending
232
+ tokens.sort((a, b) => b.balanceUsd - a.balanceUsd);
233
+ const lines = [
234
+ `Multi-chain Balances for ${address}`,
235
+ `Total: $${balances.totalValueUsd.toFixed(2)}`,
236
+ '',
237
+ ];
238
+ for (const t of tokens) {
239
+ lines.push(`${t.chainName} | ${t.symbol}: ${t.balanceFormatted} ($${t.balanceUsd.toFixed(2)})`);
240
+ }
241
+ return {
242
+ callId: '',
243
+ success: true,
244
+ result: lines.join('\n'),
245
+ metadata: {
246
+ totalValueUsd: balances.totalValueUsd,
247
+ tokenCount: tokens.length,
248
+ },
249
+ };
250
+ }
251
+ async function handleQuote(client, params, ctx) {
252
+ const fromToken = params.fromToken;
253
+ const toToken = params.toToken;
254
+ const amount = params.amount;
255
+ if (!fromToken || !toToken || !amount) {
256
+ return {
257
+ callId: '',
258
+ success: false,
259
+ result: null,
260
+ error: 'Missing required params for quote: fromToken, toToken, amount (in raw units / wei)',
261
+ };
262
+ }
263
+ const fromChain = params.fromChain ?? 8453;
264
+ const toChain = params.toChain ?? 8453;
265
+ const slippage = params.slippage;
266
+ const quote = await client.quoteSwap({
267
+ fromToken,
268
+ toToken,
269
+ fromChain,
270
+ toChain,
271
+ fromWallet: ctx.identity.address,
272
+ amount,
273
+ slippage,
274
+ });
275
+ if (!quote.bestQuote) {
276
+ return {
277
+ callId: '',
278
+ success: true,
279
+ result: `No routes found for ${fromToken} → ${toToken} (${fromChain} → ${toChain}). Try different tokens or amounts.`,
280
+ };
281
+ }
282
+ const best = quote.bestQuote;
283
+ const lines = [
284
+ `Cross-chain Swap Quote`,
285
+ `Route: ${best.provider}`,
286
+ `Input: ${best.inputAmount} (${best.nativeInput ? 'native' : 'token'}) — $${best.inputAmountUsd.toFixed(2)}`,
287
+ `Output: ${best.outputAmount} (${best.nativeOutput ? 'native' : 'token'}) — $${best.outputAmountUsd.toFixed(2)}`,
288
+ `Fees: $${best.feeEstimate.feeTotalUsd.toFixed(2)}`,
289
+ ];
290
+ if (best.gasEstimate) {
291
+ lines.push(`Gas estimate: ${best.gasEstimate}`);
292
+ }
293
+ if (quote.quotes.length > 1) {
294
+ lines.push('', `Compared ${quote.quoteCount} routes. Other providers:`);
295
+ for (const q of quote.quotes.slice(0, 5)) {
296
+ if (q.provider === best.provider)
297
+ continue;
298
+ if (q.error) {
299
+ lines.push(` ${q.provider}: failed — ${q.error}`);
300
+ }
301
+ else {
302
+ lines.push(` ${q.provider}: output ${q.outputAmount} ($${q.outputAmountUsd.toFixed(2)})`);
303
+ }
304
+ }
305
+ }
306
+ return {
307
+ callId: '',
308
+ success: true,
309
+ result: lines.join('\n'),
310
+ metadata: {
311
+ provider: best.provider,
312
+ outputAmount: best.outputAmount,
313
+ outputAmountUsd: best.outputAmountUsd,
314
+ hasCalldata: !!best.calldata,
315
+ },
316
+ };
317
+ }
318
+ async function handleResolveToken(client, params) {
319
+ const query = params.query;
320
+ if (!query) {
321
+ return { callId: '', success: false, result: null, error: 'Missing query parameter for resolve_token.' };
322
+ }
323
+ const chainId = params.chainId;
324
+ const token = await client.resolveToken(query, chainId);
325
+ const lines = [
326
+ `Token: ${token.name} (${token.symbol})`,
327
+ `Address: ${token.address}`,
328
+ `Chain: ${token.chainId}`,
329
+ `Decimals: ${token.decimals}`,
330
+ ];
331
+ if (token.priceUsd !== undefined) {
332
+ lines.push(`Price: $${token.priceUsd.toFixed(6)}`);
333
+ }
334
+ if (token.priceChange24h !== undefined) {
335
+ lines.push(`24h change: ${token.priceChange24h >= 0 ? '+' : ''}${token.priceChange24h.toFixed(2)}%`);
336
+ }
337
+ if (token.marketCapUsd !== undefined) {
338
+ const mcap = token.marketCapUsd > 1_000_000
339
+ ? `$${(token.marketCapUsd / 1_000_000).toFixed(1)}M`
340
+ : `$${(token.marketCapUsd / 1_000).toFixed(0)}K`;
341
+ lines.push(`Market cap: ${mcap}`);
342
+ }
343
+ if (token.coingeckoId) {
344
+ lines.push(`CoinGecko ID: ${token.coingeckoId}`);
345
+ }
346
+ return {
347
+ callId: '',
348
+ success: true,
349
+ result: lines.join('\n'),
350
+ metadata: {
351
+ address: token.address,
352
+ symbol: token.symbol,
353
+ chainId: token.chainId,
354
+ priceUsd: token.priceUsd,
355
+ },
356
+ };
357
+ }
358
+ async function handleExecuteSwap(client, params) {
359
+ // Check Python availability first
360
+ const pyStatus = await client.checkPython();
361
+ if (!pyStatus.wayfinderInstalled) {
362
+ return {
363
+ callId: '',
364
+ success: false,
365
+ result: null,
366
+ error: pyStatus.available
367
+ ? 'wayfinder-paths not installed. Install with: pip3 install wayfinder-paths'
368
+ : 'Python 3 not found. Install Python 3.12+ first, then: pip3 install wayfinder-paths',
369
+ };
370
+ }
371
+ const fromToken = params.fromToken;
372
+ const toToken = params.toToken;
373
+ const amount = params.amount;
374
+ const walletLabel = params.walletLabel ?? 'main';
375
+ if (!fromToken || !toToken || !amount) {
376
+ return {
377
+ callId: '',
378
+ success: false,
379
+ result: null,
380
+ error: 'Missing required params for execute_swap: fromToken, toToken, amount (human-readable)',
381
+ };
382
+ }
383
+ const slippageBps = params.slippage
384
+ ? Math.round(params.slippage * 10000)
385
+ : undefined;
386
+ const result = await client.executeSwap({
387
+ kind: 'swap',
388
+ walletLabel,
389
+ amount,
390
+ fromToken,
391
+ toToken,
392
+ slippageBps,
393
+ chainId: params.chainId,
394
+ });
395
+ if (!result.ok) {
396
+ return { callId: '', success: false, result: null, error: `Swap failed: ${result.error}` };
397
+ }
398
+ const r = result.result;
399
+ const effects = Object.values(r.effects);
400
+ const txHashes = effects.map(e => e.txnHash).filter(Boolean);
401
+ const lines = [
402
+ `Swap executed via Wayfinder CLI`,
403
+ `Status: ${r.status}`,
404
+ `Preview: ${r.preview}`,
405
+ `Sender: ${r.sender}`,
406
+ `Recipient: ${r.recipient}`,
407
+ ];
408
+ for (const e of effects) {
409
+ lines.push(`TX: ${e.txnHash} (chain: ${e.chainId})`);
410
+ if (e.explorerUrl)
411
+ lines.push(`Explorer: ${e.explorerUrl}`);
412
+ }
413
+ return {
414
+ callId: '',
415
+ success: true,
416
+ result: lines.join('\n'),
417
+ metadata: {
418
+ txHash: txHashes[0],
419
+ txHashes,
420
+ status: r.status,
421
+ },
422
+ };
423
+ }
424
+ async function handleStrategy(client, params) {
425
+ // Check Python availability first
426
+ const pyStatus = await client.checkPython();
427
+ if (!pyStatus.wayfinderInstalled) {
428
+ return {
429
+ callId: '',
430
+ success: false,
431
+ result: null,
432
+ error: pyStatus.available
433
+ ? 'wayfinder-paths not installed. Install with: pip3 install wayfinder-paths'
434
+ : 'Python 3 not found. Install Python 3.12+ first, then: pip3 install wayfinder-paths',
435
+ };
436
+ }
437
+ const strategyName = params.strategy;
438
+ const strategyAction = params.strategyAction ?? 'status';
439
+ // If no strategy name, list available strategies
440
+ if (!strategyName) {
441
+ const strategies = await client.listStrategies();
442
+ if (strategies.length === 0) {
443
+ return { callId: '', success: true, result: 'No strategies available. Check wayfinder-paths installation.' };
444
+ }
445
+ const lines = ['Available Wayfinder Strategies:', ''];
446
+ for (const s of strategies) {
447
+ lines.push(` ${s.name}${s.description ? `: ${s.description}` : ''}`);
448
+ if (s.riskLevel !== 'unknown')
449
+ lines.push(` Risk: ${s.riskLevel} | Chains: ${s.chains.join(', ')}`);
450
+ }
451
+ return { callId: '', success: true, result: lines.join('\n') };
452
+ }
453
+ const result = await client.runStrategy({
454
+ strategy: strategyName,
455
+ action: strategyAction,
456
+ mainTokenAmount: params.mainTokenAmount,
457
+ walletLabel: params.walletLabel ?? 'main',
458
+ });
459
+ if (!result.success) {
460
+ return { callId: '', success: false, result: null, error: `Strategy ${strategyAction} failed: ${result.error}` };
461
+ }
462
+ const output = typeof result.output === 'string'
463
+ ? result.output
464
+ : JSON.stringify(result.output, null, 2);
465
+ return {
466
+ callId: '',
467
+ success: true,
468
+ result: `Strategy: ${strategyName}\nAction: ${strategyAction}\n\n${output}`,
469
+ metadata: {
470
+ strategy: strategyName,
471
+ action: strategyAction,
472
+ },
473
+ };
474
+ }
475
+ //# sourceMappingURL=wayfinder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wayfinder.js","sourceRoot":"","sources":["../../src/skills/wayfinder.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import type { ClawtomatonIdentity, SurvivalState, ConversationTurn, ActivationResult } from '../types.js';
8
8
  import type { BunkerState, ThreatLevel } from '../bunker/types.js';
9
- import type { TraderPosition, TraderTrade, TraderSnapshot, TraderStorage, RiskConfig, RiskStorage } from '@clawnch/clawncher-sdk';
9
+ import type { TraderPosition, TraderTrade, TraderSnapshot, TraderStorage, GasEntry, RiskConfig, RiskStorage } from '@clawnch/clawncher-sdk';
10
10
  export declare class StateStore {
11
11
  private db;
12
12
  constructor(stateDir: string);
@@ -49,6 +49,8 @@ export declare class StateStore {
49
49
  saveTraderTrades(trades: TraderTrade[]): void;
50
50
  getTraderSnapshots(): TraderSnapshot[];
51
51
  saveTraderSnapshots(snapshots: TraderSnapshot[]): void;
52
+ getGasLedger(): GasEntry[];
53
+ saveGasLedger(entries: GasEntry[]): void;
52
54
  /**
53
55
  * Get a TraderStorage adapter for use with ClawnchTrader.
54
56
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/state/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/state/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EACV,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAGhB,gBAAgB,EACjB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,KAAK,EACV,cAAc,EACd,WAAW,EACX,cAAc,EACd,aAAa,EACb,QAAQ,EACR,UAAU,EACV,WAAW,EACZ,MAAM,wBAAwB,CAAC;AAMhC,qBAAa,UAAU;IACrB,OAAO,CAAC,EAAE,CAAoB;gBAElB,QAAQ,EAAE,MAAM;IAa5B,OAAO,CAAC,OAAO;IA8Ef,YAAY,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAiBjD,WAAW,IAAI,mBAAmB,GAAG,IAAI;IAgBzC,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAU1F,cAAc,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAO9C,aAAa,IAAI,gBAAgB,GAAG,IAAI;IAUxC,WAAW,IAAI,OAAO;IAQtB,YAAY,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAcxC,WAAW,IAAI,aAAa;IA0B5B,OAAO,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI;IAarC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAc7C,YAAY,IAAI,MAAM;IAKtB,YAAY,IAAI,IAAI;IAQpB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAK7C,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAO9D,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAK7C,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAW7D,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAM7D,WAAW,CAAC,KAAK,GAAE,MAAY,GAAG,UAAU,EAAE;IAU9C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAOrC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAK/B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAQzB,OAAO,IAAI,MAAM;IAIjB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAS9B,eAAe,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAgBzC,cAAc,IAAI,WAAW,GAAG,IAAI;IAepC,kBAAkB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAM5C,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAOrC,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAWxC,SAAS,IAAI,OAAO,wBAAwB,EAAE,KAAK,EAAE;IAUrD,UAAU,CAAC,MAAM,EAAE,OAAO,wBAAwB,EAAE,KAAK,EAAE,GAAG,IAAI;IAQlE,aAAa,IAAI,UAAU,GAAG,IAAI;IAUlC,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAQxC,kBAAkB,IAAI,cAAc,EAAE;IAUtC,mBAAmB,CAAC,SAAS,EAAE,cAAc,EAAE,GAAG,IAAI;IAItD,eAAe,IAAI,WAAW,EAAE;IAUhC,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI;IAI7C,kBAAkB,IAAI,cAAc,EAAE;IAUtC,mBAAmB,CAAC,SAAS,EAAE,cAAc,EAAE,GAAG,IAAI;IAItD,YAAY,IAAI,QAAQ,EAAE;IAU1B,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI;IAIxC;;OAEG;IACH,eAAe,IAAI,aAAa;IAahC;;OAEG;IACH,aAAa,IAAI,WAAW;IAW5B,KAAK,IAAI,IAAI;CAGd;AAMD,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB"}
@@ -390,6 +390,20 @@ export class StateStore {
390
390
  saveTraderSnapshots(snapshots) {
391
391
  this.set('trader_snapshots', JSON.stringify(snapshots));
392
392
  }
393
+ getGasLedger() {
394
+ const raw = this.get('gas_ledger');
395
+ if (!raw)
396
+ return [];
397
+ try {
398
+ return JSON.parse(raw);
399
+ }
400
+ catch {
401
+ return [];
402
+ }
403
+ }
404
+ saveGasLedger(entries) {
405
+ this.set('gas_ledger', JSON.stringify(entries));
406
+ }
393
407
  /**
394
408
  * Get a TraderStorage adapter for use with ClawnchTrader.
395
409
  */
@@ -401,6 +415,8 @@ export class StateStore {
401
415
  saveTrades: (t) => this.saveTraderTrades(t),
402
416
  getSnapshots: () => this.getTraderSnapshots(),
403
417
  saveSnapshots: (s) => this.saveTraderSnapshots(s),
418
+ getGasLedger: () => this.getGasLedger(),
419
+ saveGasLedger: (e) => this.saveGasLedger(e),
404
420
  };
405
421
  }
406
422
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/state/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/state/index.ts"],"names":[],"mappings":"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"}
@@ -9,13 +9,18 @@
9
9
  */
10
10
  import type { PublicClient, Address } from 'viem';
11
11
  import type { StateStore } from '../state/index.js';
12
- import type { SurvivalState, SurvivalTier } from '../types.js';
13
- export declare function determineTier(ethBalance: bigint): SurvivalTier;
12
+ import type { SurvivalState, SurvivalTier, AutonomyConfig } from '../types.js';
13
+ /**
14
+ * Determine survival tier from ETH balance.
15
+ * Accepts optional overrides from AutonomyConfig.
16
+ */
17
+ export declare function determineTier(ethBalance: bigint, autonomy?: AutonomyConfig): SurvivalTier;
14
18
  export declare class SurvivalMonitor {
15
19
  private publicClient;
16
20
  private address;
17
21
  private state;
18
- constructor(publicClient: PublicClient, address: Address, state: StateStore);
22
+ private autonomy?;
23
+ constructor(publicClient: PublicClient, address: Address, state: StateStore, autonomy?: AutonomyConfig | undefined);
19
24
  /**
20
25
  * Check current ETH balance, update tier, persist to state.
21
26
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/survival/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAElD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAO/D,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY,CAK9D;AAMD,qBAAa,eAAe;IAExB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,KAAK;gBAFL,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,UAAU;IAG3B;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,aAAa,CAAC;IAyBrC;;OAEG;IACH,SAAS,IAAI,aAAa;IAI1B;;OAEG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO;IAI9D;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM;IAOtF;;;OAGG;IACH,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM;IAIlD;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAQrC;AAmDD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAcjE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/survival/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAElD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAO/E;;;GAGG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,YAAY,CAMzF;AAMD,qBAAa,eAAe;IAExB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,QAAQ,CAAC;gBAHT,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,UAAU,EACjB,QAAQ,CAAC,EAAE,cAAc,YAAA;IAGnC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,aAAa,CAAC;IAyBrC;;OAEG;IACH,SAAS,IAAI,aAAa;IAI1B;;OAEG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO;IAI9D;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM;IAOtF;;;OAGG;IACH,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM;IAIlD;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAQrC;AAmDD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAcjE"}