@0xinsider/mcp 3.6.1 → 3.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +58 -22
- package/dist/constants.d.ts +1 -1
- package/dist/constants.js +1 -1
- package/dist/product-cli/index.d.ts.map +1 -1
- package/dist/product-cli/index.js +162 -26
- package/dist/product-cli/index.js.map +1 -1
- package/dist/product-cli/operations.d.ts +24 -0
- package/dist/product-cli/operations.d.ts.map +1 -0
- package/dist/product-cli/operations.js +222 -0
- package/dist/product-cli/operations.js.map +1 -0
- package/dist/prompts/index.js +2 -2
- package/dist/sdk/client.d.ts +75 -160
- package/dist/sdk/client.d.ts.map +1 -1
- package/dist/sdk/client.js +122 -220
- package/dist/sdk/client.js.map +1 -1
- package/dist/sdk/errors.d.ts +17 -6
- package/dist/sdk/errors.d.ts.map +1 -1
- package/dist/sdk/errors.js +30 -6
- package/dist/sdk/errors.js.map +1 -1
- package/dist/sdk/index.d.ts +5 -27
- package/dist/sdk/index.d.ts.map +1 -1
- package/dist/sdk/index.js +3 -2
- package/dist/sdk/index.js.map +1 -1
- package/dist/sdk/pagination.d.ts +3 -3
- package/dist/sdk/pagination.js +2 -2
- package/dist/sdk/schema.d.ts +481 -215
- package/dist/sdk/schema.d.ts.map +1 -1
- package/dist/sdk/stream.d.ts.map +1 -1
- package/dist/sdk/stream.js +3 -2
- package/dist/sdk/stream.js.map +1 -1
- package/dist/sdk/webhooks.d.ts +8 -60
- package/dist/sdk/webhooks.d.ts.map +1 -1
- package/dist/sdk/webhooks.js.map +1 -1
- package/dist/tools/explore-markets.js +4 -4
- package/dist/tools/explore-markets.js.map +1 -1
- package/dist/tools/get-insider-radar.js +1 -1
- package/dist/tools/get-insider-radar.js.map +1 -1
- package/dist/tools/get-leaderboard.d.ts.map +1 -1
- package/dist/tools/get-leaderboard.js +5 -14
- package/dist/tools/get-leaderboard.js.map +1 -1
- package/dist/tools/get-market-flow.js +1 -1
- package/dist/tools/get-trader-pnl.js +3 -3
- package/dist/tools/get-trader-pnl.js.map +1 -1
- package/dist/tools/get-trader.js +3 -3
- package/dist/tools/get-trending-wallets.js +1 -1
- package/dist/tools/get-whale-trades.js +3 -3
- package/dist/tools/get-whale-trades.js.map +1 -1
- package/dist/tools/pick-of-the-day.js +2 -2
- package/dist/tools/read-parity.d.ts.map +1 -1
- package/dist/tools/read-parity.js +17 -15
- package/dist/tools/read-parity.js.map +1 -1
- package/dist/tools/trader-reads.js +1 -1
- package/package.json +6 -6
package/README.md
CHANGED
|
@@ -42,12 +42,25 @@ crate `oxinsider`) and the Node.js and TypeScript client
|
|
|
42
42
|
`get_pick_of_the_day` and its archive use the account's published access. Pro opens
|
|
43
43
|
five selections in total: the designated free selection plus the first four other
|
|
44
44
|
selections in publication order. Max opens every available daily selection, up to
|
|
45
|
-
twenty. Use each stable `pick_id` and preserve the returned order.
|
|
45
|
+
twenty-five. Use each stable `pick_id` and preserve the returned order.
|
|
46
46
|
|
|
47
47
|
For an automated entry from a current pick, require a matching, unexpired returned
|
|
48
48
|
authorization and honor its maximum price and any stricter local limits. Quote a
|
|
49
49
|
current executable book for the actual stake. An authorization does not guarantee a fill.
|
|
50
50
|
|
|
51
|
+
## Upgrade to 3.7.0
|
|
52
|
+
|
|
53
|
+
Version 3.7 adds CLI commands for reads that only `api call` reached:
|
|
54
|
+
`games list`, `games get <event_slug>`, `market holders <condition_id>`,
|
|
55
|
+
`market candles <condition_id>`, `markets sharp-flows`,
|
|
56
|
+
`traders context|categories|grade-at <wallet>`, `large-positions list`,
|
|
57
|
+
`edge-hunter` and `pick archive`. `api list` prints every operation `api call`
|
|
58
|
+
runs, with its path and query parameter names, and an unknown operation id now
|
|
59
|
+
names the closest ones. `api call` also runs the two batch reads,
|
|
60
|
+
`batchGetTraders` and `batchGetMarketFlow`, with `--body '<json>'`, and the
|
|
61
|
+
`listWebhooks`, `getWebhook` and `getTraderExportSnapshot` reads the MCP tools
|
|
62
|
+
already serve. Every existing command, alias and MCP tool is unchanged.
|
|
63
|
+
|
|
51
64
|
## Upgrade to 3.5.0
|
|
52
65
|
|
|
53
66
|
Version 3.5 adds ten tools for `/api/v1` reads that had none:
|
|
@@ -100,6 +113,15 @@ category-evidence clocks remain independent. The same data producer serves the
|
|
|
100
113
|
Max website board. Admission, ordering, the existing tools and the three views
|
|
101
114
|
stay compatible. Nullable quotes remain unavailable rather than becoming zero.
|
|
102
115
|
|
|
116
|
+
`get_edge_hunter` also takes `admission: "most_held_48h"`, with
|
|
117
|
+
`view: "observations"` and `cohort: "wider_holder"` only. It returns the
|
|
118
|
+
most-held selection instead of the default one: per sport, up to 8 wider_holder
|
|
119
|
+
markets kicking off within 48 hours, most graded holders first, then volume, then
|
|
120
|
+
soonest kickoff, at most 4 per event. The selection is recomputed on every
|
|
121
|
+
refresh. Every row's `admitted_by` is `most_held_48h`, and the response echoes
|
|
122
|
+
`admission`. Any other view or cohort returns 400. Omit it for the default
|
|
123
|
+
selection, which is unchanged.
|
|
124
|
+
|
|
103
125
|
The four legacy REST URLs remain HTTP 410 with code and reason `endpoint_retired`.
|
|
104
126
|
Migrate to the matching Edge Hunter view and restart pagination at page one.
|
|
105
127
|
|
|
@@ -169,7 +191,7 @@ Both remote HTTP and stdio expose 55 read-only tools from the Rust canonical reg
|
|
|
169
191
|
- `get_large_trade_counterparty_makers` — Get large trade counterparty makers (group: large_trades)
|
|
170
192
|
<!-- generated-mcp-catalog:end -->
|
|
171
193
|
|
|
172
|
-
The canonical suspicious-trade tools are `get_suspicious_trades` and `get_suspicious_trade`; the older `get_insider_radar` and `get_insider_radar_flag` stay live as deprecated aliases on the deprecated `/api/v1/insider-radar` paths, and `get_smart_money_flows` stays live as a deprecated alias of `get_sharp_money_flows`.
|
|
194
|
+
The canonical suspicious-trade tools are `get_suspicious_trades` and `get_suspicious_trade`; the older `get_insider_radar` and `get_insider_radar_flag` stay live as deprecated aliases on the deprecated `/api/v1/insider-radar` paths, and `get_smart_money_flows` stays live as a deprecated alias of `get_sharp_money_flows`. Every deprecated alias tool (`get_whale_trades`, `get_whale_trade`, `get_whale_trades_history`, `get_market_intel`, `batch_get_market_intel`, `get_smart_money_flows`, `get_insider_radar`, `get_insider_radar_flag`, `get_platforms`) is removed on its 2027-02-01 sunset (#29351); move to the canonical tool before then.
|
|
173
195
|
|
|
174
196
|
## Quick Start
|
|
175
197
|
|
|
@@ -302,28 +324,28 @@ hand. Markers are not used here because an HTML comment inside a table breaks it
|
|
|
302
324
|
|
|
303
325
|
| Tool | Description |
|
|
304
326
|
|------|-------------|
|
|
305
|
-
| `get_trader` | Look up a trader by wallet address or username — grade, P&L, win rate, strategy,
|
|
327
|
+
| `get_trader` | Look up a trader by wallet address or username — grade, P&L, win rate, strategy, category records |
|
|
306
328
|
| `batch_get_traders` | Look up 1-25 traders in one call with per-item results and batch-item quota |
|
|
307
|
-
| `get_whale_trades` | Recent large trades with a 0-1 review score (`review_score`; `signal_score` is its deprecated spelling) and persisted suspicion facts; filterable by size/category/grade/suspicious_only/min_market_volume_share, sortable by `market_volume_share`; `since` (a `wt_` id) returns only the trades recorded after it, for polling |
|
|
308
|
-
| `get_whale_trade` | Read one whale trade by wt_ ID or raw whale_alerts.id, including persisted suspicion facts |
|
|
309
|
-
| `get_whale_trades_history` | Replay historical whale trades with cursor, market, trader, category, grade, suspicious_only, platform, market-share, and time filters, sortable by `market_volume_share` |
|
|
329
|
+
| `get_whale_trades` | Deprecated alias of `get_large_trades` until its 2027-02-01 sunset. Recent large trades with a 0-1 review score (`review_score`; `signal_score` is its deprecated spelling) and persisted suspicion facts; filterable by size/category/grade/suspicious_only/min_market_volume_share, sortable by `market_volume_share`; `since` (a `wt_` id) returns only the trades recorded after it, for polling |
|
|
330
|
+
| `get_whale_trade` | Deprecated alias of `get_large_trade` until its 2027-02-01 sunset. Read one whale trade by wt_ ID or raw whale_alerts.id, including persisted suspicion facts |
|
|
331
|
+
| `get_whale_trades_history` | Deprecated alias of `get_large_trades_history` until its 2027-02-01 sunset. Replay historical whale trades with cursor, market, trader, category, grade, suspicious_only, platform, market-share, and time filters, sortable by `market_volume_share` |
|
|
310
332
|
| `get_leaderboard` | Top-ranked traders (S/A/B grades) with optional category/strategy filters |
|
|
311
333
|
| `search_markets` | Search prediction markets by keyword, with cursor pagination (`cursor`, `has_more`, `next_cursor`) |
|
|
312
334
|
| `explore_markets` | Browse whale-active markets with facets and grouped discovery entries |
|
|
313
335
|
| `get_market_flow` | One market's large-trade flow, buy and sell volumes, and top graded positions |
|
|
314
336
|
| `batch_get_market_flow` | Read flow and top positions for 1-25 markets in one call |
|
|
315
|
-
| `get_market_intel` | Deprecated alias of `get_market_flow`; kept live |
|
|
316
|
-
| `batch_get_market_intel` | Deprecated alias of `batch_get_market_flow` (1-25 condition IDs per call); kept live |
|
|
337
|
+
| `get_market_intel` | Deprecated alias of `get_market_flow`; kept live until its 2027-02-01 sunset |
|
|
338
|
+
| `batch_get_market_intel` | Deprecated alias of `batch_get_market_flow` (1-25 condition IDs per call); kept live until its 2027-02-01 sunset |
|
|
317
339
|
| `get_sharp_money_flows` | Ranked sharp-money flow discovery across markets (timeframe, category, platform, min-grade, direction filters) |
|
|
318
|
-
| `get_smart_money_flows` | Deprecated alias of `get_sharp_money_flows` (byte-identical); kept
|
|
340
|
+
| `get_smart_money_flows` | Deprecated alias of `get_sharp_money_flows` (byte-identical); kept until its 2027-02-01 sunset |
|
|
319
341
|
| `get_market_snapshot` | Live market-card snapshot with outcomes, liquidity, sports context, and freshness state |
|
|
320
342
|
| `get_positions` | Current positions with trader, market, value, side, P&L, and freshness context; a `consistency=snapshot` page carries its `snapshot` (`as_of`, `expires_at`, `row_count`) |
|
|
321
343
|
| `get_position_timeline` | Per-market trader fills with running amount and average entry price |
|
|
322
344
|
| `get_position_timeline_by_id` | Per-market trader fills using an internal trader ID alias |
|
|
323
345
|
| `get_suspicious_trades` | Stored trades whose recorded suspicion score meets the live flag threshold (`severity=watch` returns none: no live watch policy exists) |
|
|
324
346
|
| `get_suspicious_trade` | Read one suspicious trade by rf_ ID or raw numeric `whale_alerts.id` |
|
|
325
|
-
| `get_insider_radar` | Deprecated alias of `get_suspicious_trades`, kept live on the deprecated `/api/v1/insider-radar` path |
|
|
326
|
-
| `get_insider_radar_flag` | Deprecated alias of `get_suspicious_trade`, kept live on the deprecated `/api/v1/insider-radar/{id}` path |
|
|
347
|
+
| `get_insider_radar` | Deprecated alias of `get_suspicious_trades`, kept live until its 2027-02-01 sunset on the deprecated `/api/v1/insider-radar` path |
|
|
348
|
+
| `get_insider_radar_flag` | Deprecated alias of `get_suspicious_trade`, kept live until its 2027-02-01 sunset on the deprecated `/api/v1/insider-radar/{id}` path |
|
|
327
349
|
| `get_event_replay_since` | Durable public event replay after an opaque cursor |
|
|
328
350
|
| `list_webhooks` | Read webhook endpoints owned by the authenticated API-key user |
|
|
329
351
|
| `get_webhook` | Read one webhook endpoint by ID |
|
|
@@ -332,7 +354,7 @@ hand. Markers are not used here because an HTML comment inside a table breaks it
|
|
|
332
354
|
| `get_monthly_report_snapshot` | Read a monthly whale-activity report snapshot |
|
|
333
355
|
| `get_trader_export_snapshot` | Read trader export metadata without starting an export job |
|
|
334
356
|
| `get_coverage` | Which V1 reads the API serves for Polymarket: grade, P&L, strategy, timeline, large trades, suspicious trades, market snapshot |
|
|
335
|
-
| `get_platforms` | Deprecated alias of `get_coverage
|
|
357
|
+
| `get_platforms` | Deprecated alias of `get_coverage` until its 2027-02-01 sunset. Provider capability matrix: which platforms support grade, P&L, strategy, timeline, large trades (and the deprecated `whale_signal` spelling), suspicious trades (and the deprecated `insider_radar` spelling), and market snapshot |
|
|
336
358
|
|
|
337
359
|
## Explore result metadata
|
|
338
360
|
|
|
@@ -369,12 +391,12 @@ values are unchanged, so any JSON parser reads the text as before.
|
|
|
369
391
|
|
|
370
392
|
Once configured, ask your AI agent:
|
|
371
393
|
|
|
372
|
-
- "Who are the top
|
|
373
|
-
- "What are whales buying in
|
|
394
|
+
- "Who are the top sports and esports traders on Polymarket right now?"
|
|
395
|
+
- "What are whales buying in NBA markets?"
|
|
374
396
|
- "Analyze trader 0x1234... — is their strategy worth following?"
|
|
375
397
|
- "Analyze trader swisstony — is their strategy worth following?"
|
|
376
|
-
- "Are there any suspicious
|
|
377
|
-
- "Generate a sharp money report for
|
|
398
|
+
- "Are there any suspicious trades on tonight's Lakers game?"
|
|
399
|
+
- "Generate a sharp money report for Premier League markets"
|
|
378
400
|
|
|
379
401
|
## Environment Variables
|
|
380
402
|
|
|
@@ -386,7 +408,7 @@ Once configured, ask your AI agent:
|
|
|
386
408
|
## Rate Limits
|
|
387
409
|
|
|
388
410
|
<!-- generated-rate-limits:start -->
|
|
389
|
-
100 requests per minute per user. Pro includes 500,000 and Max includes 2,000,000 authenticated requests per UTC calendar month. Over the plan's included requests, pay as you go bills USD 0.20 per 1,000, up to four times the included allowance, when it is turned on at https://0xinsider.com/developers; without it, and at that ceiling with it, the next request answers `429` with `error.reason` `monthly_quota_exceeded` until the month resets (from October 1, 2026). The server returns actionable error messages when limits are hit, and every
|
|
411
|
+
100 requests per minute per user on Pro, 200 on Max. Pro includes 500,000 and Max includes 2,000,000 authenticated requests per UTC calendar month. Over the plan's included requests, pay as you go bills USD 0.20 per 1,000, up to four times the included allowance, when it is turned on at https://0xinsider.com/developers; without it, and at that ceiling with it, the next request answers `429` with `error.reason` `monthly_quota_exceeded` until the month resets (from October 1, 2026). The server returns actionable error messages when limits are hit, and every counted response carries `X-Monthly-Quota-Limit`, `X-Monthly-Quota-Remaining` and `X-Monthly-Quota-Reset`. Over remote HTTP, only `tools/call` is counted: `initialize`, `ping`, `tools/list`, notifications and the `405` answers to GET, HEAD and DELETE are free.
|
|
390
412
|
<!-- generated-rate-limits:end -->
|
|
391
413
|
|
|
392
414
|
## Timeouts
|
|
@@ -426,14 +448,21 @@ older Node runtime can keep `@0xinsider/mcp@1.3.1` while upgrading Node.
|
|
|
426
448
|
0xinsider markets explore --limit 10 --query category=basketball --json
|
|
427
449
|
0xinsider market snapshot <condition-id> --json
|
|
428
450
|
0xinsider market flow <condition-id> --json
|
|
451
|
+
0xinsider market holders <condition-id> --limit 50 --json
|
|
452
|
+
0xinsider market candles <condition-id> --query resolution=1w --json
|
|
453
|
+
0xinsider games list --query sport=Basketball --json
|
|
454
|
+
0xinsider games get <event-slug> --json
|
|
429
455
|
0xinsider traders get <wallet-address> --json
|
|
430
456
|
0xinsider traders pnl <wallet-address> --json
|
|
457
|
+
0xinsider traders context <wallet-address> --json
|
|
431
458
|
0xinsider leaderboard list --json
|
|
432
|
-
0xinsider
|
|
459
|
+
0xinsider large-trades list --json
|
|
433
460
|
0xinsider positions list --json
|
|
434
461
|
0xinsider pick today --json
|
|
435
462
|
0xinsider reports daily --json
|
|
436
463
|
0xinsider usage --json
|
|
464
|
+
0xinsider api list --table
|
|
465
|
+
0xinsider api call getCoverage --json
|
|
437
466
|
0xinsider logout
|
|
438
467
|
```
|
|
439
468
|
|
|
@@ -479,8 +508,14 @@ preserves already fetched pages in an incomplete JSON result, and prints its
|
|
|
479
508
|
resume point on stderr. `--query name=value` supplies API filters;
|
|
480
509
|
`reports daily` defaults to the current UTC date; override it with
|
|
481
510
|
`--query date=YYYY-MM-DD`. `--path name=value` supplies path parameters for `api call <operation-id>`.
|
|
482
|
-
|
|
483
|
-
|
|
511
|
+
`api list` prints every operation that escape hatch runs, with its method, path,
|
|
512
|
+
path and query parameter names and the first-class command that reads it, as JSON
|
|
513
|
+
or with `--table`; it works offline without a credential. It runs JSON GET
|
|
514
|
+
operations, the `listWebhooks`, `getWebhook` and `getTraderExportSnapshot` reads
|
|
515
|
+
the MCP tools serve, and the read-only batch POSTs `batchGetTraders` and
|
|
516
|
+
`batchGetMarketFlow`, whose request body is `--body '<json>'`. Mutations, other
|
|
517
|
+
webhook administration, other exports, streams and Markdown routes are refused.
|
|
518
|
+
An unknown operation id names the closest registered ids.
|
|
484
519
|
|
|
485
520
|
Stored-session reads obtain current credentials for each page. A 401 permits
|
|
486
521
|
one refresh/reload and one retry of that same page; earlier pages are preserved.
|
|
@@ -492,8 +527,9 @@ scope remain failures. A subscription lapse still fails paid data reads, while
|
|
|
492
527
|
`--timeout-ms` bounds each request including lock waits, refresh and SDK retries (default 30000,
|
|
493
528
|
maximum 300000). `--retries` is 0–3 (default 2); the SDK honors Retry-After within
|
|
494
529
|
that deadline. Ctrl-C cancels requests and polling. Stdout contains results;
|
|
495
|
-
progress and failures use stderr. `--help`, `--version` and
|
|
496
|
-
`completions bash|zsh|fish` work offline without a credential.
|
|
530
|
+
progress and failures use stderr. `--help`, `--version`, `api list` and
|
|
531
|
+
`completions bash|zsh|fish` work offline without a credential. Completions cover
|
|
532
|
+
each command, its verb and the operation id after `api call`. Load generated
|
|
497
533
|
completion text using your shell's normal completion configuration.
|
|
498
534
|
|
|
499
535
|
| Exit | Meaning |
|
package/dist/constants.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export declare const API_BASE_URL = "https://api.0xinsider.com";
|
|
2
2
|
export declare const SITE_URL = "https://0xinsider.com";
|
|
3
3
|
export declare const DEVELOPERS_URL = "https://0xinsider.com/developers";
|
|
4
|
-
export declare const VERSION = "3.
|
|
4
|
+
export declare const VERSION = "3.7.0";
|
|
5
5
|
export declare const PACKAGE_NAME = "@0xinsider/mcp";
|
|
6
6
|
export declare const SERVER_NAME = "0xinsider";
|
|
7
7
|
export declare const API_KEY_ENV_VAR = "OXINSIDER_API_KEY";
|
package/dist/constants.js
CHANGED
|
@@ -14,7 +14,7 @@ export const DEVELOPERS_URL = `${SITE_URL}/developers`;
|
|
|
14
14
|
// flow runs `cd mcp && npm ci` from a clean checkout, where `web/node_modules` need not
|
|
15
15
|
// exist.
|
|
16
16
|
// generated-package-version:start
|
|
17
|
-
export const VERSION = "3.
|
|
17
|
+
export const VERSION = "3.7.0";
|
|
18
18
|
// generated-package-version:end
|
|
19
19
|
export const PACKAGE_NAME = "@0xinsider/mcp";
|
|
20
20
|
export const SERVER_NAME = "0xinsider";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/product-cli/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/product-cli/index.ts"],"names":[],"mappings":"AA2FA,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAEnE;AAED,wBAAgB,WAAW,IAAI,MAAM,CAgDpC;AAuUD,wBAAsB,aAAa,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAiI1E"}
|
|
@@ -3,27 +3,44 @@ import { VERSION } from "../constants.js";
|
|
|
3
3
|
import { CliError } from "./errors.js";
|
|
4
4
|
import { login, logout } from "./oauth.js";
|
|
5
5
|
import { CliApiClient } from "./client.js";
|
|
6
|
+
import { cliOperations, isCliCallable, pathParameters, suggestOperations, } from "./operations.js";
|
|
6
7
|
const commands = {
|
|
7
8
|
"markets search": { operation: "searchMarkets", argument: "q", query: true },
|
|
8
9
|
"markets explore": { operation: "exploreMarkets" },
|
|
10
|
+
"markets sharp-flows": { operation: "listSharpMoneyFlows" },
|
|
9
11
|
"market snapshot": { operation: "getMarketSnapshot", argument: "condition_id" },
|
|
10
12
|
"market flow": { operation: "getMarketFlow", argument: "condition_id" },
|
|
11
|
-
//
|
|
12
|
-
//
|
|
13
|
-
// `object: "
|
|
14
|
-
"market intel": { operation: "
|
|
13
|
+
// Old spelling of `market flow` (#16312), kept working and left out of the
|
|
14
|
+
// help. Since SDK 0.32.0 dropped the `/intel` alias operation (#29350) it
|
|
15
|
+
// reads the canonical path, so its output is `object: "market_flow"`.
|
|
16
|
+
"market intel": { operation: "getMarketFlow", argument: "condition_id" },
|
|
17
|
+
// The body is the API's, passed through: the holders totals grow fields
|
|
18
|
+
// (#32150) without a CLI release.
|
|
19
|
+
"market holders": { operation: "getMarketHolders", argument: "condition_id" },
|
|
20
|
+
"market candles": { operation: "getMarketCandles", argument: "condition_id" },
|
|
21
|
+
"games list": { operation: "listGames" },
|
|
22
|
+
"games get": { operation: "getGame", argument: "event_slug" },
|
|
15
23
|
"traders get": { operation: "getTrader", argument: "address" },
|
|
16
24
|
"traders pnl": { operation: "getTraderPnl", argument: "address" },
|
|
25
|
+
"traders context": { operation: "getTraderContext", argument: "address" },
|
|
26
|
+
"traders categories": { operation: "getTraderCategoryRecords", argument: "address" },
|
|
27
|
+
"traders grade-at": { operation: "getTraderGradeAt", argument: "address" },
|
|
17
28
|
"leaderboard list": { operation: "listLeaderboard" },
|
|
18
29
|
"large-trades list": { operation: "listLargeTrades" },
|
|
19
|
-
//
|
|
20
|
-
|
|
30
|
+
// Old spelling of `large-trades list` (#16304), kept working; it reads the
|
|
31
|
+
// canonical path since SDK 0.32.0 (#29350), with the same list envelope.
|
|
32
|
+
"whales list": { operation: "listLargeTrades" },
|
|
33
|
+
"large-positions list": { operation: "listLargePositions" },
|
|
21
34
|
"positions list": { operation: "listPositions" },
|
|
35
|
+
"edge-hunter": { operation: "getEdgeHunter" },
|
|
22
36
|
"pick today": { operation: "getPickOfTheDay" },
|
|
37
|
+
"pick archive": { operation: "getPickOfTheDayArchive" },
|
|
23
38
|
"reports daily": { operation: "getDailyReportSnapshot" },
|
|
24
39
|
usage: { operation: "getUsage" },
|
|
25
40
|
whoami: { operation: "getAccountIdentity" },
|
|
26
41
|
};
|
|
42
|
+
/** Old spellings: they keep working but are not offered in `api list`. */
|
|
43
|
+
const aliases = new Set(["market intel", "whales list"]);
|
|
27
44
|
const commandMap = new Map(Object.entries(commands));
|
|
28
45
|
const roots = new Set([
|
|
29
46
|
...Object.keys(commands).map((command) => {
|
|
@@ -37,6 +54,13 @@ const roots = new Set([
|
|
|
37
54
|
"--version",
|
|
38
55
|
"-v",
|
|
39
56
|
]);
|
|
57
|
+
/** The first-class command that reads an operation, for `api list`. */
|
|
58
|
+
function commandFor(operation) {
|
|
59
|
+
for (const [name, command] of commandMap)
|
|
60
|
+
if (command.operation === operation && !aliases.has(name))
|
|
61
|
+
return command.argument ? `${name} <${command.argument}>` : name;
|
|
62
|
+
return null;
|
|
63
|
+
}
|
|
40
64
|
export function isProductCommand(value) {
|
|
41
65
|
return value !== undefined && roots.has(value);
|
|
42
66
|
}
|
|
@@ -47,15 +71,24 @@ export function productHelp() {
|
|
|
47
71
|
logout Revoke and remove only the stored CLI session
|
|
48
72
|
markets search <query> Search markets
|
|
49
73
|
markets explore Browse markets
|
|
74
|
+
markets sharp-flows Read markets ranked by sharp-money flow
|
|
50
75
|
market snapshot|flow <id> Read a market
|
|
76
|
+
market holders|candles <id> Read a market's holders or price candles
|
|
77
|
+
games list List covered games
|
|
78
|
+
games get <event_slug> Read one game and its markets
|
|
51
79
|
traders get|pnl <wallet> Read a wallet
|
|
80
|
+
traders context|categories|grade-at <wallet>
|
|
81
|
+
Read wallet context, category records, or the grade at --query as_of=TIME
|
|
52
82
|
leaderboard list Read the leaderboard
|
|
53
83
|
large-trades list Read large trades (was: whales list)
|
|
84
|
+
large-positions list Read large open positions
|
|
54
85
|
positions list Read positions
|
|
55
|
-
|
|
86
|
+
edge-hunter Read the Edge Hunter board (Max)
|
|
87
|
+
pick today|archive Read today's pick or the pick archive
|
|
56
88
|
reports daily Read the current UTC-day report (--query date=YYYY-MM-DD to select)
|
|
57
89
|
usage Read your API usage (OAuth usage scope)
|
|
58
|
-
api
|
|
90
|
+
api list List every operation api call runs, with its parameters
|
|
91
|
+
api call <operation-id> Call any listed read; an unknown id suggests the closest
|
|
59
92
|
completions bash|zsh|fish Print shell completion setup
|
|
60
93
|
--version Print the package version
|
|
61
94
|
|
|
@@ -64,6 +97,7 @@ Data options:
|
|
|
64
97
|
--table Tab-separated human view; metadata goes to stderr
|
|
65
98
|
--query name=value Add an API query parameter; repeat for array values
|
|
66
99
|
--path name=value Supply a path parameter for api call
|
|
100
|
+
--body JSON Request body for an api call batch read (POST)
|
|
67
101
|
--limit N / --cursor VALUE Set a page size or starting cursor
|
|
68
102
|
--pages N Follow at most N pages (1-100); bound reached exits 8
|
|
69
103
|
--timeout-ms N Deadline per request including retries (1-300000; default 30000)
|
|
@@ -119,6 +153,7 @@ function parse(args) {
|
|
|
119
153
|
positionals: [],
|
|
120
154
|
query: {},
|
|
121
155
|
path: {},
|
|
156
|
+
body: undefined,
|
|
122
157
|
pages: 1,
|
|
123
158
|
timeoutMs: 30_000,
|
|
124
159
|
retries: 2,
|
|
@@ -167,6 +202,20 @@ function parse(args) {
|
|
|
167
202
|
result.query.cursor = value;
|
|
168
203
|
break;
|
|
169
204
|
}
|
|
205
|
+
case "--body": {
|
|
206
|
+
const value = args[++i];
|
|
207
|
+
if (value === undefined)
|
|
208
|
+
throw new CliError(2, "--body requires a JSON value.");
|
|
209
|
+
try {
|
|
210
|
+
result.body = JSON.parse(value);
|
|
211
|
+
}
|
|
212
|
+
catch (error) {
|
|
213
|
+
throw new CliError(2, "--body is not valid JSON.", { cause: error });
|
|
214
|
+
}
|
|
215
|
+
if (typeof result.body !== "object" || result.body === null)
|
|
216
|
+
throw new CliError(2, "--body must be a JSON object or array.");
|
|
217
|
+
break;
|
|
218
|
+
}
|
|
170
219
|
case "--pages":
|
|
171
220
|
result.pages = integer(args[++i], arg, 1, 100);
|
|
172
221
|
break;
|
|
@@ -210,15 +259,26 @@ function selectOperation(options) {
|
|
|
210
259
|
if (args[0] === "api" && args[1] === "call") {
|
|
211
260
|
if (args.length !== 3)
|
|
212
261
|
throw new CliError(2, "Use api call <operation-id> with --path and --query parameters.");
|
|
213
|
-
const
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
throw new CliError(2,
|
|
262
|
+
const id = args[2] ?? "";
|
|
263
|
+
const found = API_CLIENT_OPERATIONS.find((item) => item.operationId === id);
|
|
264
|
+
if (!found) {
|
|
265
|
+
const close = suggestOperations(id, API_CLIENT_OPERATIONS.filter(isCliCallable).map((item) => item.operationId));
|
|
266
|
+
throw new CliError(2, `Unknown operation id ${JSON.stringify(id)}.${close.length > 0 ? ` Did you mean ${close.join(", ")}?` : ""} Run "0xinsider api list" for every operation api call runs.`);
|
|
218
267
|
}
|
|
268
|
+
if (!isCliCallable(found))
|
|
269
|
+
throw new CliError(2, `${found.operationId} is not a read api call runs: it refuses writes, webhook administration, streams, MCP, exports and Markdown. Run "0xinsider api list" for the operations it runs.`);
|
|
270
|
+
if ((found.method === "GET") !== (options.body === undefined))
|
|
271
|
+
throw new CliError(2, found.method === "GET"
|
|
272
|
+
? `${found.operationId} is a GET and takes no --body.`
|
|
273
|
+
: `${found.operationId} is a batch read: pass its request body with --body '<json>'.`);
|
|
219
274
|
operation = found.operationId;
|
|
220
275
|
}
|
|
276
|
+
else if (args[0] === "api") {
|
|
277
|
+
throw new CliError(2, "Use api list, or api call <operation-id> with --path, --query and, for a batch read, --body.");
|
|
278
|
+
}
|
|
221
279
|
else {
|
|
280
|
+
if (options.body !== undefined)
|
|
281
|
+
throw new CliError(2, "--body belongs to api call.");
|
|
222
282
|
const two = `${args[0]} ${args[1]}`;
|
|
223
283
|
const key = commandMap.has(two) ? two : args[0];
|
|
224
284
|
if (key === undefined)
|
|
@@ -245,29 +305,97 @@ function selectOperation(options) {
|
|
|
245
305
|
const contract = API_CLIENT_OPERATIONS.find((item) => item.operationId === operation);
|
|
246
306
|
if (!contract)
|
|
247
307
|
throw new CliError(6, "The CLI command has no SDK operation.");
|
|
248
|
-
const names =
|
|
249
|
-
const name = match[1];
|
|
250
|
-
if (name === undefined)
|
|
251
|
-
throw new CliError(6, "The SDK operation has an invalid path parameter.");
|
|
252
|
-
return name;
|
|
253
|
-
});
|
|
308
|
+
const names = pathParameters(contract.path);
|
|
254
309
|
if (names.some((name) => !options.path[name]) ||
|
|
255
310
|
Object.keys(options.path).some((name) => !names.includes(name))) {
|
|
256
311
|
throw new CliError(2, `Required path parameters: ${names.join(", ") || "none"}.`);
|
|
257
312
|
}
|
|
258
313
|
return operation;
|
|
259
314
|
}
|
|
315
|
+
function listOperations(human) {
|
|
316
|
+
const operations = cliOperations(commandFor);
|
|
317
|
+
if (!human) {
|
|
318
|
+
console.log(JSON.stringify({ object: "cli_operations", data: operations }));
|
|
319
|
+
return;
|
|
320
|
+
}
|
|
321
|
+
const columns = [
|
|
322
|
+
"operation_id",
|
|
323
|
+
"method",
|
|
324
|
+
"path",
|
|
325
|
+
"path_parameters",
|
|
326
|
+
"query_parameters",
|
|
327
|
+
"command",
|
|
328
|
+
];
|
|
329
|
+
console.log(columns.join("\t"));
|
|
330
|
+
for (const operation of operations)
|
|
331
|
+
console.log(columns
|
|
332
|
+
.map((column) => {
|
|
333
|
+
const value = operation[column];
|
|
334
|
+
return Array.isArray(value) ? value.join(",") : (value ?? "");
|
|
335
|
+
})
|
|
336
|
+
.join("\t"));
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
339
|
+
* Completion words by position: the command root, its verb, and the
|
|
340
|
+
* operation id after `api call`. Generated from the command table and the
|
|
341
|
+
* operation registry, so a new command or operation completes without an edit.
|
|
342
|
+
*/
|
|
343
|
+
function completionWords() {
|
|
344
|
+
const verbs = new Map([
|
|
345
|
+
["api", ["list", "call"]],
|
|
346
|
+
["completions", ["bash", "zsh", "fish"]],
|
|
347
|
+
]);
|
|
348
|
+
for (const name of commandMap.keys()) {
|
|
349
|
+
const [root, verb] = name.split(" ");
|
|
350
|
+
if (root === undefined || verb === undefined)
|
|
351
|
+
continue;
|
|
352
|
+
verbs.set(root, [...(verbs.get(root) ?? []), verb]);
|
|
353
|
+
}
|
|
354
|
+
return {
|
|
355
|
+
roots: [...roots]
|
|
356
|
+
.filter((word) => !word.startsWith("-"))
|
|
357
|
+
.concat(["init", "serve", "help"])
|
|
358
|
+
.join(" "),
|
|
359
|
+
verbs: [...verbs].map(([root, words]) => [root, words.join(" ")]),
|
|
360
|
+
operations: cliOperations(commandFor)
|
|
361
|
+
.map((operation) => operation.operation_id)
|
|
362
|
+
.join(" "),
|
|
363
|
+
};
|
|
364
|
+
}
|
|
260
365
|
function completions(shell) {
|
|
261
|
-
const words =
|
|
262
|
-
.filter((word) => !word.startsWith("-"))
|
|
263
|
-
.concat(["init", "serve", "help"])
|
|
264
|
-
.join(" ");
|
|
366
|
+
const { roots: words, verbs, operations } = completionWords();
|
|
265
367
|
if (shell === "bash")
|
|
266
|
-
console.log(`
|
|
368
|
+
console.log(`_0xinsider() {
|
|
369
|
+
local cur="\${COMP_WORDS[COMP_CWORD]}" words=""
|
|
370
|
+
if [ "$COMP_CWORD" -eq 1 ]; then
|
|
371
|
+
words='${words}'
|
|
372
|
+
elif [ "$COMP_CWORD" -eq 2 ]; then
|
|
373
|
+
case "\${COMP_WORDS[1]}" in
|
|
374
|
+
${verbs.map(([root, list]) => ` ${root}) words='${list}' ;;`).join("\n")}
|
|
375
|
+
esac
|
|
376
|
+
elif [ "$COMP_CWORD" -eq 3 ] && [ "\${COMP_WORDS[1]}" = api ] && [ "\${COMP_WORDS[2]}" = call ]; then
|
|
377
|
+
words='${operations}'
|
|
378
|
+
fi
|
|
379
|
+
COMPREPLY=($(compgen -W "$words" -- "$cur"))
|
|
380
|
+
}
|
|
381
|
+
complete -F _0xinsider 0xinsider 0xinsider-mcp`);
|
|
267
382
|
else if (shell === "zsh")
|
|
268
|
-
console.log(`#compdef 0xinsider 0xinsider-mcp
|
|
383
|
+
console.log(`#compdef 0xinsider 0xinsider-mcp
|
|
384
|
+
case $CURRENT in
|
|
385
|
+
2) compadd -- ${words} ;;
|
|
386
|
+
3) case $words[2] in
|
|
387
|
+
${verbs.map(([root, list]) => ` ${root}) compadd -- ${list} ;;`).join("\n")}
|
|
388
|
+
esac ;;
|
|
389
|
+
4) [[ $words[2] == api && $words[3] == call ]] && compadd -- ${operations} ;;
|
|
390
|
+
esac`);
|
|
269
391
|
else if (shell === "fish")
|
|
270
|
-
console.log(
|
|
392
|
+
console.log(["0xinsider", "0xinsider-mcp"]
|
|
393
|
+
.flatMap((program) => [
|
|
394
|
+
`complete -c ${program} -f -n '__fish_use_subcommand' -a '${words}'`,
|
|
395
|
+
...verbs.map(([root, list]) => `complete -c ${program} -f -n '__fish_seen_subcommand_from ${root}; and not __fish_seen_subcommand_from ${list}' -a '${list}'`),
|
|
396
|
+
`complete -c ${program} -f -n '__fish_seen_subcommand_from api; and __fish_seen_subcommand_from call; and test (count (commandline -opc)) -eq 3' -a '${operations}'`,
|
|
397
|
+
])
|
|
398
|
+
.join("\n"));
|
|
271
399
|
else
|
|
272
400
|
throw new CliError(2, "Choose completions bash, zsh, or fish.");
|
|
273
401
|
}
|
|
@@ -301,12 +429,20 @@ export async function runProductCli(args) {
|
|
|
301
429
|
emit(await (args[0] === "login" ? login(controller.signal) : logout(controller.signal)), options.table);
|
|
302
430
|
return;
|
|
303
431
|
}
|
|
432
|
+
if (options.positionals[0] === "api" && options.positionals[1] === "list") {
|
|
433
|
+
if (options.positionals.length !== 2 ||
|
|
434
|
+
args.some((arg) => arg.startsWith("--") && !["--json", "--table"].includes(arg)))
|
|
435
|
+
throw new CliError(2, "api list accepts only --json or --table.");
|
|
436
|
+
listOperations(options.table);
|
|
437
|
+
return;
|
|
438
|
+
}
|
|
304
439
|
const operation = selectOperation(options);
|
|
305
440
|
const client = new CliApiClient(options.timeoutMs, options.retries);
|
|
306
441
|
const request = {
|
|
307
442
|
path: options.path,
|
|
308
443
|
query: options.query,
|
|
309
444
|
signal: controller.signal,
|
|
445
|
+
...(options.body === undefined ? {} : { body: options.body }),
|
|
310
446
|
};
|
|
311
447
|
if (options.pages === 1) {
|
|
312
448
|
emit(await client.call(operation, request), options.table);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/product-cli/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/product-cli/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { API_CLIENT_OPERATIONS, type ApiOperationId } from "#sdk";
|
|
2
|
+
type ApiOperation = (typeof API_CLIENT_OPERATIONS)[number];
|
|
3
|
+
/**
|
|
4
|
+
* Whether `api call` may run an operation: a JSON GET outside webhook
|
|
5
|
+
* administration, streams, MCP, exports and Markdown, one of the catalog
|
|
6
|
+
* reads above, or a read-only POST batch. Every other write stays refused.
|
|
7
|
+
*/
|
|
8
|
+
export declare function isCliCallable(operation: ApiOperation): boolean;
|
|
9
|
+
export interface CliOperation {
|
|
10
|
+
readonly operation_id: ApiOperationId;
|
|
11
|
+
readonly method: ApiOperation["method"];
|
|
12
|
+
readonly path: string;
|
|
13
|
+
readonly path_parameters: readonly string[];
|
|
14
|
+
readonly query_parameters: readonly string[];
|
|
15
|
+
readonly body: boolean;
|
|
16
|
+
readonly command: string | null;
|
|
17
|
+
}
|
|
18
|
+
export declare function pathParameters(path: string): string[];
|
|
19
|
+
/** Every operation `api call` accepts, in registry order. */
|
|
20
|
+
export declare function cliOperations(commandFor: (id: ApiOperationId) => string | null): CliOperation[];
|
|
21
|
+
/** Up to 3 callable ids closest to an unknown one, nearest first. */
|
|
22
|
+
export declare function suggestOperations(input: string, candidates: readonly string[]): string[];
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=operations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/product-cli/operations.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EAErB,KAAK,cAAc,EAEpB,MAAM,MAAM,CAAC;AAEd,KAAK,YAAY,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAyL3D;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,YAAY,GAAG,OAAO,CAI9D;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,YAAY,EAAE,cAAc,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAIrD;AAMD,6DAA6D;AAC7D,wBAAgB,aAAa,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,cAAc,KAAK,MAAM,GAAG,IAAI,GAAG,YAAY,EAAE,CAY/F;AAsBD,qEAAqE;AACrE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAYxF"}
|