clodds 1.5.1 → 1.5.3

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 (627) hide show
  1. package/dist/acp/identity.js +21 -13
  2. package/dist/acp/identity.js.map +1 -1
  3. package/dist/acp/persistence.js +9 -7
  4. package/dist/acp/persistence.js.map +1 -1
  5. package/dist/acp/registry.js +7 -3
  6. package/dist/acp/registry.js.map +1 -1
  7. package/dist/agents/handlers/acp.js +12 -12
  8. package/dist/agents/handlers/acp.js.map +1 -1
  9. package/dist/agents/handlers/agentbets.js +1 -1
  10. package/dist/agents/handlers/agentbets.js.map +1 -1
  11. package/dist/agents/handlers/arbitrage.js +3 -3
  12. package/dist/agents/handlers/binance.js +3 -3
  13. package/dist/agents/handlers/bybit.js +3 -3
  14. package/dist/agents/handlers/manifold.js +8 -8
  15. package/dist/agents/handlers/manifold.js.map +1 -1
  16. package/dist/agents/handlers/markets.js +2 -2
  17. package/dist/agents/handlers/markets.js.map +1 -1
  18. package/dist/agents/handlers/opinion.js +6 -6
  19. package/dist/agents/handlers/paper-trading.js +3 -3
  20. package/dist/agents/handlers/paper-trading.js.map +1 -1
  21. package/dist/agents/handlers/polymarket.js +5 -5
  22. package/dist/agents/handlers/predictfun.js +10 -8
  23. package/dist/agents/handlers/predictfun.js.map +1 -1
  24. package/dist/agents/handlers/solana.js +16 -16
  25. package/dist/agents/handlers/solana.js.map +1 -1
  26. package/dist/agents/handlers/virtuals.js +2 -2
  27. package/dist/agents/handlers/wallets.js +8 -8
  28. package/dist/agents/index.js +5 -1
  29. package/dist/agents/index.js.map +1 -1
  30. package/dist/alerts/index.js +14 -7
  31. package/dist/alerts/index.js.map +1 -1
  32. package/dist/alerts/realtime.js +8 -0
  33. package/dist/alerts/realtime.js.map +1 -1
  34. package/dist/api/apikeys.js +1 -1
  35. package/dist/api/compute/code.js +4 -1
  36. package/dist/api/compute/code.js.map +1 -1
  37. package/dist/api/compute/data.js +8 -2
  38. package/dist/api/compute/data.js.map +1 -1
  39. package/dist/api/compute/gateway.js +14 -9
  40. package/dist/api/compute/gateway.js.map +1 -1
  41. package/dist/api/compute/llm.js +22 -14
  42. package/dist/api/compute/llm.js.map +1 -1
  43. package/dist/api/compute/storage.js +6 -2
  44. package/dist/api/compute/storage.js.map +1 -1
  45. package/dist/api/compute/trade.js +10 -7
  46. package/dist/api/compute/trade.js.map +1 -1
  47. package/dist/api/compute/web.js +5 -0
  48. package/dist/api/compute/web.js.map +1 -1
  49. package/dist/api/fees.js +5 -1
  50. package/dist/api/fees.js.map +1 -1
  51. package/dist/api/gateway.js +42 -8
  52. package/dist/api/gateway.js.map +1 -1
  53. package/dist/api/jobs.js +15 -6
  54. package/dist/api/jobs.js.map +1 -1
  55. package/dist/api/middleware.js +12 -3
  56. package/dist/api/middleware.js.map +1 -1
  57. package/dist/api/sdk.js +1 -1
  58. package/dist/api/server.js +19 -10
  59. package/dist/api/server.js.map +1 -1
  60. package/dist/arbitrage/index.js +23 -6
  61. package/dist/arbitrage/index.js.map +1 -1
  62. package/dist/auth/copilot.js +3 -3
  63. package/dist/auth/copilot.js.map +1 -1
  64. package/dist/auth/google.js +6 -2
  65. package/dist/auth/google.js.map +1 -1
  66. package/dist/auth/oauth.js +18 -11
  67. package/dist/auth/oauth.js.map +1 -1
  68. package/dist/auth/qwen.js +4 -4
  69. package/dist/auth/qwen.js.map +1 -1
  70. package/dist/auto-reply/index.js +18 -4
  71. package/dist/auto-reply/index.js.map +1 -1
  72. package/dist/automation/cron.js +10 -3
  73. package/dist/automation/cron.js.map +1 -1
  74. package/dist/automation/webhooks.js +13 -2
  75. package/dist/automation/webhooks.js.map +1 -1
  76. package/dist/bankr/client.js +3 -3
  77. package/dist/base/provider.js +16 -2
  78. package/dist/base/provider.js.map +1 -1
  79. package/dist/bin/worker.js +4 -4
  80. package/dist/bin/worker.js.map +1 -1
  81. package/dist/bittensor/chutes.js +1 -1
  82. package/dist/bittensor/chutes.js.map +1 -1
  83. package/dist/bittensor/python-runner.js +5 -1
  84. package/dist/bittensor/python-runner.js.map +1 -1
  85. package/dist/bittensor/server.js +8 -8
  86. package/dist/bittensor/server.js.map +1 -1
  87. package/dist/bittensor/service.js +1 -1
  88. package/dist/bittensor/service.js.map +1 -1
  89. package/dist/browser/index.js +40 -16
  90. package/dist/browser/index.js.map +1 -1
  91. package/dist/cache/index.d.ts +2 -0
  92. package/dist/cache/index.js +30 -5
  93. package/dist/cache/index.js.map +1 -1
  94. package/dist/canvas/index.js +56 -27
  95. package/dist/canvas/index.js.map +1 -1
  96. package/dist/channels/googlechat/index.js +3 -0
  97. package/dist/channels/googlechat/index.js.map +1 -1
  98. package/dist/channels/imessage/index.js +10 -2
  99. package/dist/channels/imessage/index.js.map +1 -1
  100. package/dist/channels/index.js +7 -2
  101. package/dist/channels/index.js.map +1 -1
  102. package/dist/channels/line/index.d.ts +1 -1
  103. package/dist/channels/line/index.js +4 -2
  104. package/dist/channels/line/index.js.map +1 -1
  105. package/dist/channels/mattermost/index.js +8 -2
  106. package/dist/channels/mattermost/index.js.map +1 -1
  107. package/dist/channels/nostr/index.js +10 -2
  108. package/dist/channels/nostr/index.js.map +1 -1
  109. package/dist/channels/teams/index.js +20 -3
  110. package/dist/channels/teams/index.js.map +1 -1
  111. package/dist/channels/telegram/index.js +21 -4
  112. package/dist/channels/telegram/index.js.map +1 -1
  113. package/dist/channels/tlon/index.js +6 -1
  114. package/dist/channels/tlon/index.js.map +1 -1
  115. package/dist/channels/twitch/index.js +3 -2
  116. package/dist/channels/twitch/index.js.map +1 -1
  117. package/dist/channels/voice/index.js +16 -0
  118. package/dist/channels/voice/index.js.map +1 -1
  119. package/dist/channels/webchat/index.js +6 -1
  120. package/dist/channels/webchat/index.js.map +1 -1
  121. package/dist/channels/zalo/index.js +4 -2
  122. package/dist/channels/zalo/index.js.map +1 -1
  123. package/dist/cli/commands/doctor.js +2 -2
  124. package/dist/cli/commands/doctor.js.map +1 -1
  125. package/dist/cli/commands/index.js +57 -26
  126. package/dist/cli/commands/index.js.map +1 -1
  127. package/dist/cli/commands/onboard.js +12 -11
  128. package/dist/cli/commands/onboard.js.map +1 -1
  129. package/dist/cli/commands/skills.js +1 -1
  130. package/dist/cli/index.js +2 -2
  131. package/dist/cli/index.js.map +1 -1
  132. package/dist/cli/secure.js +11 -5
  133. package/dist/cli/secure.js.map +1 -1
  134. package/dist/commands/registry.js +17 -9
  135. package/dist/commands/registry.js.map +1 -1
  136. package/dist/config/index.js +42 -32
  137. package/dist/config/index.js.map +1 -1
  138. package/dist/credentials/index.js +7 -6
  139. package/dist/credentials/index.js.map +1 -1
  140. package/dist/cron/index.js +15 -1
  141. package/dist/cron/index.js.map +1 -1
  142. package/dist/daemon/index.js +7 -7
  143. package/dist/daemon/index.js.map +1 -1
  144. package/dist/db/index.d.ts +12 -4
  145. package/dist/db/index.js +11 -8
  146. package/dist/db/index.js.map +1 -1
  147. package/dist/docker/index.d.ts +0 -11
  148. package/dist/docker/index.js +46 -60
  149. package/dist/docker/index.js.map +1 -1
  150. package/dist/doctor/index.js +16 -7
  151. package/dist/doctor/index.js.map +1 -1
  152. package/dist/embeddings/index.js +42 -8
  153. package/dist/embeddings/index.js.map +1 -1
  154. package/dist/evm/contracts.js +17 -1
  155. package/dist/evm/contracts.js.map +1 -1
  156. package/dist/evm/odos.js +8 -2
  157. package/dist/evm/odos.js.map +1 -1
  158. package/dist/evm/oneinch.js +15 -7
  159. package/dist/evm/oneinch.js.map +1 -1
  160. package/dist/evm/pancakeswap.js +5 -2
  161. package/dist/evm/pancakeswap.js.map +1 -1
  162. package/dist/evm/transfers.js +59 -13
  163. package/dist/evm/transfers.js.map +1 -1
  164. package/dist/evm/uniswap.js +5 -2
  165. package/dist/evm/uniswap.js.map +1 -1
  166. package/dist/evm/virtuals.js +29 -2
  167. package/dist/evm/virtuals.js.map +1 -1
  168. package/dist/exchanges/binance-futures/index.js +24 -21
  169. package/dist/exchanges/binance-futures/index.js.map +1 -1
  170. package/dist/exchanges/bybit/index.js +17 -14
  171. package/dist/exchanges/bybit/index.js.map +1 -1
  172. package/dist/exchanges/hyperliquid/index.js +28 -20
  173. package/dist/exchanges/hyperliquid/index.js.map +1 -1
  174. package/dist/exchanges/lighter/index.js +4 -4
  175. package/dist/exchanges/mexc/index.js +15 -15
  176. package/dist/exchanges/mexc/index.js.map +1 -1
  177. package/dist/exchanges/opinion/index.js +7 -7
  178. package/dist/exchanges/opinion/index.js.map +1 -1
  179. package/dist/exchanges/predictfun/index.js +1 -1
  180. package/dist/execution/index.js +93 -87
  181. package/dist/execution/index.js.map +1 -1
  182. package/dist/extensions/copilot-proxy/index.js +13 -7
  183. package/dist/extensions/copilot-proxy/index.js.map +1 -1
  184. package/dist/extensions/diagnostics-otel/index.js +12 -1
  185. package/dist/extensions/diagnostics-otel/index.js.map +1 -1
  186. package/dist/extensions/google-auth/index.js +4 -1
  187. package/dist/extensions/google-auth/index.js.map +1 -1
  188. package/dist/extensions/llm-task/index.js +28 -10
  189. package/dist/extensions/llm-task/index.js.map +1 -1
  190. package/dist/extensions/lobster/index.js +27 -8
  191. package/dist/extensions/lobster/index.js.map +1 -1
  192. package/dist/extensions/memory-lancedb/index.js +16 -6
  193. package/dist/extensions/memory-lancedb/index.js.map +1 -1
  194. package/dist/extensions/open-prose/index.js +1 -1
  195. package/dist/extensions/task-runner/index.js +14 -5
  196. package/dist/extensions/task-runner/index.js.map +1 -1
  197. package/dist/farcaster/client.js +7 -7
  198. package/dist/feeds/agentbets/index.d.ts +1 -1
  199. package/dist/feeds/betfair/index.js +12 -6
  200. package/dist/feeds/betfair/index.js.map +1 -1
  201. package/dist/feeds/crypto/index.js +38 -30
  202. package/dist/feeds/crypto/index.js.map +1 -1
  203. package/dist/feeds/crypto/whale-tracker.js +12 -2
  204. package/dist/feeds/crypto/whale-tracker.js.map +1 -1
  205. package/dist/feeds/drift/trading.js +4 -4
  206. package/dist/feeds/external/index.js +3 -0
  207. package/dist/feeds/external/index.js.map +1 -1
  208. package/dist/feeds/fred/index.js.map +1 -1
  209. package/dist/feeds/hedgehog/index.js +10 -2
  210. package/dist/feeds/hedgehog/index.js.map +1 -1
  211. package/dist/feeds/manifold/index.js +1 -1
  212. package/dist/feeds/metaculus/index.js +2 -2
  213. package/dist/feeds/opinion/index.js +2 -2
  214. package/dist/feeds/polymarket/index.js +7 -1
  215. package/dist/feeds/polymarket/index.js.map +1 -1
  216. package/dist/feeds/polymarket/whale-tracker.js.map +1 -1
  217. package/dist/feeds/predictfun/index.js +2 -2
  218. package/dist/feeds/smarkets/index.js +12 -6
  219. package/dist/feeds/smarkets/index.js.map +1 -1
  220. package/dist/gateway/alerts-routes.js +10 -10
  221. package/dist/gateway/alerts-routes.js.map +1 -1
  222. package/dist/gateway/alt-data-routes.js +3 -3
  223. package/dist/gateway/alt-data-routes.js.map +1 -1
  224. package/dist/gateway/api-routes.js +3 -3
  225. package/dist/gateway/api-routes.js.map +1 -1
  226. package/dist/gateway/audit-routes.js +2 -2
  227. package/dist/gateway/audit-routes.js.map +1 -1
  228. package/dist/gateway/bracket-routes.js +5 -5
  229. package/dist/gateway/bracket-routes.js.map +1 -1
  230. package/dist/gateway/copy-trading-routes.js +11 -11
  231. package/dist/gateway/copy-trading-routes.js.map +1 -1
  232. package/dist/gateway/cron-routes.js +7 -7
  233. package/dist/gateway/cron-routes.js.map +1 -1
  234. package/dist/gateway/dca-routes.js +6 -6
  235. package/dist/gateway/dca-routes.js.map +1 -1
  236. package/dist/gateway/embeddings-routes.js +5 -5
  237. package/dist/gateway/embeddings-routes.js.map +1 -1
  238. package/dist/gateway/feeds-routes.d.ts +8 -7
  239. package/dist/gateway/feeds-routes.js +10 -10
  240. package/dist/gateway/feeds-routes.js.map +1 -1
  241. package/dist/gateway/index.js +30 -8
  242. package/dist/gateway/index.js.map +1 -1
  243. package/dist/gateway/monitoring-routes.js +3 -3
  244. package/dist/gateway/monitoring-routes.js.map +1 -1
  245. package/dist/gateway/opportunity-routes.js +14 -14
  246. package/dist/gateway/opportunity-routes.js.map +1 -1
  247. package/dist/gateway/payments-routes.js +4 -4
  248. package/dist/gateway/payments-routes.js.map +1 -1
  249. package/dist/gateway/percolator-routes.js +5 -5
  250. package/dist/gateway/percolator-routes.js.map +1 -1
  251. package/dist/gateway/queue-routes.js +2 -2
  252. package/dist/gateway/queue-routes.js.map +1 -1
  253. package/dist/gateway/risk-routes.js +6 -6
  254. package/dist/gateway/risk-routes.js.map +1 -1
  255. package/dist/gateway/routing-routes.js +4 -4
  256. package/dist/gateway/routing-routes.js.map +1 -1
  257. package/dist/gateway/server.js +2 -2
  258. package/dist/gateway/server.js.map +1 -1
  259. package/dist/gateway/shield-routes.js +4 -4
  260. package/dist/gateway/shield-routes.js.map +1 -1
  261. package/dist/gateway/trigger-routes.js +6 -6
  262. package/dist/gateway/trigger-routes.js.map +1 -1
  263. package/dist/gateway/twap-routes.js +6 -6
  264. package/dist/gateway/twap-routes.js.map +1 -1
  265. package/dist/gateway/webhooks-routes.js +6 -6
  266. package/dist/gateway/webhooks-routes.js.map +1 -1
  267. package/dist/gateway/whale-routes.js +13 -13
  268. package/dist/gateway/whale-routes.js.map +1 -1
  269. package/dist/history/index.js +8 -4
  270. package/dist/history/index.js.map +1 -1
  271. package/dist/hooks/index.js +15 -6
  272. package/dist/hooks/index.js.map +1 -1
  273. package/dist/i18n/index.js +2 -1
  274. package/dist/i18n/index.js.map +1 -1
  275. package/dist/identity/erc8004.js +13 -3
  276. package/dist/identity/erc8004.js.map +1 -1
  277. package/dist/index.js +24 -7
  278. package/dist/index.js.map +1 -1
  279. package/dist/infra/index.d.ts +1 -1
  280. package/dist/infra/index.js +39 -26
  281. package/dist/infra/index.js.map +1 -1
  282. package/dist/ledger/hooks.js +26 -18
  283. package/dist/ledger/hooks.js.map +1 -1
  284. package/dist/ledger/storage.js +23 -13
  285. package/dist/ledger/storage.js.map +1 -1
  286. package/dist/link-understanding/index.js +30 -5
  287. package/dist/link-understanding/index.js.map +1 -1
  288. package/dist/logging/index.js +31 -4
  289. package/dist/logging/index.js.map +1 -1
  290. package/dist/macos/index.d.ts +1 -1
  291. package/dist/macos/index.js +43 -41
  292. package/dist/macos/index.js.map +1 -1
  293. package/dist/markdown/index.js +25 -8
  294. package/dist/markdown/index.js.map +1 -1
  295. package/dist/market-index/index.js +8 -6
  296. package/dist/market-index/index.js.map +1 -1
  297. package/dist/mcp/index.js +68 -11
  298. package/dist/mcp/index.js.map +1 -1
  299. package/dist/mcp/server.js +21 -3
  300. package/dist/mcp/server.js.map +1 -1
  301. package/dist/media/index.js +17 -15
  302. package/dist/media/index.js.map +1 -1
  303. package/dist/memory/context.js +17 -9
  304. package/dist/memory/context.js.map +1 -1
  305. package/dist/memory/index.js +6 -5
  306. package/dist/memory/index.js.map +1 -1
  307. package/dist/ml-pipeline/collector.js +14 -3
  308. package/dist/ml-pipeline/collector.js.map +1 -1
  309. package/dist/ml-pipeline/trainer.js +1 -1
  310. package/dist/ml-pipeline/trainer.js.map +1 -1
  311. package/dist/monitoring/health.js +15 -3
  312. package/dist/monitoring/health.js.map +1 -1
  313. package/dist/monitoring/index.js +2 -1
  314. package/dist/monitoring/index.js.map +1 -1
  315. package/dist/monitoring/metrics.js +2 -2
  316. package/dist/nodes/index.js +43 -28
  317. package/dist/nodes/index.js.map +1 -1
  318. package/dist/opportunity/analytics.js +7 -5
  319. package/dist/opportunity/analytics.js.map +1 -1
  320. package/dist/opportunity/combinatorial.js +4 -1
  321. package/dist/opportunity/combinatorial.js.map +1 -1
  322. package/dist/opportunity/correlation.js +19 -10
  323. package/dist/opportunity/correlation.js.map +1 -1
  324. package/dist/opportunity/executor.js +14 -5
  325. package/dist/opportunity/executor.js.map +1 -1
  326. package/dist/opportunity/risk.js +3 -1
  327. package/dist/opportunity/risk.js.map +1 -1
  328. package/dist/opportunity/scoring.js +3 -1
  329. package/dist/opportunity/scoring.js.map +1 -1
  330. package/dist/pairing/index.js +8 -4
  331. package/dist/pairing/index.js.map +1 -1
  332. package/dist/payments/x402/evm.js +4 -4
  333. package/dist/payments/x402/index.js +27 -8
  334. package/dist/payments/x402/index.js.map +1 -1
  335. package/dist/payments/x402/solana.js +3 -3
  336. package/dist/percolator/feed.js +1 -1
  337. package/dist/percolator/feed.js.map +1 -1
  338. package/dist/permissions/index.d.ts +2 -0
  339. package/dist/permissions/index.js +23 -13
  340. package/dist/permissions/index.js.map +1 -1
  341. package/dist/plugins/index.d.ts +3 -1
  342. package/dist/plugins/index.js +18 -6
  343. package/dist/plugins/index.js.map +1 -1
  344. package/dist/portfolio/index.js +17 -16
  345. package/dist/portfolio/index.js.map +1 -1
  346. package/dist/presence/index.js +17 -5
  347. package/dist/presence/index.js.map +1 -1
  348. package/dist/process/index.js +40 -14
  349. package/dist/process/index.js.map +1 -1
  350. package/dist/providers/discovery.js +34 -28
  351. package/dist/providers/discovery.js.map +1 -1
  352. package/dist/providers/health.js +7 -4
  353. package/dist/providers/health.js.map +1 -1
  354. package/dist/providers/index.js +36 -33
  355. package/dist/providers/index.js.map +1 -1
  356. package/dist/queue/index.js +1 -1
  357. package/dist/queue/jobs/worker.js +13 -2
  358. package/dist/queue/jobs/worker.js.map +1 -1
  359. package/dist/remote/index.d.ts +0 -5
  360. package/dist/remote/index.js +41 -9
  361. package/dist/remote/index.js.map +1 -1
  362. package/dist/risk/circuit-breaker.js +13 -5
  363. package/dist/risk/circuit-breaker.js.map +1 -1
  364. package/dist/risk/engine.js +2 -2
  365. package/dist/risk/volatility.js +1 -1
  366. package/dist/risk/volatility.js.map +1 -1
  367. package/dist/routing/index.js +5 -2
  368. package/dist/routing/index.js.map +1 -1
  369. package/dist/search/index.js +7 -5
  370. package/dist/search/index.js.map +1 -1
  371. package/dist/security/address-checker.js +40 -19
  372. package/dist/security/address-checker.js.map +1 -1
  373. package/dist/security/code-scanner.js +7 -5
  374. package/dist/security/code-scanner.js.map +1 -1
  375. package/dist/security/index.d.ts +3 -0
  376. package/dist/security/index.js +19 -7
  377. package/dist/security/index.js.map +1 -1
  378. package/dist/security/tx-validator.js +2 -2
  379. package/dist/security/tx-validator.js.map +1 -1
  380. package/dist/services/feature-engineering/rolling-window.d.ts +7 -0
  381. package/dist/services/feature-engineering/rolling-window.js +23 -0
  382. package/dist/services/feature-engineering/rolling-window.js.map +1 -1
  383. package/dist/services/feature-engineering/thresholds.js +2 -2
  384. package/dist/services/feature-engineering/thresholds.js.map +1 -1
  385. package/dist/services/tick-recorder/index.js +13 -1
  386. package/dist/services/tick-recorder/index.js.map +1 -1
  387. package/dist/services/tick-recorder/queries.js +11 -7
  388. package/dist/services/tick-recorder/queries.js.map +1 -1
  389. package/dist/services/tick-streamer/index.js +6 -2
  390. package/dist/services/tick-streamer/index.js.map +1 -1
  391. package/dist/session/index.d.ts +1 -1
  392. package/dist/session/index.js +31 -6
  393. package/dist/session/index.js.map +1 -1
  394. package/dist/sessions/index.js +76 -52
  395. package/dist/sessions/index.js.map +1 -1
  396. package/dist/signal-router/router.js +8 -1
  397. package/dist/signal-router/router.js.map +1 -1
  398. package/dist/skills/bundled/acp/index.js +2 -2
  399. package/dist/skills/bundled/acp/index.js.map +1 -1
  400. package/dist/skills/bundled/agentbets/index.js.map +1 -1
  401. package/dist/skills/bundled/ai-strategy/index.js +11 -6
  402. package/dist/skills/bundled/ai-strategy/index.js.map +1 -1
  403. package/dist/skills/bundled/analytics/index.js +7 -7
  404. package/dist/skills/bundled/analytics/index.js.map +1 -1
  405. package/dist/skills/bundled/auto-reply/SKILL.md +19 -16
  406. package/dist/skills/bundled/auto-reply/index.js +10 -5
  407. package/dist/skills/bundled/auto-reply/index.js.map +1 -1
  408. package/dist/skills/bundled/automation/SKILL.md +33 -215
  409. package/dist/skills/bundled/backtest/SKILL.md +2 -1
  410. package/dist/skills/bundled/backtest/index.js +2 -2
  411. package/dist/skills/bundled/backtest/index.js.map +1 -1
  412. package/dist/skills/bundled/bags/index.js +18 -7
  413. package/dist/skills/bundled/bags/index.js.map +1 -1
  414. package/dist/skills/bundled/betfair/index.js +25 -13
  415. package/dist/skills/bundled/betfair/index.js.map +1 -1
  416. package/dist/skills/bundled/binance-futures/index.js +14 -3
  417. package/dist/skills/bundled/binance-futures/index.js.map +1 -1
  418. package/dist/skills/bundled/botchan/index.js +4 -2
  419. package/dist/skills/bundled/botchan/index.js.map +1 -1
  420. package/dist/skills/bundled/bybit-futures/index.js +10 -2
  421. package/dist/skills/bundled/bybit-futures/index.js.map +1 -1
  422. package/dist/skills/bundled/clanker/index.js +13 -7
  423. package/dist/skills/bundled/clanker/index.js.map +1 -1
  424. package/dist/skills/bundled/copy-trading/index.js +3 -3
  425. package/dist/skills/bundled/copy-trading/index.js.map +1 -1
  426. package/dist/skills/bundled/copy-trading-solana/index.js +13 -12
  427. package/dist/skills/bundled/copy-trading-solana/index.js.map +1 -1
  428. package/dist/skills/bundled/credentials/SKILL.md +2 -1
  429. package/dist/skills/bundled/crypto-hft/index.js +3 -2
  430. package/dist/skills/bundled/crypto-hft/index.js.map +1 -1
  431. package/dist/skills/bundled/drift/index.js +16 -11
  432. package/dist/skills/bundled/drift/index.js.map +1 -1
  433. package/dist/skills/bundled/drift-sdk/index.js +12 -4
  434. package/dist/skills/bundled/drift-sdk/index.js.map +1 -1
  435. package/dist/skills/bundled/edge/SKILL.md +6 -3
  436. package/dist/skills/bundled/execution/index.js +17 -12
  437. package/dist/skills/bundled/execution/index.js.map +1 -1
  438. package/dist/skills/bundled/features/index.js +1 -1
  439. package/dist/skills/bundled/features/index.js.map +1 -1
  440. package/dist/skills/bundled/harden/index.js +1 -1
  441. package/dist/skills/bundled/harden/index.js.map +1 -1
  442. package/dist/skills/bundled/hyperliquid/index.js +45 -13
  443. package/dist/skills/bundled/hyperliquid/index.js.map +1 -1
  444. package/dist/skills/bundled/jupiter/index.js +32 -11
  445. package/dist/skills/bundled/jupiter/index.js.map +1 -1
  446. package/dist/skills/bundled/kamino/index.js +4 -4
  447. package/dist/skills/bundled/lighter/index.js +28 -10
  448. package/dist/skills/bundled/lighter/index.js.map +1 -1
  449. package/dist/skills/bundled/marginfi/index.js +26 -14
  450. package/dist/skills/bundled/marginfi/index.js.map +1 -1
  451. package/dist/skills/bundled/meteora/index.js +17 -9
  452. package/dist/skills/bundled/meteora/index.js.map +1 -1
  453. package/dist/skills/bundled/meteora-dbc/index.js +13 -13
  454. package/dist/skills/bundled/meteora-dbc/index.js.map +1 -1
  455. package/dist/skills/bundled/mexc-futures/index.js +10 -2
  456. package/dist/skills/bundled/mexc-futures/index.js.map +1 -1
  457. package/dist/skills/bundled/opinion/index.js +7 -1
  458. package/dist/skills/bundled/opinion/index.js.map +1 -1
  459. package/dist/skills/bundled/orca/index.js +10 -2
  460. package/dist/skills/bundled/orca/index.js.map +1 -1
  461. package/dist/skills/bundled/percolator/index.js +2 -2
  462. package/dist/skills/bundled/percolator/index.js.map +1 -1
  463. package/dist/skills/bundled/portfolio/index.js +3 -3
  464. package/dist/skills/bundled/portfolio/index.js.map +1 -1
  465. package/dist/skills/bundled/predictfun/index.js +2 -2
  466. package/dist/skills/bundled/processes/index.js +1 -1
  467. package/dist/skills/bundled/processes/index.js.map +1 -1
  468. package/dist/skills/bundled/pump-swarm/index.js +21 -17
  469. package/dist/skills/bundled/pump-swarm/index.js.map +1 -1
  470. package/dist/skills/bundled/pumpfun/index.js +12 -6
  471. package/dist/skills/bundled/pumpfun/index.js.map +1 -1
  472. package/dist/skills/bundled/raydium/index.js +14 -3
  473. package/dist/skills/bundled/raydium/index.js.map +1 -1
  474. package/dist/skills/bundled/risk/index.js +1 -1
  475. package/dist/skills/bundled/sandbox/SKILL.md +29 -240
  476. package/dist/skills/bundled/signals/index.js +20 -9
  477. package/dist/skills/bundled/signals/index.js.map +1 -1
  478. package/dist/skills/bundled/smarkets/index.js +5 -5
  479. package/dist/skills/bundled/smarkets/index.js.map +1 -1
  480. package/dist/skills/bundled/solend/index.js +28 -16
  481. package/dist/skills/bundled/solend/index.js.map +1 -1
  482. package/dist/skills/bundled/ticks/index.js +9 -4
  483. package/dist/skills/bundled/ticks/index.js.map +1 -1
  484. package/dist/skills/bundled/trading-futures/index.js +7 -4
  485. package/dist/skills/bundled/trading-futures/index.js.map +1 -1
  486. package/dist/skills/bundled/trading-kalshi/SKILL.md +65 -586
  487. package/dist/skills/bundled/trading-kalshi/index.js +14 -7
  488. package/dist/skills/bundled/trading-kalshi/index.js.map +1 -1
  489. package/dist/skills/bundled/trading-manifold/index.js +2 -2
  490. package/dist/skills/bundled/trading-polymarket/index.js +1 -1
  491. package/dist/skills/bundled/trading-polymarket/index.js.map +1 -1
  492. package/dist/skills/bundled/trading-solana/index.js +2 -2
  493. package/dist/skills/bundled/trading-system/index.js +2 -2
  494. package/dist/skills/bundled/trading-system/index.js.map +1 -1
  495. package/dist/skills/bundled/usage/SKILL.md +8 -18
  496. package/dist/skills/bundled/verify/index.js +2 -2
  497. package/dist/skills/bundled/verify/index.js.map +1 -1
  498. package/dist/skills/bundled/weather/index.js +20 -9
  499. package/dist/skills/bundled/weather/index.js.map +1 -1
  500. package/dist/skills/bundled/webhooks/SKILL.md +31 -279
  501. package/dist/skills/bundled/whale-tracking/SKILL.md +24 -22
  502. package/dist/skills/bundled/whale-tracking/index.js +16 -8
  503. package/dist/skills/bundled/whale-tracking/index.js.map +1 -1
  504. package/dist/skills/index.js +62 -9
  505. package/dist/skills/index.js.map +1 -1
  506. package/dist/skills/loader.js +30 -4
  507. package/dist/skills/loader.js.map +1 -1
  508. package/dist/solana/copytrade.d.ts +1 -0
  509. package/dist/solana/copytrade.js +13 -9
  510. package/dist/solana/copytrade.js.map +1 -1
  511. package/dist/solana/drift.js +3 -3
  512. package/dist/solana/drift.js.map +1 -1
  513. package/dist/solana/meteora-dbc.d.ts +2 -2
  514. package/dist/solana/pump-swarm.js +18 -12
  515. package/dist/solana/pump-swarm.js.map +1 -1
  516. package/dist/solana/pumpapi.js +4 -0
  517. package/dist/solana/pumpapi.js.map +1 -1
  518. package/dist/solana/raydium.js +50 -14
  519. package/dist/solana/raydium.js.map +1 -1
  520. package/dist/solana/swarm-ai-builder.js +28 -28
  521. package/dist/solana/swarm-ai-builder.js.map +1 -1
  522. package/dist/solana/swarm-arbitrage.js +6 -4
  523. package/dist/solana/swarm-arbitrage.js.map +1 -1
  524. package/dist/solana/swarm-builders.js +6 -3
  525. package/dist/solana/swarm-builders.js.map +1 -1
  526. package/dist/solana/swarm-copytrade.d.ts +1 -0
  527. package/dist/solana/swarm-copytrade.js +8 -7
  528. package/dist/solana/swarm-copytrade.js.map +1 -1
  529. package/dist/solana/swarm-presets.js +3 -3
  530. package/dist/solana/swarm-presets.js.map +1 -1
  531. package/dist/solana/swarm-signals.js +8 -6
  532. package/dist/solana/swarm-signals.js.map +1 -1
  533. package/dist/solana/swarm-strategies.js +8 -8
  534. package/dist/solana/wallet.js +12 -3
  535. package/dist/solana/wallet.js.map +1 -1
  536. package/dist/strategies/crypto-hft/index.js +2 -0
  537. package/dist/strategies/crypto-hft/index.js.map +1 -1
  538. package/dist/strategies/crypto-hft/positions.js +11 -3
  539. package/dist/strategies/crypto-hft/positions.js.map +1 -1
  540. package/dist/strategies/crypto-hft/presets.js +2 -1
  541. package/dist/strategies/crypto-hft/presets.js.map +1 -1
  542. package/dist/strategies/crypto-hft/strategies.js +4 -3
  543. package/dist/strategies/crypto-hft/strategies.js.map +1 -1
  544. package/dist/strategies/hft-divergence/detector.js +5 -1
  545. package/dist/strategies/hft-divergence/detector.js.map +1 -1
  546. package/dist/strategies/hft-divergence/position-manager.js +13 -1
  547. package/dist/strategies/hft-divergence/position-manager.js.map +1 -1
  548. package/dist/strategies/hft-divergence/strategy.js +3 -1
  549. package/dist/strategies/hft-divergence/strategy.js.map +1 -1
  550. package/dist/streaming/index.js +21 -5
  551. package/dist/streaming/index.js.map +1 -1
  552. package/dist/tailscale/index.d.ts +0 -17
  553. package/dist/tailscale/index.js +20 -39
  554. package/dist/tailscale/index.js.map +1 -1
  555. package/dist/telemetry/index.d.ts +1 -0
  556. package/dist/telemetry/index.js +49 -6
  557. package/dist/telemetry/index.js.map +1 -1
  558. package/dist/terminal/index.js +4 -5
  559. package/dist/terminal/index.js.map +1 -1
  560. package/dist/tools/canvas.js +32 -8
  561. package/dist/tools/canvas.js.map +1 -1
  562. package/dist/tools/exec.js +38 -5
  563. package/dist/tools/exec.js.map +1 -1
  564. package/dist/tools/image.js +19 -0
  565. package/dist/tools/image.js.map +1 -1
  566. package/dist/tools/sql.js +4 -1
  567. package/dist/tools/sql.js.map +1 -1
  568. package/dist/tools/transcription.js +13 -0
  569. package/dist/tools/transcription.js.map +1 -1
  570. package/dist/tools/web-fetch.js +14 -0
  571. package/dist/tools/web-fetch.js.map +1 -1
  572. package/dist/tools/web-search.js +14 -0
  573. package/dist/tools/web-search.js.map +1 -1
  574. package/dist/trading/backtest.js +3 -3
  575. package/dist/trading/backtest.js.map +1 -1
  576. package/dist/trading/bots/index.d.ts +9 -1
  577. package/dist/trading/bots/index.js +6 -2
  578. package/dist/trading/bots/index.js.map +1 -1
  579. package/dist/trading/copy-trading.js +6 -1
  580. package/dist/trading/copy-trading.js.map +1 -1
  581. package/dist/trading/devtools.js +2 -2
  582. package/dist/trading/devtools.js.map +1 -1
  583. package/dist/trading/futures/index.js +37 -34
  584. package/dist/trading/futures/index.js.map +1 -1
  585. package/dist/trading/index.js +1 -1
  586. package/dist/trading/index.js.map +1 -1
  587. package/dist/trading/logger.js +27 -20
  588. package/dist/trading/logger.js.map +1 -1
  589. package/dist/trading/ml-signals.js +9 -3
  590. package/dist/trading/ml-signals.js.map +1 -1
  591. package/dist/trading/safety.d.ts +2 -0
  592. package/dist/trading/safety.js +12 -2
  593. package/dist/trading/safety.js.map +1 -1
  594. package/dist/trading/stream.js +1 -1
  595. package/dist/trading/stream.js.map +1 -1
  596. package/dist/trading/tracking.d.ts +1 -1
  597. package/dist/trading/tracking.js.map +1 -1
  598. package/dist/utils/config.js +12 -8
  599. package/dist/utils/config.js.map +1 -1
  600. package/dist/utils/http.js +15 -1
  601. package/dist/utils/http.js.map +1 -1
  602. package/dist/utils/kelly.js +14 -5
  603. package/dist/utils/kelly.js.map +1 -1
  604. package/dist/utils/production.js +1 -1
  605. package/dist/utils/production.js.map +1 -1
  606. package/dist/utils/rate-limiter.js +25 -10
  607. package/dist/utils/rate-limiter.js.map +1 -1
  608. package/dist/voice/index.d.ts +5 -1
  609. package/dist/voice/index.js +65 -25
  610. package/dist/voice/index.js.map +1 -1
  611. package/dist/weather/edge.js +4 -2
  612. package/dist/weather/edge.js.map +1 -1
  613. package/dist/weather/markets.d.ts +1 -0
  614. package/dist/weather/markets.js +17 -8
  615. package/dist/weather/markets.js.map +1 -1
  616. package/dist/weather/noaa.d.ts +2 -0
  617. package/dist/weather/noaa.js +22 -5
  618. package/dist/weather/noaa.js.map +1 -1
  619. package/dist/web/index.d.ts +3 -0
  620. package/dist/web/index.js +60 -12
  621. package/dist/web/index.js.map +1 -1
  622. package/dist/wizard/index.js +13 -14
  623. package/dist/wizard/index.js.map +1 -1
  624. package/dist/workspace/index.d.ts +0 -2
  625. package/dist/workspace/index.js +45 -19
  626. package/dist/workspace/index.js.map +1 -1
  627. package/package.json +1 -1
