@aibtc/mcp-server 1.9.0 → 1.13.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.
- package/dist/config/bitcoin-constants.d.ts +32 -0
- package/dist/config/bitcoin-constants.d.ts.map +1 -0
- package/dist/config/bitcoin-constants.js +32 -0
- package/dist/config/bitcoin-constants.js.map +1 -0
- package/dist/config/contracts.d.ts +12 -3
- package/dist/config/contracts.d.ts.map +1 -1
- package/dist/config/contracts.js +7 -1
- package/dist/config/contracts.js.map +1 -1
- package/dist/services/bitflow.service.d.ts +2 -1
- package/dist/services/bitflow.service.d.ts.map +1 -1
- package/dist/services/bitflow.service.js +3 -1
- package/dist/services/bitflow.service.js.map +1 -1
- package/dist/services/bns.service.d.ts +21 -5
- package/dist/services/bns.service.d.ts.map +1 -1
- package/dist/services/bns.service.js +145 -51
- package/dist/services/bns.service.js.map +1 -1
- package/dist/services/defi.service.d.ts +16 -6
- package/dist/services/defi.service.d.ts.map +1 -1
- package/dist/services/defi.service.js +99 -27
- package/dist/services/defi.service.js.map +1 -1
- package/dist/services/hiro-api.d.ts +26 -0
- package/dist/services/hiro-api.d.ts.map +1 -1
- package/dist/services/hiro-api.js +8 -0
- package/dist/services/hiro-api.js.map +1 -1
- package/dist/services/inscription-parser.d.ts +122 -0
- package/dist/services/inscription-parser.d.ts.map +1 -0
- package/dist/services/inscription-parser.js +163 -0
- package/dist/services/inscription-parser.js.map +1 -0
- package/dist/services/nft.service.d.ts +2 -1
- package/dist/services/nft.service.d.ts.map +1 -1
- package/dist/services/nft.service.js +3 -1
- package/dist/services/nft.service.js.map +1 -1
- package/dist/services/ordinal-indexer.d.ts +128 -0
- package/dist/services/ordinal-indexer.d.ts.map +1 -0
- package/dist/services/ordinal-indexer.js +128 -0
- package/dist/services/ordinal-indexer.js.map +1 -0
- package/dist/services/sbtc.service.d.ts +2 -1
- package/dist/services/sbtc.service.d.ts.map +1 -1
- package/dist/services/sbtc.service.js +3 -1
- package/dist/services/sbtc.service.js.map +1 -1
- package/dist/services/tokens.service.d.ts +2 -1
- package/dist/services/tokens.service.d.ts.map +1 -1
- package/dist/services/tokens.service.js +3 -1
- package/dist/services/tokens.service.js.map +1 -1
- package/dist/services/wallet-manager.d.ts +5 -0
- package/dist/services/wallet-manager.d.ts.map +1 -1
- package/dist/services/wallet-manager.js +23 -9
- package/dist/services/wallet-manager.js.map +1 -1
- package/dist/tools/bitcoin.tools.d.ts.map +1 -1
- package/dist/tools/bitcoin.tools.js +214 -34
- package/dist/tools/bitcoin.tools.js.map +1 -1
- package/dist/tools/bitflow.tools.d.ts.map +1 -1
- package/dist/tools/bitflow.tools.js +8 -3
- package/dist/tools/bitflow.tools.js.map +1 -1
- package/dist/tools/bns.tools.d.ts.map +1 -1
- package/dist/tools/bns.tools.js +87 -7
- package/dist/tools/bns.tools.js.map +1 -1
- package/dist/tools/contract.tools.d.ts.map +1 -1
- package/dist/tools/contract.tools.js +19 -4
- package/dist/tools/contract.tools.js.map +1 -1
- package/dist/tools/defi.tools.d.ts.map +1 -1
- package/dist/tools/defi.tools.js +43 -0
- package/dist/tools/defi.tools.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +4 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/nft.tools.d.ts.map +1 -1
- package/dist/tools/nft.tools.js +8 -3
- package/dist/tools/nft.tools.js.map +1 -1
- package/dist/tools/ordinals.tools.d.ts +15 -0
- package/dist/tools/ordinals.tools.d.ts.map +1 -0
- package/dist/tools/ordinals.tools.js +401 -0
- package/dist/tools/ordinals.tools.js.map +1 -0
- package/dist/tools/query.tools.d.ts.map +1 -1
- package/dist/tools/query.tools.js +71 -0
- package/dist/tools/query.tools.js.map +1 -1
- package/dist/tools/sbtc.tools.d.ts.map +1 -1
- package/dist/tools/sbtc.tools.js +8 -3
- package/dist/tools/sbtc.tools.js.map +1 -1
- package/dist/tools/signing.tools.d.ts +25 -0
- package/dist/tools/signing.tools.d.ts.map +1 -0
- package/dist/tools/signing.tools.js +775 -0
- package/dist/tools/signing.tools.js.map +1 -0
- package/dist/tools/tokens.tools.d.ts.map +1 -1
- package/dist/tools/tokens.tools.js +8 -3
- package/dist/tools/tokens.tools.js.map +1 -1
- package/dist/tools/transfer.tools.d.ts.map +1 -1
- package/dist/tools/transfer.tools.js +8 -3
- package/dist/tools/transfer.tools.js.map +1 -1
- package/dist/tools/wallet-management.tools.d.ts.map +1 -1
- package/dist/tools/wallet-management.tools.js +34 -39
- package/dist/tools/wallet-management.tools.js.map +1 -1
- package/dist/tools/wallet.tools.d.ts.map +1 -1
- package/dist/tools/wallet.tools.js +25 -16
- package/dist/tools/wallet.tools.js.map +1 -1
- package/dist/tools/yield-hunter.tools.d.ts.map +1 -1
- package/dist/tools/yield-hunter.tools.js +53 -48
- package/dist/tools/yield-hunter.tools.js.map +1 -1
- package/dist/transactions/bitcoin-builder.d.ts.map +1 -1
- package/dist/transactions/bitcoin-builder.js +1 -16
- package/dist/transactions/bitcoin-builder.js.map +1 -1
- package/dist/transactions/builder.d.ts +7 -2
- package/dist/transactions/builder.d.ts.map +1 -1
- package/dist/transactions/builder.js +8 -2
- package/dist/transactions/builder.js.map +1 -1
- package/dist/transactions/inscription-builder.d.ts +183 -0
- package/dist/transactions/inscription-builder.d.ts.map +1 -0
- package/dist/transactions/inscription-builder.js +230 -0
- package/dist/transactions/inscription-builder.js.map +1 -0
- package/dist/utils/bitcoin.d.ts +38 -0
- package/dist/utils/bitcoin.d.ts.map +1 -1
- package/dist/utils/bitcoin.js +59 -0
- package/dist/utils/bitcoin.js.map +1 -1
- package/dist/utils/fee.d.ts +41 -0
- package/dist/utils/fee.d.ts.map +1 -0
- package/dist/utils/fee.js +69 -0
- package/dist/utils/fee.js.map +1 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +2 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/storage.d.ts +4 -7
- package/dist/utils/storage.d.ts.map +1 -1
- package/dist/utils/storage.js +0 -30
- package/dist/utils/storage.js.map +1 -1
- package/dist/utils/tokens.d.ts +13 -0
- package/dist/utils/tokens.d.ts.map +1 -0
- package/dist/utils/tokens.js +24 -0
- package/dist/utils/tokens.js.map +1 -0
- package/dist/yield-hunter/index.d.ts.map +1 -1
- package/dist/yield-hunter/index.js +10 -15
- package/dist/yield-hunter/index.js.map +1 -1
- package/package.json +6 -1
|
@@ -4,12 +4,24 @@ import { getAccount, getWalletAddress, NETWORK } from "../services/x402.service.
|
|
|
4
4
|
import { getZestProtocolService } from "../services/defi.service.js";
|
|
5
5
|
import { getHiroApi } from "../services/hiro-api.js";
|
|
6
6
|
import { ZEST_ASSETS, MAINNET_CONTRACTS } from "../config/contracts.js";
|
|
7
|
-
import { createJsonResponse, createErrorResponse } from "../utils/index.js";
|
|
7
|
+
import { createJsonResponse, createErrorResponse, getSbtcBalance } from "../utils/index.js";
|
|
8
8
|
// ============================================================================
|
|
9
9
|
// Constants
|
|
10
10
|
// ============================================================================
|
|
11
|
-
/**
|
|
12
|
-
|
|
11
|
+
/**
|
|
12
|
+
* Default reserve amount to keep liquid in wallet (in satoshis).
|
|
13
|
+
*
|
|
14
|
+
* This reserve is sBTC that won't be deposited to Zest, keeping it available
|
|
15
|
+
* for other purposes (transfers, x402 API payments, etc.).
|
|
16
|
+
*
|
|
17
|
+
* Note: Stacks transaction fees are paid in STX, not sBTC. This reserve does
|
|
18
|
+
* NOT help pay for Zest deposit transaction fees.
|
|
19
|
+
*
|
|
20
|
+
* Default: 0 sats (deposit all sBTC to maximize yield)
|
|
21
|
+
*
|
|
22
|
+
* Customize via yield_hunter_start or yield_hunter_configure reserve parameter.
|
|
23
|
+
*/
|
|
24
|
+
const DEFAULT_RESERVE_SATS = 0n;
|
|
13
25
|
/** Maximum retries for failed transactions */
|
|
14
26
|
const MAX_RETRIES = 3;
|
|
15
27
|
/** Delay between retries (ms) */
|
|
@@ -23,7 +35,7 @@ const state = {
|
|
|
23
35
|
intervalId: null,
|
|
24
36
|
config: {
|
|
25
37
|
minDepositThreshold: 10000n, // 0.0001 sBTC
|
|
26
|
-
|
|
38
|
+
reserve: DEFAULT_RESERVE_SATS,
|
|
27
39
|
checkIntervalMs: 10 * 60 * 1000, // 10 minutes
|
|
28
40
|
asset: "sBTC",
|
|
29
41
|
},
|
|
@@ -63,16 +75,6 @@ function formatApy(bps) {
|
|
|
63
75
|
// ============================================================================
|
|
64
76
|
// Core Yield Hunting Logic
|
|
65
77
|
// ============================================================================
|
|
66
|
-
async function getSbtcBalance(address) {
|
|
67
|
-
const hiro = getHiroApi(NETWORK);
|
|
68
|
-
const balances = await hiro.getAccountBalances(address);
|
|
69
|
-
const sbtcToken = ZEST_ASSETS.sBTC.token;
|
|
70
|
-
const sbtcKey = Object.keys(balances.fungible_tokens || {}).find((key) => key.startsWith(sbtcToken));
|
|
71
|
-
if (sbtcKey && balances.fungible_tokens[sbtcKey]) {
|
|
72
|
-
return BigInt(balances.fungible_tokens[sbtcKey].balance);
|
|
73
|
-
}
|
|
74
|
-
return 0n;
|
|
75
|
-
}
|
|
76
78
|
/**
|
|
77
79
|
* Fetch live APY from Zest Protocol on-chain
|
|
78
80
|
* Reads from pool-0-reserve get-reserve-state
|
|
@@ -88,7 +90,8 @@ async function fetchZestApy() {
|
|
|
88
90
|
return state.stats.currentApy || 0;
|
|
89
91
|
}
|
|
90
92
|
const decoded = cvToJSON(hexToCV(result.result));
|
|
91
|
-
|
|
93
|
+
// Response is (response (tuple ...)) so we need .value.value to get the tuple fields
|
|
94
|
+
const data = decoded?.value?.value || decoded?.value || decoded;
|
|
92
95
|
// Extract liquidity rate (APY in 1e8 scale)
|
|
93
96
|
// e.g., 5000000 = 5% APY
|
|
94
97
|
const liquidityRate = data?.["current-liquidity-rate"]?.value;
|
|
@@ -189,21 +192,21 @@ async function runYieldCheck() {
|
|
|
189
192
|
const apy = await fetchZestApy();
|
|
190
193
|
addLog("info", `Current Zest sBTC APY: ${formatApy(apy)}`);
|
|
191
194
|
// Get current sBTC balance in wallet
|
|
192
|
-
const walletBalance = await executeWithRetry(() => getSbtcBalance(account.address), "Fetch wallet balance");
|
|
195
|
+
const walletBalance = await executeWithRetry(() => getSbtcBalance(account.address, NETWORK), "Fetch wallet balance");
|
|
193
196
|
addLog("info", `Wallet sBTC: ${formatSats(walletBalance)}`);
|
|
194
197
|
// Get current Zest position
|
|
195
198
|
const position = await executeWithRetry(() => zest.getUserPosition(ZEST_ASSETS.sBTC.token, account.address), "Fetch Zest position");
|
|
196
199
|
const zestSupplied = position ? BigInt(position.supplied) : 0n;
|
|
197
200
|
addLog("info", `Zest supplied: ${formatSats(zestSupplied)}`);
|
|
198
|
-
// Calculate amount to deposit (keep
|
|
199
|
-
const effectiveThreshold = state.config.minDepositThreshold + state.config.
|
|
200
|
-
const depositAmount = walletBalance > state.config.
|
|
201
|
-
? walletBalance - state.config.
|
|
201
|
+
// Calculate amount to deposit (keep reserve if configured)
|
|
202
|
+
const effectiveThreshold = state.config.minDepositThreshold + state.config.reserve;
|
|
203
|
+
const depositAmount = walletBalance > state.config.reserve
|
|
204
|
+
? walletBalance - state.config.reserve
|
|
202
205
|
: 0n;
|
|
203
206
|
// Check if we should deposit
|
|
204
207
|
if (walletBalance >= effectiveThreshold && depositAmount > 0n) {
|
|
205
208
|
addLog("action", `Balance (${formatSats(walletBalance)}) above threshold (${formatSats(effectiveThreshold)}). ` +
|
|
206
|
-
`Depositing ${formatSats(depositAmount)}
|
|
209
|
+
`Depositing ${formatSats(depositAmount)}${state.config.reserve > 0n ? `, keeping ${formatSats(state.config.reserve)} as reserve` : ""}...`);
|
|
207
210
|
try {
|
|
208
211
|
const result = await executeWithRetry(() => zest.supply(account, state.config.asset, depositAmount), "Supply to Zest");
|
|
209
212
|
addLog("action", `Deposit tx submitted: ${result.txid}`);
|
|
@@ -259,7 +262,7 @@ export function registerYieldHunterTools(server) {
|
|
|
259
262
|
This will:
|
|
260
263
|
1. Monitor your wallet for sBTC
|
|
261
264
|
2. Automatically deposit sBTC to Zest Protocol when balance exceeds threshold
|
|
262
|
-
3. Keep a
|
|
265
|
+
3. Keep a configurable reserve (default: 0, deposits all sBTC)
|
|
263
266
|
4. Wait for transaction confirmations before proceeding
|
|
264
267
|
5. Retry failed transactions with exponential backoff
|
|
265
268
|
6. Run continuously until stopped
|
|
@@ -267,25 +270,27 @@ This will:
|
|
|
267
270
|
Requires an unlocked wallet (use wallet_unlock first).
|
|
268
271
|
Only works on mainnet (Zest Protocol is mainnet-only).
|
|
269
272
|
|
|
273
|
+
Note: Stacks transaction fees are paid in STX, not sBTC.
|
|
274
|
+
|
|
270
275
|
Default settings:
|
|
271
276
|
- Deposit threshold: 10,000 sats (0.0001 sBTC)
|
|
272
|
-
-
|
|
277
|
+
- Reserve: 0 sats (deposit all sBTC to maximize yield)
|
|
273
278
|
- Check interval: 10 minutes`,
|
|
274
279
|
inputSchema: {
|
|
275
280
|
threshold: z
|
|
276
281
|
.string()
|
|
277
282
|
.optional()
|
|
278
283
|
.describe("Minimum sBTC balance (in sats) before depositing. Default: 10000"),
|
|
279
|
-
|
|
284
|
+
reserve: z
|
|
280
285
|
.string()
|
|
281
286
|
.optional()
|
|
282
|
-
.describe("sBTC (in sats) to keep
|
|
287
|
+
.describe("sBTC (in sats) to keep liquid, never deposited. Default: 0 (deposit all)"),
|
|
283
288
|
interval: z
|
|
284
289
|
.number()
|
|
285
290
|
.optional()
|
|
286
291
|
.describe("Check interval in seconds. Default: 600 (10 minutes)"),
|
|
287
292
|
},
|
|
288
|
-
}, async ({ threshold,
|
|
293
|
+
}, async ({ threshold, reserve, interval }) => {
|
|
289
294
|
try {
|
|
290
295
|
if (NETWORK !== "mainnet") {
|
|
291
296
|
return createJsonResponse({
|
|
@@ -314,8 +319,8 @@ Default settings:
|
|
|
314
319
|
if (threshold) {
|
|
315
320
|
state.config.minDepositThreshold = BigInt(threshold);
|
|
316
321
|
}
|
|
317
|
-
if (
|
|
318
|
-
state.config.
|
|
322
|
+
if (reserve) {
|
|
323
|
+
state.config.reserve = BigInt(reserve);
|
|
319
324
|
}
|
|
320
325
|
if (interval) {
|
|
321
326
|
state.config.checkIntervalMs = interval * 1000;
|
|
@@ -340,10 +345,10 @@ Default settings:
|
|
|
340
345
|
config: {
|
|
341
346
|
minDepositThreshold: state.config.minDepositThreshold.toString(),
|
|
342
347
|
minDepositThresholdFormatted: formatSats(state.config.minDepositThreshold),
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
effectiveThreshold: (state.config.minDepositThreshold + state.config.
|
|
346
|
-
effectiveThresholdFormatted: formatSats(state.config.minDepositThreshold + state.config.
|
|
348
|
+
reserve: state.config.reserve.toString(),
|
|
349
|
+
reserveFormatted: formatSats(state.config.reserve),
|
|
350
|
+
effectiveThreshold: (state.config.minDepositThreshold + state.config.reserve).toString(),
|
|
351
|
+
effectiveThresholdFormatted: formatSats(state.config.minDepositThreshold + state.config.reserve),
|
|
347
352
|
checkIntervalMs: state.config.checkIntervalMs,
|
|
348
353
|
asset: state.config.asset,
|
|
349
354
|
},
|
|
@@ -415,32 +420,32 @@ Shows:
|
|
|
415
420
|
server.registerTool("yield_hunter_configure", {
|
|
416
421
|
description: `Configure yield hunter settings.
|
|
417
422
|
|
|
418
|
-
Adjust the deposit threshold,
|
|
423
|
+
Adjust the deposit threshold, reserve, or check interval.
|
|
419
424
|
Changes take effect on the next check cycle.`,
|
|
420
425
|
inputSchema: {
|
|
421
426
|
threshold: z
|
|
422
427
|
.string()
|
|
423
428
|
.optional()
|
|
424
429
|
.describe("Minimum sBTC balance (in sats) before depositing"),
|
|
425
|
-
|
|
430
|
+
reserve: z
|
|
426
431
|
.string()
|
|
427
432
|
.optional()
|
|
428
|
-
.describe("sBTC (in sats) to keep
|
|
433
|
+
.describe("sBTC (in sats) to keep liquid, never deposited"),
|
|
429
434
|
interval: z
|
|
430
435
|
.number()
|
|
431
436
|
.optional()
|
|
432
437
|
.describe("Check interval in seconds"),
|
|
433
438
|
},
|
|
434
|
-
}, async ({ threshold,
|
|
439
|
+
}, async ({ threshold, reserve, interval }) => {
|
|
435
440
|
try {
|
|
436
441
|
const changes = [];
|
|
437
442
|
if (threshold) {
|
|
438
443
|
state.config.minDepositThreshold = BigInt(threshold);
|
|
439
444
|
changes.push(`Deposit threshold set to ${formatSats(state.config.minDepositThreshold)}`);
|
|
440
445
|
}
|
|
441
|
-
if (
|
|
442
|
-
state.config.
|
|
443
|
-
changes.push(`
|
|
446
|
+
if (reserve) {
|
|
447
|
+
state.config.reserve = BigInt(reserve);
|
|
448
|
+
changes.push(`Reserve set to ${formatSats(state.config.reserve)}`);
|
|
444
449
|
}
|
|
445
450
|
if (interval) {
|
|
446
451
|
state.config.checkIntervalMs = interval * 1000;
|
|
@@ -478,10 +483,10 @@ function getConfigObject() {
|
|
|
478
483
|
return {
|
|
479
484
|
minDepositThreshold: state.config.minDepositThreshold.toString(),
|
|
480
485
|
minDepositThresholdFormatted: formatSats(state.config.minDepositThreshold),
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
effectiveThreshold: (state.config.minDepositThreshold + state.config.
|
|
484
|
-
effectiveThresholdFormatted: formatSats(state.config.minDepositThreshold + state.config.
|
|
486
|
+
reserve: state.config.reserve.toString(),
|
|
487
|
+
reserveFormatted: formatSats(state.config.reserve),
|
|
488
|
+
effectiveThreshold: (state.config.minDepositThreshold + state.config.reserve).toString(),
|
|
489
|
+
effectiveThresholdFormatted: formatSats(state.config.minDepositThreshold + state.config.reserve),
|
|
485
490
|
checkIntervalMs: state.config.checkIntervalMs,
|
|
486
491
|
checkIntervalFormatted: `${state.config.checkIntervalMs / 1000} seconds`,
|
|
487
492
|
asset: state.config.asset,
|
|
@@ -525,12 +530,12 @@ async function getFullStatus() {
|
|
|
525
530
|
// Fetch all data in parallel
|
|
526
531
|
const [position, walletBalance, apy] = await Promise.all([
|
|
527
532
|
zest.getUserPosition(ZEST_ASSETS.sBTC.token, address),
|
|
528
|
-
getSbtcBalance(address),
|
|
533
|
+
getSbtcBalance(address, NETWORK),
|
|
529
534
|
fetchZestApy(),
|
|
530
535
|
]);
|
|
531
536
|
const zestSupplied = BigInt(position?.supplied || "0");
|
|
532
|
-
const availableToDeposit = walletBalance > state.config.
|
|
533
|
-
? walletBalance - state.config.
|
|
537
|
+
const availableToDeposit = walletBalance > state.config.reserve
|
|
538
|
+
? walletBalance - state.config.reserve
|
|
534
539
|
: 0n;
|
|
535
540
|
return {
|
|
536
541
|
...status,
|
|
@@ -541,8 +546,8 @@ async function getFullStatus() {
|
|
|
541
546
|
walletSbtcFormatted: formatSats(walletBalance),
|
|
542
547
|
availableToDeposit: availableToDeposit.toString(),
|
|
543
548
|
availableToDepositFormatted: formatSats(availableToDeposit),
|
|
544
|
-
|
|
545
|
-
|
|
549
|
+
reserve: state.config.reserve.toString(),
|
|
550
|
+
reserveFormatted: formatSats(state.config.reserve),
|
|
546
551
|
zestSupplied: position?.supplied || "0",
|
|
547
552
|
zestSuppliedFormatted: formatSats(zestSupplied),
|
|
548
553
|
zestBorrowed: position?.borrowed || "0",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yield-hunter.tools.js","sourceRoot":"","sources":["../../src/tools/yield-hunter.tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"yield-hunter.tools.js","sourceRoot":"","sources":["../../src/tools/yield-hunter.tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bitcoin-builder.d.ts","sourceRoot":"","sources":["../../src/transactions/bitcoin-builder.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,GAAG,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"bitcoin-builder.d.ts","sourceRoot":"","sources":["../../src/transactions/bitcoin-builder.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,GAAG,MAAM,mBAAmB,CAAC;AACzC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAOrD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;OAEG;IACH,KAAK,EAAE,IAAI,EAAE,CAAC;IACd;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,YAAY,EAAE,UAAU,CAAC;IACzB;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,EAAE,EAAE,GAAG,CAAC,WAAW,CAAC;IACpB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,UAAU,EAAE,IAAI,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAY9E;AASD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,0BAA0B,GAClC,yBAAyB,CAsH3B;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,GAAG,CAAC,WAAW,EACnB,UAAU,EAAE,UAAU,GACrB,wBAAwB,CAyB1B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,0BAA0B,EACnC,UAAU,EAAE,UAAU,GACrB,wBAAwB,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAS5D"}
|
|
@@ -5,22 +5,7 @@
|
|
|
5
5
|
* Follows Leather/Xverse wallet patterns.
|
|
6
6
|
*/
|
|
7
7
|
import * as btc from "@scure/btc-signer";
|
|
8
|
-
|
|
9
|
-
* P2WPKH transaction size constants (virtual bytes)
|
|
10
|
-
*
|
|
11
|
-
* Based on Bitcoin Core and @scure/btc-signer calculations:
|
|
12
|
-
* - P2WPKH input: ~68 vB (includes witness data at 1/4 weight)
|
|
13
|
-
* - P2WPKH output: ~31 vB
|
|
14
|
-
* - Base overhead: ~10.5 vB (version, locktime, witness marker/flag)
|
|
15
|
-
*/
|
|
16
|
-
const P2WPKH_INPUT_VBYTES = 68;
|
|
17
|
-
const P2WPKH_OUTPUT_VBYTES = 31;
|
|
18
|
-
const TX_OVERHEAD_VBYTES = 10.5;
|
|
19
|
-
/**
|
|
20
|
-
* Minimum output value (dust threshold)
|
|
21
|
-
* Below this value, outputs are non-standard and won't be relayed
|
|
22
|
-
*/
|
|
23
|
-
const DUST_THRESHOLD = 546;
|
|
8
|
+
import { P2WPKH_INPUT_VBYTES, P2WPKH_OUTPUT_VBYTES, TX_OVERHEAD_VBYTES, DUST_THRESHOLD, } from "../config/bitcoin-constants.js";
|
|
24
9
|
/**
|
|
25
10
|
* Estimate the size of a P2WPKH transaction in virtual bytes
|
|
26
11
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bitcoin-builder.js","sourceRoot":"","sources":["../../src/transactions/bitcoin-builder.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,GAAG,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"bitcoin-builder.js","sourceRoot":"","sources":["../../src/transactions/bitcoin-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,15 +25,20 @@ export interface ContractCallOptions {
|
|
|
25
25
|
functionArgs: ClarityValue[];
|
|
26
26
|
postConditionMode?: PostConditionMode;
|
|
27
27
|
postConditions?: PostCondition[];
|
|
28
|
+
/** Optional fee in micro-STX. If omitted, fee is auto-estimated. */
|
|
29
|
+
fee?: bigint;
|
|
28
30
|
}
|
|
29
31
|
export interface ContractDeployOptions {
|
|
30
32
|
contractName: string;
|
|
31
33
|
codeBody: string;
|
|
34
|
+
/** Optional fee in micro-STX. If omitted, fee is auto-estimated. */
|
|
35
|
+
fee?: bigint;
|
|
32
36
|
}
|
|
33
37
|
/**
|
|
34
38
|
* Transfer STX tokens to a recipient
|
|
39
|
+
* @param fee Optional fee in micro-STX. If omitted, fee is auto-estimated.
|
|
35
40
|
*/
|
|
36
|
-
export declare function transferStx(account: Account, recipient: string, amount: bigint, memo?: string): Promise<TransferResult>;
|
|
41
|
+
export declare function transferStx(account: Account, recipient: string, amount: bigint, memo?: string, fee?: bigint): Promise<TransferResult>;
|
|
37
42
|
/**
|
|
38
43
|
* Call a smart contract function
|
|
39
44
|
*/
|
|
@@ -45,7 +50,7 @@ export declare function deployContract(account: Account, options: ContractDeploy
|
|
|
45
50
|
/**
|
|
46
51
|
* Sign a transaction without broadcasting (for offline signing)
|
|
47
52
|
*/
|
|
48
|
-
export declare function signStxTransfer(account: Account, recipient: string, amount: bigint, memo?: string): Promise<{
|
|
53
|
+
export declare function signStxTransfer(account: Account, recipient: string, amount: bigint, memo?: string, fee?: bigint): Promise<{
|
|
49
54
|
signedTx: string;
|
|
50
55
|
txid: string;
|
|
51
56
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/transactions/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAmC,KAAK,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,MAAM,WAAW,OAAQ,SAAQ,eAAe;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,aAAa,CAAC,EAAE,UAAU,CAAC;IAC3B;;OAEG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,YAAY,EAAE,CAAC;IAC7B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,cAAc,CAAC,EAAE,aAAa,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/transactions/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAmC,KAAK,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,MAAM,WAAW,OAAQ,SAAQ,eAAe;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,aAAa,CAAC,EAAE,UAAU,CAAC;IAC3B;;OAEG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,YAAY,EAAE,CAAC;IAC7B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,cAAc,CAAC,EAAE,aAAa,EAAE,CAAC;IACjC,oEAAoE;IACpE,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,MAAM,EACb,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,cAAc,CAAC,CA2BzB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,cAAc,CAAC,CA8BzB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,cAAc,CAAC,CA0BzB;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,MAAM,EACb,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAgB7C;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAmB7C;AAED;;GAEG;AACH,wBAAsB,0BAA0B,CAC9C,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAmB3B"}
|
|
@@ -2,8 +2,9 @@ import { makeSTXTokenTransfer, makeContractCall, makeContractDeploy, broadcastTr
|
|
|
2
2
|
import { getStacksNetwork, getApiBaseUrl } from "../config/networks.js";
|
|
3
3
|
/**
|
|
4
4
|
* Transfer STX tokens to a recipient
|
|
5
|
+
* @param fee Optional fee in micro-STX. If omitted, fee is auto-estimated.
|
|
5
6
|
*/
|
|
6
|
-
export async function transferStx(account, recipient, amount, memo) {
|
|
7
|
+
export async function transferStx(account, recipient, amount, memo, fee) {
|
|
7
8
|
const networkName = getStacksNetwork(account.network);
|
|
8
9
|
const transaction = await makeSTXTokenTransfer({
|
|
9
10
|
recipient,
|
|
@@ -11,6 +12,7 @@ export async function transferStx(account, recipient, amount, memo) {
|
|
|
11
12
|
senderKey: account.privateKey,
|
|
12
13
|
network: networkName,
|
|
13
14
|
memo: memo || "",
|
|
15
|
+
...(fee !== undefined && { fee }),
|
|
14
16
|
});
|
|
15
17
|
const broadcastResponse = await broadcastTransaction({
|
|
16
18
|
transaction,
|
|
@@ -38,6 +40,7 @@ export async function callContract(account, options) {
|
|
|
38
40
|
network: networkName,
|
|
39
41
|
postConditionMode: options.postConditionMode || PostConditionMode.Deny,
|
|
40
42
|
postConditions: options.postConditions || [],
|
|
43
|
+
...(options.fee !== undefined && { fee: options.fee }),
|
|
41
44
|
});
|
|
42
45
|
const broadcastResponse = await broadcastTransaction({
|
|
43
46
|
transaction,
|
|
@@ -61,6 +64,7 @@ export async function deployContract(account, options) {
|
|
|
61
64
|
codeBody: options.codeBody,
|
|
62
65
|
senderKey: account.privateKey,
|
|
63
66
|
network: networkName,
|
|
67
|
+
...(options.fee !== undefined && { fee: options.fee }),
|
|
64
68
|
});
|
|
65
69
|
const broadcastResponse = await broadcastTransaction({
|
|
66
70
|
transaction,
|
|
@@ -77,7 +81,7 @@ export async function deployContract(account, options) {
|
|
|
77
81
|
/**
|
|
78
82
|
* Sign a transaction without broadcasting (for offline signing)
|
|
79
83
|
*/
|
|
80
|
-
export async function signStxTransfer(account, recipient, amount, memo) {
|
|
84
|
+
export async function signStxTransfer(account, recipient, amount, memo, fee) {
|
|
81
85
|
const networkName = getStacksNetwork(account.network);
|
|
82
86
|
const transaction = await makeSTXTokenTransfer({
|
|
83
87
|
recipient,
|
|
@@ -85,6 +89,7 @@ export async function signStxTransfer(account, recipient, amount, memo) {
|
|
|
85
89
|
senderKey: account.privateKey,
|
|
86
90
|
network: networkName,
|
|
87
91
|
memo: memo || "",
|
|
92
|
+
...(fee !== undefined && { fee }),
|
|
88
93
|
});
|
|
89
94
|
return {
|
|
90
95
|
signedTx: Buffer.from(transaction.serialize()).toString("hex"),
|
|
@@ -105,6 +110,7 @@ export async function signContractCall(account, options) {
|
|
|
105
110
|
network: networkName,
|
|
106
111
|
postConditionMode: options.postConditionMode || PostConditionMode.Deny,
|
|
107
112
|
postConditions: options.postConditions || [],
|
|
113
|
+
...(options.fee !== undefined && { fee: options.fee }),
|
|
108
114
|
});
|
|
109
115
|
return {
|
|
110
116
|
signedTx: Buffer.from(transaction.serialize()).toString("hex"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/transactions/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EAEpB,iBAAiB,GAElB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAgB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/transactions/builder.ts"],"names":[],"mappings":"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"}
|