hive-intelligence 1.1.0 → 1.1.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.
- package/README.md +243 -166
- package/agent-skills/.claude-plugin/plugin.json +105 -0
- package/{LICENSE → agent-skills/LICENSE} +1 -1
- package/agent-skills/README.md +146 -0
- package/agent-skills/SKILL.md +68 -0
- package/agent-skills/evals/README.md +20 -0
- package/agent-skills/evals/trigger-queries.json +194 -0
- package/agent-skills/package.json +49 -0
- package/agent-skills/packs/hive-build/SKILL.md +327 -0
- package/agent-skills/packs/hive-build/evals/evals.json +28 -0
- package/agent-skills/packs/hive-build-onboarding/SKILL.md +137 -0
- package/agent-skills/packs/hive-build-onboarding/evals/evals.json +27 -0
- package/agent-skills/packs/hive-cli/SKILL.md +141 -0
- package/agent-skills/packs/hive-cli/evals/evals.json +27 -0
- package/agent-skills/packs/hive-defi-research/SKILL.md +42 -0
- package/agent-skills/packs/hive-defi-research/evals/evals.json +27 -0
- package/agent-skills/packs/hive-defi-research/references/workflow.md +41 -0
- package/agent-skills/packs/hive-dex-pool-analysis/SKILL.md +41 -0
- package/agent-skills/packs/hive-dex-pool-analysis/evals/evals.json +27 -0
- package/agent-skills/packs/hive-dex-pool-analysis/references/workflow.md +42 -0
- package/agent-skills/packs/hive-market-research/SKILL.md +45 -0
- package/agent-skills/packs/hive-market-research/evals/evals.json +27 -0
- package/agent-skills/packs/hive-market-research/references/workflow.md +47 -0
- package/agent-skills/packs/hive-mcp/SKILL.md +224 -0
- package/agent-skills/packs/hive-mcp/evals/evals.json +38 -0
- package/agent-skills/packs/hive-mcp/references/client-install-matrix.md +83 -0
- package/agent-skills/packs/hive-network-infrastructure/SKILL.md +44 -0
- package/agent-skills/packs/hive-network-infrastructure/evals/evals.json +27 -0
- package/agent-skills/packs/hive-network-infrastructure/references/workflow.md +41 -0
- package/agent-skills/packs/hive-nft-research/SKILL.md +41 -0
- package/agent-skills/packs/hive-nft-research/evals/evals.json +27 -0
- package/agent-skills/packs/hive-nft-research/references/workflow.md +42 -0
- package/agent-skills/packs/hive-prediction-markets/SKILL.md +44 -0
- package/agent-skills/packs/hive-prediction-markets/evals/evals.json +27 -0
- package/agent-skills/packs/hive-prediction-markets/references/workflow.md +42 -0
- package/agent-skills/packs/hive-query/SKILL.md +98 -0
- package/agent-skills/packs/hive-query/evals/evals.json +38 -0
- package/agent-skills/packs/hive-query/references/root-mcp-workflow.md +54 -0
- package/agent-skills/packs/hive-security-risk/SKILL.md +42 -0
- package/agent-skills/packs/hive-security-risk/evals/evals.json +27 -0
- package/agent-skills/packs/hive-security-risk/references/workflow.md +46 -0
- package/agent-skills/packs/hive-solana-analysis/SKILL.md +42 -0
- package/agent-skills/packs/hive-solana-analysis/evals/evals.json +27 -0
- package/agent-skills/packs/hive-solana-analysis/references/workflow.md +42 -0
- package/agent-skills/packs/hive-token-diligence/SKILL.md +44 -0
- package/agent-skills/packs/hive-token-diligence/evals/evals.json +27 -0
- package/agent-skills/packs/hive-token-diligence/references/workflow.md +45 -0
- package/agent-skills/packs/hive-tool-discovery/SKILL.md +49 -0
- package/agent-skills/packs/hive-tool-discovery/evals/evals.json +38 -0
- package/agent-skills/packs/hive-tool-discovery/references/discovery-surfaces.md +62 -0
- package/agent-skills/packs/hive-wallet-investigation/SKILL.md +42 -0
- package/agent-skills/packs/hive-wallet-investigation/evals/evals.json +27 -0
- package/agent-skills/packs/hive-wallet-investigation/references/workflow.md +45 -0
- package/agent-skills/references/agents-routing.md +49 -0
- package/agent-skills/scripts/validate-agent-skills-package.mjs +178 -0
- package/agent-skills/skills.sh.json +40 -0
- package/bin/hive-mcp.js +33 -0
- package/build/{alias-INGXWFCG.js → alias-CZ3DEYHF.js} +3 -3
- package/build/api-client-I23XLSHU.js +28 -0
- package/build/auth-KKINNBXT.js +40 -0
- package/build/browser-auth-EEFGRHWY.js +9 -0
- package/build/{cache-US4LSZPI.js → cache-EGNMENNA.js} +3 -3
- package/build/chunk-2MYMHMBF.js +340 -0
- package/build/chunk-2MYMHMBF.js.map +1 -0
- package/build/chunk-2X3U4DFK.js +77369 -0
- package/build/chunk-2X3U4DFK.js.map +1 -0
- package/build/chunk-B6G222LS.js +265 -0
- package/build/chunk-B6G222LS.js.map +1 -0
- package/build/{chunk-WKVZVQTG.js → chunk-DYJBTKNR.js} +4 -4
- package/build/chunk-DYJBTKNR.js.map +1 -0
- package/build/chunk-IDZD2NVG.js +247 -0
- package/build/chunk-IDZD2NVG.js.map +1 -0
- package/build/chunk-IZTN7WFH.js +250 -0
- package/build/chunk-IZTN7WFH.js.map +1 -0
- package/build/{chunk-QMRVH5ZP.js → chunk-KBVPIZS4.js} +10 -2
- package/build/chunk-KGYBTXIN.js +86 -0
- package/build/chunk-KGYBTXIN.js.map +1 -0
- package/build/{chunk-X7ETBCBP.js → chunk-MPIUUE3T.js} +60 -272
- package/build/chunk-MPIUUE3T.js.map +1 -0
- package/build/chunk-PGBVNMNZ.js +127 -0
- package/build/chunk-PGBVNMNZ.js.map +1 -0
- package/build/chunk-QNCI4DEB.js +88 -0
- package/build/chunk-QNCI4DEB.js.map +1 -0
- package/build/chunk-RKICZ6DZ.js +497 -0
- package/build/chunk-RKICZ6DZ.js.map +1 -0
- package/build/chunk-UKHZIVDT.js +44 -0
- package/build/chunk-UKHZIVDT.js.map +1 -0
- package/build/{chunk-XQJ6PB2L.js → chunk-V77LO4RO.js} +1 -1
- package/build/chunk-V77LO4RO.js.map +1 -0
- package/build/{chunk-CP3FXEQA.js → chunk-XYBEFFZ3.js} +5 -6
- package/build/chunk-XYBEFFZ3.js.map +1 -0
- package/build/cli.js +134 -122
- package/build/cli.js.map +1 -1
- package/build/{completion-SBTSXTR3.js → completion-BELZL7ND.js} +55 -50
- package/build/completion-BELZL7ND.js.map +1 -0
- package/build/config-TDX4VUGW.js +58 -0
- package/build/{config-dir-IEOID7Q6.js → config-dir-V43W2WIA.js} +3 -3
- package/build/{doctor-7WZMCQC7.js → doctor-5K5UWHNX.js} +13 -13
- package/build/doctor-5K5UWHNX.js.map +1 -0
- package/build/{errors-U6UZWVSD.js → errors-E6MVUBNA.js} +3 -3
- package/build/format-TSFSI2K7.js +43 -0
- package/build/format-TSFSI2K7.js.map +1 -0
- package/build/{init-CAVIFVSH.js → init-YQ5NBICF.js} +2 -2
- package/build/init-all-6OWEQALB.js +274 -0
- package/build/init-all-6OWEQALB.js.map +1 -0
- package/build/mcpServer-AEX3RQ4U.js +20 -0
- package/build/mcpServer-AEX3RQ4U.js.map +1 -0
- package/build/{namespace-7SBV4G7R.js → namespace-PVHBFDW2.js} +3 -3
- package/build/namespace-PVHBFDW2.js.map +1 -0
- package/build/{open-FUXYIHFO.js → open-YUIJP37F.js} +6 -6
- package/build/open-YUIJP37F.js.map +1 -0
- package/build/{output-7PGQWJY2.js → output-IYJBFCYK.js} +3 -3
- package/build/output-IYJBFCYK.js.map +1 -0
- package/build/serve-KWNJK6EY.js +44 -0
- package/build/serve-KWNJK6EY.js.map +1 -0
- package/build/server.js +4749 -14332
- package/build/server.js.map +1 -1
- package/build/setup-YTUKMPNP.js +136 -0
- package/build/setup-YTUKMPNP.js.map +1 -0
- package/build/stdio.js +31 -0
- package/build/stdio.js.map +1 -0
- package/build/{telemetry-KNWMQURH.js → telemetry-5IPRKZBL.js} +4 -4
- package/build/telemetry-5IPRKZBL.js.map +1 -0
- package/build/{tools-XEGCLA4I.js → tools-PJHWFCAG.js} +15 -15
- package/build/uninstall-HWXEIP6K.js +115 -0
- package/build/uninstall-HWXEIP6K.js.map +1 -0
- package/build/{watch-A75SVIQ6.js → watch-KZ5EDZK3.js} +7 -7
- package/package.json +124 -24
- package/bin/hive.js +0 -25
- package/build/auth-77MKFFBQ.js +0 -233
- package/build/auth-77MKFFBQ.js.map +0 -1
- package/build/chunk-CP3FXEQA.js.map +0 -1
- package/build/chunk-DTUDM6HX.js +0 -3108
- package/build/chunk-DTUDM6HX.js.map +0 -1
- package/build/chunk-LBTLYTZS.js +0 -115
- package/build/chunk-LBTLYTZS.js.map +0 -1
- package/build/chunk-OK3LSM73.js +0 -22
- package/build/chunk-OK3LSM73.js.map +0 -1
- package/build/chunk-RRI526CJ.js +0 -212
- package/build/chunk-RRI526CJ.js.map +0 -1
- package/build/chunk-WKVZVQTG.js.map +0 -1
- package/build/chunk-X7ETBCBP.js.map +0 -1
- package/build/chunk-XQJ6PB2L.js.map +0 -1
- package/build/completion-SBTSXTR3.js.map +0 -1
- package/build/config-2VDB2ZHE.js +0 -100
- package/build/config-2VDB2ZHE.js.map +0 -1
- package/build/doctor-7WZMCQC7.js.map +0 -1
- package/build/format-CVLLK6GD.js +0 -75
- package/build/format-CVLLK6GD.js.map +0 -1
- package/build/open-FUXYIHFO.js.map +0 -1
- package/build/version-3TZ3U4IR.js +0 -9
- /package/build/{alias-INGXWFCG.js.map → alias-CZ3DEYHF.js.map} +0 -0
- /package/build/{chunk-QMRVH5ZP.js.map → api-client-I23XLSHU.js.map} +0 -0
- /package/build/{config-dir-IEOID7Q6.js.map → auth-KKINNBXT.js.map} +0 -0
- /package/build/{errors-U6UZWVSD.js.map → browser-auth-EEFGRHWY.js.map} +0 -0
- /package/build/{cache-US4LSZPI.js.map → cache-EGNMENNA.js.map} +0 -0
- /package/build/{namespace-7SBV4G7R.js.map → chunk-KBVPIZS4.js.map} +0 -0
- /package/build/{output-7PGQWJY2.js.map → config-TDX4VUGW.js.map} +0 -0
- /package/build/{telemetry-KNWMQURH.js.map → config-dir-V43W2WIA.js.map} +0 -0
- /package/build/{version-3TZ3U4IR.js.map → errors-E6MVUBNA.js.map} +0 -0
- /package/build/{init-CAVIFVSH.js.map → init-YQ5NBICF.js.map} +0 -0
- /package/build/{tools-XEGCLA4I.js.map → tools-PJHWFCAG.js.map} +0 -0
- /package/build/{watch-A75SVIQ6.js.map → watch-KZ5EDZK3.js.map} +0 -0
|
@@ -87,18 +87,6 @@ var NAMESPACE = [
|
|
|
87
87
|
description: "Quote currency (default: usd)"
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
name: "gas",
|
|
93
|
-
description: "Gas prices by chain",
|
|
94
|
-
tool: "goldrush_get_gas_prices",
|
|
95
|
-
args: {
|
|
96
|
-
chainName: {
|
|
97
|
-
flag: "--chain <name>",
|
|
98
|
-
description: "Chain name",
|
|
99
|
-
required: true
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
90
|
}
|
|
103
91
|
]
|
|
104
92
|
},
|
|
@@ -155,7 +143,7 @@ var NAMESPACE = [
|
|
|
155
143
|
{
|
|
156
144
|
name: "balance",
|
|
157
145
|
description: "Wallet total balance",
|
|
158
|
-
tool: "
|
|
146
|
+
tool: "get_wallet_balance",
|
|
159
147
|
args: {
|
|
160
148
|
id: {
|
|
161
149
|
flag: "--address <addr>",
|
|
@@ -167,7 +155,7 @@ var NAMESPACE = [
|
|
|
167
155
|
{
|
|
168
156
|
name: "tokens",
|
|
169
157
|
description: "Token holdings",
|
|
170
|
-
tool: "
|
|
158
|
+
tool: "get_wallet_token_balances",
|
|
171
159
|
args: {
|
|
172
160
|
id: {
|
|
173
161
|
flag: "--address <addr>",
|
|
@@ -179,7 +167,7 @@ var NAMESPACE = [
|
|
|
179
167
|
{
|
|
180
168
|
name: "positions",
|
|
181
169
|
description: "DeFi positions",
|
|
182
|
-
tool: "
|
|
170
|
+
tool: "get_wallet_defi_positions",
|
|
183
171
|
args: {
|
|
184
172
|
id: {
|
|
185
173
|
flag: "--address <addr>",
|
|
@@ -202,18 +190,13 @@ var NAMESPACE = [
|
|
|
202
190
|
},
|
|
203
191
|
{
|
|
204
192
|
name: "history",
|
|
205
|
-
description: "
|
|
206
|
-
tool: "
|
|
193
|
+
description: "Wallet portfolio chart",
|
|
194
|
+
tool: "get_wallet_chart",
|
|
207
195
|
args: {
|
|
208
196
|
walletAddress: {
|
|
209
197
|
flag: "--address <addr>",
|
|
210
198
|
description: "Wallet address",
|
|
211
199
|
required: true
|
|
212
|
-
},
|
|
213
|
-
chainName: {
|
|
214
|
-
flag: "--chain <name>",
|
|
215
|
-
description: "Chain name",
|
|
216
|
-
required: true
|
|
217
200
|
}
|
|
218
201
|
}
|
|
219
202
|
}
|
|
@@ -309,173 +292,61 @@ var NAMESPACE = [
|
|
|
309
292
|
]
|
|
310
293
|
},
|
|
311
294
|
{
|
|
312
|
-
name: "
|
|
313
|
-
description: "
|
|
295
|
+
name: "social",
|
|
296
|
+
description: "Social media analytics \u2014 sentiment, influencers, trending topics",
|
|
314
297
|
commands: [
|
|
315
298
|
{
|
|
316
|
-
name: "
|
|
317
|
-
description: "
|
|
318
|
-
tool: "
|
|
319
|
-
args: {
|
|
320
|
-
symbol: {
|
|
321
|
-
flag: "--symbol <ticker>",
|
|
322
|
-
description: "Stock ticker (e.g. AAPL)",
|
|
323
|
-
required: true
|
|
324
|
-
}
|
|
325
|
-
}
|
|
326
|
-
},
|
|
327
|
-
{
|
|
328
|
-
name: "candles",
|
|
329
|
-
description: "Historical OHLCV",
|
|
330
|
-
tool: "finnhub_get_stock_candles",
|
|
331
|
-
args: {
|
|
332
|
-
symbol: {
|
|
333
|
-
flag: "--symbol <ticker>",
|
|
334
|
-
description: "Stock ticker",
|
|
335
|
-
required: true
|
|
336
|
-
},
|
|
337
|
-
resolution: {
|
|
338
|
-
flag: "--resolution <r>",
|
|
339
|
-
description: "Timeframe (1,5,15,30,60,D,W,M)",
|
|
340
|
-
required: true
|
|
341
|
-
},
|
|
342
|
-
from: {
|
|
343
|
-
flag: "--from <timestamp>",
|
|
344
|
-
description: "Start UNIX timestamp",
|
|
345
|
-
required: true
|
|
346
|
-
},
|
|
347
|
-
to: {
|
|
348
|
-
flag: "--to <timestamp>",
|
|
349
|
-
description: "End UNIX timestamp",
|
|
350
|
-
required: true
|
|
351
|
-
}
|
|
352
|
-
}
|
|
299
|
+
name: "trending",
|
|
300
|
+
description: "Trending topics",
|
|
301
|
+
tool: "get_trending_topics"
|
|
353
302
|
},
|
|
354
303
|
{
|
|
355
|
-
name: "
|
|
356
|
-
description: "
|
|
357
|
-
tool: "
|
|
304
|
+
name: "metrics",
|
|
305
|
+
description: "Topic engagement metrics",
|
|
306
|
+
tool: "get_topic_metrics",
|
|
358
307
|
args: {
|
|
359
|
-
|
|
360
|
-
flag: "--
|
|
361
|
-
description: "
|
|
308
|
+
topic: {
|
|
309
|
+
flag: "--topic <name>",
|
|
310
|
+
description: "Topic or coin name",
|
|
362
311
|
required: true
|
|
363
312
|
}
|
|
364
313
|
}
|
|
365
314
|
},
|
|
366
315
|
{
|
|
367
|
-
name: "
|
|
368
|
-
description: "
|
|
369
|
-
tool: "
|
|
316
|
+
name: "creators",
|
|
317
|
+
description: "Top content creators",
|
|
318
|
+
tool: "get_topic_creators",
|
|
370
319
|
args: {
|
|
371
|
-
|
|
372
|
-
flag: "--
|
|
373
|
-
description: "
|
|
320
|
+
topic: {
|
|
321
|
+
flag: "--topic <name>",
|
|
322
|
+
description: "Topic or coin name",
|
|
374
323
|
required: true
|
|
375
324
|
}
|
|
376
325
|
}
|
|
377
326
|
},
|
|
378
327
|
{
|
|
379
|
-
name: "
|
|
380
|
-
description: "
|
|
381
|
-
tool: "
|
|
328
|
+
name: "posts",
|
|
329
|
+
description: "Social media posts",
|
|
330
|
+
tool: "get_topic_posts",
|
|
382
331
|
args: {
|
|
383
|
-
|
|
384
|
-
flag: "--
|
|
385
|
-
description: "
|
|
332
|
+
topic: {
|
|
333
|
+
flag: "--topic <name>",
|
|
334
|
+
description: "Topic or coin name",
|
|
386
335
|
required: true
|
|
387
336
|
}
|
|
388
337
|
}
|
|
389
338
|
},
|
|
390
339
|
{
|
|
391
340
|
name: "news",
|
|
392
|
-
description: "
|
|
393
|
-
tool: "
|
|
341
|
+
description: "Topic news articles",
|
|
342
|
+
tool: "get_topic_news",
|
|
394
343
|
args: {
|
|
395
|
-
|
|
396
|
-
flag: "--
|
|
397
|
-
description: "
|
|
344
|
+
topic: {
|
|
345
|
+
flag: "--topic <name>",
|
|
346
|
+
description: "Topic or coin name",
|
|
398
347
|
required: true
|
|
399
|
-
},
|
|
400
|
-
from: {
|
|
401
|
-
flag: "--from <date>",
|
|
402
|
-
description: "From date (YYYY-MM-DD)",
|
|
403
|
-
required: true
|
|
404
|
-
},
|
|
405
|
-
to: {
|
|
406
|
-
flag: "--to <date>",
|
|
407
|
-
description: "To date (YYYY-MM-DD)",
|
|
408
|
-
required: true
|
|
409
|
-
}
|
|
410
|
-
}
|
|
411
|
-
}
|
|
412
|
-
]
|
|
413
|
-
},
|
|
414
|
-
{
|
|
415
|
-
name: "macro",
|
|
416
|
-
description: "Economic calendar, market status, and country data",
|
|
417
|
-
commands: [
|
|
418
|
-
{
|
|
419
|
-
name: "calendar",
|
|
420
|
-
description: "Economic event calendar",
|
|
421
|
-
tool: "finnhub_get_economic_calendar"
|
|
422
|
-
},
|
|
423
|
-
{
|
|
424
|
-
name: "market-status",
|
|
425
|
-
description: "Market open/close status",
|
|
426
|
-
tool: "finnhub_get_market_status",
|
|
427
|
-
args: {
|
|
428
|
-
exchange: {
|
|
429
|
-
flag: "--exchange <code>",
|
|
430
|
-
description: "Exchange code (e.g., US, L, T)",
|
|
431
|
-
required: true
|
|
432
|
-
}
|
|
433
|
-
}
|
|
434
|
-
},
|
|
435
|
-
{
|
|
436
|
-
name: "countries",
|
|
437
|
-
description: "Supported countries list",
|
|
438
|
-
tool: "finnhub_get_country_list"
|
|
439
|
-
}
|
|
440
|
-
]
|
|
441
|
-
},
|
|
442
|
-
{
|
|
443
|
-
name: "prediction",
|
|
444
|
-
description: "Prediction markets \u2014 events, traders, outcomes (Polymarket, Kalshi)",
|
|
445
|
-
commands: [
|
|
446
|
-
{
|
|
447
|
-
name: "categories",
|
|
448
|
-
description: "Prediction market categories",
|
|
449
|
-
tool: "codex_prediction_categories"
|
|
450
|
-
},
|
|
451
|
-
{
|
|
452
|
-
name: "events",
|
|
453
|
-
description: "Filter prediction events",
|
|
454
|
-
tool: "codex_filter_prediction_events",
|
|
455
|
-
args: {
|
|
456
|
-
phrase: {
|
|
457
|
-
flag: "--query <text>",
|
|
458
|
-
description: "Search phrase",
|
|
459
|
-
required: false
|
|
460
348
|
}
|
|
461
349
|
}
|
|
462
|
-
},
|
|
463
|
-
{
|
|
464
|
-
name: "markets",
|
|
465
|
-
description: "Filter prediction markets",
|
|
466
|
-
tool: "codex_filter_prediction_markets",
|
|
467
|
-
args: {
|
|
468
|
-
phrase: {
|
|
469
|
-
flag: "--query <text>",
|
|
470
|
-
description: "Search phrase",
|
|
471
|
-
required: false
|
|
472
|
-
}
|
|
473
|
-
}
|
|
474
|
-
},
|
|
475
|
-
{
|
|
476
|
-
name: "traders",
|
|
477
|
-
description: "Top prediction market traders",
|
|
478
|
-
tool: "codex_filter_prediction_traders"
|
|
479
350
|
}
|
|
480
351
|
]
|
|
481
352
|
},
|
|
@@ -622,65 +493,54 @@ var NAMESPACE = [
|
|
|
622
493
|
commands: [
|
|
623
494
|
{
|
|
624
495
|
name: "balances",
|
|
625
|
-
description: "Token balances
|
|
626
|
-
tool: "
|
|
496
|
+
description: "Token balances",
|
|
497
|
+
tool: "alchemy_get_tokens_by_wallet",
|
|
627
498
|
args: {
|
|
628
|
-
|
|
499
|
+
address: {
|
|
629
500
|
flag: "--address <addr>",
|
|
630
501
|
description: "Wallet address",
|
|
631
502
|
required: true
|
|
632
|
-
}
|
|
503
|
+
},
|
|
504
|
+
network: { flag: "--network <name>", description: "Alchemy network" }
|
|
633
505
|
}
|
|
634
506
|
},
|
|
635
507
|
{
|
|
636
508
|
name: "transfers",
|
|
637
|
-
description: "
|
|
638
|
-
tool: "
|
|
509
|
+
description: "Asset transfers",
|
|
510
|
+
tool: "alchemy_get_asset_transfers",
|
|
639
511
|
args: {
|
|
640
|
-
|
|
512
|
+
fromAddress: {
|
|
641
513
|
flag: "--address <addr>",
|
|
642
|
-
description: "
|
|
514
|
+
description: "Sender wallet address",
|
|
643
515
|
required: true
|
|
644
516
|
},
|
|
645
|
-
|
|
646
|
-
flag: "--chain <name>",
|
|
647
|
-
description: "Chain name",
|
|
648
|
-
required: true
|
|
649
|
-
}
|
|
517
|
+
network: { flag: "--network <name>", description: "Alchemy network" }
|
|
650
518
|
}
|
|
651
519
|
},
|
|
652
520
|
{
|
|
653
521
|
name: "transactions",
|
|
654
522
|
description: "Recent transactions",
|
|
655
|
-
tool: "
|
|
523
|
+
tool: "moralis_get_wallet_history",
|
|
656
524
|
args: {
|
|
657
|
-
|
|
525
|
+
address: {
|
|
658
526
|
flag: "--address <addr>",
|
|
659
527
|
description: "Wallet address",
|
|
660
528
|
required: true
|
|
661
529
|
},
|
|
662
|
-
|
|
663
|
-
flag: "--chain <name>",
|
|
664
|
-
description: "Chain name",
|
|
665
|
-
required: true
|
|
666
|
-
}
|
|
530
|
+
chain: { flag: "--chain <name>", description: "Chain name" }
|
|
667
531
|
}
|
|
668
532
|
},
|
|
669
533
|
{
|
|
670
534
|
name: "approvals",
|
|
671
535
|
description: "Token approval audit",
|
|
672
|
-
tool: "
|
|
536
|
+
tool: "goplus_check_approval_security_v2",
|
|
673
537
|
args: {
|
|
674
|
-
|
|
538
|
+
address: {
|
|
675
539
|
flag: "--address <addr>",
|
|
676
540
|
description: "Wallet address",
|
|
677
541
|
required: true
|
|
678
542
|
},
|
|
679
|
-
|
|
680
|
-
flag: "--chain <name>",
|
|
681
|
-
description: "Chain name",
|
|
682
|
-
required: true
|
|
683
|
-
}
|
|
543
|
+
chain_id: { flag: "--chain-id <id>", description: "EVM chain ID" }
|
|
684
544
|
}
|
|
685
545
|
}
|
|
686
546
|
]
|
|
@@ -728,33 +588,16 @@ var NAMESPACE = [
|
|
|
728
588
|
{
|
|
729
589
|
name: "chains",
|
|
730
590
|
description: "List supported chains",
|
|
731
|
-
tool: "
|
|
732
|
-
},
|
|
733
|
-
{
|
|
734
|
-
name: "gas",
|
|
735
|
-
description: "Gas prices",
|
|
736
|
-
tool: "goldrush_get_gas_prices",
|
|
737
|
-
args: {
|
|
738
|
-
chainName: {
|
|
739
|
-
flag: "--chain <name>",
|
|
740
|
-
description: "Chain name",
|
|
741
|
-
required: true
|
|
742
|
-
}
|
|
743
|
-
}
|
|
591
|
+
tool: "get_networks_list"
|
|
744
592
|
},
|
|
745
593
|
{
|
|
746
|
-
name: "block",
|
|
747
|
-
description: "
|
|
748
|
-
tool: "
|
|
594
|
+
name: "block-number",
|
|
595
|
+
description: "Latest EVM block number",
|
|
596
|
+
tool: "tenderly_get_block_number",
|
|
749
597
|
args: {
|
|
750
|
-
|
|
751
|
-
flag: "--
|
|
752
|
-
description: "
|
|
753
|
-
required: true
|
|
754
|
-
},
|
|
755
|
-
blockHeight: {
|
|
756
|
-
flag: "--height <n>",
|
|
757
|
-
description: "Block height",
|
|
598
|
+
network_id: {
|
|
599
|
+
flag: "--network-id <id>",
|
|
600
|
+
description: "EVM chain ID",
|
|
758
601
|
required: true
|
|
759
602
|
}
|
|
760
603
|
}
|
|
@@ -762,15 +605,10 @@ var NAMESPACE = [
|
|
|
762
605
|
{
|
|
763
606
|
name: "resolve",
|
|
764
607
|
description: "Resolve ENS/DNS name",
|
|
765
|
-
tool: "
|
|
608
|
+
tool: "moralis_resolve_ens_domain",
|
|
766
609
|
args: {
|
|
767
|
-
|
|
768
|
-
flag: "--
|
|
769
|
-
description: "Chain name",
|
|
770
|
-
required: true
|
|
771
|
-
},
|
|
772
|
-
walletAddress: {
|
|
773
|
-
flag: "--address <addr>",
|
|
610
|
+
domain: {
|
|
611
|
+
flag: "--domain <name>",
|
|
774
612
|
description: "Address or ENS name",
|
|
775
613
|
required: true
|
|
776
614
|
}
|
|
@@ -807,56 +645,6 @@ var NAMESPACE = [
|
|
|
807
645
|
}
|
|
808
646
|
}
|
|
809
647
|
]
|
|
810
|
-
},
|
|
811
|
-
{
|
|
812
|
-
name: "altdata",
|
|
813
|
-
description: "Alternative data \u2014 insider trades, earnings, IPOs, sentiment",
|
|
814
|
-
commands: [
|
|
815
|
-
{
|
|
816
|
-
name: "insider",
|
|
817
|
-
description: "Insider trading transactions",
|
|
818
|
-
tool: "finnhub_get_insider_transactions",
|
|
819
|
-
args: {
|
|
820
|
-
symbol: {
|
|
821
|
-
flag: "--symbol <ticker>",
|
|
822
|
-
description: "Stock ticker",
|
|
823
|
-
required: true
|
|
824
|
-
}
|
|
825
|
-
}
|
|
826
|
-
},
|
|
827
|
-
{
|
|
828
|
-
name: "sentiment",
|
|
829
|
-
description: "Insider sentiment score",
|
|
830
|
-
tool: "finnhub_get_insider_sentiment",
|
|
831
|
-
args: {
|
|
832
|
-
symbol: {
|
|
833
|
-
flag: "--symbol <ticker>",
|
|
834
|
-
description: "Stock ticker",
|
|
835
|
-
required: true
|
|
836
|
-
},
|
|
837
|
-
from: {
|
|
838
|
-
flag: "--from <date>",
|
|
839
|
-
description: "From date (YYYY-MM-DD)",
|
|
840
|
-
required: true
|
|
841
|
-
},
|
|
842
|
-
to: {
|
|
843
|
-
flag: "--to <date>",
|
|
844
|
-
description: "To date (YYYY-MM-DD)",
|
|
845
|
-
required: true
|
|
846
|
-
}
|
|
847
|
-
}
|
|
848
|
-
},
|
|
849
|
-
{
|
|
850
|
-
name: "earnings",
|
|
851
|
-
description: "Earnings calendar",
|
|
852
|
-
tool: "finnhub_get_earnings_calendar"
|
|
853
|
-
},
|
|
854
|
-
{
|
|
855
|
-
name: "ipo",
|
|
856
|
-
description: "IPO calendar",
|
|
857
|
-
tool: "finnhub_get_ipo_calendar"
|
|
858
|
-
}
|
|
859
|
-
]
|
|
860
648
|
}
|
|
861
649
|
];
|
|
862
650
|
function resolveCommand(domain, subcommand) {
|
|
@@ -872,4 +660,4 @@ export {
|
|
|
872
660
|
resolveCommand,
|
|
873
661
|
getAllDomainCommands
|
|
874
662
|
};
|
|
875
|
-
//# sourceMappingURL=chunk-
|
|
663
|
+
//# sourceMappingURL=chunk-MPIUUE3T.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/namespace.ts"],"sourcesContent":["interface SubCommand {\n name: string;\n description: string;\n tool: string;\n args?: Record<\n string,\n { flag: string; description: string; required?: boolean }\n >;\n}\n\ninterface DomainCommand {\n name: string;\n description: string;\n commands: SubCommand[];\n}\n\nexport type { SubCommand, DomainCommand };\n\nexport const NAMESPACE: DomainCommand[] = [\n {\n name: \"market\",\n description: \"Crypto market data — prices, charts, rankings, stablecoins\",\n commands: [\n {\n name: \"price\",\n description: \"Get token price\",\n tool: \"get_price\",\n args: {\n ids: {\n flag: \"--ids <tokens>\",\n description: \"Token IDs (comma-separated)\",\n required: true,\n },\n vs_currencies: {\n flag: \"--vs <currencies>\",\n description: \"Target currencies\",\n required: true,\n },\n },\n },\n {\n name: \"top\",\n description: \"Top coins by market cap\",\n tool: \"get_coins_market_data\",\n args: {\n vs_currency: {\n flag: \"--vs <currency>\",\n description: \"Quote currency\",\n required: true,\n },\n per_page: { flag: \"--limit <n>\", description: \"Number of results\" },\n },\n },\n { name: \"trending\", description: \"Trending coins\", tool: \"get_trending\" },\n {\n name: \"global\",\n description: \"Global market stats\",\n tool: \"get_global_stats\",\n },\n {\n name: \"ohlc\",\n description: \"OHLC candle data\",\n tool: \"get_coin_ohlc\",\n args: {\n id: { flag: \"--id <coin>\", description: \"Coin ID\", required: true },\n vs_currency: {\n flag: \"--vs <currency>\",\n description: \"Quote currency (default: usd)\",\n },\n days: { flag: \"--days <n>\", description: \"Number of days\" },\n },\n },\n {\n name: \"chart\",\n description: \"Price chart data\",\n tool: \"get_coin_market_chart_range\",\n args: {\n id: { flag: \"--id <coin>\", description: \"Coin ID\", required: true },\n vs_currency: {\n flag: \"--vs <currency>\",\n description: \"Quote currency (default: usd)\",\n },\n from: {\n flag: \"--from <timestamp>\",\n description: \"Start UNIX timestamp\",\n required: true,\n },\n to: {\n flag: \"--to <timestamp>\",\n description: \"End UNIX timestamp\",\n required: true,\n },\n },\n },\n {\n name: \"gainers\",\n description: \"Top gainers and losers\",\n tool: \"get_gainers_losers\",\n args: {\n vs_currency: {\n flag: \"--vs <currency>\",\n description: \"Quote currency (default: usd)\",\n },\n },\n },\n ],\n },\n {\n name: \"defi\",\n description: \"DeFi protocol analytics — TVL, fees, yields, bridges\",\n commands: [\n {\n name: \"tvl\",\n description: \"Protocol TVL\",\n tool: \"get_protocol_tvl\",\n args: {\n protocol: {\n flag: \"--protocol <name>\",\n description: \"Protocol slug\",\n required: true,\n },\n },\n },\n {\n name: \"protocols\",\n description: \"All DeFi protocols\",\n tool: \"get_defi_protocols\",\n },\n {\n name: \"fees\",\n description: \"Protocol fee data\",\n tool: \"get_protocol_fees\",\n args: {\n protocol: {\n flag: \"--protocol <name>\",\n description: \"Protocol slug\",\n required: true,\n },\n },\n },\n {\n name: \"yields\",\n description: \"Yield farming pools\",\n tool: \"get_yield_pools\",\n },\n { name: \"chains\", description: \"Chain TVL rankings\", tool: \"get_chains\" },\n {\n name: \"bridges\",\n description: \"Cross-chain bridges\",\n tool: \"defillama_get_bridges\",\n },\n ],\n },\n {\n name: \"portfolio\",\n description: \"Wallet portfolios — balances, DeFi positions, NFTs, history\",\n commands: [\n {\n name: \"balance\",\n description: \"Wallet total balance\",\n tool: \"get_wallet_balance\",\n args: {\n id: {\n flag: \"--address <addr>\",\n description: \"Wallet address\",\n required: true,\n },\n },\n },\n {\n name: \"tokens\",\n description: \"Token holdings\",\n tool: \"get_wallet_token_balances\",\n args: {\n id: {\n flag: \"--address <addr>\",\n description: \"Wallet address\",\n required: true,\n },\n },\n },\n {\n name: \"positions\",\n description: \"DeFi positions\",\n tool: \"get_wallet_defi_positions\",\n args: {\n id: {\n flag: \"--address <addr>\",\n description: \"Wallet address\",\n required: true,\n },\n },\n },\n {\n name: \"nfts\",\n description: \"NFT holdings\",\n tool: \"get_wallet_nft_collections\",\n args: {\n id: {\n flag: \"--address <addr>\",\n description: \"Wallet address\",\n required: true,\n },\n },\n },\n {\n name: \"history\",\n description: \"Wallet portfolio chart\",\n tool: \"get_wallet_chart\",\n args: {\n walletAddress: {\n flag: \"--address <addr>\",\n description: \"Wallet address\",\n required: true,\n },\n },\n },\n ],\n },\n {\n name: \"security\",\n description: \"Token and contract security — scans, approvals, simulations\",\n commands: [\n {\n name: \"scan\",\n description: \"Token security analysis\",\n tool: \"get_token_security\",\n args: {\n chain_id: {\n flag: \"--chain <id>\",\n description: \"Chain ID (1=ETH, 56=BSC)\",\n required: true,\n },\n contract_addresses: {\n flag: \"--address <addr>\",\n description: \"Token contract\",\n required: true,\n },\n },\n },\n {\n name: \"approve\",\n description: \"Audit token approvals\",\n tool: \"check_approval_security\",\n args: {\n chain_id: {\n flag: \"--chain <id>\",\n description: \"Chain ID\",\n required: true,\n },\n contract_addresses: {\n flag: \"--address <addr>\",\n description: \"Contract address\",\n required: true,\n },\n },\n },\n {\n name: \"simulate\",\n description: \"Simulate a transaction\",\n tool: \"simulate_evm_transaction\",\n args: {\n chain_id: {\n flag: \"--chain <id>\",\n description: \"Chain ID (1=ETH)\",\n required: true,\n },\n from: {\n flag: \"--from <addr>\",\n description: \"Sender address\",\n required: true,\n },\n to: {\n flag: \"--to <addr>\",\n description: \"Contract/recipient address\",\n required: true,\n },\n data: {\n flag: \"--data <hex>\",\n description: \"Transaction calldata (hex)\",\n },\n value: { flag: \"--value <wei>\", description: \"Value in wei\" },\n },\n },\n {\n name: \"rugpull\",\n description: \"Detect rug pull indicators\",\n tool: \"detect_rugpull\",\n args: {\n chain_id: {\n flag: \"--chain <id>\",\n description: \"Chain ID\",\n required: true,\n },\n contract_addresses: {\n flag: \"--address <addr>\",\n description: \"Contract\",\n required: true,\n },\n },\n },\n {\n name: \"hacks\",\n description: \"Recent DeFi hacks\",\n tool: \"defillama_get_hacks\",\n },\n ],\n },\n {\n name: \"social\",\n description:\n \"Social media analytics — sentiment, influencers, trending topics\",\n commands: [\n {\n name: \"trending\",\n description: \"Trending topics\",\n tool: \"get_trending_topics\",\n },\n {\n name: \"metrics\",\n description: \"Topic engagement metrics\",\n tool: \"get_topic_metrics\",\n args: {\n topic: {\n flag: \"--topic <name>\",\n description: \"Topic or coin name\",\n required: true,\n },\n },\n },\n {\n name: \"creators\",\n description: \"Top content creators\",\n tool: \"get_topic_creators\",\n args: {\n topic: {\n flag: \"--topic <name>\",\n description: \"Topic or coin name\",\n required: true,\n },\n },\n },\n {\n name: \"posts\",\n description: \"Social media posts\",\n tool: \"get_topic_posts\",\n args: {\n topic: {\n flag: \"--topic <name>\",\n description: \"Topic or coin name\",\n required: true,\n },\n },\n },\n {\n name: \"news\",\n description: \"Topic news articles\",\n tool: \"get_topic_news\",\n args: {\n topic: {\n flag: \"--topic <name>\",\n description: \"Topic or coin name\",\n required: true,\n },\n },\n },\n ],\n },\n {\n name: \"exchange\",\n description:\n \"Centralized exchange data — tickers, orderbooks, trades, funding\",\n commands: [\n {\n name: \"ticker\",\n description: \"Exchange ticker\",\n tool: \"get_ticker\",\n args: {\n exchange: {\n flag: \"--exchange <name>\",\n description: \"Exchange (binance, coinbase)\",\n required: true,\n },\n symbol: {\n flag: \"--symbol <pair>\",\n description: \"Trading pair (BTC/USDT)\",\n required: true,\n },\n },\n },\n {\n name: \"orderbook\",\n description: \"Order book depth\",\n tool: \"get_orderbook\",\n args: {\n exchange: {\n flag: \"--exchange <name>\",\n description: \"Exchange\",\n required: true,\n },\n symbol: {\n flag: \"--symbol <pair>\",\n description: \"Trading pair\",\n required: true,\n },\n },\n },\n {\n name: \"trades\",\n description: \"Recent trades\",\n tool: \"get_recent_trades\",\n args: {\n exchange: {\n flag: \"--exchange <name>\",\n description: \"Exchange\",\n required: true,\n },\n symbol: {\n flag: \"--symbol <pair>\",\n description: \"Trading pair\",\n required: true,\n },\n },\n },\n {\n name: \"funding\",\n description: \"Perpetual funding rates\",\n tool: \"get_funding_rate\",\n args: {\n exchange: {\n flag: \"--exchange <name>\",\n description: \"Exchange (binance, bybit)\",\n required: true,\n },\n symbol: {\n flag: \"--symbol <pair>\",\n description: \"Futures pair (e.g. BTC/USDT:USDT)\",\n required: true,\n },\n },\n },\n {\n name: \"list\",\n description: \"List all exchanges\",\n tool: \"get_exchanges\",\n },\n ],\n },\n {\n name: \"dex\",\n description: \"DEX analytics — pools, trending pairs, trades, volume\",\n commands: [\n {\n name: \"trending\",\n description: \"Trending DEX pools\",\n tool: \"get_trending_pools\",\n },\n {\n name: \"pools\",\n description: \"Pool search and filter\",\n tool: \"get_pools\",\n args: {\n network: {\n flag: \"--network <name>\",\n description: \"Network (eth, bsc, solana)\",\n required: true,\n },\n page: { flag: \"--page <n>\", description: \"Page number\" },\n },\n },\n {\n name: \"trades\",\n description: \"Token trading activity\",\n tool: \"get_token_trades\",\n args: {\n network: {\n flag: \"--network <name>\",\n description: \"Network (eth, bsc, solana)\",\n },\n pool_address: { flag: \"--pool <addr>\", description: \"Pool address\" },\n },\n },\n {\n name: \"volume\",\n description: \"DEX volume rankings\",\n tool: \"get_dex_volumes\",\n },\n {\n name: \"pairs\",\n description: \"Token trading pairs\",\n tool: \"get_token_pools\",\n args: {\n network: {\n flag: \"--network <name>\",\n description: \"Network\",\n required: true,\n },\n token_address: {\n flag: \"--token <addr>\",\n description: \"Token address\",\n required: true,\n },\n },\n },\n ],\n },\n {\n name: \"wallet\",\n description:\n \"On-chain wallet data — balances, transfers, transactions, approvals\",\n commands: [\n {\n name: \"balances\",\n description: \"Token balances\",\n tool: \"alchemy_get_tokens_by_wallet\",\n args: {\n address: {\n flag: \"--address <addr>\",\n description: \"Wallet address\",\n required: true,\n },\n network: { flag: \"--network <name>\", description: \"Alchemy network\" },\n },\n },\n {\n name: \"transfers\",\n description: \"Asset transfers\",\n tool: \"alchemy_get_asset_transfers\",\n args: {\n fromAddress: {\n flag: \"--address <addr>\",\n description: \"Sender wallet address\",\n required: true,\n },\n network: { flag: \"--network <name>\", description: \"Alchemy network\" },\n },\n },\n {\n name: \"transactions\",\n description: \"Recent transactions\",\n tool: \"moralis_get_wallet_history\",\n args: {\n address: {\n flag: \"--address <addr>\",\n description: \"Wallet address\",\n required: true,\n },\n chain: { flag: \"--chain <name>\", description: \"Chain name\" },\n },\n },\n {\n name: \"approvals\",\n description: \"Token approval audit\",\n tool: \"goplus_check_approval_security_v2\",\n args: {\n address: {\n flag: \"--address <addr>\",\n description: \"Wallet address\",\n required: true,\n },\n chain_id: { flag: \"--chain-id <id>\", description: \"EVM chain ID\" },\n },\n },\n ],\n },\n {\n name: \"nft\",\n description: \"NFT analytics — collections, markets, trends, holders\",\n commands: [\n {\n name: \"trending\",\n description: \"Trending NFT collections\",\n tool: \"get_nft_market_trends\",\n },\n {\n name: \"collection\",\n description: \"Collection details\",\n tool: \"get_nft_collection\",\n args: {\n slug: { flag: \"--slug <name>\", description: \"Collection slug\" },\n },\n },\n {\n name: \"markets\",\n description: \"NFT marketplace data\",\n tool: \"get_nft_markets\",\n },\n {\n name: \"search\",\n description: \"Search NFT collections\",\n tool: \"search_nfts\",\n args: {\n query: {\n flag: \"--query <text>\",\n description: \"Search term\",\n required: true,\n },\n },\n },\n ],\n },\n {\n name: \"network\",\n description:\n \"Blockchain infrastructure — chains, gas, blocks, transactions\",\n commands: [\n {\n name: \"chains\",\n description: \"List supported chains\",\n tool: \"get_networks_list\",\n },\n {\n name: \"block-number\",\n description: \"Latest EVM block number\",\n tool: \"tenderly_get_block_number\",\n args: {\n network_id: {\n flag: \"--network-id <id>\",\n description: \"EVM chain ID\",\n required: true,\n },\n },\n },\n {\n name: \"resolve\",\n description: \"Resolve ENS/DNS name\",\n tool: \"moralis_resolve_ens_domain\",\n args: {\n domain: {\n flag: \"--domain <name>\",\n description: \"Address or ENS name\",\n required: true,\n },\n },\n },\n ],\n },\n {\n name: \"search\",\n description: \"Search across all data\",\n commands: [\n {\n name: \"tokens\",\n description: \"Search tokens\",\n tool: \"search_all\",\n args: {\n query: {\n flag: \"--query <text>\",\n description: \"Search term\",\n required: true,\n },\n },\n },\n {\n name: \"pools\",\n description: \"Search DEX pools\",\n tool: \"search_pools\",\n args: {\n query: {\n flag: \"--query <text>\",\n description: \"Search term\",\n required: true,\n },\n },\n },\n ],\n },\n];\n\nexport function resolveCommand(\n domain: string,\n subcommand: string,\n): SubCommand | undefined {\n const d = NAMESPACE.find((n) => n.name === domain);\n return d?.commands.find((c) => c.name === subcommand);\n}\n\nexport function getAllDomainCommands(): DomainCommand[] {\n return NAMESPACE;\n}\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { createRequire } from 'node:module'; const require = createRequire(import.meta.url);
|
|
2
|
+
|
|
3
|
+
// src/cli/browser-auth.ts
|
|
4
|
+
import { createServer } from "http";
|
|
5
|
+
import { randomBytes } from "crypto";
|
|
6
|
+
import { execFile } from "child_process";
|
|
7
|
+
import { platform } from "os";
|
|
8
|
+
function openBrowser(url) {
|
|
9
|
+
const plat = platform();
|
|
10
|
+
let cmd;
|
|
11
|
+
let args;
|
|
12
|
+
if (plat === "darwin") {
|
|
13
|
+
cmd = "open";
|
|
14
|
+
args = [url];
|
|
15
|
+
} else if (plat === "win32") {
|
|
16
|
+
cmd = "cmd";
|
|
17
|
+
args = ["/c", "start", "", url];
|
|
18
|
+
} else {
|
|
19
|
+
cmd = "xdg-open";
|
|
20
|
+
args = [url];
|
|
21
|
+
}
|
|
22
|
+
execFile(cmd, args, (err) => {
|
|
23
|
+
if (err) process.stderr.write(`
|
|
24
|
+
Open this URL manually:
|
|
25
|
+
${url}
|
|
26
|
+
|
|
27
|
+
`);
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
async function browserLogin(opts) {
|
|
31
|
+
const baseUrl = opts.baseUrl || "https://hiveintelligence.xyz";
|
|
32
|
+
const timeout = opts.timeout || 3e5;
|
|
33
|
+
const state = randomBytes(16).toString("hex");
|
|
34
|
+
return new Promise((resolve, reject) => {
|
|
35
|
+
let settled = false;
|
|
36
|
+
const server = createServer((req, res) => {
|
|
37
|
+
const url = new URL(req.url || "/", `http://localhost`);
|
|
38
|
+
if (url.pathname !== "/callback") {
|
|
39
|
+
res.writeHead(404);
|
|
40
|
+
res.end("Not found");
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
if (settled) {
|
|
44
|
+
res.writeHead(200);
|
|
45
|
+
res.end();
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
const key = url.searchParams.get("key");
|
|
49
|
+
const email = url.searchParams.get("email");
|
|
50
|
+
const returnedState = url.searchParams.get("state");
|
|
51
|
+
if (returnedState !== state) {
|
|
52
|
+
res.writeHead(403);
|
|
53
|
+
res.end("State mismatch \u2014 possible CSRF attack. Please try again.");
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
if (!key) {
|
|
57
|
+
res.writeHead(400);
|
|
58
|
+
res.end("Missing API key in callback");
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
settled = true;
|
|
62
|
+
res.writeHead(200, { "Content-Type": "text/html" });
|
|
63
|
+
res.end(`<!DOCTYPE html>
|
|
64
|
+
<html>
|
|
65
|
+
<head><title>Hive CLI \u2014 Authenticated</title>
|
|
66
|
+
<style>
|
|
67
|
+
body { font-family: -apple-system, BlinkMacSystemFont, sans-serif; display: flex; justify-content: center; align-items: center; height: 100vh; margin: 0; background: #0a0a0a; color: #fafafa; }
|
|
68
|
+
.card { text-align: center; padding: 2rem; }
|
|
69
|
+
h1 { font-size: 1.5rem; margin-bottom: 0.5rem; }
|
|
70
|
+
p { color: #888; }
|
|
71
|
+
</style>
|
|
72
|
+
</head>
|
|
73
|
+
<body>
|
|
74
|
+
<div class="card">
|
|
75
|
+
<h1>Authenticated</h1>
|
|
76
|
+
<p>You can close this tab and return to the terminal.</p>
|
|
77
|
+
</div>
|
|
78
|
+
</body>
|
|
79
|
+
</html>`);
|
|
80
|
+
clearTimeout(timer);
|
|
81
|
+
server.close();
|
|
82
|
+
resolve({ key, email: email || "", state: returnedState });
|
|
83
|
+
});
|
|
84
|
+
server.listen(0, "127.0.0.1", () => {
|
|
85
|
+
const addr = server.address();
|
|
86
|
+
if (!addr || typeof addr === "string") {
|
|
87
|
+
reject(new Error("Failed to start local server"));
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
const port = addr.port;
|
|
91
|
+
const loginUrl = new URL("/auth/cli", baseUrl);
|
|
92
|
+
loginUrl.searchParams.set("callback_port", String(port));
|
|
93
|
+
loginUrl.searchParams.set("state", state);
|
|
94
|
+
process.stderr.write(`
|
|
95
|
+
Opening browser to sign in...
|
|
96
|
+
`);
|
|
97
|
+
process.stderr.write(
|
|
98
|
+
`If the browser doesn't open, visit:
|
|
99
|
+
${loginUrl.toString()}
|
|
100
|
+
|
|
101
|
+
`
|
|
102
|
+
);
|
|
103
|
+
openBrowser(loginUrl.toString());
|
|
104
|
+
});
|
|
105
|
+
const timer = setTimeout(() => {
|
|
106
|
+
if (settled) return;
|
|
107
|
+
settled = true;
|
|
108
|
+
server.close();
|
|
109
|
+
reject(
|
|
110
|
+
new Error(
|
|
111
|
+
"Login timed out after 5 minutes. Run: hive auth login --manual"
|
|
112
|
+
)
|
|
113
|
+
);
|
|
114
|
+
}, timeout);
|
|
115
|
+
server.on("error", (err) => {
|
|
116
|
+
if (settled) return;
|
|
117
|
+
settled = true;
|
|
118
|
+
clearTimeout(timer);
|
|
119
|
+
reject(err);
|
|
120
|
+
});
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export {
|
|
125
|
+
browserLogin
|
|
126
|
+
};
|
|
127
|
+
//# sourceMappingURL=chunk-PGBVNMNZ.js.map
|