@renai-labs/sdk 0.1.19 → 0.1.21

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.
@@ -14,6 +14,7 @@ export type SandboxManifest = {
14
14
  globalOpencodeJson: {
15
15
  [key: string]: unknown;
16
16
  };
17
+ globalInstructions?: string;
17
18
  projects: Array<SandboxManifestProject>;
18
19
  environment: {
19
20
  [key: string]: string;
@@ -52,26 +53,6 @@ export type SandboxMountedVolume = {
52
53
  endpoint: string | null;
53
54
  creds: SandboxVolumeCreds;
54
55
  };
55
- export type SandboxManifestProjectSkillSource = {
56
- type: "s3";
57
- presignedUrl: string;
58
- } | {
59
- type: "git";
60
- url: string;
61
- ref?: string;
62
- path?: string;
63
- };
64
- export type SandboxManifestProjectSkillVersion = {
65
- agentVersionId: string;
66
- versionId: string;
67
- version: string;
68
- source: SandboxManifestProjectSkillSource | null;
69
- };
70
- export type SandboxManifestProjectSkill = {
71
- skillId: string;
72
- skillSlug: string;
73
- versions: Array<SandboxManifestProjectSkillVersion>;
74
- };
75
56
  export type PermissionConfig = {
76
57
  __originalKeys?: Array<string>;
77
58
  read?: "allow" | "deny" | "ask" | {
@@ -143,13 +124,22 @@ export type SandboxManifestProject = {
143
124
  opencodeJson: {
144
125
  [key: string]: unknown;
145
126
  };
146
- skills: Array<SandboxManifestProjectSkill>;
127
+ instructions?: string;
128
+ /**
129
+ * Menu base path (`projects/<projectId>`) under the skill-serve token root.
130
+ */
131
+ skillMenuPath?: string;
147
132
  volumes: Array<SandboxMountedVolume>;
148
133
  };
149
134
  export type SandboxTokenResponse = {
150
135
  token: string;
151
136
  expiresAt: string;
152
137
  tokenId: string;
138
+ /**
139
+ * Skill-read token rotated alongside the session token; replaces any prior one for this sandbox.
140
+ */
141
+ skillReadToken: string;
142
+ skillReadExpiresAt: string;
153
143
  };
154
144
  export type WebsiteMetadata = {
155
145
  title?: string;
@@ -166,12 +156,28 @@ export type ReplayPublicListItem = {
166
156
  websiteMetadata: WebsiteMetadata | null;
167
157
  updatedAt: string;
168
158
  };
159
+ export type PublisherPublicView = {
160
+ id: string;
161
+ slug: string;
162
+ handle: string;
163
+ name: string;
164
+ description: string | null;
165
+ avatar: string | null;
166
+ url: string | null;
167
+ isVerified: boolean;
168
+ links: Array<PublisherLink>;
169
+ };
170
+ export type PublisherLink = {
171
+ label: string;
172
+ href: string;
173
+ };
169
174
  export type BlueprintPublicListItem = {
170
175
  id: string;
171
176
  slug: string;
172
177
  name: string;
173
178
  description: string | null;
174
179
  websiteMetadata: WebsiteMetadata | null;
180
+ publisherId: string | null;
175
181
  updatedAt: string;
176
182
  };
177
183
  export type McpPublicView = {
@@ -278,6 +284,51 @@ export type AgentLatestVersion = {
278
284
  };
279
285
  }>;
280
286
  };
287
+ export type Skill = {
288
+ id: string;
289
+ slug: string;
290
+ name: string;
291
+ description: string | null;
292
+ icon: string | null;
293
+ docUrl: string | null;
294
+ repository: Repository | null;
295
+ orgId: string;
296
+ userId: string | null;
297
+ publisherId: string | null;
298
+ parentId: string | null;
299
+ websiteMetadata: WebsiteMetadata | null;
300
+ sortOrder: number | null;
301
+ popularityScore: number | null;
302
+ trendingScore: number | null;
303
+ rank: number | null;
304
+ latestVersionId: string | null;
305
+ createdAt: string;
306
+ updatedAt: string;
307
+ archivedAt: string | null;
308
+ deprecatedAt: string | null;
309
+ deprecationMessage: string | null;
310
+ tags?: Array<string>;
311
+ };
312
+ export type McpAuthConfig = {
313
+ type: "oauth";
314
+ scopes?: Array<string>;
315
+ tokenEndpoint?: string;
316
+ authorizationEndpoint?: string;
317
+ tokenEndpointAuth?: "none" | "client_secret_basic" | "client_secret_post";
318
+ } | {
319
+ type: "api_key";
320
+ headerName?: string;
321
+ queryParam?: string;
322
+ } | {
323
+ type: "basic";
324
+ } | {
325
+ type: "none";
326
+ } | {
327
+ type: "mcp_provider";
328
+ provider: "composio";
329
+ toolkit: string;
330
+ authConfigId: string;
331
+ };
281
332
  export type OpencodeSession = {
282
333
  id: string;
283
334
  createdById: string;
@@ -321,6 +372,62 @@ export type OpencodeSession = {
321
372
  archivedAt: string | null;
322
373
  compactingAt: string | null;
323
374
  };
375
+ export type Mcp = {
376
+ id: string;
377
+ slug: string;
378
+ name: string;
379
+ description: string | null;
380
+ icon: string | null;
381
+ mcpServerUrl: string | null;
382
+ docUrl: string | null;
383
+ type: "remote" | "local";
384
+ transport: "streamable-http" | "sse" | "stdio";
385
+ command: string | null;
386
+ args: Array<string>;
387
+ version: string | null;
388
+ repository: Repository | null;
389
+ tools: Array<string>;
390
+ prompts: Array<string>;
391
+ auth: "none" | "oauth" | "api_key" | "basic" | "mcp_provider";
392
+ authConfig: McpAuthConfig | null;
393
+ env: {
394
+ [key: string]: string;
395
+ };
396
+ requiredCredentials: Array<RequiredCredential>;
397
+ orgId: string;
398
+ userId: string | null;
399
+ publisherId: string | null;
400
+ websiteMetadata: WebsiteMetadata | null;
401
+ sortOrder: number | null;
402
+ popularityScore: number | null;
403
+ trendingScore: number | null;
404
+ rank: number | null;
405
+ createdAt: string;
406
+ updatedAt: string;
407
+ archivedAt: string | null;
408
+ deprecatedAt: string | null;
409
+ deprecationMessage: string | null;
410
+ tags?: Array<string>;
411
+ };
412
+ export type Agent = {
413
+ id: string;
414
+ slug: string;
415
+ name: string;
416
+ icon: string | null;
417
+ orgId: string;
418
+ userId: string | null;
419
+ publisherId: string | null;
420
+ parentId: string | null;
421
+ websiteMetadata: WebsiteMetadata | null;
422
+ latestVersionId: string | null;
423
+ createdAt: string;
424
+ updatedAt: string;
425
+ archivedAt: string | null;
426
+ deprecatedAt: string | null;
427
+ deprecationMessage: string | null;
428
+ tags?: Array<string>;
429
+ latestVersion?: AgentLatestVersion | null;
430
+ };
324
431
  export type OAuthCallbackInput = string;
325
432
  export type HealthCheckData = {
326
433
  body?: never;
@@ -354,6 +461,27 @@ export type ComposioOauthCallbackData = {
354
461
  };
355
462
  url: "/api/composio/oauth/callback";
356
463
  };
464
+ export type InvitationUnsubscribeData = {
465
+ body?: never;
466
+ path: {
467
+ id: string;
468
+ };
469
+ query?: never;
470
+ url: "/api/invitations/{id}/unsubscribe";
471
+ };
472
+ export type InvitationUnsubscribeErrors = {
473
+ /**
474
+ * The request was not an RFC 8058 one-click unsubscribe
475
+ */
476
+ 400: unknown;
477
+ };
478
+ export type InvitationUnsubscribeResponses = {
479
+ /**
480
+ * The pending invitation was rejected, or was already unavailable
481
+ */
482
+ 204: void;
483
+ };
484
+ export type InvitationUnsubscribeResponse = InvitationUnsubscribeResponses[keyof InvitationUnsubscribeResponses];
357
485
  export type GithubOauthCallbackData = {
358
486
  body?: never;
359
487
  path?: never;
@@ -375,6 +503,30 @@ export type GoogleOauthCallbackData = {
375
503
  };
376
504
  url: "/api/google/oauth/callback";
377
505
  };
506
+ export type OrganizationLogoGetData = {
507
+ body?: never;
508
+ path: {
509
+ asset: string;
510
+ };
511
+ query?: never;
512
+ url: "/api/organization-logos/{asset}";
513
+ };
514
+ export type OrganizationLogoGetErrors = {
515
+ /**
516
+ * Not found
517
+ */
518
+ 404: {
519
+ error: string;
520
+ };
521
+ };
522
+ export type OrganizationLogoGetError = OrganizationLogoGetErrors[keyof OrganizationLogoGetErrors];
523
+ export type OrganizationLogoGetResponses = {
524
+ /**
525
+ * Processed organization logo
526
+ */
527
+ 200: Blob | File;
528
+ };
529
+ export type OrganizationLogoGetResponse = OrganizationLogoGetResponses[keyof OrganizationLogoGetResponses];
378
530
  export type RegistryAgentGetBySlugData = {
379
531
  body?: never;
380
532
  path: {
@@ -482,6 +634,156 @@ export type RegistryBlueprintListResponses = {
482
634
  200: Array<BlueprintPublicListItem>;
483
635
  };
484
636
  export type RegistryBlueprintListResponse = RegistryBlueprintListResponses[keyof RegistryBlueprintListResponses];
637
+ export type RegistryPublisherListData = {
638
+ body?: never;
639
+ path?: never;
640
+ query?: {
641
+ limit?: number;
642
+ offset?: number;
643
+ includeDeprecated?: boolean;
644
+ };
645
+ url: "/api/registry/publishers";
646
+ };
647
+ export type RegistryPublisherListErrors = {
648
+ /**
649
+ * Bad request
650
+ */
651
+ 400: {
652
+ error: string;
653
+ };
654
+ };
655
+ export type RegistryPublisherListError = RegistryPublisherListErrors[keyof RegistryPublisherListErrors];
656
+ export type RegistryPublisherListResponses = {
657
+ /**
658
+ * Published publisher list
659
+ */
660
+ 200: Array<PublisherPublicView>;
661
+ };
662
+ export type RegistryPublisherListResponse = RegistryPublisherListResponses[keyof RegistryPublisherListResponses];
663
+ export type RegistryPublisherBlueprintsData = {
664
+ body?: never;
665
+ path: {
666
+ /**
667
+ * URL-friendly identifier
668
+ */
669
+ slug: string;
670
+ };
671
+ query?: {
672
+ limit?: number;
673
+ offset?: number;
674
+ includeDeprecated?: boolean;
675
+ };
676
+ url: "/api/registry/publishers/{slug}/blueprints";
677
+ };
678
+ export type RegistryPublisherBlueprintsErrors = {
679
+ /**
680
+ * Not found
681
+ */
682
+ 404: {
683
+ error: string;
684
+ };
685
+ };
686
+ export type RegistryPublisherBlueprintsError = RegistryPublisherBlueprintsErrors[keyof RegistryPublisherBlueprintsErrors];
687
+ export type RegistryPublisherBlueprintsResponses = {
688
+ /**
689
+ * Published blueprint list for the publisher
690
+ */
691
+ 200: Array<BlueprintPublicListItem>;
692
+ };
693
+ export type RegistryPublisherBlueprintsResponse = RegistryPublisherBlueprintsResponses[keyof RegistryPublisherBlueprintsResponses];
694
+ export type RegistryPublisherSkillsData = {
695
+ body?: never;
696
+ path: {
697
+ /**
698
+ * URL-friendly identifier
699
+ */
700
+ slug: string;
701
+ };
702
+ query?: {
703
+ limit?: number;
704
+ offset?: number;
705
+ includeDeprecated?: boolean;
706
+ };
707
+ url: "/api/registry/publishers/{slug}/skills";
708
+ };
709
+ export type RegistryPublisherSkillsErrors = {
710
+ /**
711
+ * Not found
712
+ */
713
+ 404: {
714
+ error: string;
715
+ };
716
+ };
717
+ export type RegistryPublisherSkillsError = RegistryPublisherSkillsErrors[keyof RegistryPublisherSkillsErrors];
718
+ export type RegistryPublisherSkillsResponses = {
719
+ /**
720
+ * Published skill list for the publisher
721
+ */
722
+ 200: Array<Skill>;
723
+ };
724
+ export type RegistryPublisherSkillsResponse = RegistryPublisherSkillsResponses[keyof RegistryPublisherSkillsResponses];
725
+ export type RegistryPublisherAgentsData = {
726
+ body?: never;
727
+ path: {
728
+ /**
729
+ * URL-friendly identifier
730
+ */
731
+ slug: string;
732
+ };
733
+ query?: {
734
+ limit?: number;
735
+ offset?: number;
736
+ includeDeprecated?: boolean;
737
+ };
738
+ url: "/api/registry/publishers/{slug}/agents";
739
+ };
740
+ export type RegistryPublisherAgentsErrors = {
741
+ /**
742
+ * Not found
743
+ */
744
+ 404: {
745
+ error: string;
746
+ };
747
+ };
748
+ export type RegistryPublisherAgentsError = RegistryPublisherAgentsErrors[keyof RegistryPublisherAgentsErrors];
749
+ export type RegistryPublisherAgentsResponses = {
750
+ /**
751
+ * Published agent list for the publisher
752
+ */
753
+ 200: Array<Agent>;
754
+ };
755
+ export type RegistryPublisherAgentsResponse = RegistryPublisherAgentsResponses[keyof RegistryPublisherAgentsResponses];
756
+ export type RegistryPublisherMcpsData = {
757
+ body?: never;
758
+ path: {
759
+ /**
760
+ * URL-friendly identifier
761
+ */
762
+ slug: string;
763
+ };
764
+ query?: {
765
+ limit?: number;
766
+ offset?: number;
767
+ includeDeprecated?: boolean;
768
+ };
769
+ url: "/api/registry/publishers/{slug}/mcps";
770
+ };
771
+ export type RegistryPublisherMcpsErrors = {
772
+ /**
773
+ * Not found
774
+ */
775
+ 404: {
776
+ error: string;
777
+ };
778
+ };
779
+ export type RegistryPublisherMcpsError = RegistryPublisherMcpsErrors[keyof RegistryPublisherMcpsErrors];
780
+ export type RegistryPublisherMcpsResponses = {
781
+ /**
782
+ * Published MCP list for the publisher
783
+ */
784
+ 200: Array<Mcp>;
785
+ };
786
+ export type RegistryPublisherMcpsResponse = RegistryPublisherMcpsResponses[keyof RegistryPublisherMcpsResponses];
485
787
  export type RegistryReplayListData = {
486
788
  body?: never;
487
789
  path?: never;
@@ -897,6 +1199,7 @@ export type SandboxSlackMessageData = {
897
1199
  channelId: string;
898
1200
  threadTs?: string;
899
1201
  text: string;
1202
+ followUps?: Array<string>;
900
1203
  sessionId?: string;
901
1204
  };
902
1205
  path?: never;
@@ -1604,6 +1907,7 @@ export type SandboxSlackReplyCurrentData = {
1604
1907
  filename: string;
1605
1908
  contentBase64: string;
1606
1909
  }>;
1910
+ followUps?: Array<string>;
1607
1911
  };
1608
1912
  path?: never;
1609
1913
  query?: never;
@@ -1653,6 +1957,7 @@ export type SandboxTelegramReplyCurrentData = {
1653
1957
  filename: string;
1654
1958
  contentBase64: string;
1655
1959
  }>;
1960
+ followUps?: Array<string>;
1656
1961
  };
1657
1962
  path?: never;
1658
1963
  query?: never;
@@ -1702,6 +2007,7 @@ export type SandboxEmailReplyCurrentData = {
1702
2007
  filename: string;
1703
2008
  contentBase64: string;
1704
2009
  }>;
2010
+ followUps?: Array<string>;
1705
2011
  };
1706
2012
  path?: never;
1707
2013
  query?: never;
@@ -1751,6 +2057,7 @@ export type SandboxLinearReplyCurrentData = {
1751
2057
  filename: string;
1752
2058
  contentBase64: string;
1753
2059
  }>;
2060
+ followUps?: Array<string>;
1754
2061
  };
1755
2062
  path?: never;
1756
2063
  query?: never;