@lobehub/market-sdk 0.27.0 → 0.27.1-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -2,6 +2,7 @@ import { z } from 'zod';
2
2
  import { AgentItem, MarketItemBase, PluginConnectionType, InstallFailureAnalysisQuery, InstallFailureAnalysis, RangeQuery, RangeStats, TopPluginsQuery, TopPlugin, PluginManifest, AdminPluginItem, AdminPluginItemDetail, PluginVersion, PluginVersionLocalization, AdminDeploymentOption, InstallationDetails, SystemDependency, IncompleteI18nPlugin, AgentEventRequest, CategoryListQuery, CategoryItem, PluginItemDetail, InstallReportRequest, InstallReportResponse, CallReportRequest, CallReportResponse, PluginEventRequest, CloudGatewayRequest, CloudGatewayResponse } from '@lobehub/market-types';
3
3
  export * from '@lobehub/market-types';
4
4
  export { CategoryItem, CategoryListQuery, CategoryListResponse } from '@lobehub/market-types';
5
+ import { JSONSchema7 } from 'json-schema';
5
6
 
6
7
  /**
7
8
  * Visibility levels for plugins in the marketplace
@@ -288,16 +289,24 @@ interface AgentDetailQuery {
288
289
  interface AgentItemDetail extends AgentItem {
289
290
  /** A2A protocol version */
290
291
  a2aProtocolVersion?: string;
291
- /** Author (may come from marketplace base but ensure presence) */
292
+ /** Author or organization name */
292
293
  author?: string;
293
294
  /** Avatar URL for the agent, can be a emoji */
294
295
  avatar: string;
296
+ /** Category name used for classification */
297
+ category?: string;
295
298
  /** Total comment count */
296
299
  commentCount?: number;
300
+ /** Optional: Compatibility information for different platforms or versions */
301
+ compatibility?: Record<string, any>;
297
302
  /** Agent configuration JSON */
298
303
  config: any;
304
+ /** Resource creation date in the marketplace (ISO 8601 format) */
305
+ createdAt: string;
299
306
  /** Current version id */
300
307
  currentVersionId?: number;
308
+ /** Localized short description displayed in the marketplace listing */
309
+ description: string;
301
310
  /** URL to human-readable documentation */
302
311
  documentationUrl?: string;
303
312
  /** Editor data for saving prompt content in editor mode */
