@blockrun/llm 1.13.0 → 1.15.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 CHANGED
@@ -63,15 +63,16 @@ console.log(result.response); // '4'
63
63
 
64
64
  | Model ID | Context | Best For |
65
65
  |----------|---------|----------|
66
- | `nvidia/deepseek-v4-pro` | 1M | Flagship reasoningMMLU-Pro 87.5, GPQA 90.1, SWE-bench 80.6, LiveCodeBench 93.5 |
67
- | `nvidia/deepseek-v4-flash` | 1M | ~5× faster than V4 Pro — chat, summarization, light reasoning (weaker factual recall) |
66
+ | `nvidia/deepseek-v4-flash` | 1M | DeepSeek V4 Flash 284B / 13B active MoE, ~5× faster than V4 Pro. Best free chat / summarization / light reasoning |
68
67
  | `nvidia/nemotron-3-nano-omni-30b-a3b-reasoning` | 256K | Only vision-capable free model — text + images + video (≤2 min) + audio (≤1 hr) |
69
68
  | `nvidia/qwen3-next-80b-a3b-thinking` | 131K | 116 tok/s reasoning with thinking mode |
70
69
  | `nvidia/mistral-small-4-119b` | 131K | 114 tok/s — fastest free chat |
71
- | `nvidia/glm-4.7` | 131K | 237 tok/s — GLM-4.7 with thinking mode |
72
70
  | `nvidia/llama-4-maverick` | 131K | Meta Llama 4 Maverick MoE |
73
71
  | `nvidia/qwen3-coder-480b` | 131K | Coding-optimised 480B MoE |
74
- | `nvidia/deepseek-v3.2` | 131K | Legacy V3.2auto-upgrades to V4 Pro via fallback |
72
+ | `nvidia/gpt-oss-120b` | 128K | OpenAI open-weight 120B 123 tok/s. Hidden from `/v1/models` for privacy but direct calls still work |
73
+ | `nvidia/gpt-oss-20b` | 128K | OpenAI open-weight 20B — 155 tok/s. Hidden from `/v1/models` but direct calls still work |
74
+
75
+ > Need V4-Pro-class reasoning? Use the paid `deepseek/deepseek-v4-pro` ($0.50/$1.00 with the 75% promo through 2026-05-31) — `nvidia/deepseek-v4-pro` is currently hidden because NVIDIA's NIM deployment is hung; backend MODEL_REDIRECTS forwards calls to V4 Flash.
75
76
 
76
77
  > Note: `nvidia/gpt-oss-120b` and `nvidia/gpt-oss-20b` were retired 2026-04-28 — NVIDIA's free build.nvidia.com tier reserves the right to use prompts/outputs for service improvement, which conflicts with our data-privacy policy.
77
78
 
@@ -249,10 +250,17 @@ Released 2026-04-23 — first fully retrained base since GPT-4.5. 1M context, 12
249
250
  | `google/gemini-2.5-flash-lite` | $0.10/M | $0.40/M |
250
251
 
251
252
  ### DeepSeek
252
- | Model | Input Price | Output Price |
253
- |-------|-------------|--------------|
254
- | `deepseek/deepseek-chat` | $0.28/M | $0.42/M |
255
- | `deepseek/deepseek-reasoner` | $0.28/M | $0.42/M |
253
+
254
+ V4 family launched 2026-04-24. DeepSeek upstream now serves the legacy
255
+ `deepseek-chat` / `deepseek-reasoner` aliases as V4 Flash non-thinking /
256
+ thinking modes. V4 Pro is the new flagship paid SKU — 1.6T MoE / 49B active,
257
+ 1M context, MMLU-Pro 87.5, GPQA 90.1, SWE-bench 80.6, LiveCodeBench 93.5.
258
+
259
+ | Model | Input Price | Output Price | Context | Notes |
260
+ |-------|-------------|--------------|---------|-------|
261
+ | `deepseek/deepseek-v4-pro` | $0.50/M | $1.00/M | 1M | V4 flagship — strongest open-weight reasoner. **75% off until 2026-05-31** (list $2.00/$4.00) |
262
+ | `deepseek/deepseek-chat` | $0.20/M | $0.40/M | 1M | V4 Flash non-thinking (paid endpoint with 5MB request bodies; same upstream as `nvidia/deepseek-v4-flash`) |
263
+ | `deepseek/deepseek-reasoner` | $0.20/M | $0.40/M | 1M | V4 Flash thinking (same upstream as `deepseek-chat`, thinking enabled by default) |
256
264
 