@@ -246,7 +246,7 @@ async function handleCandles(coin, interval) {
246
246
  ];
247
247
  for (const c of candles.slice(-5)) {
248
248
  const time = new Date(c.time).toLocaleTimeString();
249
- const chg = ((c.close - c.open) / c.open * 100);
249
+ const chg = c.open !== 0 ? ((c.close - c.open) / c.open * 100) : 0;
250
250
  lines.push(` ${time}: $${c.close.toFixed(2)} (${chg >= 0 ? '+' : ''}${chg.toFixed(2)}%)`);
251
251
  }
252
252
  return lines.join('\n');
@@ -388,7 +388,7 @@ async function handleOrders(action, ...args) {
388
388
  const result = await hl.cancelAllOrders(config, coin.toUpperCase());
389
389
  return result.success ? `All ${coin.toUpperCase()} orders cancelled` : `Failed: ${result.error}`;
390
390
  }
391
- const result = await hl.cancelOrder(config, coin.toUpperCase(), parseInt(oid));
391
+ const result = await hl.cancelOrder(config, coin.toUpperCase(), parseInt(oid, 10));
392
392
  return result.success ? `Order ${oid} cancelled` : `Failed: ${result.error}`;
393
393
  }
394
394
  if (action === 'cancelall') {
@@ -468,7 +468,13 @@ async function handleLong(coin, size, price) {
468
468
  }
469
469
  const coinUpper = coin.toUpperCase();
470
470
  const sizeNum = parseFloat(size);
471
+ if (isNaN(sizeNum) || sizeNum <= 0) {
472
+ return 'Invalid size. Must be a positive number.';
473
+ }
471
474
  const priceNum = price ? parseFloat(price) : undefined;
475
+ if (priceNum !== undefined && (isNaN(priceNum) || priceNum <= 0)) {
476
+ return 'Invalid price. Must be a positive number.';
477
+ }
472
478
  const isLimit = !!priceNum;
473
479
  const result = await hl.placePerpOrder(config, {
474
480
  coin: coinUpper,
@@ -506,7 +512,13 @@ async function handleShort(coin, size, price) {
506
512
  }
507
513
  const coinUpper = coin.toUpperCase();
508
514
  const sizeNum = parseFloat(size);
515
+ if (isNaN(sizeNum) || sizeNum <= 0) {
516
+ return 'Invalid size. Must be a positive number.';
517
+ }
509
518
  const priceNum = price ? parseFloat(price) : undefined;
519
+ if (priceNum !== undefined && (isNaN(priceNum) || priceNum <= 0)) {
520
+ return 'Invalid price. Must be a positive number.';
521
+ }
510
522
  const isLimit = !!priceNum;
511
523
  const result = await hl.placePerpOrder(config, {
512
524
  coin: coinUpper,
@@ -658,8 +670,8 @@ async function handleLeverage(coin, leverage) {
658
670
  if (!coin || !leverage) {
659
671
  return 'Usage: /hl leverage <coin> <leverage>\nExample: /hl leverage BTC 10';
660
672
  }
661
- const lev = parseInt(leverage);
662
- if (lev < 1 || lev > 50) {
673
+ const lev = parseInt(leverage, 10);
674
+ if (isNaN(lev) || lev < 1 || lev > 50) {
663
675
  return 'Leverage must be between 1 and 50';
664
676
  }
665
677
  const result = await hl.updateLeverage(config, coin.toUpperCase(), lev);
@@ -705,7 +717,7 @@ async function handleTwap(action, ...args) {
705
717
  coin: coin.toUpperCase(),
706
718
  side: action === 'buy' ? 'BUY' : 'SELL',
707
719
  size: parseFloat(size),
708
- durationMinutes: parseInt(duration),
720
+ durationMinutes: parseInt(duration, 10),
709
721
  });
710
722
  if (result.success) {
711
723
  return `TWAP ${action.toUpperCase()} ${coin.toUpperCase()} ${size} over ${duration}min (ID: ${result.twapId})`;
@@ -768,11 +780,19 @@ async function handleSpot(subcommand, ...args) {
768
780
  if (!coin || !amount) {
769
781
  return `Usage: /hl spot ${subcommand} <coin> <amount> [price]`;
770
782
  }
783
+ const amountFloat = parseFloat(amount);
784
+ if (isNaN(amountFloat) || amountFloat <= 0) {
785
+ return 'Invalid amount. Must be a positive number.';
786
+ }
787
+ const priceFloat = price ? parseFloat(price) : 0;
788
+ if (price && (isNaN(priceFloat) || priceFloat <= 0)) {
789
+ return 'Invalid price. Must be a positive number.';
790
+ }
771
791
  const result = await hl.placeSpotOrder(config, {
772
792
  coin: coin.toUpperCase(),
773
793
  side: subcommand === 'buy' ? 'BUY' : 'SELL',
774
- size: parseFloat(amount),
775
- price: price ? parseFloat(price) : 0,
794
+ size: amountFloat,
795
+ price: priceFloat,
776
796
  type: price ? 'LIMIT' : 'MARKET',
777
797
  });
778
798
  if (result.success) {
@@ -851,28 +871,40 @@ async function handleTransfer(action, ...args) {
851
871
  const [amount] = args;
852
872
  if (!amount)
853
873
  return 'Usage: /hl transfer spot2perp <amount>';
854
- const result = await hl.transferBetweenSpotAndPerp(config, parseFloat(amount), true);
874
+ const amountNum = parseFloat(amount);
875
+ if (isNaN(amountNum) || amountNum <= 0)
876
+ return 'Invalid amount. Must be a positive number.';
877
+ const result = await hl.transferBetweenSpotAndPerp(config, amountNum, true);
855
878
  return result.success ? `Transferred $${amount} to perps` : `Failed: ${result.error}`;
856
879
  }
857
880
  if (action === 'perp2spot') {
858
881
  const [amount] = args;
859
882
  if (!amount)
860
883
  return 'Usage: /hl transfer perp2spot <amount>';
861
- const result = await hl.transferBetweenSpotAndPerp(config, parseFloat(amount), false);
884
+ const amountNum = parseFloat(amount);
885
+ if (isNaN(amountNum) || amountNum <= 0)
886
+ return 'Invalid amount. Must be a positive number.';
887
+ const result = await hl.transferBetweenSpotAndPerp(config, amountNum, false);
862
888
  return result.success ? `Transferred $${amount} to spot` : `Failed: ${result.error}`;
863
889
  }
864
890
  if (action === 'send') {
865
891
  const [address, amount] = args;
866
892
  if (!address || !amount)
867
893
  return 'Usage: /hl transfer send <address> <amount>';
868
- const result = await hl.usdTransfer(config, address, parseFloat(amount));
894
+ const amountNum = parseFloat(amount);
895
+ if (isNaN(amountNum) || amountNum <= 0)
896
+ return 'Invalid amount. Must be a positive number.';
897
+ const result = await hl.usdTransfer(config, address, amountNum);
869
898
  return result.success ? `Sent $${amount} to ${address.slice(0, 8)}...` : `Failed: ${result.error}`;
870
899
  }
871
900
  if (action === 'withdraw') {
872
901
  const [address, amount] = args;
873
902
  if (!address || !amount)
874
903
  return 'Usage: /hl transfer withdraw <address> <amount>';
875
- const result = await hl.withdrawToL1(config, address, parseFloat(amount));
904
+ const amountNum = parseFloat(amount);
905
+ if (isNaN(amountNum) || amountNum <= 0)
906
+ return 'Invalid amount. Must be a positive number.';
907
+ const result = await hl.withdrawToL1(config, address, amountNum);
876
908
  return result.success ? `Withdrawal of $${amount} initiated` : `Failed: ${result.error}`;
877
909
  }
878
910
  return [
@@ -997,7 +1029,7 @@ async function handleDbTrades(coin, limit) {
997
1029
  const db = await (0, db_1.initDatabase)();
998
1030
  const trades = db.getHyperliquidTrades(getUserId(), {
999
1031
  coin: coin?.toUpperCase(),
1000
- limit: limit ? parseInt(limit) : 20,
1032
+ limit: limit ? parseInt(limit, 10) : 20,
1001
1033
  });
1002
1034
  if (trades.length === 0) {
1003
1035
  return 'No trades in database';
@@ -1060,7 +1092,7 @@ async function handleDbFunding(coin, limit) {
1060
1092
  const db = await (0, db_1.initDatabase)();
1061
1093
  const funding = db.getHyperliquidFunding(getUserId(), {
1062
1094
  coin: coin?.toUpperCase(),
1063
- limit: limit ? parseInt(limit) : 20,
1095
+ limit: limit ? parseInt(limit, 10) : 20,
1064
1096
  });
1065
1097
  if (funding.length === 0) {
1066
1098
  return 'No funding payments in database';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/skills/bundled/hyperliquid/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/skills/bundled/hyperliquid/index.ts"],"names":[],"mappings":"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"}
@@ -79,7 +79,10 @@ function isConfigured() {
79
79
  return !!(process.env.SOLANA_PRIVATE_KEY || process.env.SOLANA_KEYPAIR_PATH);
80
80
  }
81
81
  function formatAmount(amount, decimals) {
82
- const num = parseFloat(amount) / Math.pow(10, decimals);
82
+ const raw = parseFloat(amount);
83
+ if (isNaN(raw))
84
+ return '0';
85
+ const num = raw / Math.pow(10, decimals);
83
86
  if (num < 0.000001)
84
87
  return num.toExponential(2);
85
88
  if (num < 1)
@@ -144,7 +147,11 @@ async function handleQuote(args) {
144
147
  const tokens = await tokenlist.getTokenList();
145
148
  const fromDecimals = tokens.find(t => t.address === fromMint)?.decimals ?? 9;
146
149
  const toDecimals = tokens.find(t => t.address === toMint)?.decimals ?? 9;
147
- const amountBaseUnits = Math.floor(parseFloat(amount) * Math.pow(10, fromDecimals)).toString();
150
+ const parsedAmount = parseFloat(amount);
151
+ if (isNaN(parsedAmount) || parsedAmount <= 0) {
152
+ return 'Invalid amount. Must be a positive number.';
153
+ }
154
+ const amountBaseUnits = Math.floor(parsedAmount * Math.pow(10, fromDecimals)).toString();
148
155
  const quote = await jupiter.getJupiterQuote({
149
156
  inputMint: fromMint,
150
157
  outputMint: toMint,
@@ -220,11 +227,13 @@ Example:
220
227
  let expiryHours = 168; // Default 1 week
221
228
  const expiryIndex = args.findIndex(a => a === '--expiry');
222
229
  if (expiryIndex >= 0 && args[expiryIndex + 1]) {
223
- expiryHours = parseInt(args[expiryIndex + 1]);
230
+ const parsed = parseInt(args[expiryIndex + 1], 10);
231
+ if (!isNaN(parsed) && parsed > 0)
232
+ expiryHours = parsed;
224
233
  }
225
234
  const price = parseFloat(priceStr);
226
- if (isNaN(price)) {
227
- return 'Price must be a number.';
235
+ if (isNaN(price) || price <= 0) {
236
+ return 'Price must be a positive number.';
228
237
  }
229
238
  try {
230
239
  const { wallet, jupiter, tokenlist } = await getSolanaModules();
@@ -237,8 +246,12 @@ Example:
237
246
  const tokens = await tokenlist.getTokenList();
238
247
  const fromDecimals = tokens.find(t => t.address === fromMint)?.decimals ?? 9;
239
248
  const toDecimals = tokens.find(t => t.address === toMint)?.decimals ?? 9;
240
- const inAmount = Math.floor(parseFloat(amount) * Math.pow(10, fromDecimals)).toString();
241
- const outAmount = Math.floor(parseFloat(amount) * price * Math.pow(10, toDecimals)).toString();
249
+ const parsedAmount = parseFloat(amount);
250
+ if (isNaN(parsedAmount) || parsedAmount <= 0) {
251
+ return 'Invalid amount. Must be a positive number.';
252
+ }
253
+ const inAmount = Math.floor(parsedAmount * Math.pow(10, fromDecimals)).toString();
254
+ const outAmount = Math.floor(parsedAmount * price * Math.pow(10, toDecimals)).toString();
242
255
  const expiredAtMs = Date.now() + expiryHours * 60 * 60 * 1000;
243
256
  const result = await jupiter.createJupiterLimitOrder(connection, keypair, {
244
257
  inputMint: fromMint,
@@ -383,7 +396,7 @@ Example:
383
396
  const fromToken = args.slice(1, toIndex).join(' ');
384
397
  const toToken = args.slice(toIndex + 1, perIndex).join(' ');
385
398
  const perAmount = args[perIndex + 1];
386
- const everySeconds = parseInt(args[everyIndex + 1]);
399
+ const everySeconds = parseInt(args[everyIndex + 1], 10);
387
400
  if (isNaN(everySeconds) || everySeconds < 30) {
388
401
  return 'Interval must be at least 30 seconds.';
389
402
  }
@@ -397,8 +410,16 @@ Example:
397
410
  }
398
411
  const tokens = await tokenlist.getTokenList();
399
412
  const fromDecimals = tokens.find(t => t.address === fromMint)?.decimals ?? 9;
400
- const inAmount = Math.floor(parseFloat(total) * Math.pow(10, fromDecimals)).toString();
401
- const inAmountPerCycle = Math.floor(parseFloat(perAmount) * Math.pow(10, fromDecimals)).toString();
413
+ const parsedTotal = parseFloat(total);
414
+ const parsedPerAmount = parseFloat(perAmount);
415
+ if (isNaN(parsedTotal) || parsedTotal <= 0) {
416
+ return 'Invalid total amount. Must be a positive number.';
417
+ }
418
+ if (isNaN(parsedPerAmount) || parsedPerAmount <= 0) {
419
+ return 'Invalid per-cycle amount. Must be a positive number.';
420
+ }
421
+ const inAmount = Math.floor(parsedTotal * Math.pow(10, fromDecimals)).toString();
422
+ const inAmountPerCycle = Math.floor(parsedPerAmount * Math.pow(10, fromDecimals)).toString();
402
423
  const result = await jupiter.createJupiterDCA(connection, keypair, {
403
424
  inputMint: fromMint,
404
425
  outputMint: toMint,
@@ -406,7 +427,7 @@ Example:
406
427
  inAmountPerCycle,
407
428
  cycleSecondsApart: everySeconds,
408
429
  });
409
- const numCycles = Math.ceil(parseFloat(total) / parseFloat(perAmount));
430
+ const numCycles = Math.ceil(parsedTotal / parsedPerAmount);
410
431
  return `**DCA Created**
411
432
 
412
433
  From: ${total} ${fromToken}