@blockrun/clawrouter 0.12.95 → 0.12.97
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/auth.d.ts +82 -0
- package/dist/auth.d.ts.map +1 -0
- package/dist/auth.js +388 -0
- package/dist/auth.js.map +1 -0
- package/dist/balance.d.ts +97 -0
- package/dist/balance.d.ts.map +1 -0
- package/dist/balance.js +157 -0
- package/dist/balance.js.map +1 -0
- package/dist/cli.d.ts +15 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +256 -54994
- package/dist/cli.js.map +1 -1
- package/dist/compression/codebook.d.ts +24 -0
- package/dist/compression/codebook.d.ts.map +1 -0
- package/dist/compression/codebook.js +119 -0
- package/dist/compression/codebook.js.map +1 -0
- package/dist/compression/index.d.ts +33 -0
- package/dist/compression/index.d.ts.map +1 -0
- package/dist/compression/index.js +246 -0
- package/dist/compression/index.js.map +1 -0
- package/dist/compression/layers/deduplication.d.ts +28 -0
- package/dist/compression/layers/deduplication.d.ts.map +1 -0
- package/dist/compression/layers/deduplication.js +101 -0
- package/dist/compression/layers/deduplication.js.map +1 -0
- package/dist/compression/layers/dictionary.d.ts +21 -0
- package/dist/compression/layers/dictionary.d.ts.map +1 -0
- package/dist/compression/layers/dictionary.js +73 -0
- package/dist/compression/layers/dictionary.js.map +1 -0
- package/dist/compression/layers/dynamic-codebook.d.ts +26 -0
- package/dist/compression/layers/dynamic-codebook.d.ts.map +1 -0
- package/dist/compression/layers/dynamic-codebook.js +149 -0
- package/dist/compression/layers/dynamic-codebook.js.map +1 -0
- package/dist/compression/layers/json-compact.d.ts +23 -0
- package/dist/compression/layers/json-compact.d.ts.map +1 -0
- package/dist/compression/layers/json-compact.js +79 -0
- package/dist/compression/layers/json-compact.js.map +1 -0
- package/dist/compression/layers/observation.d.ts +21 -0
- package/dist/compression/layers/observation.d.ts.map +1 -0
- package/dist/compression/layers/observation.js +130 -0
- package/dist/compression/layers/observation.js.map +1 -0
- package/dist/compression/layers/paths.d.ts +24 -0
- package/dist/compression/layers/paths.d.ts.map +1 -0
- package/dist/compression/layers/paths.js +110 -0
- package/dist/compression/layers/paths.js.map +1 -0
- package/dist/compression/layers/whitespace.d.ts +27 -0
- package/dist/compression/layers/whitespace.d.ts.map +1 -0
- package/dist/compression/layers/whitespace.js +60 -0
- package/dist/compression/layers/whitespace.js.map +1 -0
- package/dist/compression/types.d.ts +84 -0
- package/dist/compression/types.d.ts.map +1 -0
- package/dist/compression/types.js +27 -0
- package/dist/compression/types.js.map +1 -0
- package/dist/config.d.ts +12 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +22 -0
- package/dist/config.js.map +1 -0
- package/dist/dedup.d.ts +34 -0
- package/dist/dedup.d.ts.map +1 -0
- package/dist/dedup.js +150 -0
- package/dist/dedup.js.map +1 -0
- package/dist/doctor.d.ts +8 -0
- package/dist/doctor.d.ts.map +1 -0
- package/dist/doctor.js +375 -0
- package/dist/doctor.js.map +1 -0
- package/dist/error-classification.test.d.ts +2 -0
- package/dist/error-classification.test.d.ts.map +1 -0
- package/dist/error-classification.test.js +59 -0
- package/dist/error-classification.test.js.map +1 -0
- package/dist/errors.d.ts +54 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +85 -0
- package/dist/errors.js.map +1 -0
- package/dist/exclude-models.d.ts +28 -0
- package/dist/exclude-models.d.ts.map +1 -0
- package/dist/exclude-models.integration.test.d.ts +2 -0
- package/dist/exclude-models.integration.test.d.ts.map +1 -0
- package/dist/exclude-models.integration.test.js +46 -0
- package/dist/exclude-models.integration.test.js.map +1 -0
- package/dist/exclude-models.js +70 -0
- package/dist/exclude-models.js.map +1 -0
- package/dist/exclude-models.test.d.ts +5 -0
- package/dist/exclude-models.test.d.ts.map +1 -0
- package/dist/exclude-models.test.js +95 -0
- package/dist/exclude-models.test.js.map +1 -0
- package/dist/fs-read.d.ts +11 -0
- package/dist/fs-read.d.ts.map +1 -0
- package/dist/fs-read.js +47 -0
- package/dist/fs-read.js.map +1 -0
- package/dist/index.d.ts +34 -1368
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1071 -56194
- package/dist/index.js.map +1 -1
- package/dist/journal.d.ts +67 -0
- package/dist/journal.d.ts.map +1 -0
- package/dist/journal.js +184 -0
- package/dist/journal.js.map +1 -0
- package/dist/journal.test.d.ts +2 -0
- package/dist/journal.test.d.ts.map +1 -0
- package/dist/journal.test.js +201 -0
- package/dist/journal.test.js.map +1 -0
- package/dist/logger.d.ts +33 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +35 -0
- package/dist/logger.js.map +1 -0
- package/dist/models.d.ts +107 -0
- package/dist/models.d.ts.map +1 -0
- package/dist/models.js +941 -0
- package/dist/models.js.map +1 -0
- package/dist/models.test.d.ts +2 -0
- package/dist/models.test.d.ts.map +1 -0
- package/dist/models.test.js +38 -0
- package/dist/models.test.js.map +1 -0
- package/dist/partners/index.d.ts +8 -0
- package/dist/partners/index.d.ts.map +1 -0
- package/dist/partners/index.js +6 -0
- package/dist/partners/index.js.map +1 -0
- package/dist/partners/registry.d.ts +51 -0
- package/dist/partners/registry.d.ts.map +1 -0
- package/dist/partners/registry.js +256 -0
- package/dist/partners/registry.js.map +1 -0
- package/dist/partners/tools.d.ts +24 -0
- package/dist/partners/tools.d.ts.map +1 -0
- package/dist/partners/tools.js +97 -0
- package/dist/partners/tools.js.map +1 -0
- package/dist/payment-preauth.d.ts +17 -0
- package/dist/payment-preauth.d.ts.map +1 -0
- package/dist/payment-preauth.js +102 -0
- package/dist/payment-preauth.js.map +1 -0
- package/dist/provider.d.ts +19 -0
- package/dist/provider.d.ts.map +1 -0
- package/dist/provider.js +45 -0
- package/dist/provider.js.map +1 -0
- package/dist/proxy.d.ts +210 -0
- package/dist/proxy.d.ts.map +1 -0
- package/dist/proxy.debrand.test.d.ts +2 -0
- package/dist/proxy.debrand.test.d.ts.map +1 -0
- package/dist/proxy.debrand.test.js +101 -0
- package/dist/proxy.debrand.test.js.map +1 -0
- package/dist/proxy.degraded-response.test.d.ts +2 -0
- package/dist/proxy.degraded-response.test.d.ts.map +1 -0
- package/dist/proxy.degraded-response.test.js +105 -0
- package/dist/proxy.degraded-response.test.js.map +1 -0
- package/dist/proxy.image-download.test.d.ts +2 -0
- package/dist/proxy.image-download.test.d.ts.map +1 -0
- package/dist/proxy.image-download.test.js +92 -0
- package/dist/proxy.image-download.test.js.map +1 -0
- package/dist/proxy.js +3810 -0
- package/dist/proxy.js.map +1 -0
- package/dist/proxy.models-endpoint.test.d.ts +2 -0
- package/dist/proxy.models-endpoint.test.d.ts.map +1 -0
- package/dist/proxy.models-endpoint.test.js +19 -0
- package/dist/proxy.models-endpoint.test.js.map +1 -0
- package/dist/proxy.multiturn-thinking.test.d.ts +2 -0
- package/dist/proxy.multiturn-thinking.test.d.ts.map +1 -0
- package/dist/proxy.multiturn-thinking.test.js +82 -0
- package/dist/proxy.multiturn-thinking.test.js.map +1 -0
- package/dist/proxy.payment-chain-reuse.test.d.ts +2 -0
- package/dist/proxy.payment-chain-reuse.test.d.ts.map +1 -0
- package/dist/proxy.payment-chain-reuse.test.js +30 -0
- package/dist/proxy.payment-chain-reuse.test.js.map +1 -0
- package/dist/proxy.solana-resilience.test.d.ts +12 -0
- package/dist/proxy.solana-resilience.test.d.ts.map +1 -0
- package/dist/proxy.solana-resilience.test.js +39 -0
- package/dist/proxy.solana-resilience.test.js.map +1 -0
- package/dist/report.d.ts +6 -0
- package/dist/report.d.ts.map +1 -0
- package/dist/report.js +44 -0
- package/dist/report.js.map +1 -0
- package/dist/response-cache.advanced.test.d.ts +2 -0
- package/dist/response-cache.advanced.test.d.ts.map +1 -0
- package/dist/response-cache.advanced.test.js +566 -0
- package/dist/response-cache.advanced.test.js.map +1 -0
- package/dist/response-cache.d.ts +85 -0
- package/dist/response-cache.d.ts.map +1 -0
- package/dist/response-cache.edge-cases.test.d.ts +2 -0
- package/dist/response-cache.edge-cases.test.d.ts.map +1 -0
- package/dist/response-cache.edge-cases.test.js +488 -0
- package/dist/response-cache.edge-cases.test.js.map +1 -0
- package/dist/response-cache.extreme.test.d.ts +2 -0
- package/dist/response-cache.extreme.test.d.ts.map +1 -0
- package/dist/response-cache.extreme.test.js +561 -0
- package/dist/response-cache.extreme.test.js.map +1 -0
- package/dist/response-cache.js +240 -0
- package/dist/response-cache.js.map +1 -0
- package/dist/response-cache.test.d.ts +2 -0
- package/dist/response-cache.test.d.ts.map +1 -0
- package/dist/response-cache.test.js +242 -0
- package/dist/response-cache.test.js.map +1 -0
- package/dist/retry.d.ts +42 -0
- package/dist/retry.d.ts.map +1 -0
- package/dist/retry.js +99 -0
- package/dist/retry.js.map +1 -0
- package/dist/router/config.d.ts +11 -0
- package/dist/router/config.d.ts.map +1 -0
- package/dist/router/config.js +1215 -0
- package/dist/router/config.js.map +1 -0
- package/dist/router/index.d.ts +18 -0
- package/dist/router/index.d.ts.map +1 -0
- package/dist/router/index.js +19 -0
- package/dist/router/index.js.map +1 -0
- package/dist/router/llm-classifier.d.ts +29 -0
- package/dist/router/llm-classifier.d.ts.map +1 -0
- package/dist/router/llm-classifier.js +99 -0
- package/dist/router/llm-classifier.js.map +1 -0
- package/dist/router/rules.d.ts +12 -0
- package/dist/router/rules.d.ts.map +1 -0
- package/dist/router/rules.js +202 -0
- package/dist/router/rules.js.map +1 -0
- package/dist/router/selector.d.ts +58 -0
- package/dist/router/selector.d.ts.map +1 -0
- package/dist/router/selector.js +165 -0
- package/dist/router/selector.js.map +1 -0
- package/dist/router/selector.test.d.ts +2 -0
- package/dist/router/selector.test.d.ts.map +1 -0
- package/dist/router/selector.test.js +67 -0
- package/dist/router/selector.test.js.map +1 -0
- package/dist/router/strategy.d.ts +19 -0
- package/dist/router/strategy.d.ts.map +1 -0
- package/dist/router/strategy.js +138 -0
- package/dist/router/strategy.js.map +1 -0
- package/dist/router/strategy.test.d.ts +2 -0
- package/dist/router/strategy.test.d.ts.map +1 -0
- package/dist/router/strategy.test.js +131 -0
- package/dist/router/strategy.test.js.map +1 -0
- package/dist/router/types.d.ts +127 -0
- package/dist/router/types.d.ts.map +1 -0
- package/dist/router/types.js +11 -0
- package/dist/router/types.js.map +1 -0
- package/dist/session.d.ts +124 -0
- package/dist/session.d.ts.map +1 -0
- package/dist/session.js +256 -0
- package/dist/session.js.map +1 -0
- package/dist/session.test.d.ts +2 -0
- package/dist/session.test.d.ts.map +1 -0
- package/dist/session.test.js +163 -0
- package/dist/session.test.js.map +1 -0
- package/dist/solana-balance.d.ts +48 -0
- package/dist/solana-balance.d.ts.map +1 -0
- package/dist/solana-balance.js +142 -0
- package/dist/solana-balance.js.map +1 -0
- package/dist/spend-control.d.ts +112 -0
- package/dist/spend-control.d.ts.map +1 -0
- package/dist/spend-control.js +278 -0
- package/dist/spend-control.js.map +1 -0
- package/dist/spend-control.test.d.ts +5 -0
- package/dist/spend-control.test.d.ts.map +1 -0
- package/dist/spend-control.test.js +210 -0
- package/dist/spend-control.test.js.map +1 -0
- package/dist/stats.d.ts +64 -0
- package/dist/stats.d.ts.map +1 -0
- package/dist/stats.js +295 -0
- package/dist/stats.js.map +1 -0
- package/dist/types.d.ts +150 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +9 -0
- package/dist/types.js.map +1 -0
- package/dist/update-hint.test.d.ts +9 -0
- package/dist/update-hint.test.d.ts.map +1 -0
- package/dist/update-hint.test.js +156 -0
- package/dist/update-hint.test.js.map +1 -0
- package/dist/updater.d.ts +10 -0
- package/dist/updater.d.ts.map +1 -0
- package/dist/updater.js +55 -0
- package/dist/updater.js.map +1 -0
- package/dist/version.d.ts +3 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +16 -0
- package/dist/version.js.map +1 -0
- package/dist/wallet.d.ts +52 -0
- package/dist/wallet.d.ts.map +1 -0
- package/dist/wallet.js +93 -0
- package/dist/wallet.js.map +1 -0
- package/dist/wallet.test.d.ts +6 -0
- package/dist/wallet.test.d.ts.map +1 -0
- package/dist/wallet.test.js +117 -0
- package/dist/wallet.test.js.map +1 -0
- package/dist/x402-sdk.test.d.ts +6 -0
- package/dist/x402-sdk.test.d.ts.map +1 -0
- package/dist/x402-sdk.test.js +161 -0
- package/dist/x402-sdk.test.js.map +1 -0
- package/package.json +1 -1
- package/scripts/e2e-multiturn.mjs +4 -1
package/dist/balance.js
ADDED
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Balance Monitor for ClawRouter
|
|
3
|
+
*
|
|
4
|
+
* Monitors USDC balance on Base network with intelligent caching.
|
|
5
|
+
* Provides pre-request balance checks to prevent failed payments.
|
|
6
|
+
*
|
|
7
|
+
* Caching Strategy:
|
|
8
|
+
* - TTL: 30 seconds (balance is cached to avoid excessive RPC calls)
|
|
9
|
+
* - Optimistic deduction: after successful payment, subtract estimated cost from cache
|
|
10
|
+
* - Invalidation: on payment failure, immediately refresh from RPC
|
|
11
|
+
*/
|
|
12
|
+
import { createPublicClient, http, erc20Abi } from "viem";
|
|
13
|
+
import { base } from "viem/chains";
|
|
14
|
+
import { RpcError } from "./errors.js";
|
|
15
|
+
/** USDC contract address on Base mainnet */
|
|
16
|
+
const USDC_BASE = "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913";
|
|
17
|
+
/** Cache TTL in milliseconds (30 seconds) */
|
|
18
|
+
const CACHE_TTL_MS = 30_000;
|
|
19
|
+
/** Balance thresholds in USDC smallest unit (6 decimals) */
|
|
20
|
+
export const BALANCE_THRESHOLDS = {
|
|
21
|
+
/** Low balance warning threshold: $1.00 */
|
|
22
|
+
LOW_BALANCE_MICROS: 1000000n,
|
|
23
|
+
/** Effectively zero threshold: $0.0001 (covers dust/rounding) */
|
|
24
|
+
ZERO_THRESHOLD: 100n,
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Monitors USDC balance on Base network.
|
|
28
|
+
*
|
|
29
|
+
* Usage:
|
|
30
|
+
* const monitor = new BalanceMonitor("0x...");
|
|
31
|
+
* const info = await monitor.checkBalance();
|
|
32
|
+
* if (info.isLow) console.warn("Low balance!");
|
|
33
|
+
*/
|
|
34
|
+
export class BalanceMonitor {
|
|
35
|
+
client;
|
|
36
|
+
walletAddress;
|
|
37
|
+
/** Cached balance (null = not yet fetched) */
|
|
38
|
+
cachedBalance = null;
|
|
39
|
+
/** Timestamp when cache was last updated */
|
|
40
|
+
cachedAt = 0;
|
|
41
|
+
constructor(walletAddress) {
|
|
42
|
+
this.walletAddress = walletAddress;
|
|
43
|
+
this.client = createPublicClient({
|
|
44
|
+
chain: base,
|
|
45
|
+
transport: http(undefined, {
|
|
46
|
+
timeout: 10_000, // 10 second timeout to prevent hanging on slow RPC
|
|
47
|
+
}),
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Check current USDC balance.
|
|
52
|
+
* Uses cache if valid, otherwise fetches from RPC.
|
|
53
|
+
*/
|
|
54
|
+
async checkBalance() {
|
|
55
|
+
const now = Date.now();
|
|
56
|
+
// Use cache only when balance is positive and still fresh.
|
|
57
|
+
// Zero balance is never cached — always re-fetch so a funded wallet is
|
|
58
|
+
// detected on the next request without waiting for cache expiry.
|
|
59
|
+
if (this.cachedBalance !== null &&
|
|
60
|
+
this.cachedBalance > 0n &&
|
|
61
|
+
now - this.cachedAt < CACHE_TTL_MS) {
|
|
62
|
+
return this.buildInfo(this.cachedBalance);
|
|
63
|
+
}
|
|
64
|
+
// Fetch from RPC
|
|
65
|
+
const balance = await this.fetchBalance();
|
|
66
|
+
if (balance > 0n) {
|
|
67
|
+
this.cachedBalance = balance;
|
|
68
|
+
this.cachedAt = now;
|
|
69
|
+
}
|
|
70
|
+
return this.buildInfo(balance);
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Check if balance is sufficient for an estimated cost.
|
|
74
|
+
*
|
|
75
|
+
* @param estimatedCostMicros - Estimated cost in USDC smallest unit (6 decimals)
|
|
76
|
+
*/
|
|
77
|
+
async checkSufficient(estimatedCostMicros) {
|
|
78
|
+
const info = await this.checkBalance();
|
|
79
|
+
if (info.balance >= estimatedCostMicros) {
|
|
80
|
+
return { sufficient: true, info };
|
|
81
|
+
}
|
|
82
|
+
const shortfall = estimatedCostMicros - info.balance;
|
|
83
|
+
return {
|
|
84
|
+
sufficient: false,
|
|
85
|
+
info,
|
|
86
|
+
shortfall: this.formatUSDC(shortfall),
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Optimistically deduct estimated cost from cached balance.
|
|
91
|
+
* Call this after a successful payment to keep cache accurate.
|
|
92
|
+
*
|
|
93
|
+
* @param amountMicros - Amount to deduct in USDC smallest unit
|
|
94
|
+
*/
|
|
95
|
+
deductEstimated(amountMicros) {
|
|
96
|
+
if (this.cachedBalance !== null && this.cachedBalance >= amountMicros) {
|
|
97
|
+
this.cachedBalance -= amountMicros;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Invalidate cache, forcing next checkBalance() to fetch from RPC.
|
|
102
|
+
* Call this after a payment failure to get accurate balance.
|
|
103
|
+
*/
|
|
104
|
+
invalidate() {
|
|
105
|
+
this.cachedBalance = null;
|
|
106
|
+
this.cachedAt = 0;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Force refresh balance from RPC (ignores cache).
|
|
110
|
+
*/
|
|
111
|
+
async refresh() {
|
|
112
|
+
this.invalidate();
|
|
113
|
+
return this.checkBalance();
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Format USDC amount (in micros) as "$X.XX".
|
|
117
|
+
*/
|
|
118
|
+
formatUSDC(amountMicros) {
|
|
119
|
+
// USDC has 6 decimals
|
|
120
|
+
const dollars = Number(amountMicros) / 1_000_000;
|
|
121
|
+
return `$${dollars.toFixed(2)}`;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Get the wallet address being monitored.
|
|
125
|
+
*/
|
|
126
|
+
getWalletAddress() {
|
|
127
|
+
return this.walletAddress;
|
|
128
|
+
}
|
|
129
|
+
/** Fetch balance from RPC */
|
|
130
|
+
async fetchBalance() {
|
|
131
|
+
try {
|
|
132
|
+
const balance = await this.client.readContract({
|
|
133
|
+
address: USDC_BASE,
|
|
134
|
+
abi: erc20Abi,
|
|
135
|
+
functionName: "balanceOf",
|
|
136
|
+
args: [this.walletAddress],
|
|
137
|
+
});
|
|
138
|
+
return balance;
|
|
139
|
+
}
|
|
140
|
+
catch (error) {
|
|
141
|
+
// Throw typed error instead of silently returning 0
|
|
142
|
+
// This allows callers to distinguish "node down" from "wallet empty"
|
|
143
|
+
throw new RpcError(error instanceof Error ? error.message : "Unknown error", error);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
/** Build BalanceInfo from raw balance */
|
|
147
|
+
buildInfo(balance) {
|
|
148
|
+
return {
|
|
149
|
+
balance,
|
|
150
|
+
balanceUSD: this.formatUSDC(balance),
|
|
151
|
+
isLow: balance < BALANCE_THRESHOLDS.LOW_BALANCE_MICROS,
|
|
152
|
+
isEmpty: balance < BALANCE_THRESHOLDS.ZERO_THRESHOLD,
|
|
153
|
+
walletAddress: this.walletAddress,
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
//# sourceMappingURL=balance.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"balance.js","sourceRoot":"","sources":["../src/balance.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.d.ts
CHANGED
|
@@ -1 +1,16 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* ClawRouter CLI
|
|
4
|
+
*
|
|
5
|
+
* Standalone proxy for deployed setups where the proxy needs to survive gateway restarts.
|
|
6
|
+
*
|
|
7
|
+
* Usage:
|
|
8
|
+
* npx @blockrun/clawrouter # Start standalone proxy
|
|
9
|
+
* npx @blockrun/clawrouter --version # Show version
|
|
10
|
+
* npx @blockrun/clawrouter --port 8402 # Custom port
|
|
11
|
+
*
|
|
12
|
+
* For production deployments, use with PM2:
|
|
13
|
+
* pm2 start "npx @blockrun/clawrouter" --name clawrouter
|
|
14
|
+
*/
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=cli.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;GAYG"}
|