@@ -312,8 +321,14 @@ interface AgentItemDetail extends AgentItem {
312
321
  hasStateTransitionHistory?: boolean;
313
322
  /** Whether streaming is supported */
314
323
  hasStreaming?: boolean;
324
+ /** URL to the resource's homepage or documentation */
325
+ homepage?: string;
326
+ /** Icon URL or Emoji character */
327
+ icon?: string;
315
328
  /** Agent database id */
316
329
  id?: number;
330
+ /** Globally unique identifier, typically contains author/namespace and name */
331
+ identifier: string;
317
332
  /** Total install count */
318
333
  installCount?: number;
319
334
  /** Additional interfaces supported */
@@ -324,6 +339,10 @@ interface AgentItemDetail extends AgentItem {
324
339
  isOfficial?: boolean;
325
340
  /** Locale */
326
341
  locale?: string;
342
+ /** URL pointing to the detailed manifest file for this resource */
343
+ manifestUrl: string;
344
+ /** Localized display name shown in the marketplace listing */
345
+ name: string;
327
346
  /** Owner ID */
328
347
  ownerId?: number;
329
348
  /** The transport of the preferred endpoint */
@@ -344,10 +363,12 @@ interface AgentItemDetail extends AgentItem {
344
363
  summary?: string;
345
364
  /** Whether the agent supports authenticated extended card */
346
365
  supportsAuthenticatedExtendedCard?: boolean;
347
- /** Tags */
366
+ /** List of localized tags for filtering and categorization */
348
367
  tags?: string[];
349
368
  /** Token usage */
350
369
  tokenUsage?: number;
370
+ /** Resource's last update date in the marketplace (ISO 8601 format) */
371
+ updatedAt: string;
351
372
  /** Agent or A2A implementation version string */
352
373
  version: string;
353
374
  /** Version display name */
@@ -1249,6 +1270,480 @@ interface CodeInterpreterToolParams {
1249
1270
  writeLocalFile: WriteLocalFileParams;
1250
1271
  }
1251
1272
 
1273
+ /**
1274
+ * Connect Types for LobeHub Market SDK
1275
+ *
1276
+ * Types related to OAuth connection management.
1277
+ */
1278
+ /**
1279
+ * OAuth Provider scope configuration
1280
+ */
1281
+ interface ConnectProviderScopes {
1282
+ /**
1283
+ * All available scopes for this provider
1284
+ */
1285
+ available: string[];
1286
+ /**
1287
+ * Default scopes requested during authorization
1288
+ */
1289
+ default: string[];
1290
+ /**
1291
+ * Scope separator used by this provider
1292
+ */
1293
+ separator: string;
1294
+ }
1295
+ /**
1296
+ * OAuth Provider information
1297
+ */
1298
+ interface ConnectProvider {
1299
+ /**
1300
+ * Provider icon URL
1301
+ */
1302
+ icon?: string;
1303
+ /**
1304
+ * Unique provider identifier (e.g., 'github', 'linear')
1305
+ */
1306
+ id: string;
1307
+ /**
1308
+ * Display name of the provider
1309
+ */
1310
+ name: string;
1311
+ /**
1312
+ * Whether API proxy is supported
1313
+ */
1314
+ proxySupported: boolean;
1315
+ /**
1316
+ * Whether token refresh is supported
1317
+ */
1318
+ refreshSupported: boolean;
1319
+ /**
1320
+ * Scope configuration
1321
+ */
1322
+ scopes: ConnectProviderScopes;
1323
+ }
1324
+ /**
1325
+ * Detailed provider information
1326
+ */
1327
+ interface ConnectProviderDetail extends ConnectProvider {
1328
+ /**
1329
+ * Whether the provider has credentials configured on the server
1330
+ */
1331
+ configured: boolean;
1332
+ /**
1333
+ * Proxy base URL if supported
1334
+ */
1335
+ proxyBaseUrl?: string;
1336
+ }
1337
+ /**
1338
+ * User's OAuth connection to a provider
1339
+ */
1340
+ interface OAuthConnection {
1341
+ /**
1342
+ * When the connection was created
1343
+ */
1344
+ createdAt: string;
1345
+ /**
1346
+ * Provider identifier
1347
+ */
1348
+ providerId: string;
1349
+ /**
1350
+ * Provider display name
1351
+ */
1352
+ providerName: string;
1353
+ /**
1354
+ * Provider user email (if available)
1355
+ */
1356
+ providerEmail?: string;
1357
+ /**
1358
+ * Provider user ID
1359
+ */
1360
+ providerUserId?: string;
1361
+ /**
1362
+ * Provider username (if available)
1363
+ */
1364
+ providerUsername?: string;
1365
+ /**
1366
+ * Authorized scopes
1367
+ */
1368
+ scopes: string[];
1369
+ /**
1370
+ * Token expiry time (ISO string)
1371
+ */
1372
+ tokenExpiresAt?: string;
1373
+ /**
1374
+ * When the connection was last updated
1375
+ */
1376
+ updatedAt: string;
1377
+ }
1378
+ /**
1379
+ * Connection health status
1380
+ */
1381
+ interface ConnectionHealth {
1382
+ /**
1383
+ * Whether the connection is healthy
1384
+ */
1385
+ healthy: boolean;
1386
+ /**
1387
+ * Provider identifier
1388
+ */
1389
+ providerId: string;
1390
+ /**
1391
+ * Provider display name
1392
+ */
1393
+ providerName: string;
1394
+ /**
1395
+ * Token status
1396
+ */
1397
+ tokenStatus: 'valid' | 'expiring_soon' | 'expired' | 'unknown';
1398
+ }
1399
+ /**
1400
+ * Connection statistics
1401
+ */
1402
+ interface ConnectionStats {
1403
+ /**
1404
+ * Total number of connections
1405
+ */
1406
+ total: number;
1407
+ /**
1408
+ * Number of active/healthy connections
1409
+ */
1410
+ active: number;
1411
+ /**
1412
+ * Number of connections expiring soon
1413
+ */
1414
+ expiringSoon: number;
1415
+ /**
1416
+ * Number of expired connections
1417
+ */
1418
+ expired: number;
1419
+ }
1420
+ /**
1421
+ * Response for listing providers
1422
+ */
1423
+ interface ListConnectProvidersResponse {
1424
+ /**
1425
+ * List of available providers
1426
+ */
1427
+ providers: ConnectProvider[];
1428
+ /**
1429
+ * Whether the request was successful
1430
+ */
1431
+ success: boolean;
1432
+ }
1433
+ /**
1434
+ * Response for getting provider details
1435
+ */
1436
+ interface GetConnectProviderResponse {
1437
+ /**
1438
+ * Provider details
1439
+ */
1440
+ provider: ConnectProviderDetail;
1441
+ /**
1442
+ * Whether the request was successful
1443
+ */
1444
+ success: boolean;
1445
+ }
1446
+ /**
1447
+ * Response for getting connection status
1448
+ */
1449
+ interface GetConnectionStatusResponse {
1450
+ /**
1451
+ * Whether the user is connected to this provider
1452
+ */
1453
+ connected: boolean;
1454
+ /**
1455
+ * Connection details (if connected)
1456
+ */
1457
+ connection: OAuthConnection | null;
1458
+ /**
1459
+ * Whether the request was successful
1460
+ */
1461
+ success: boolean;
1462
+ }
1463
+ /**
1464
+ * Response for listing all connections
1465
+ */
1466
+ interface ListConnectionsResponse {
1467
+ /**
1468
+ * List of user's connections
1469
+ */
1470
+ connections: OAuthConnection[];
1471
+ /**
1472
+ * Whether the request was successful
1473
+ */
1474
+ success: boolean;
1475
+ }
1476
+ /**
1477
+ * Response for connection statistics
1478
+ */
1479
+ interface GetConnectionStatsResponse {
1480
+ /**
1481
+ * Connection statistics
1482
+ */
1483
+ stats: ConnectionStats;
1484
+ /**
1485
+ * Whether the request was successful
1486
+ */
1487
+ success: boolean;
1488
+ }
1489
+ /**
1490
+ * Response for connection health check
1491
+ */
1492
+ interface GetConnectionHealthResponse {
1493
+ /**
1494
+ * Whether the connection is healthy
1495
+ */
1496
+ healthy: boolean;
1497
+ /**
1498
+ * Provider identifier
1499
+ */
1500
+ provider: string;
1501
+ /**
1502
+ * Whether the request was successful
1503
+ */
1504
+ success: boolean;
1505
+ /**
1506
+ * Token status
1507
+ */
1508
+ tokenStatus: 'valid' | 'expiring_soon' | 'expired' | 'unknown';
1509
+ /**
1510
+ * Token expiry time (ISO string)
1511
+ */
1512
+ expiresAt?: string;
1513
+ }
1514
+ /**
1515
+ * Response for all connections health check
1516
+ */
1517
+ interface GetAllConnectionsHealthResponse {
1518
+ /**
1519
+ * Health status for each connection
1520
+ */
1521
+ connections: ConnectionHealth[];
1522
+ /**
1523
+ * Whether the request was successful
1524
+ */
1525
+ success: boolean;
1526
+ /**
1527
+ * Health summary
1528
+ */
1529
+ summary: {
1530
+ total: number;
1531
+ healthy: number;
1532
+ unhealthy: number;
1533
+ expiringSoon: number;
1534
+ expired: number;
1535
+ };
1536
+ }
1537
+ /**
1538
+ * Response for token refresh
1539
+ */
1540
+ interface RefreshConnectionResponse {
1541
+ /**
1542
+ * Updated connection details
1543
+ */
1544
+ connection: OAuthConnection | null;
1545
+ /**
1546
+ * Whether the token was refreshed
1547
+ */
1548
+ refreshed: boolean;
1549
+ /**
1550
+ * Whether the request was successful
1551
+ */
1552
+ success: boolean;
1553
+ }
1554
+ /**
1555
+ * Response for revoking connection
1556
+ */
1557
+ interface RevokeConnectionResponse {
1558
+ /**
1559
+ * Whether the request was successful
1560
+ */
1561
+ success: boolean;
1562
+ }
1563
+ /**
1564
+ * Parameters for getting authorize URL
1565
+ */
1566
+ interface GetAuthorizeUrlParams {
1567
+ /**
1568
+ * Custom scopes to request (optional, uses provider defaults if not specified)
1569
+ */
1570
+ scopes?: string[];
1571
+ /**
1572
+ * Redirect URI after authorization (optional)
1573
+ */
1574
+ redirectUri?: string;
1575
+ }
1576
+
1577
+ /**
1578
+ * Skill Types for LobeHub Market SDK
1579
+ *
1580
+ * Types related to skill providers, tools, and operations.
1581
+ */
1582
+
1583
+ /**
1584
+ * Represents a tool/function that can be called through a skill provider
1585
+ */
1586
+ interface SkillTool {
1587
+ /**
1588
+ * Optional description of the tool
1589
+ */
1590
+ description?: string;
1591
+ /**
1592
+ * JSON Schema for the tool's input parameters
1593
+ */
1594
+ inputSchema: JSONSchema7;
1595
+ /**
1596
+ * Unique name of the tool within the provider
1597
+ */
1598
+ name: string;
1599
+ }
1600
+ /**
1601
+ * Parameters for calling a tool
1602
+ */
1603
+ interface SkillCallParams {
1604
+ /**
1605
+ * Arguments to pass to the tool
1606
+ */
1607
+ args?: Record<string, unknown>;
1608
+ /**
1609
+ * Name of the tool to call
1610
+ */
1611
+ tool: string;
1612
+ }
1613
+ /**
1614
+ * Summary information about a skill provider
1615
+ */
1616
+ interface SkillProviderInfo {
1617
+ /**
1618
+ * Unique provider identifier (e.g., 'linear', 'github')
1619
+ */
1620
+ id: string;
1621
+ /**
1622
+ * Display name of the provider
1623
+ */
1624
+ name: string;
1625
+ /**
1626
+ * Type of the provider
1627
+ */
1628
+ type: 'mcp' | 'rest' | 'custom';
1629
+ }
1630
+ /**
1631
+ * Provider connection status
1632
+ */
1633
+ interface SkillProviderStatus {
1634
+ /**
1635
+ * Whether the user is connected to this provider
1636
+ */
1637
+ connected: boolean;
1638
+ /**
1639
+ * Error message if connection check failed
1640
+ */
1641
+ error?: string;
1642
+ /**
1643
+ * Provider identifier
1644
+ */
1645
+ provider: string;
1646
+ }
1647
+ /**
1648
+ * Response for listing skill providers
1649
+ */
1650
+ interface ListSkillProvidersResponse {
1651
+ /**
1652
+ * List of available providers
1653
+ */
1654
+ providers: SkillProviderInfo[];
1655
+ /**
1656
+ * Whether the request was successful
1657
+ */
1658
+ success: boolean;
1659
+ }
1660
+ /**
1661
+ * Response for listing tools of a provider
1662
+ */
1663
+ interface ListSkillToolsResponse {
1664
+ /**
1665
+ * Provider identifier
1666
+ */
1667
+ provider: string;
1668
+ /**
1669
+ * Whether the request was successful
1670
+ */
1671
+ success: boolean;
1672
+ /**
1673
+ * List of available tools
1674
+ */
1675
+ tools: SkillTool[];
1676
+ }
1677
+ /**
1678
+ * Response for getting a specific tool
1679
+ */
1680
+ interface GetSkillToolResponse {
1681
+ /**
1682
+ * Provider identifier
1683
+ */
1684
+ provider: string;
1685
+ /**
1686
+ * Whether the request was successful
1687
+ */
1688
+ success: boolean;
1689
+ /**
1690
+ * Tool details
1691
+ */
1692
+ tool: SkillTool;
1693
+ }
1694
+ /**
1695
+ * Response for getting provider status
1696
+ */
1697
+ interface GetSkillStatusResponse extends SkillProviderStatus {
1698
+ /**
1699
+ * Whether the request was successful
1700
+ */
1701
+ success: boolean;
1702
+ }
1703
+ /**
1704
+ * Response for calling a tool
1705
+ */
1706
+ interface CallSkillToolResponse<T = unknown> {
1707
+ /**
1708
+ * Result data from the tool call
1709
+ */
1710
+ data?: T;
1711
+ /**
1712
+ * Provider identifier
1713
+ */
1714
+ provider: string;
1715
+ /**
1716
+ * Whether the request was successful
1717
+ */
1718
+ success: boolean;
1719
+ /**
1720
+ * Tool that was called
1721
+ */
1722
+ tool: string;
1723
+ }
1724
+ /**
1725
+ * Error response from skill API
1726
+ */
1727
+ interface SkillErrorResponse {
1728
+ /**
1729
+ * Error details
1730
+ */
1731
+ error: {
1732
+ /**
1733
+ * Error code for programmatic handling
1734
+ */
1735
+ code: string;
1736
+ /**
1737
+ * Human-readable error message
1738
+ */
1739
+ message: string;
1740
+ };
1741
+ /**
1742
+ * Always false for error responses
1743
+ */
1744
+ success: false;
1745
+ }
1746
+
1252
1747
  /**
1253
1748
  * User-related type definitions for LobeHub Market SDK
1254
1749
  *
@@ -3169,6 +3664,156 @@ declare class AuthService extends BaseSDK {
3169
3664
  }>;
3170
3665
  }
3171
3666
 
3667
+ /**
3668
+ * Connect Service
3669
+ *
3670
+ * Provides OAuth connection management functionality.
3671
+ * This service allows:
3672
+ * - Listing available OAuth providers
3673
+ * - Getting authorize URL to initiate OAuth flow
3674
+ * - Checking connection status
3675
+ * - Managing existing connections (refresh, revoke)
3676
+ *
3677
+ * @example
3678
+ * ```typescript
3679
+ * const sdk = new MarketSDK({ accessToken: 'user-token' });
3680
+ *
3681
+ * // 1. List available providers
3682
+ * const { providers } = await sdk.connect.listProviders();
3683
+ *
3684
+ * // 2. Check if connected to Linear
3685
+ * const { connected } = await sdk.connect.getStatus('linear');
3686
+ *
3687
+ * // 3. If not connected, get authorize URL and redirect user
3688
+ * if (!connected) {
3689
+ * const authorizeUrl = sdk.connect.getAuthorizeUrl('linear');
3690
+ * window.location.href = authorizeUrl;
3691
+ * }
3692
+ *
3693
+ * // 4. After user completes OAuth, they can use skills
3694
+ * const result = await sdk.skills.callTool('linear', {
3695
+ * tool: 'create_issue',
3696
+ * args: { title: 'New issue', team: 'Engineering' }
3697
+ * });
3698
+ * ```
3699
+ */
3700
+ declare class ConnectService extends BaseSDK {
3701
+ /**
3702
+ * Lists all available OAuth providers
3703
+ *
3704
+ * Returns providers that have credentials configured on the server.
3705
+ * This is a public endpoint that doesn't require authentication.
3706
+ *
3707
+ * @param options - Optional request options
3708
+ * @returns Promise resolving to the list of available providers
3709
+ */
3710
+ listProviders(options?: globalThis.RequestInit): Promise<ListConnectProvidersResponse>;
3711
+ /**
3712
+ * Gets detailed information about a specific provider
3713
+ *
3714
+ * This is a public endpoint that doesn't require authentication.
3715
+ *
3716
+ * @param provider - The provider ID (e.g., 'linear', 'github')
3717
+ * @param options - Optional request options
3718
+ * @returns Promise resolving to the provider details
3719
+ */
3720
+ getProvider(provider: string, options?: globalThis.RequestInit): Promise<GetConnectProviderResponse>;
3721
+ /**
3722
+ * Generates the OAuth authorization URL for a provider
3723
+ *
3724
+ * This URL should be opened in a browser (popup or redirect) for the user
3725
+ * to authorize the connection. After authorization, the user will be
3726
+ * redirected back to the callback URL.
3727
+ *
3728
+ * Note: This method does NOT make an API request. It constructs the URL
3729
+ * that the user should visit to start the OAuth flow.
3730
+ *
3731
+ * @param provider - The provider ID (e.g., 'linear', 'github')
3732
+ * @param params - Optional parameters for scopes and redirect URI
3733
+ * @returns The authorization URL to redirect the user to
3734
+ *
3735
+ * @example
3736
+ * ```typescript
3737
+ * // Basic usage - opens in popup
3738
+ * const url = sdk.connect.getAuthorizeUrl('linear');
3739
+ * const popup = window.open(url, 'oauth', 'width=600,height=700');
3740
+ *
3741
+ * // With custom scopes
3742
+ * const url = sdk.connect.getAuthorizeUrl('github', {
3743
+ * scopes: ['user', 'repo', 'read:org']
3744
+ * });
3745
+ *
3746
+ * // With redirect URI
3747
+ * const url = sdk.connect.getAuthorizeUrl('linear', {
3748
+ * redirectUri: 'https://myapp.com/oauth/callback'
3749
+ * });
3750
+ * ```
3751
+ */
3752
+ getAuthorizeUrl(provider: string, params?: GetAuthorizeUrlParams): string;
3753
+ /**
3754
+ * Gets the connection status for a specific provider
3755
+ *
3756
+ * Checks if the authenticated user has an active OAuth connection.
3757
+ * Requires authentication.
3758
+ *
3759
+ * @param provider - The provider ID (e.g., 'linear', 'github')
3760
+ * @param options - Optional request options (must include authentication)
3761
+ * @returns Promise resolving to the connection status
3762
+ */
3763
+ getStatus(provider: string, options?: globalThis.RequestInit): Promise<GetConnectionStatusResponse>;
3764
+ /**
3765
+ * Lists all OAuth connections for the authenticated user
3766
+ *
3767
+ * Requires authentication.
3768
+ *
3769
+ * @param options - Optional request options (must include authentication)
3770
+ * @returns Promise resolving to the list of connections
3771
+ */
3772
+ listConnections(options?: globalThis.RequestInit): Promise<ListConnectionsResponse>;
3773
+ /**
3774
+ * Checks the health of a specific provider connection
3775
+ *
3776
+ * Verifies if the token is valid, expiring soon, or expired.
3777
+ * Requires authentication.
3778
+ *
3779
+ * @param provider - The provider ID (e.g., 'linear', 'github')
3780
+ * @param options - Optional request options (must include authentication)
3781
+ * @returns Promise resolving to the connection health status
3782
+ */
3783
+ getHealth(provider: string, options?: globalThis.RequestInit): Promise<GetConnectionHealthResponse>;
3784
+ /**
3785
+ * Checks the health of all provider connections
3786
+ *
3787
+ * Requires authentication.
3788
+ *
3789
+ * @param options - Optional request options (must include authentication)
3790
+ * @returns Promise resolving to the health status of all connections
3791
+ */
3792
+ getAllHealth(options?: globalThis.RequestInit): Promise<GetAllConnectionsHealthResponse>;
3793
+ /**
3794
+ * Manually refreshes the access token for a provider connection
3795
+ *
3796
+ * Only works for providers that support token refresh.
3797
+ * Requires authentication.
3798
+ *
3799
+ * @param provider - The provider ID (e.g., 'linear', 'github')
3800
+ * @param options - Optional request options (must include authentication)
3801
+ * @returns Promise resolving to the refresh result
3802
+ */
3803
+ refresh(provider: string, options?: globalThis.RequestInit): Promise<RefreshConnectionResponse>;
3804
+ /**
3805
+ * Revokes/disconnects a provider connection
3806
+ *
3807
+ * Removes the OAuth connection and deletes stored tokens.
3808
+ * Requires authentication.
3809
+ *
3810
+ * @param provider - The provider ID (e.g., 'linear', 'github')
3811
+ * @param options - Optional request options (must include authentication)
3812
+ * @returns Promise resolving to the revoke result
3813
+ */
3814
+ revoke(provider: string, options?: globalThis.RequestInit): Promise<RevokeConnectionResponse>;
3815
+ }
3816
+
3172
3817
  /**
3173
3818
  * Feedback Service
3174
3819
  *
@@ -3483,6 +4128,88 @@ declare class PluginsService extends BaseSDK {
3483
4128
  }): Promise<RunBuildInToolsResponse>;
3484
4129
  }
3485
4130
 
4131
+ /**
4132
+ * Skill Service
4133
+ *
4134
+ * Provides access to skill providers and tool calling functionality.
4135
+ * This service allows:
4136
+ * - Listing available skill providers (OAuth-connected services like Linear, GitHub)
4137
+ * - Listing available tools for each provider
4138
+ * - Calling tools on connected providers
4139
+ * - Checking connection status
4140
+ */
4141
+ declare class SkillService extends BaseSDK {
4142
+ /**
4143
+ * Lists all available skill providers
4144
+ *
4145
+ * Returns a list of providers that can be connected via OAuth.
4146
+ * This is a public endpoint that doesn't require authentication.
4147
+ *
4148
+ * @param options - Optional request options
4149
+ * @returns Promise resolving to the list of available providers
4150
+ */
4151
+ listProviders(options?: globalThis.RequestInit): Promise<ListSkillProvidersResponse>;
4152
+ /**
4153
+ * Lists available tools for a specific provider
4154
+ *
4155
+ * Returns the tools/functions that can be called on the provider.
4156
+ * This is a public endpoint that doesn't require authentication.
4157
+ *
4158
+ * @param provider - The provider ID (e.g., 'linear', 'github')
4159
+ * @param options - Optional request options
4160
+ * @returns Promise resolving to the list of available tools
4161
+ */
4162
+ listTools(provider: string, options?: globalThis.RequestInit): Promise<ListSkillToolsResponse>;
4163
+ /**
4164
+ * Gets details of a specific tool
4165
+ *
4166
+ * Returns detailed information about a tool including its input schema.
4167
+ * This is a public endpoint that doesn't require authentication.
4168
+ *
4169
+ * @param provider - The provider ID (e.g., 'linear', 'github')
4170
+ * @param toolName - The name of the tool
4171
+ * @param options - Optional request options
4172
+ * @returns Promise resolving to the tool details
4173
+ */
4174
+ getTool(provider: string, toolName: string, options?: globalThis.RequestInit): Promise<GetSkillToolResponse>;
4175
+ /**
4176
+ * Gets the connection status for a provider
4177
+ *
4178
+ * Checks if the authenticated user has an active OAuth connection to the provider.
4179
+ * Requires authentication.
4180
+ *
4181
+ * @param provider - The provider ID (e.g., 'linear', 'github')
4182
+ * @param options - Optional request options (must include authentication)
4183
+ * @returns Promise resolving to the connection status
4184
+ */
4185
+ getStatus(provider: string, options?: globalThis.RequestInit): Promise<GetSkillStatusResponse>;
4186
+ /**
4187
+ * Calls a tool on a connected provider
4188
+ *
4189
+ * Executes a tool/function on the provider using the user's OAuth connection.
4190
+ * Requires authentication and an active OAuth connection to the provider.
4191
+ *
4192
+ * @param provider - The provider ID (e.g., 'linear', 'github')
4193
+ * @param params - The tool call parameters (tool name and arguments)
4194
+ * @param options - Optional request options (must include authentication)
4195
+ * @returns Promise resolving to the tool call result
4196
+ *
4197
+ * @example
4198
+ * ```typescript
4199
+ * // Create a Linear issue
4200
+ * const result = await sdk.skills.callTool('linear', {
4201
+ * tool: 'create_issue',
4202
+ * args: {
4203
+ * title: 'New feature request',
4204
+ * team: 'Engineering',
4205
+ * description: 'We need to implement...'
4206
+ * }
4207
+ * });
4208
+ * ```
4209
+ */
4210
+ callTool<T = unknown>(provider: string, params: SkillCallParams, options?: globalThis.RequestInit): Promise<CallSkillToolResponse<T>>;
4211
+ }
4212
+
3486
4213
  /**
3487
4214
  * User Service
3488
4215
  *
@@ -3803,6 +4530,11 @@ declare class MarketSDK extends BaseSDK {
3803
4530
  * Provides methods for OIDC user authentication, client registration, and M2M token management
3804
4531
  */
3805
4532
  readonly auth: AuthService;
4533
+ /**
4534
+ * Connect service for OAuth connection management
4535
+ * Provides methods to list providers, initiate OAuth flows, and manage connections
4536
+ */
4537
+ readonly connect: ConnectService;
3806
4538
  /**
3807
4539
  * Plugins service for accessing plugin-related functionality
3808
4540
  * Provides methods to list, search, retrieve plugin information, and report installation attempts
@@ -3833,6 +4565,11 @@ declare class MarketSDK extends BaseSDK {
3833
4565
  * Provides methods to submit feedback which is tracked in Linear
3834
4566
  */
3835
4567
  readonly feedback: FeedbackService;
4568
+ /**
4569
+ * Skill service for skill providers and tool calling
4570
+ * Provides methods to list providers, list tools, and call tools on connected OAuth providers
4571
+ */
4572
+ readonly skills: SkillService;
3836
4573
  /**
3837
4574
  * Discovery service for retrieving API service information
3838
4575
  * Used to get information about available endpoints and services
@@ -3941,4 +4678,4 @@ declare function buildTrustedClientPayload(params: {
3941
4678
  userId: string;
3942
4679
  }): TrustedClientPayload;
3943
4680
 
3944
- export { type AccountMeta, type AdminListQueryParams, type AdminListResponse, type AdminPluginParams, type AgentCreateRequest, type AgentCreateResponse, type AgentDetailQuery, type AgentExtension, type AgentInstallCountRequest, type AgentInstallCountResponse, type AgentInterface, type AgentItemDetail, type AgentListQuery, type AgentListResponse, type AgentModifyRequest, type AgentModifyResponse, type AgentSecurityRequirement, type AgentSecurityScheme, type AgentSkill, type AgentStatus, type AgentStatusChangeResponse, type AgentUploadRequest, type AgentUploadResponse, type AgentUploadVersion, type AgentVersionCreateRequest, type AgentVersionCreateResponse, type AgentVersionLocalization, type AgentVersionModifyRequest, type AgentVersionModifyResponse, type AuthorizationCodeTokenRequest, type CheckFavoriteQuery, type CheckFavoriteResponse, type CheckFollowQuery, type CheckFollowResponse, type CheckLikeQuery, type CheckLikeResponse, type ClientRegistrationError, type ClientRegistrationRequest, type ClientRegistrationResponse, type CodeInterpreterToolName, type CodeInterpreterToolParams, type DiscoveryDocument, type EditLocalFileParams, type ExecuteCodeParams, type ExportFileParams, type FavoriteListResponse, type FavoriteQuery, type FavoriteRequest, type FeedbackClientInfo, type FollowListItem, type FollowListResponse, type FollowRequest, type GetCommandOutputParams, type GlobLocalFilesParams, type GrepContentParams, type InteractionTargetType, type KillCommandParams, type LikeListResponse, type LikeQuery, type LikeRequest, type ListLocalFilesParams, MarketAdmin, MarketSDK, type MarketSDKOptions, type MoveLocalFilesParams, type MoveOperation, type OAuthTokenResponse, type OwnAgentListQuery, type PaginationQuery, type PluginI18nImportParams, type PluginI18nImportResponse, type PluginItem, type PluginListResponse, type PluginLocalization, type PluginQueryParams, type PluginUpdateParams, type PluginVersionCreateParams, type PluginVersionUpdateParams, type ProgrammingLanguage, type ReadLocalFileParams, type RefreshTokenRequest, type RenameLocalFileParams, type ReviewStatus, ReviewStatusEnumSchema, type RunBuildInToolsError, type RunBuildInToolsRequest, type RunBuildInToolsResponse, type RunBuildInToolsSuccessData, type RunCommandParams, type SearchLocalFilesParams, type SharedTokenState, StatusEnumSchema, type SubmitFeedbackRequest, type SubmitFeedbackResponse, type SuccessResponse, type ToggleLikeResponse, type TrustedClientPayload, type UnclaimedPluginItem, type UpdateUserInfoRequest, type UpdateUserInfoResponse, type UserAgentItem, type UserInfoQuery, type UserInfoResponse, type UserProfile, VisibilityEnumSchema, type WriteLocalFileParams, buildTrustedClientPayload, createTrustedClientToken, generateNonce };
4681
+ export { type AccountMeta, type AdminListQueryParams, type AdminListResponse, type AdminPluginParams, type AgentCreateRequest, type AgentCreateResponse, type AgentDetailQuery, type AgentExtension, type AgentInstallCountRequest, type AgentInstallCountResponse, type AgentInterface, type AgentItemDetail, type AgentListQuery, type AgentListResponse, type AgentModifyRequest, type AgentModifyResponse, type AgentSecurityRequirement, type AgentSecurityScheme, type AgentSkill, type AgentStatus, type AgentStatusChangeResponse, type AgentUploadRequest, type AgentUploadResponse, type AgentUploadVersion, type AgentVersionCreateRequest, type AgentVersionCreateResponse, type AgentVersionLocalization, type AgentVersionModifyRequest, type AgentVersionModifyResponse, type AuthorizationCodeTokenRequest, type CallSkillToolResponse, type CheckFavoriteQuery, type CheckFavoriteResponse, type CheckFollowQuery, type CheckFollowResponse, type CheckLikeQuery, type CheckLikeResponse, type ClientRegistrationError, type ClientRegistrationRequest, type ClientRegistrationResponse, type CodeInterpreterToolName, type CodeInterpreterToolParams, type ConnectProvider, type ConnectProviderDetail, type ConnectProviderScopes, type ConnectionHealth, type ConnectionStats, type DiscoveryDocument, type EditLocalFileParams, type ExecuteCodeParams, type ExportFileParams, type FavoriteListResponse, type FavoriteQuery, type FavoriteRequest, type FeedbackClientInfo, type FollowListItem, type FollowListResponse, type FollowRequest, type GetAllConnectionsHealthResponse, type GetAuthorizeUrlParams, type GetCommandOutputParams, type GetConnectProviderResponse, type GetConnectionHealthResponse, type GetConnectionStatsResponse, type GetConnectionStatusResponse, type GetSkillStatusResponse, type GetSkillToolResponse, type GlobLocalFilesParams, type GrepContentParams, type InteractionTargetType, type KillCommandParams, type LikeListResponse, type LikeQuery, type LikeRequest, type ListConnectProvidersResponse, type ListConnectionsResponse, type ListLocalFilesParams, type ListSkillProvidersResponse, type ListSkillToolsResponse, MarketAdmin, MarketSDK, type MarketSDKOptions, type MoveLocalFilesParams, type MoveOperation, type OAuthConnection, type OAuthTokenResponse, type OwnAgentListQuery, type PaginationQuery, type PluginI18nImportParams, type PluginI18nImportResponse, type PluginItem, type PluginListResponse, type PluginLocalization, type PluginQueryParams, type PluginUpdateParams, type PluginVersionCreateParams, type PluginVersionUpdateParams, type ProgrammingLanguage, type ReadLocalFileParams, type RefreshConnectionResponse, type RefreshTokenRequest, type RenameLocalFileParams, type ReviewStatus, ReviewStatusEnumSchema, type RevokeConnectionResponse, type RunBuildInToolsError, type RunBuildInToolsRequest, type RunBuildInToolsResponse, type RunBuildInToolsSuccessData, type RunCommandParams, type SearchLocalFilesParams, type SharedTokenState, type SkillCallParams, type SkillErrorResponse, type SkillProviderInfo, type SkillProviderStatus, type SkillTool, StatusEnumSchema, type SubmitFeedbackRequest, type SubmitFeedbackResponse, type SuccessResponse, type ToggleLikeResponse, type TrustedClientPayload, type UnclaimedPluginItem, type UpdateUserInfoRequest, type UpdateUserInfoResponse, type UserAgentItem, type UserInfoQuery, type UserInfoResponse, type UserProfile, VisibilityEnumSchema, type WriteLocalFileParams, buildTrustedClientPayload, createTrustedClientToken, generateNonce };