257
265
  ### xAI Grok
258
266
  | Model | Input Price | Output Price | Context | Notes |
@@ -281,23 +289,26 @@ Released 2026-04-23 — first fully retrained base since GPT-4.5. 1M context, 12
281
289
 
282
290
  ### NVIDIA (Free) + Moonshot
283
291
 
284
- Free tier refreshed 2026-04-28: added DeepSeek V4 Pro/Flash and Nemotron Nano
285
- Omni (vision); retired `nvidia/gpt-oss-120b` / `nvidia/gpt-oss-20b` over data
286
- privacy (NVIDIA's free build.nvidia.com tier reserves the right to use prompts
287
- for service improvement, which conflicts with our policy). Backend
288
- auto-redirects retired IDs to the replacements below.
292
+ Free tier refreshed 2026-04-28: added `nvidia/deepseek-v4-flash` (1M context)
293
+ and Nemotron Nano Omni (vision). `nvidia/gpt-oss-120b` and
294
+ `nvidia/gpt-oss-20b` were briefly delisted over privacy concerns then
295
+ **re-enabled 2026-04-30** with `available: true` + `hidden: true` — they
296
+ no longer appear in `/v1/models` (so SmartChat won't auto-pick them) but
297
+ direct calls by full ID still return HTTP 200. `nvidia/deepseek-v4-pro`,
298
+ `nvidia/deepseek-v3.2`, and `nvidia/glm-4.7` are hidden because NVIDIA's
299
+ NIM deployment is hung — backend MODEL_REDIRECTS forwards calls to V4
300
+ Flash / qwen3-coder.
289
301
 
290
302
  | Model | Input Price | Output Price | Notes |
291
303
  |-------|-------------|--------------|-------|
292
- | `nvidia/deepseek-v4-pro` | **FREE** | **FREE** | 1.6T MoE / 49B active, 1M context — flagship reasoning (MMLU-Pro 87.5, GPQA 90.1) |
293
- | `nvidia/deepseek-v4-flash` | **FREE** | **FREE** | 284B / 13B active MoE, 1M context — ~5× faster than V4 Pro |
304
+ | `nvidia/deepseek-v4-flash` | **FREE** | **FREE** | 284B / 13B active MoE, 1M context — best free chat / summarization / light reasoning |
294
305
  | `nvidia/nemotron-3-nano-omni-30b-a3b-reasoning` | **FREE** | **FREE** | 31B / 3.2B active MoE, 256K — only vision-capable free model |
295
306
  | `nvidia/qwen3-next-80b-a3b-thinking` | **FREE** | **FREE** | 116 tok/s — reasoning flagship with thinking mode |
296
307
  | `nvidia/mistral-small-4-119b` | **FREE** | **FREE** | 114 tok/s — fastest free chat |
297
- | `nvidia/glm-4.7` | **FREE** | **FREE** | 237 tok/s — GLM-4.7 with thinking mode |
298
308
  | `nvidia/llama-4-maverick` | **FREE** | **FREE** | Meta Llama 4 Maverick MoE |
299
309
  | `nvidia/qwen3-coder-480b` | **FREE** | **FREE** | Coding-optimised 480B MoE |
300
- | `nvidia/deepseek-v3.2` | **FREE** | **FREE** | Legacy V3.2 auto-upgrades to V4 Pro via fallback |
310
+ | `nvidia/gpt-oss-120b` | **FREE** | **FREE** | Hidden from `/v1/models` for privacy but direct calls still work — 123 tok/s |
311
+ | `nvidia/gpt-oss-20b` | **FREE** | **FREE** | Hidden from `/v1/models` but direct calls still work — 155 tok/s |
301
312
  | `moonshot/kimi-k2.5` | $0.60/M | $3.00/M | Direct from Moonshot — replaces `nvidia/kimi-k2.5` |
302
313
 
303
314
  ### E2E Verified Models
package/dist/index.cjs CHANGED
@@ -1633,17 +1633,70 @@ var LLMClient = class _LLMClient {
1633
1633
  /**
1634
1634
  * Structured query for Predexon prediction market data (POST endpoints).
1635
1635
  *
1636
- * For complex queries that require a JSON body. $0.005 per request.
1636
+ * For endpoints that require a JSON body, e.g. bulk wallet identity lookup.
1637
+ * Tier 1 = $0.001/call, Tier 2 = $0.005/call.
1637
1638
  *
1638
- * @param path - Endpoint path, e.g. "polymarket/query", "kalshi/query"
1639
+ * @param path - Endpoint path, e.g. "polymarket/wallet/identities"
1639
1640
  * @param query - JSON body for the structured query
1640
1641
  *
1641
1642
  * @example
1642
- * const data = await client.pmQuery("polymarket/query", { filter: "active", limit: 10 });
1643
+ * const batch = await client.pmQuery("polymarket/wallet/identities", {
1644
+ * addresses: ["0xabc...", "0xdef..."],
1645
+ * });
1643
1646
  */
1644
1647
  async pmQuery(path5, query) {
1645
1648
  return this.requestWithPaymentRaw(`/v1/pm/${path5}`, query);
1646
1649
  }
1650
+ // ── PM convenience helpers (Predexon v2) ─────────────────────────────────
1651
+ // Thin wrappers over pm() / pmQuery() for the most common v2 endpoints.
1652
+ /** List canonical cross-venue markets (Predexon v2). Tier 1 ($0.001/call).
1653
+ * Filter with venue, status, category, league, event_id, pagination_key. */
1654
+ async pmMarkets(params) {
1655
+ return this.pm("markets", params);
1656
+ }
1657
+ /** List venue-native executable listings flattened across canonical markets
1658
+ * (Predexon v2). Tier 1 ($0.001/call). */
1659
+ async pmListings(params) {
1660
+ return this.pm("markets/listings", params);
1661
+ }
1662
+ /** Resolve a canonical Predexon outcome ID to its market context and venue
1663
+ * listings. Tier 1 ($0.001/call). */
1664
+ async pmOutcome(predexonId) {
1665
+ return this.pm(`outcomes/${predexonId}`);
1666
+ }
1667
+ /** Polymarket markets with cursor-based keyset pagination (use pagination_key).
1668
+ * Tier 1 ($0.001/call). */
1669
+ async pmPolymarketMarketsKeyset(params) {
1670
+ return this.pm("polymarket/markets/keyset", params);
1671
+ }
1672
+ /** Polymarket events with cursor-based keyset pagination (use pagination_key).
1673
+ * Tier 1 ($0.001/call). */
1674
+ async pmPolymarketEventsKeyset(params) {
1675
+ return this.pm("polymarket/events/keyset", params);
1676
+ }
1677
+ /** List available sports categories. Tier 1 ($0.001/call). */
1678
+ async pmSportsCategories() {
1679
+ return this.pm("sports/categories");
1680
+ }
1681
+ /** List sports markets grouped by game. Filter with league, sport_type,
1682
+ * status, venue. Tier 1 ($0.001/call). */
1683
+ async pmSportsMarkets(params) {
1684
+ return this.pm("sports/markets", params);
1685
+ }
1686
+ /** Fetch identity + profile metadata for one wallet (ENS, Twitter, portfolio,
1687
+ * etc.). Tier 2 ($0.005/call). */
1688
+ async pmWalletIdentity(wallet) {
1689
+ return this.pm(`polymarket/wallet/identity/${wallet}`);
1690
+ }
1691
+ /** Bulk identity lookup for up to 200 wallet addresses (POST). Tier 2 ($0.005/call). */
1692
+ async pmWalletIdentities(addresses) {
1693
+ return this.pmQuery("polymarket/wallet/identities", { addresses });
1694
+ }
1695
+ /** Discover wallets connected to a seed address via on-chain transfers and
1696
+ * identity proofs. Tier 2 ($0.005/call). */
1697
+ async pmWalletCluster(address) {
1698
+ return this.pm(`polymarket/wallet/${address}/cluster`);
1699
+ }
1647
1700
  /**
1648
1701
  * Get current session spending.
1649
1702
  *
@@ -2265,12 +2318,19 @@ var SearchClient = class {
2265
2318
  var import_accounts6 = require("viem/accounts");
2266
2319
  var DEFAULT_API_URL5 = "https://blockrun.ai/api";
2267
2320
  var DEFAULT_TIMEOUT5 = 6e4;
2268
- var XClient = class {
2321
+ var XClient = class _XClient {
2269
2322
  account;
2270
2323
  privateKey;
2271
2324
  apiUrl;
2272
2325
  timeout;
2326
+ static deprecationWarned = false;
2273
2327
  constructor(options = {}) {
2328
+ if (!_XClient.deprecationWarned) {
2329
+ console.warn(
2330
+ "[@blockrun/llm] XClient: BlockRun's /v1/x/* (AttentionVC) integration was removed 2026-04-30. All calls will return HTTP 404 until a replacement X data upstream is reintroduced."
2331
+ );
2332
+ _XClient.deprecationWarned = true;
2333
+ }
2274
2334
  const envKey = typeof process !== "undefined" && process.env ? process.env.BLOCKRUN_WALLET_KEY || process.env.BASE_CHAIN_WALLET_KEY : void 0;
2275
2335
  const privateKey = options.privateKey || envKey;
2276
2336
  if (!privateKey) {
package/dist/index.d.cts CHANGED
@@ -1066,15 +1066,46 @@ declare class LLMClient {
1066
1066
  /**
1067
1067
  * Structured query for Predexon prediction market data (POST endpoints).
1068
1068
  *
1069
- * For complex queries that require a JSON body. $0.005 per request.
1069
+ * For endpoints that require a JSON body, e.g. bulk wallet identity lookup.
1070
+ * Tier 1 = $0.001/call, Tier 2 = $0.005/call.
1070
1071
  *
1071
- * @param path - Endpoint path, e.g. "polymarket/query", "kalshi/query"
1072
+ * @param path - Endpoint path, e.g. "polymarket/wallet/identities"
1072
1073
  * @param query - JSON body for the structured query
1073
1074
  *
1074
1075
  * @example
1075
- * const data = await client.pmQuery("polymarket/query", { filter: "active", limit: 10 });
1076
+ * const batch = await client.pmQuery("polymarket/wallet/identities", {
1077
+ * addresses: ["0xabc...", "0xdef..."],
1078
+ * });
1076
1079
  */
1077
1080
  pmQuery(path: string, query: Record<string, unknown>): Promise<Record<string, unknown>>;
1081
+ /** List canonical cross-venue markets (Predexon v2). Tier 1 ($0.001/call).
1082
+ * Filter with venue, status, category, league, event_id, pagination_key. */
1083
+ pmMarkets(params?: Record<string, string>): Promise<Record<string, unknown>>;
1084
+ /** List venue-native executable listings flattened across canonical markets
1085
+ * (Predexon v2). Tier 1 ($0.001/call). */
1086
+ pmListings(params?: Record<string, string>): Promise<Record<string, unknown>>;
1087
+ /** Resolve a canonical Predexon outcome ID to its market context and venue
1088
+ * listings. Tier 1 ($0.001/call). */
1089
+ pmOutcome(predexonId: string): Promise<Record<string, unknown>>;
1090
+ /** Polymarket markets with cursor-based keyset pagination (use pagination_key).
1091
+ * Tier 1 ($0.001/call). */
1092
+ pmPolymarketMarketsKeyset(params?: Record<string, string>): Promise<Record<string, unknown>>;
1093
+ /** Polymarket events with cursor-based keyset pagination (use pagination_key).
1094
+ * Tier 1 ($0.001/call). */
1095
+ pmPolymarketEventsKeyset(params?: Record<string, string>): Promise<Record<string, unknown>>;
1096
+ /** List available sports categories. Tier 1 ($0.001/call). */
1097
+ pmSportsCategories(): Promise<Record<string, unknown>>;
1098
+ /** List sports markets grouped by game. Filter with league, sport_type,
1099
+ * status, venue. Tier 1 ($0.001/call). */
1100
+ pmSportsMarkets(params?: Record<string, string>): Promise<Record<string, unknown>>;
1101
+ /** Fetch identity + profile metadata for one wallet (ENS, Twitter, portfolio,
1102
+ * etc.). Tier 2 ($0.005/call). */
1103
+ pmWalletIdentity(wallet: string): Promise<Record<string, unknown>>;
1104
+ /** Bulk identity lookup for up to 200 wallet addresses (POST). Tier 2 ($0.005/call). */
1105
+ pmWalletIdentities(addresses: string[]): Promise<Record<string, unknown>>;
1106
+ /** Discover wallets connected to a seed address via on-chain transfers and
1107
+ * identity proofs. Tier 2 ($0.005/call). */
1108
+ pmWalletCluster(address: string): Promise<Record<string, unknown>>;
1078
1109
  /**
1079
1110
  * Get current session spending.
1080
1111
  *
@@ -1343,11 +1374,21 @@ interface XSearchOptions {
1343
1374
  queryType?: "Latest" | "Top" | "Default";
1344
1375
  cursor?: string;
1345
1376
  }
1377
+ /**
1378
+ * BlockRun X/Twitter client.
1379
+ *
1380
+ * @deprecated BlockRun's `/v1/x/*` (AttentionVC-partnered) integration was
1381
+ * removed from the backend on 2026-04-30 (commit 80dcf52). All `XClient`
1382
+ * calls will return HTTP 404 until a replacement upstream is wired up.
1383
+ * The class is kept in the SDK so existing imports do not break;
1384
+ * instantiation logs a one-time `console.warn`.
1385
+ */
1346
1386
  declare class XClient {
1347
1387
  private account;
1348
1388
  private privateKey;
1349
1389
  private apiUrl;
1350
1390
  private timeout;
1391
+ private static deprecationWarned;
1351
1392
  constructor(options?: XClientOptions);
1352
1393
  userLookup(usernames: string | string[]): Promise<XUserLookupResponse>;
1353
1394
  userInfo(username: string): Promise<XUserInfoResponse>;
package/dist/index.d.ts CHANGED
@@ -1066,15 +1066,46 @@ declare class LLMClient {
1066
1066
  /**
1067
1067
  * Structured query for Predexon prediction market data (POST endpoints).
1068
1068
  *
1069
- * For complex queries that require a JSON body. $0.005 per request.
1069
+ * For endpoints that require a JSON body, e.g. bulk wallet identity lookup.
1070
+ * Tier 1 = $0.001/call, Tier 2 = $0.005/call.
1070
1071
  *
1071
- * @param path - Endpoint path, e.g. "polymarket/query", "kalshi/query"
1072
+ * @param path - Endpoint path, e.g. "polymarket/wallet/identities"
1072
1073
  * @param query - JSON body for the structured query
1073
1074
  *
1074
1075
  * @example
1075
- * const data = await client.pmQuery("polymarket/query", { filter: "active", limit: 10 });
1076
+ * const batch = await client.pmQuery("polymarket/wallet/identities", {
1077
+ * addresses: ["0xabc...", "0xdef..."],
1078
+ * });
1076
1079
  */
1077
1080
  pmQuery(path: string, query: Record<string, unknown>): Promise<Record<string, unknown>>;
1081
+ /** List canonical cross-venue markets (Predexon v2). Tier 1 ($0.001/call).
1082
+ * Filter with venue, status, category, league, event_id, pagination_key. */
1083
+ pmMarkets(params?: Record<string, string>): Promise<Record<string, unknown>>;
1084
+ /** List venue-native executable listings flattened across canonical markets
1085
+ * (Predexon v2). Tier 1 ($0.001/call). */
1086
+ pmListings(params?: Record<string, string>): Promise<Record<string, unknown>>;
1087
+ /** Resolve a canonical Predexon outcome ID to its market context and venue
1088
+ * listings. Tier 1 ($0.001/call). */
1089
+ pmOutcome(predexonId: string): Promise<Record<string, unknown>>;
1090
+ /** Polymarket markets with cursor-based keyset pagination (use pagination_key).
1091
+ * Tier 1 ($0.001/call). */
1092
+ pmPolymarketMarketsKeyset(params?: Record<string, string>): Promise<Record<string, unknown>>;
1093
+ /** Polymarket events with cursor-based keyset pagination (use pagination_key).
1094
+ * Tier 1 ($0.001/call). */
1095
+ pmPolymarketEventsKeyset(params?: Record<string, string>): Promise<Record<string, unknown>>;
1096
+ /** List available sports categories. Tier 1 ($0.001/call). */
1097
+ pmSportsCategories(): Promise<Record<string, unknown>>;
1098
+ /** List sports markets grouped by game. Filter with league, sport_type,
1099
+ * status, venue. Tier 1 ($0.001/call). */
1100
+ pmSportsMarkets(params?: Record<string, string>): Promise<Record<string, unknown>>;
1101
+ /** Fetch identity + profile metadata for one wallet (ENS, Twitter, portfolio,
1102
+ * etc.). Tier 2 ($0.005/call). */
1103
+ pmWalletIdentity(wallet: string): Promise<Record<string, unknown>>;
1104
+ /** Bulk identity lookup for up to 200 wallet addresses (POST). Tier 2 ($0.005/call). */
1105
+ pmWalletIdentities(addresses: string[]): Promise<Record<string, unknown>>;
1106
+ /** Discover wallets connected to a seed address via on-chain transfers and
1107
+ * identity proofs. Tier 2 ($0.005/call). */
1108
+ pmWalletCluster(address: string): Promise<Record<string, unknown>>;
1078
1109
  /**
1079
1110
  * Get current session spending.
1080
1111
  *
@@ -1343,11 +1374,21 @@ interface XSearchOptions {
1343
1374
  queryType?: "Latest" | "Top" | "Default";
1344
1375
  cursor?: string;
1345
1376
  }
1377
+ /**
1378
+ * BlockRun X/Twitter client.
1379
+ *
1380
+ * @deprecated BlockRun's `/v1/x/*` (AttentionVC-partnered) integration was
1381
+ * removed from the backend on 2026-04-30 (commit 80dcf52). All `XClient`
1382
+ * calls will return HTTP 404 until a replacement upstream is wired up.
1383
+ * The class is kept in the SDK so existing imports do not break;
1384
+ * instantiation logs a one-time `console.warn`.
1385
+ */
1346
1386
  declare class XClient {
1347
1387
  private account;
1348
1388
  private privateKey;
1349
1389
  private apiUrl;
1350
1390
  private timeout;
1391
+ private static deprecationWarned;
1351
1392
  constructor(options?: XClientOptions);
1352
1393
  userLookup(usernames: string | string[]): Promise<XUserLookupResponse>;
1353
1394
  userInfo(username: string): Promise<XUserInfoResponse>;
package/dist/index.js CHANGED
@@ -1537,17 +1537,70 @@ var LLMClient = class _LLMClient {
1537
1537
  /**
1538
1538
  * Structured query for Predexon prediction market data (POST endpoints).
1539
1539
  *
1540
- * For complex queries that require a JSON body. $0.005 per request.
1540
+ * For endpoints that require a JSON body, e.g. bulk wallet identity lookup.
1541
+ * Tier 1 = $0.001/call, Tier 2 = $0.005/call.
1541
1542
  *
1542
- * @param path - Endpoint path, e.g. "polymarket/query", "kalshi/query"
1543
+ * @param path - Endpoint path, e.g. "polymarket/wallet/identities"
1543
1544
  * @param query - JSON body for the structured query
1544
1545
  *
1545
1546
  * @example
1546
- * const data = await client.pmQuery("polymarket/query", { filter: "active", limit: 10 });
1547
+ * const batch = await client.pmQuery("polymarket/wallet/identities", {
1548
+ * addresses: ["0xabc...", "0xdef..."],
1549
+ * });
1547
1550
  */
1548
1551
  async pmQuery(path5, query) {
1549
1552
  return this.requestWithPaymentRaw(`/v1/pm/${path5}`, query);
1550
1553
  }
1554
+ // ── PM convenience helpers (Predexon v2) ─────────────────────────────────
1555
+ // Thin wrappers over pm() / pmQuery() for the most common v2 endpoints.
1556
+ /** List canonical cross-venue markets (Predexon v2). Tier 1 ($0.001/call).
1557
+ * Filter with venue, status, category, league, event_id, pagination_key. */
1558
+ async pmMarkets(params) {
1559
+ return this.pm("markets", params);
1560
+ }
1561
+ /** List venue-native executable listings flattened across canonical markets
1562
+ * (Predexon v2). Tier 1 ($0.001/call). */
1563
+ async pmListings(params) {
1564
+ return this.pm("markets/listings", params);
1565
+ }
1566
+ /** Resolve a canonical Predexon outcome ID to its market context and venue
1567
+ * listings. Tier 1 ($0.001/call). */
1568
+ async pmOutcome(predexonId) {
1569
+ return this.pm(`outcomes/${predexonId}`);
1570
+ }
1571
+ /** Polymarket markets with cursor-based keyset pagination (use pagination_key).
1572
+ * Tier 1 ($0.001/call). */
1573
+ async pmPolymarketMarketsKeyset(params) {
1574
+ return this.pm("polymarket/markets/keyset", params);
1575
+ }
1576
+ /** Polymarket events with cursor-based keyset pagination (use pagination_key).
1577
+ * Tier 1 ($0.001/call). */
1578
+ async pmPolymarketEventsKeyset(params) {
1579
+ return this.pm("polymarket/events/keyset", params);
1580
+ }
1581
+ /** List available sports categories. Tier 1 ($0.001/call). */
1582
+ async pmSportsCategories() {
1583
+ return this.pm("sports/categories");
1584
+ }
1585
+ /** List sports markets grouped by game. Filter with league, sport_type,
1586
+ * status, venue. Tier 1 ($0.001/call). */
1587
+ async pmSportsMarkets(params) {
1588
+ return this.pm("sports/markets", params);
1589
+ }
1590
+ /** Fetch identity + profile metadata for one wallet (ENS, Twitter, portfolio,
1591
+ * etc.). Tier 2 ($0.005/call). */
1592
+ async pmWalletIdentity(wallet) {
1593
+ return this.pm(`polymarket/wallet/identity/${wallet}`);
1594
+ }
1595
+ /** Bulk identity lookup for up to 200 wallet addresses (POST). Tier 2 ($0.005/call). */
1596
+ async pmWalletIdentities(addresses) {
1597
+ return this.pmQuery("polymarket/wallet/identities", { addresses });
1598
+ }
1599
+ /** Discover wallets connected to a seed address via on-chain transfers and
1600
+ * identity proofs. Tier 2 ($0.005/call). */
1601
+ async pmWalletCluster(address) {
1602
+ return this.pm(`polymarket/wallet/${address}/cluster`);
1603
+ }
1551
1604
  /**
1552
1605
  * Get current session spending.
1553
1606
  *
@@ -2169,12 +2222,19 @@ var SearchClient = class {
2169
2222
  import { privateKeyToAccount as privateKeyToAccount5 } from "viem/accounts";
2170
2223
  var DEFAULT_API_URL5 = "https://blockrun.ai/api";
2171
2224
  var DEFAULT_TIMEOUT5 = 6e4;
2172
- var XClient = class {
2225
+ var XClient = class _XClient {
2173
2226
  account;
2174
2227
  privateKey;
2175
2228
  apiUrl;
2176
2229
  timeout;
2230
+ static deprecationWarned = false;
2177
2231
  constructor(options = {}) {
2232
+ if (!_XClient.deprecationWarned) {
2233
+ console.warn(
2234
+ "[@blockrun/llm] XClient: BlockRun's /v1/x/* (AttentionVC) integration was removed 2026-04-30. All calls will return HTTP 404 until a replacement X data upstream is reintroduced."
2235
+ );
2236
+ _XClient.deprecationWarned = true;
2237
+ }
2178
2238
  const envKey = typeof process !== "undefined" && process.env ? process.env.BLOCKRUN_WALLET_KEY || process.env.BASE_CHAIN_WALLET_KEY : void 0;
2179
2239
  const privateKey = options.privateKey || envKey;
2180
2240
  if (!privateKey) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blockrun/llm",
3
- "version": "1.13.0",
3
+ "version": "1.15.0",
4
4
  "type": "module",
5
5
  "description": "BlockRun SDK - Pay-per-request AI (LLM, Image, Video, Music) via x402 on Base and Solana",
6
6
  "main": "dist/index.cjs",