@runloop/reflex-client 0.15.2 → 0.17.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.
Files changed (140) hide show
  1. package/dist/generated/agent-groups.d.ts +1 -1
  2. package/dist/generated/agent-groups.js +1 -1
  3. package/dist/generated/agents.d.ts +20 -7
  4. package/dist/generated/agents.d.ts.map +1 -1
  5. package/dist/generated/agents.js +26 -6
  6. package/dist/generated/agents.js.map +1 -1
  7. package/dist/generated/model/agentSessionIndexEntry.d.ts +13 -0
  8. package/dist/generated/model/agentSessionIndexEntry.d.ts.map +1 -0
  9. package/dist/generated/model/agentSessionIndexEntry.js +2 -0
  10. package/dist/generated/model/agentSessionIndexEntry.js.map +1 -0
  11. package/dist/generated/model/agentSessionIndexEntryEntry.d.ts +28 -0
  12. package/dist/generated/model/agentSessionIndexEntryEntry.d.ts.map +1 -0
  13. package/dist/generated/model/agentSessionIndexEntryEntry.js +8 -0
  14. package/dist/generated/model/agentSessionIndexEntryEntry.js.map +1 -0
  15. package/dist/generated/model/agentSessionIndexResponse.d.ts +12 -0
  16. package/dist/generated/model/agentSessionIndexResponse.d.ts.map +1 -0
  17. package/dist/generated/model/agentSessionIndexResponse.js +2 -0
  18. package/dist/generated/model/agentSessionIndexResponse.js.map +1 -0
  19. package/dist/generated/model/agentStreamPageInfo.d.ts +13 -0
  20. package/dist/generated/model/agentStreamPageInfo.d.ts.map +1 -0
  21. package/dist/generated/model/agentStreamPageInfo.js +8 -0
  22. package/dist/generated/model/agentStreamPageInfo.js.map +1 -0
  23. package/dist/generated/model/attachAgentMcpServers200.d.ts +13 -0
  24. package/dist/generated/model/attachAgentMcpServers200.d.ts.map +1 -0
  25. package/dist/generated/model/attachAgentMcpServers200.js +2 -0
  26. package/dist/generated/model/attachAgentMcpServers200.js.map +1 -0
  27. package/dist/generated/model/attachAgentMcpServers200Activation.d.ts +14 -0
  28. package/dist/generated/model/attachAgentMcpServers200Activation.d.ts.map +1 -0
  29. package/dist/generated/model/attachAgentMcpServers200Activation.js +8 -0
  30. package/dist/generated/model/attachAgentMcpServers200Activation.js.map +1 -0
  31. package/dist/generated/model/availableSecretCategory.d.ts +0 -1
  32. package/dist/generated/model/availableSecretCategory.d.ts.map +1 -1
  33. package/dist/generated/model/availableSecretCategory.js +0 -1
  34. package/dist/generated/model/availableSecretCategory.js.map +1 -1
  35. package/dist/generated/model/getAgentStreamPaged.d.ts +12 -0
  36. package/dist/generated/model/getAgentStreamPaged.d.ts.map +1 -0
  37. package/dist/generated/model/getAgentStreamPaged.js +11 -0
  38. package/dist/generated/model/getAgentStreamPaged.js.map +1 -0
  39. package/dist/generated/model/getAgentStreamParams.d.ts +16 -0
  40. package/dist/generated/model/getAgentStreamParams.d.ts.map +1 -0
  41. package/dist/generated/model/getAgentStreamParams.js +2 -0
  42. package/dist/generated/model/getAgentStreamParams.js.map +1 -0
  43. package/dist/generated/model/getIdpConfig200Config.d.ts +3 -0
  44. package/dist/generated/model/getIdpConfig200Config.d.ts.map +1 -1
  45. package/dist/generated/model/index.d.ts +9 -0
  46. package/dist/generated/model/index.d.ts.map +1 -1
  47. package/dist/generated/model/index.js +9 -0
  48. package/dist/generated/model/index.js.map +1 -1
  49. package/dist/generated/model/pagedAgentStreamResponse.d.ts +13 -0
  50. package/dist/generated/model/pagedAgentStreamResponse.d.ts.map +1 -0
  51. package/dist/generated/model/pagedAgentStreamResponse.js +2 -0
  52. package/dist/generated/model/pagedAgentStreamResponse.js.map +1 -0
  53. package/dist/generated/model/upsertIdpConfig200.d.ts +3 -0
  54. package/dist/generated/model/upsertIdpConfig200.d.ts.map +1 -1
  55. package/dist/generated/model/upsertIdpConfigBody.d.ts +9 -0
  56. package/dist/generated/model/upsertIdpConfigBody.d.ts.map +1 -1
  57. package/dist/react/agent-groups.d.ts +2 -2
  58. package/dist/react/agent-groups.js +2 -2
  59. package/dist/react/agents.d.ts +34 -8
  60. package/dist/react/agents.d.ts.map +1 -1
  61. package/dist/react/agents.js +39 -12
  62. package/dist/react/agents.js.map +1 -1
  63. package/dist/react/model/agentSessionIndexEntry.d.ts +13 -0
  64. package/dist/react/model/agentSessionIndexEntry.d.ts.map +1 -0
  65. package/dist/react/model/agentSessionIndexEntry.js +2 -0
  66. package/dist/react/model/agentSessionIndexEntry.js.map +1 -0
  67. package/dist/react/model/agentSessionIndexEntryEntry.d.ts +28 -0
  68. package/dist/react/model/agentSessionIndexEntryEntry.d.ts.map +1 -0
  69. package/dist/react/model/agentSessionIndexEntryEntry.js +8 -0
  70. package/dist/react/model/agentSessionIndexEntryEntry.js.map +1 -0
  71. package/dist/react/model/agentSessionIndexResponse.d.ts +12 -0
  72. package/dist/react/model/agentSessionIndexResponse.d.ts.map +1 -0
  73. package/dist/react/model/agentSessionIndexResponse.js +2 -0
  74. package/dist/react/model/agentSessionIndexResponse.js.map +1 -0
  75. package/dist/react/model/agentStreamPageInfo.d.ts +13 -0
  76. package/dist/react/model/agentStreamPageInfo.d.ts.map +1 -0
  77. package/dist/react/model/agentStreamPageInfo.js +8 -0
  78. package/dist/react/model/agentStreamPageInfo.js.map +1 -0
  79. package/dist/react/model/attachAgentMcpServers200.d.ts +13 -0
  80. package/dist/react/model/attachAgentMcpServers200.d.ts.map +1 -0
  81. package/dist/react/model/attachAgentMcpServers200.js +2 -0
  82. package/dist/react/model/attachAgentMcpServers200.js.map +1 -0
  83. package/dist/react/model/attachAgentMcpServers200Activation.d.ts +14 -0
  84. package/dist/react/model/attachAgentMcpServers200Activation.d.ts.map +1 -0
  85. package/dist/react/model/attachAgentMcpServers200Activation.js +8 -0
  86. package/dist/react/model/attachAgentMcpServers200Activation.js.map +1 -0
  87. package/dist/react/model/availableSecretCategory.d.ts +0 -1
  88. package/dist/react/model/availableSecretCategory.d.ts.map +1 -1
  89. package/dist/react/model/availableSecretCategory.js +0 -1
  90. package/dist/react/model/availableSecretCategory.js.map +1 -1
  91. package/dist/react/model/getAgentStreamPaged.d.ts +12 -0
  92. package/dist/react/model/getAgentStreamPaged.d.ts.map +1 -0
  93. package/dist/react/model/getAgentStreamPaged.js +11 -0
  94. package/dist/react/model/getAgentStreamPaged.js.map +1 -0
  95. package/dist/react/model/getAgentStreamParams.d.ts +16 -0
  96. package/dist/react/model/getAgentStreamParams.d.ts.map +1 -0
  97. package/dist/react/model/getAgentStreamParams.js +2 -0
  98. package/dist/react/model/getAgentStreamParams.js.map +1 -0
  99. package/dist/react/model/getIdpConfig200Config.d.ts +3 -0
  100. package/dist/react/model/getIdpConfig200Config.d.ts.map +1 -1
  101. package/dist/react/model/pagedAgentStreamResponse.d.ts +13 -0
  102. package/dist/react/model/pagedAgentStreamResponse.d.ts.map +1 -0
  103. package/dist/react/model/pagedAgentStreamResponse.js +2 -0
  104. package/dist/react/model/pagedAgentStreamResponse.js.map +1 -0
  105. package/dist/react/model/upsertIdpConfig200.d.ts +3 -0
  106. package/dist/react/model/upsertIdpConfig200.d.ts.map +1 -1
  107. package/dist/react/model/upsertIdpConfigBody.d.ts +9 -0
  108. package/dist/react/model/upsertIdpConfigBody.d.ts.map +1 -1
  109. package/package.json +1 -1
  110. package/src/generated/agent-groups.ts +1 -1
  111. package/src/generated/agents.ts +56 -8
  112. package/src/generated/model/agentSessionIndexEntry.ts +13 -0
  113. package/src/generated/model/agentSessionIndexEntryEntry.ts +28 -0
  114. package/src/generated/model/agentSessionIndexResponse.ts +12 -0
  115. package/src/generated/model/agentStreamPageInfo.ts +13 -0
  116. package/src/generated/model/attachAgentMcpServers200.ts +13 -0
  117. package/src/generated/model/attachAgentMcpServers200Activation.ts +14 -0
  118. package/src/generated/model/availableSecretCategory.ts +0 -1
  119. package/src/generated/model/getAgentStreamPaged.ts +14 -0
  120. package/src/generated/model/getAgentStreamParams.ts +16 -0
  121. package/src/generated/model/getIdpConfig200Config.ts +3 -0
  122. package/src/generated/model/index.ts +9 -0
  123. package/src/generated/model/pagedAgentStreamResponse.ts +13 -0
  124. package/src/generated/model/upsertIdpConfig200.ts +3 -0
  125. package/src/generated/model/upsertIdpConfigBody.ts +9 -0
  126. package/src/react/agent-groups.ts +2 -2
  127. package/src/react/agents.ts +102 -13
  128. package/src/react/model/agentSessionIndexEntry.ts +13 -0
  129. package/src/react/model/agentSessionIndexEntryEntry.ts +28 -0
  130. package/src/react/model/agentSessionIndexResponse.ts +12 -0
  131. package/src/react/model/agentStreamPageInfo.ts +13 -0
  132. package/src/react/model/attachAgentMcpServers200.ts +13 -0
  133. package/src/react/model/attachAgentMcpServers200Activation.ts +14 -0
  134. package/src/react/model/availableSecretCategory.ts +0 -1
  135. package/src/react/model/getAgentStreamPaged.ts +14 -0
  136. package/src/react/model/getAgentStreamParams.ts +16 -0
  137. package/src/react/model/getIdpConfig200Config.ts +3 -0
  138. package/src/react/model/pagedAgentStreamResponse.ts +13 -0
  139. package/src/react/model/upsertIdpConfig200.ts +3 -0
  140. package/src/react/model/upsertIdpConfigBody.ts +9 -0
@@ -8,9 +8,18 @@ import type { UpsertIdpConfigBodyGroupMappingsItem } from './upsertIdpConfigBody
8
8
  export type UpsertIdpConfigBody = {
9
9
  displayName?: string | null;
10
10
  issuer: string;
11
+ idJagEnabled?: boolean;
12
+ /**
13
+ * @maxItems 50
14
+ * @items.minLength 1
15
+ * @items.maxLength 512
16
+ */
17
+ idJagAllowedClientIds?: string[];
18
+ jwksUri?: string | null;
11
19
  /** @maxItems 200 */
12
20
  groupMappings?: UpsertIdpConfigBodyGroupMappingsItem[];
13
21
  oktaOrgUrl?: string | null;
14
22
  oktaSyncEnabled?: boolean;
23
+ expectedUpdatedAt?: number;
15
24
  };
16
25
  //# sourceMappingURL=upsertIdpConfigBody.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"upsertIdpConfigBody.d.ts","sourceRoot":"","sources":["../../../src/react/model/upsertIdpConfigBody.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,2CAA2C,CAAC;AAEtG,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB;IACpB,aAAa,CAAC,EAAE,oCAAoC,EAAE,CAAC;IACvD,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC"}
1
+ {"version":3,"file":"upsertIdpConfigBody.d.ts","sourceRoot":"","sources":["../../../src/react/model/upsertIdpConfigBody.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,2CAA2C,CAAC;AAEtG,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;SAIK;IACL,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,oBAAoB;IACpB,aAAa,CAAC,EAAE,oCAAoC,EAAE,CAAC;IACvD,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@runloop/reflex-client",
3
- "version": "0.15.2",
3
+ "version": "0.17.0",
4
4
  "description": "Typed API client and live event stream for Reflex, authenticated with a personal API key.",
5
5
  "license": "MIT",
6
6
  "keywords": [
@@ -177,7 +177,7 @@ export const getAddAgentGroupMembersUrl = (groupId: string,) => {
177
177
  }
178
178
 
179
179
  /**
180
- * @summary Add agents to a group.
180
+ * @summary File agents into a group, moving them out of any other group.
181
181
  */
182
182
  export const addAgentGroupMembers = async (groupId: string,
183
183
  agentGroupMembersRequest: AgentGroupMembersRequest, options?: RequestInit): Promise<addAgentGroupMembersResponse> => {
@@ -9,10 +9,12 @@ import type {
9
9
  AgentCommandPendingResponse,
10
10
  AgentCommandStatusResponse,
11
11
  AgentServiceStatusesResponse,
12
+ AgentSessionIndexResponse,
12
13
  AgentView,
13
14
  AgentViewsResponse,
14
15
  ArchiveAllAgents200,
15
16
  ArchiveAllAgentsBody,
17
+ AttachAgentMcpServers200,
16
18
  AttachAgentMcpServersBody,
17
19
  AxonEvent,
18
20
  CreateAgentBody,
@@ -22,8 +24,10 @@ import type {
22
24
  EnqueueAgentMessageBody,
23
25
  GetAgentCommandStatusParams,
24
26
  GetAgentQueue200Item,
27
+ GetAgentStreamParams,
25
28
  ListAgents200,
26
29
  ListAgentsParams,
30
+ PagedAgentStreamResponse,
27
31
  RemoveQueuedAgentMessage200,
28
32
  ReorderAgentQueue200Item,
29
33
  ReorderAgentQueueBody,
@@ -534,7 +538,7 @@ export const setAgentMark = async (id: string,
534
538
 
535
539
 
536
540
  export type attachAgentMcpServersResponse200 = {
537
- data: Agent
541
+ data: AttachAgentMcpServers200
538
542
  status: 200
539
543
  }
540
544
 
@@ -554,7 +558,7 @@ export const getAttachAgentMcpServersUrl = (id: string,) => {
554
558
  }
555
559
 
556
560
  /**
557
- * Mints live MCP hub tokens for the devbox and registers each server in the agent's native config immediately, then records the ids on the agent's `mcp-servers` attachment. The devbox must be running (409 `agent_devbox_not_running` otherwise); a registration the box reports as failed is a 502 `mcp_registration_failed` with nothing persisted. Already-attached ids are skipped, unknown or disabled ids are dropped (compare the returned agent's attachments to detect a partial drop), and the request 404s `mcp_config_not_found` only when no id resolves. Local (stdio) servers are rejected because their subprocess secrets only exist as create-time devbox params.
561
+ * Mints live MCP hub tokens for the devbox and registers each server in the agent's native config immediately, then records the ids on the agent's `mcp-servers` attachment. The devbox must be running (409 `agent_devbox_not_running` otherwise); a registration the box reports as failed is a 502 `mcp_registration_failed` with nothing persisted. `activation` reports whether the agent process that is running right now loaded the servers (`active`, usable on its next turn) or whether they wait on disk for its next start (`deferred`) — both are successful attaches. Already-attached ids are skipped, unknown or disabled ids are dropped (compare the returned agent's attachments to detect a partial drop), and the request 404s `mcp_config_not_found` only when no id resolves. Local (stdio) servers are rejected because their subprocess secrets only exist as create-time devbox params.
558
562
  * @summary Attach MCP servers to a running agent's devbox.
559
563
  */
560
564
  export const attachAgentMcpServers = async (id: string,
@@ -938,6 +942,41 @@ export const getAgentServiceStatuses = async (id: string, options?: RequestInit)
938
942
  );}
939
943
 
940
944
 
945
+ export type getAgentSessionIndexResponse200 = {
946
+ data: AgentSessionIndexResponse
947
+ status: 200
948
+ }
949
+
950
+ export type getAgentSessionIndexResponseSuccess = (getAgentSessionIndexResponse200) & {
951
+ headers: Headers;
952
+ };
953
+ ;
954
+
955
+ export type getAgentSessionIndexResponse = (getAgentSessionIndexResponseSuccess)
956
+
957
+ export const getGetAgentSessionIndexUrl = (id: string,) => {
958
+
959
+
960
+
961
+
962
+ return `/agents/${encodeURIComponent(String(id))}/session-index`
963
+ }
964
+
965
+ /**
966
+ * @summary The agent's session index: every prompt and turn boundary, for nav and paging.
967
+ */
968
+ export const getAgentSessionIndex = async (id: string, options?: RequestInit): Promise<getAgentSessionIndexResponse> => {
969
+
970
+ return apiFetch<getAgentSessionIndexResponse>(getGetAgentSessionIndexUrl(id),
971
+ {
972
+ ...options,
973
+ method: 'GET'
974
+
975
+
976
+ }
977
+ );}
978
+
979
+
941
980
  export type createAgentSnapshotResponse202 = {
942
981
  data: Snapshot
943
982
  status: 202
@@ -1011,7 +1050,7 @@ export const stopAgent = async (id: string, options?: RequestInit): Promise<stop
1011
1050
 
1012
1051
 
1013
1052
  export type getAgentStreamResponse200 = {
1014
- data: AxonEvent[]
1053
+ data: AxonEvent[] | PagedAgentStreamResponse
1015
1054
  status: 200
1016
1055
  }
1017
1056
 
@@ -1022,20 +1061,29 @@ export type getAgentStreamResponseSuccess = (getAgentStreamResponse200) & {
1022
1061
 
1023
1062
  export type getAgentStreamResponse = (getAgentStreamResponseSuccess)
1024
1063
 
1025
- export const getGetAgentStreamUrl = (id: string,) => {
1064
+ export const getGetAgentStreamUrl = (id: string,
1065
+ params?: GetAgentStreamParams,) => {
1066
+ const normalizedParams = new URLSearchParams();
1026
1067
 
1068
+ Object.entries(params || {}).forEach(([key, value]) => {
1027
1069
 
1070
+ if (value !== undefined) {
1071
+ normalizedParams.append(key, value === null ? 'null' : String(value))
1072
+ }
1073
+ });
1028
1074
 
1075
+ const stringifiedParams = normalizedParams.toString();
1029
1076
 
1030
- return `/agents/${encodeURIComponent(String(id))}/stream`
1077
+ return stringifiedParams.length > 0 ? `/agents/${encodeURIComponent(String(id))}/stream?${stringifiedParams}` : `/agents/${encodeURIComponent(String(id))}/stream`
1031
1078
  }
1032
1079
 
1033
1080
  /**
1034
- * @summary Get the agent's full event history.
1081
+ * @summary Get the agent's event history: a turn-aligned window for indexed agents, the full array for legacy ones.
1035
1082
  */
1036
- export const getAgentStream = async (id: string, options?: RequestInit): Promise<getAgentStreamResponse> => {
1083
+ export const getAgentStream = async (id: string,
1084
+ params?: GetAgentStreamParams, options?: RequestInit): Promise<getAgentStreamResponse> => {
1037
1085
 
1038
- return apiFetch<getAgentStreamResponse>(getGetAgentStreamUrl(id),
1086
+ return apiFetch<getAgentStreamResponse>(getGetAgentStreamUrl(id,params),
1039
1087
  {
1040
1088
  ...options,
1041
1089
  method: 'GET'
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Generated by orval v8.18.0 🍺
3
+ * Do not edit manually.
4
+ * Reflex API
5
+ * OpenAPI spec version: 1.0.0
6
+ */
7
+ import type { AgentSessionIndexEntryEntry } from './agentSessionIndexEntryEntry.js';
8
+
9
+ export interface AgentSessionIndexEntry {
10
+ seqNumber: number;
11
+ timestamp: number | null;
12
+ entry: AgentSessionIndexEntryEntry;
13
+ }
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Generated by orval v8.18.0 🍺
3
+ * Do not edit manually.
4
+ * Reflex API
5
+ * OpenAPI spec version: 1.0.0
6
+ */
7
+
8
+ export type AgentSessionIndexEntryEntry = {
9
+ type: 'prompt';
10
+ data: {
11
+ /** @maxLength 64 */
12
+ text: string;
13
+ opensTurn: boolean;
14
+ protocolType: string;
15
+ };
16
+ } | {
17
+ type: 'turn.end';
18
+ data: {
19
+ reason: 'completed' | 'errored' | 'interrupted' | 'suspended' | 'shutdown';
20
+ durationMs?: number;
21
+ tokenUsage?: {
22
+ inputTokens?: number | null;
23
+ outputTokens?: number | null;
24
+ cacheReadTokens?: number | null;
25
+ cacheWriteTokens?: number | null;
26
+ };
27
+ };
28
+ };
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Generated by orval v8.18.0 🍺
3
+ * Do not edit manually.
4
+ * Reflex API
5
+ * OpenAPI spec version: 1.0.0
6
+ */
7
+ import type { AgentSessionIndexEntry } from './agentSessionIndexEntry.js';
8
+
9
+ export interface AgentSessionIndexResponse {
10
+ entries: AgentSessionIndexEntry[];
11
+ sessionIndexFromSeq: number | null;
12
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Generated by orval v8.18.0 🍺
3
+ * Do not edit manually.
4
+ * Reflex API
5
+ * OpenAPI spec version: 1.0.0
6
+ */
7
+
8
+ export interface AgentStreamPageInfo {
9
+ startSeq: number;
10
+ endSeq: number;
11
+ prevCursor: number | null;
12
+ hasMore: boolean;
13
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Generated by orval v8.18.0 🍺
3
+ * Do not edit manually.
4
+ * Reflex API
5
+ * OpenAPI spec version: 1.0.0
6
+ */
7
+ import type { Agent } from './agent.js';
8
+ import type { AttachAgentMcpServers200Activation } from './attachAgentMcpServers200Activation.js';
9
+
10
+ export type AttachAgentMcpServers200 = {
11
+ agent: Agent;
12
+ activation: AttachAgentMcpServers200Activation;
13
+ };
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Generated by orval v8.18.0 🍺
3
+ * Do not edit manually.
4
+ * Reflex API
5
+ * OpenAPI spec version: 1.0.0
6
+ */
7
+
8
+ export type AttachAgentMcpServers200Activation = {
9
+ state: 'active';
10
+ serverNames: string[];
11
+ } | {
12
+ state: 'deferred';
13
+ reason: 'restart-required' | 'agent-unreachable';
14
+ };
@@ -9,7 +9,6 @@ export type AvailableSecretCategory = typeof AvailableSecretCategory[keyof typeo
9
9
 
10
10
 
11
11
  export const AvailableSecretCategory = {
12
- integration: 'integration',
13
12
  custom: 'custom',
14
13
  user: 'user',
15
14
  team: 'team',
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Generated by orval v8.18.0 🍺
3
+ * Do not edit manually.
4
+ * Reflex API
5
+ * OpenAPI spec version: 1.0.0
6
+ */
7
+
8
+ export type GetAgentStreamPaged = typeof GetAgentStreamPaged[keyof typeof GetAgentStreamPaged];
9
+
10
+
11
+ export const GetAgentStreamPaged = {
12
+ true: 'true',
13
+ false: 'false',
14
+ } as const;
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Generated by orval v8.18.0 🍺
3
+ * Do not edit manually.
4
+ * Reflex API
5
+ * OpenAPI spec version: 1.0.0
6
+ */
7
+ import type { GetAgentStreamPaged } from './getAgentStreamPaged.js';
8
+
9
+ export type GetAgentStreamParams = {
10
+ paged?: GetAgentStreamPaged;
11
+ /**
12
+ * @maximum 9007199254740991
13
+ * @exclusiveMinimum 0
14
+ */
15
+ before?: number;
16
+ };
@@ -11,6 +11,9 @@ export type GetIdpConfig200Config = {
11
11
  organizationId: string;
12
12
  displayName: string | null;
13
13
  issuer: string;
14
+ idJagEnabled: boolean;
15
+ idJagAllowedClientIds: string[];
16
+ jwksUri: string | null;
14
17
  groupMappings: GetIdpConfig200ConfigGroupMappingsItem[];
15
18
  oktaOrgUrl: string | null;
16
19
  oktaSyncEnabled: boolean;
@@ -50,7 +50,11 @@ export * from './agentSandboxOptionsCustomSize.js';
50
50
  export * from './agentSandboxOptionsResourceSize.js';
51
51
  export * from './agentServiceStatus.js';
52
52
  export * from './agentServiceStatusesResponse.js';
53
+ export * from './agentSessionIndexEntry.js';
54
+ export * from './agentSessionIndexEntryEntry.js';
55
+ export * from './agentSessionIndexResponse.js';
53
56
  export * from './agentStatus.js';
57
+ export * from './agentStreamPageInfo.js';
54
58
  export * from './agentTurnState.js';
55
59
  export * from './agentView.js';
56
60
  export * from './agentViewerAccess.js';
@@ -61,6 +65,8 @@ export * from './approveShareRequestRequestAccess.js';
61
65
  export * from './archiveAllAgents200.js';
62
66
  export * from './archiveAllAgentsBody.js';
63
67
  export * from './assignOrgRoleBody.js';
68
+ export * from './attachAgentMcpServers200.js';
69
+ export * from './attachAgentMcpServers200Activation.js';
64
70
  export * from './attachAgentMcpServersBody.js';
65
71
  export * from './availableSecret.js';
66
72
  export * from './availableSecretCategory.js';
@@ -166,6 +172,8 @@ export * from './flagUserOverride.js';
166
172
  export * from './getAgentCommandStatusParams.js';
167
173
  export * from './getAgentQueue200Item.js';
168
174
  export * from './getAgentQueue200ItemAttachments.js';
175
+ export * from './getAgentStreamPaged.js';
176
+ export * from './getAgentStreamParams.js';
169
177
  export * from './getAuthSettings200.js';
170
178
  export * from './getAuthSettings200Mode.js';
171
179
  export * from './getAuthStatus200.js';
@@ -271,6 +279,7 @@ export * from './organizationSharingSettings.js';
271
279
  export * from './organizationStatus.js';
272
280
  export * from './organizationSubscription.js';
273
281
  export * from './organizationSubscriptionType.js';
282
+ export * from './pagedAgentStreamResponse.js';
274
283
  export * from './pollDeviceAuthToken200.js';
275
284
  export * from './pollDeviceAuthTokenBody.js';
276
285
  export * from './profileStatsResponse.js';
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Generated by orval v8.18.0 🍺
3
+ * Do not edit manually.
4
+ * Reflex API
5
+ * OpenAPI spec version: 1.0.0
6
+ */
7
+ import type { AgentStreamPageInfo } from './agentStreamPageInfo.js';
8
+ import type { AxonEvent } from './axonEvent.js';
9
+
10
+ export interface PagedAgentStreamResponse {
11
+ events: AxonEvent[];
12
+ page: AgentStreamPageInfo;
13
+ }
@@ -11,6 +11,9 @@ export type UpsertIdpConfig200 = {
11
11
  organizationId: string;
12
12
  displayName: string | null;
13
13
  issuer: string;
14
+ idJagEnabled: boolean;
15
+ idJagAllowedClientIds: string[];
16
+ jwksUri: string | null;
14
17
  groupMappings: UpsertIdpConfig200GroupMappingsItem[];
15
18
  oktaOrgUrl: string | null;
16
19
  oktaSyncEnabled: boolean;
@@ -9,8 +9,17 @@ import type { UpsertIdpConfigBodyGroupMappingsItem } from './upsertIdpConfigBody
9
9
  export type UpsertIdpConfigBody = {
10
10
  displayName?: string | null;
11
11
  issuer: string;
12
+ idJagEnabled?: boolean;
13
+ /**
14
+ * @maxItems 50
15
+ * @items.minLength 1
16
+ * @items.maxLength 512
17
+ */
18
+ idJagAllowedClientIds?: string[];
19
+ jwksUri?: string | null;
12
20
  /** @maxItems 200 */
13
21
  groupMappings?: UpsertIdpConfigBodyGroupMappingsItem[];
14
22
  oktaOrgUrl?: string | null;
15
23
  oktaSyncEnabled?: boolean;
24
+ expectedUpdatedAt?: number;
16
25
  };
@@ -322,7 +322,7 @@ export const useDeleteAgentGroup = <TError = unknown,
322
322
  return useMutation(getDeleteAgentGroupMutationOptions(options));
323
323
  }
324
324
  /**
325
- * @summary Add agents to a group.
325
+ * @summary File agents into a group, moving them out of any other group.
326
326
  */
327
327
  export const addAgentGroupMembers = (
328
328
  groupId: string,
@@ -373,7 +373,7 @@ const {mutation: mutationOptions, request: requestOptions} = options ?
373
373
  export type AddAgentGroupMembersMutationError = unknown
374
374
 
375
375
  /**
376
- * @summary Add agents to a group.
376
+ * @summary File agents into a group, moving them out of any other group.
377
377
  */
378
378
  export const useAddAgentGroupMembers = <TError = unknown,
379
379
  TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof addAgentGroupMembers>>, TError,{groupId: string;data: AgentGroupMembersRequest}, TContext>, request?: SecondParameter<typeof apiFetch>}
@@ -34,6 +34,10 @@ import type {
34
34
  AgentServiceStatusesResponse
35
35
  } from './model/agentServiceStatusesResponse.js';
36
36
 
37
+ import type {
38
+ AgentSessionIndexResponse
39
+ } from './model/agentSessionIndexResponse.js';
40
+
37
41
  import type {
38
42
  AgentView
39
43
  } from './model/agentView.js';
@@ -50,6 +54,10 @@ import type {
50
54
  ArchiveAllAgentsBody
51
55
  } from './model/archiveAllAgentsBody.js';
52
56
 
57
+ import type {
58
+ AttachAgentMcpServers200
59
+ } from './model/attachAgentMcpServers200.js';
60
+
53
61
  import type {
54
62
  AttachAgentMcpServersBody
55
63
  } from './model/attachAgentMcpServersBody.js';
@@ -86,6 +94,10 @@ import type {
86
94
  GetAgentQueue200Item
87
95
  } from './model/getAgentQueue200Item.js';
88
96
 
97
+ import type {
98
+ GetAgentStreamParams
99
+ } from './model/getAgentStreamParams.js';
100
+
89
101
  import type {
90
102
  ListAgents200
91
103
  } from './model/listAgents200.js';
@@ -94,6 +106,10 @@ import type {
94
106
  ListAgentsParams
95
107
  } from './model/listAgentsParams.js';
96
108
 
109
+ import type {
110
+ PagedAgentStreamResponse
111
+ } from './model/pagedAgentStreamResponse.js';
112
+
97
113
  import type {
98
114
  RemoveQueuedAgentMessage200
99
115
  } from './model/removeQueuedAgentMessage200.js';
@@ -1025,7 +1041,7 @@ export const useSetAgentMark = <TError = unknown,
1025
1041
  return useMutation(getSetAgentMarkMutationOptions(options));
1026
1042
  }
1027
1043
  /**
1028
- * Mints live MCP hub tokens for the devbox and registers each server in the agent's native config immediately, then records the ids on the agent's `mcp-servers` attachment. The devbox must be running (409 `agent_devbox_not_running` otherwise); a registration the box reports as failed is a 502 `mcp_registration_failed` with nothing persisted. Already-attached ids are skipped, unknown or disabled ids are dropped (compare the returned agent's attachments to detect a partial drop), and the request 404s `mcp_config_not_found` only when no id resolves. Local (stdio) servers are rejected because their subprocess secrets only exist as create-time devbox params.
1044
+ * Mints live MCP hub tokens for the devbox and registers each server in the agent's native config immediately, then records the ids on the agent's `mcp-servers` attachment. The devbox must be running (409 `agent_devbox_not_running` otherwise); a registration the box reports as failed is a 502 `mcp_registration_failed` with nothing persisted. `activation` reports whether the agent process that is running right now loaded the servers (`active`, usable on its next turn) or whether they wait on disk for its next start (`deferred`) — both are successful attaches. Already-attached ids are skipped, unknown or disabled ids are dropped (compare the returned agent's attachments to detect a partial drop), and the request 404s `mcp_config_not_found` only when no id resolves. Local (stdio) servers are rejected because their subprocess secrets only exist as create-time devbox params.
1029
1045
  * @summary Attach MCP servers to a running agent's devbox.
1030
1046
  */
1031
1047
  export const attachAgentMcpServers = (
@@ -1035,7 +1051,7 @@ export const attachAgentMcpServers = (
1035
1051
  ) => {
1036
1052
 
1037
1053
 
1038
- return apiFetch<Agent>(
1054
+ return apiFetch<AttachAgentMcpServers200>(
1039
1055
  {url: `/agents/${encodeURIComponent(String(id))}/mcp-servers`, method: 'POST',
1040
1056
  headers: {'Content-Type': 'application/json', },
1041
1057
  data: attachAgentMcpServersBody, signal
@@ -1741,6 +1757,74 @@ export function useGetAgentServiceStatuses<TData = Awaited<ReturnType<typeof get
1741
1757
 
1742
1758
 
1743
1759
 
1760
+ /**
1761
+ * @summary The agent's session index: every prompt and turn boundary, for nav and paging.
1762
+ */
1763
+ export const getAgentSessionIndex = (
1764
+ id: string,
1765
+ options?: SecondParameter<typeof apiFetch>,signal?: AbortSignal
1766
+ ) => {
1767
+
1768
+
1769
+ return apiFetch<AgentSessionIndexResponse>(
1770
+ {url: `/agents/${encodeURIComponent(String(id))}/session-index`, method: 'GET', signal
1771
+ },
1772
+ options);
1773
+ }
1774
+
1775
+
1776
+
1777
+
1778
+ export const getGetAgentSessionIndexQueryKey = (id: string,) => {
1779
+ return [
1780
+ `/agents/${id}/session-index`
1781
+ ] as const;
1782
+ }
1783
+
1784
+
1785
+ export const getGetAgentSessionIndexQueryOptions = <TData = Awaited<ReturnType<typeof getAgentSessionIndex>>, TError = unknown>(id: string, options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof getAgentSessionIndex>>, TError, TData>, request?: SecondParameter<typeof apiFetch>}
1786
+ ) => {
1787
+
1788
+ const {query: queryOptions, request: requestOptions} = options ?? {};
1789
+
1790
+ const queryKey = queryOptions?.queryKey ?? getGetAgentSessionIndexQueryKey(id);
1791
+
1792
+
1793
+
1794
+ const queryFn: QueryFunction<Awaited<ReturnType<typeof getAgentSessionIndex>>> = ({ signal }) => getAgentSessionIndex(id, requestOptions, signal);
1795
+
1796
+
1797
+
1798
+
1799
+
1800
+ return { queryKey, queryFn, enabled: id !== null && id !== undefined, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof getAgentSessionIndex>>, TError, TData> & { queryKey: QueryKey }
1801
+ }
1802
+
1803
+ export type GetAgentSessionIndexQueryResult = NonNullable<Awaited<ReturnType<typeof getAgentSessionIndex>>>
1804
+ export type GetAgentSessionIndexQueryError = unknown
1805
+
1806
+
1807
+ /**
1808
+ * @summary The agent's session index: every prompt and turn boundary, for nav and paging.
1809
+ */
1810
+
1811
+ export function useGetAgentSessionIndex<TData = Awaited<ReturnType<typeof getAgentSessionIndex>>, TError = unknown>(
1812
+ id: string, options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof getAgentSessionIndex>>, TError, TData>, request?: SecondParameter<typeof apiFetch>}
1813
+
1814
+ ): UseQueryResult<TData, TError> & { queryKey: QueryKey } {
1815
+
1816
+ const queryOptions = getGetAgentSessionIndexQueryOptions(id,options)
1817
+
1818
+ const query = useQuery(queryOptions) as UseQueryResult<TData, TError> & { queryKey: QueryKey };
1819
+
1820
+ return withQueryKey(query, queryOptions.queryKey);
1821
+ }
1822
+
1823
+
1824
+
1825
+
1826
+
1827
+
1744
1828
  /**
1745
1829
  * This ends the run: per-run state is stripped from the disk, the capture starts asynchronously, and the devbox shuts down once it completes. Poll the snapshot's status route until the capture finishes.
1746
1830
  * @summary Capture a reusable snapshot of the agent's devbox disk.
@@ -1868,16 +1952,18 @@ export const useStopAgent = <TError = unknown,
1868
1952
  return useMutation(getStopAgentMutationOptions(options));
1869
1953
  }
1870
1954
  /**
1871
- * @summary Get the agent's full event history.
1955
+ * @summary Get the agent's event history: a turn-aligned window for indexed agents, the full array for legacy ones.
1872
1956
  */
1873
1957
  export const getAgentStream = (
1874
1958
  id: string,
1959
+ params?: GetAgentStreamParams,
1875
1960
  options?: SecondParameter<typeof apiFetch>,signal?: AbortSignal
1876
1961
  ) => {
1877
1962
 
1878
1963
 
1879
- return apiFetch<AxonEvent[]>(
1880
- {url: `/agents/${encodeURIComponent(String(id))}/stream`, method: 'GET', signal
1964
+ return apiFetch<AxonEvent[] | PagedAgentStreamResponse>(
1965
+ {url: `/agents/${encodeURIComponent(String(id))}/stream`, method: 'GET',
1966
+ params, signal
1881
1967
  },
1882
1968
  options);
1883
1969
  }
@@ -1885,23 +1971,25 @@ export const getAgentStream = (
1885
1971
 
1886
1972
 
1887
1973
 
1888
- export const getGetAgentStreamQueryKey = (id: string,) => {
1974
+ export const getGetAgentStreamQueryKey = (id: string,
1975
+ params?: GetAgentStreamParams,) => {
1889
1976
  return [
1890
- `/agents/${id}/stream`
1977
+ `/agents/${id}/stream`, ...(params ? [params] : [])
1891
1978
  ] as const;
1892
1979
  }
1893
1980
 
1894
1981
 
1895
- export const getGetAgentStreamQueryOptions = <TData = Awaited<ReturnType<typeof getAgentStream>>, TError = unknown>(id: string, options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof getAgentStream>>, TError, TData>, request?: SecondParameter<typeof apiFetch>}
1982
+ export const getGetAgentStreamQueryOptions = <TData = Awaited<ReturnType<typeof getAgentStream>>, TError = unknown>(id: string,
1983
+ params?: GetAgentStreamParams, options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof getAgentStream>>, TError, TData>, request?: SecondParameter<typeof apiFetch>}
1896
1984
  ) => {
1897
1985
 
1898
1986
  const {query: queryOptions, request: requestOptions} = options ?? {};
1899
1987
 
1900
- const queryKey = queryOptions?.queryKey ?? getGetAgentStreamQueryKey(id);
1988
+ const queryKey = queryOptions?.queryKey ?? getGetAgentStreamQueryKey(id,params);
1901
1989
 
1902
1990
 
1903
1991
 
1904
- const queryFn: QueryFunction<Awaited<ReturnType<typeof getAgentStream>>> = ({ signal }) => getAgentStream(id, requestOptions, signal);
1992
+ const queryFn: QueryFunction<Awaited<ReturnType<typeof getAgentStream>>> = ({ signal }) => getAgentStream(id,params, requestOptions, signal);
1905
1993
 
1906
1994
 
1907
1995
 
@@ -1915,15 +2003,16 @@ export type GetAgentStreamQueryError = unknown
1915
2003
 
1916
2004
 
1917
2005
  /**
1918
- * @summary Get the agent's full event history.
2006
+ * @summary Get the agent's event history: a turn-aligned window for indexed agents, the full array for legacy ones.
1919
2007
  */
1920
2008
 
1921
2009
  export function useGetAgentStream<TData = Awaited<ReturnType<typeof getAgentStream>>, TError = unknown>(
1922
- id: string, options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof getAgentStream>>, TError, TData>, request?: SecondParameter<typeof apiFetch>}
2010
+ id: string,
2011
+ params?: GetAgentStreamParams, options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof getAgentStream>>, TError, TData>, request?: SecondParameter<typeof apiFetch>}
1923
2012
 
1924
2013
  ): UseQueryResult<TData, TError> & { queryKey: QueryKey } {
1925
2014
 
1926
- const queryOptions = getGetAgentStreamQueryOptions(id,options)
2015
+ const queryOptions = getGetAgentStreamQueryOptions(id,params,options)
1927
2016
 
1928
2017
  const query = useQuery(queryOptions) as UseQueryResult<TData, TError> & { queryKey: QueryKey };
1929
2018
 
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Generated by orval v8.18.0 🍺
3
+ * Do not edit manually.
4
+ * Reflex API
5
+ * OpenAPI spec version: 1.0.0
6
+ */
7
+ import type { AgentSessionIndexEntryEntry } from './agentSessionIndexEntryEntry.js';
8
+
9
+ export interface AgentSessionIndexEntry {
10
+ seqNumber: number;
11
+ timestamp: number | null;
12
+ entry: AgentSessionIndexEntryEntry;
13
+ }