@leaflow/sdk 0.0.0-dev.489.g3a7785d → 0.0.0-dev.494.g12e1b53

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 (237) hide show
  1. package/dist/fleet/v1/generated/functions.d.ts +121 -13
  2. package/dist/fleet/v1/generated/functions.js +123 -8
  3. package/dist/fleet/v1/generated/models.d.ts +197 -4
  4. package/dist/fleet/v1/generated/models.js +18 -0
  5. package/dist/fleet/v1/generated/schemas.zod.d.ts +114 -12
  6. package/dist/fleet/v1/generated/schemas.zod.js +102 -12
  7. package/dist/fleet/v1/generated/validators/accountList.zod.d.ts +9 -5
  8. package/dist/fleet/v1/generated/validators/accountList.zod.js +9 -5
  9. package/dist/fleet/v1/generated/validators/accountResource.zod.d.ts +9 -5
  10. package/dist/fleet/v1/generated/validators/accountResource.zod.js +9 -5
  11. package/dist/fleet/v1/generated/validators/approveEnrollmentRequest.zod.d.ts +9 -5
  12. package/dist/fleet/v1/generated/validators/approveEnrollmentRequest.zod.js +9 -5
  13. package/dist/fleet/v1/generated/validators/callMcpToolRequest.zod.d.ts +9 -5
  14. package/dist/fleet/v1/generated/validators/callMcpToolRequest.zod.js +9 -5
  15. package/dist/fleet/v1/generated/validators/callMcpToolResponse.zod.d.ts +9 -5
  16. package/dist/fleet/v1/generated/validators/callMcpToolResponse.zod.js +9 -5
  17. package/dist/fleet/v1/generated/validators/callToolRequest.zod.d.ts +264 -0
  18. package/dist/fleet/v1/generated/validators/callToolRequest.zod.js +262 -0
  19. package/dist/fleet/v1/generated/validators/callToolResponse.zod.d.ts +270 -0
  20. package/dist/fleet/v1/generated/validators/callToolResponse.zod.js +257 -0
  21. package/dist/fleet/v1/generated/validators/createGroupMemberRequest.zod.d.ts +9 -5
  22. package/dist/fleet/v1/generated/validators/createGroupMemberRequest.zod.js +9 -5
  23. package/dist/fleet/v1/generated/validators/createGroupRequest.zod.d.ts +9 -5
  24. package/dist/fleet/v1/generated/validators/createGroupRequest.zod.js +9 -5
  25. package/dist/fleet/v1/generated/validators/createMachineRegistrationRequest.zod.d.ts +9 -5
  26. package/dist/fleet/v1/generated/validators/createMachineRegistrationRequest.zod.js +9 -5
  27. package/dist/fleet/v1/generated/validators/createMachineRegistrationResponse.zod.d.ts +9 -5
  28. package/dist/fleet/v1/generated/validators/createMachineRegistrationResponse.zod.js +9 -5
  29. package/dist/fleet/v1/generated/validators/createParticipantRequest.zod.d.ts +9 -5
  30. package/dist/fleet/v1/generated/validators/createParticipantRequest.zod.js +9 -5
  31. package/dist/fleet/v1/generated/validators/createParticipantResponse.zod.d.ts +9 -5
  32. package/dist/fleet/v1/generated/validators/createParticipantResponse.zod.js +9 -5
  33. package/dist/fleet/v1/generated/validators/createPeerConnectionCandidatesRequest.zod.d.ts +9 -5
  34. package/dist/fleet/v1/generated/validators/createPeerConnectionCandidatesRequest.zod.js +9 -5
  35. package/dist/fleet/v1/generated/validators/createPeerConnectionRequest.zod.d.ts +9 -5
  36. package/dist/fleet/v1/generated/validators/createPeerConnectionRequest.zod.js +9 -5
  37. package/dist/fleet/v1/generated/validators/createSessionRequest.zod.d.ts +9 -5
  38. package/dist/fleet/v1/generated/validators/createSessionRequest.zod.js +9 -5
  39. package/dist/fleet/v1/generated/validators/cursorPagination.zod.d.ts +9 -5
  40. package/dist/fleet/v1/generated/validators/cursorPagination.zod.js +9 -5
  41. package/dist/fleet/v1/generated/validators/deleteMcpServerParams.zod.d.ts +9 -5
  42. package/dist/fleet/v1/generated/validators/deleteMcpServerParams.zod.js +9 -5
  43. package/dist/fleet/v1/generated/validators/denyPrivilegeRequestRequest.zod.d.ts +9 -5
  44. package/dist/fleet/v1/generated/validators/denyPrivilegeRequestRequest.zod.js +9 -5
  45. package/dist/fleet/v1/generated/validators/desktopOptions.zod.d.ts +9 -5
  46. package/dist/fleet/v1/generated/validators/desktopOptions.zod.js +9 -5
  47. package/dist/fleet/v1/generated/validators/desktopState.zod.d.ts +9 -5
  48. package/dist/fleet/v1/generated/validators/desktopState.zod.js +9 -5
  49. package/dist/fleet/v1/generated/validators/directoryName.zod.d.ts +9 -5
  50. package/dist/fleet/v1/generated/validators/directoryName.zod.js +9 -5
  51. package/dist/fleet/v1/generated/validators/enrollmentResource.zod.d.ts +9 -5
  52. package/dist/fleet/v1/generated/validators/enrollmentResource.zod.js +9 -5
  53. package/dist/fleet/v1/generated/validators/enrollmentState.zod.d.ts +9 -5
  54. package/dist/fleet/v1/generated/validators/enrollmentState.zod.js +9 -5
  55. package/dist/fleet/v1/generated/validators/error.zod.d.ts +9 -5
  56. package/dist/fleet/v1/generated/validators/error.zod.js +9 -5
  57. package/dist/fleet/v1/generated/validators/errorStatus.zod.d.ts +9 -5
  58. package/dist/fleet/v1/generated/validators/errorStatus.zod.js +9 -5
  59. package/dist/fleet/v1/generated/validators/featureState.zod.d.ts +9 -5
  60. package/dist/fleet/v1/generated/validators/featureState.zod.js +9 -5
  61. package/dist/fleet/v1/generated/validators/fieldViolation.zod.d.ts +9 -5
  62. package/dist/fleet/v1/generated/validators/fieldViolation.zod.js +9 -5
  63. package/dist/fleet/v1/generated/validators/findEnrollmentByPairingCodeParams.zod.d.ts +9 -5
  64. package/dist/fleet/v1/generated/validators/findEnrollmentByPairingCodeParams.zod.js +9 -5
  65. package/dist/fleet/v1/generated/validators/findEnrollmentResponse.zod.d.ts +9 -5
  66. package/dist/fleet/v1/generated/validators/findEnrollmentResponse.zod.js +9 -5
  67. package/dist/fleet/v1/generated/validators/getPeerConnectionParams.zod.d.ts +9 -5
  68. package/dist/fleet/v1/generated/validators/getPeerConnectionParams.zod.js +9 -5
  69. package/dist/fleet/v1/generated/validators/groupList.zod.d.ts +9 -5
  70. package/dist/fleet/v1/generated/validators/groupList.zod.js +9 -5
  71. package/dist/fleet/v1/generated/validators/groupResource.zod.d.ts +9 -5
  72. package/dist/fleet/v1/generated/validators/groupResource.zod.js +9 -5
  73. package/dist/fleet/v1/generated/validators/iceCandidate.zod.d.ts +9 -5
  74. package/dist/fleet/v1/generated/validators/iceCandidate.zod.js +9 -5
  75. package/dist/fleet/v1/generated/validators/iceServer.zod.d.ts +9 -5
  76. package/dist/fleet/v1/generated/validators/iceServer.zod.js +9 -5
  77. package/dist/fleet/v1/generated/validators/listAccountsParams.zod.d.ts +9 -5
  78. package/dist/fleet/v1/generated/validators/listAccountsParams.zod.js +9 -5
  79. package/dist/fleet/v1/generated/validators/listGroupMembersParams.zod.d.ts +9 -5
  80. package/dist/fleet/v1/generated/validators/listGroupMembersParams.zod.js +9 -5
  81. package/dist/fleet/v1/generated/validators/listGroupsParams.zod.d.ts +9 -5
  82. package/dist/fleet/v1/generated/validators/listGroupsParams.zod.js +9 -5
  83. package/dist/fleet/v1/generated/validators/listMachineEventsParams.zod.d.ts +9 -5
  84. package/dist/fleet/v1/generated/validators/listMachineEventsParams.zod.js +9 -5
  85. package/dist/fleet/v1/generated/validators/listMachineRegistrationsParams.zod.d.ts +9 -5
  86. package/dist/fleet/v1/generated/validators/listMachineRegistrationsParams.zod.js +9 -5
  87. package/dist/fleet/v1/generated/validators/listMachinesParams.zod.d.ts +9 -5
  88. package/dist/fleet/v1/generated/validators/listMachinesParams.zod.js +9 -5
  89. package/dist/fleet/v1/generated/validators/listMcpToolsParams.zod.d.ts +9 -5
  90. package/dist/fleet/v1/generated/validators/listMcpToolsParams.zod.js +9 -5
  91. package/dist/fleet/v1/generated/validators/listPrivilegeAutoApprovalsParams.zod.d.ts +9 -5
  92. package/dist/fleet/v1/generated/validators/listPrivilegeAutoApprovalsParams.zod.js +9 -5
  93. package/dist/fleet/v1/generated/validators/listPrivilegeRequestsParams.zod.d.ts +9 -5
  94. package/dist/fleet/v1/generated/validators/listPrivilegeRequestsParams.zod.js +9 -5
  95. package/dist/fleet/v1/generated/validators/listSessionsParams.zod.d.ts +9 -5
  96. package/dist/fleet/v1/generated/validators/listSessionsParams.zod.js +9 -5
  97. package/dist/fleet/v1/generated/validators/listToolsParams.zod.d.ts +267 -0
  98. package/dist/fleet/v1/generated/validators/listToolsParams.zod.js +265 -0
  99. package/dist/fleet/v1/generated/validators/machineEventList.zod.d.ts +9 -5
  100. package/dist/fleet/v1/generated/validators/machineEventList.zod.js +9 -5
  101. package/dist/fleet/v1/generated/validators/machineEventResource.zod.d.ts +9 -5
  102. package/dist/fleet/v1/generated/validators/machineEventResource.zod.js +9 -5
  103. package/dist/fleet/v1/generated/validators/machineEventType.zod.d.ts +9 -5
  104. package/dist/fleet/v1/generated/validators/machineEventType.zod.js +9 -5
  105. package/dist/fleet/v1/generated/validators/machineFeature.zod.d.ts +9 -5
  106. package/dist/fleet/v1/generated/validators/machineFeature.zod.js +9 -5
  107. package/dist/fleet/v1/generated/validators/machineList.zod.d.ts +9 -5
  108. package/dist/fleet/v1/generated/validators/machineList.zod.js +9 -5
  109. package/dist/fleet/v1/generated/validators/machineRegistrationList.zod.d.ts +9 -5
  110. package/dist/fleet/v1/generated/validators/machineRegistrationList.zod.js +9 -5
  111. package/dist/fleet/v1/generated/validators/machineRegistrationResource.zod.d.ts +9 -5
  112. package/dist/fleet/v1/generated/validators/machineRegistrationResource.zod.js +9 -5
  113. package/dist/fleet/v1/generated/validators/machineRegistrationState.zod.d.ts +9 -5
  114. package/dist/fleet/v1/generated/validators/machineRegistrationState.zod.js +9 -5
  115. package/dist/fleet/v1/generated/validators/machineResource.zod.d.ts +9 -5
  116. package/dist/fleet/v1/generated/validators/machineResource.zod.js +9 -5
  117. package/dist/fleet/v1/generated/validators/mcpConfigurationFile.zod.d.ts +9 -5
  118. package/dist/fleet/v1/generated/validators/mcpConfigurationFile.zod.js +9 -5
  119. package/dist/fleet/v1/generated/validators/mcpConfigurationResource.zod.d.ts +9 -5
  120. package/dist/fleet/v1/generated/validators/mcpConfigurationResource.zod.js +9 -5
  121. package/dist/fleet/v1/generated/validators/mcpImplementation.zod.d.ts +9 -5
  122. package/dist/fleet/v1/generated/validators/mcpImplementation.zod.js +9 -5
  123. package/dist/fleet/v1/generated/validators/mcpServerFailure.zod.d.ts +9 -5
  124. package/dist/fleet/v1/generated/validators/mcpServerFailure.zod.js +9 -5
  125. package/dist/fleet/v1/generated/validators/mcpServerResource.zod.d.ts +9 -5
  126. package/dist/fleet/v1/generated/validators/mcpServerResource.zod.js +9 -5
  127. package/dist/fleet/v1/generated/validators/mcpToolList.zod.d.ts +9 -5
  128. package/dist/fleet/v1/generated/validators/mcpToolList.zod.js +9 -5
  129. package/dist/fleet/v1/generated/validators/mcpToolResource.zod.d.ts +9 -5
  130. package/dist/fleet/v1/generated/validators/mcpToolResource.zod.js +9 -5
  131. package/dist/fleet/v1/generated/validators/mcpTransport.zod.d.ts +9 -5
  132. package/dist/fleet/v1/generated/validators/mcpTransport.zod.js +9 -5
  133. package/dist/fleet/v1/generated/validators/mcpUnavailableServer.zod.d.ts +9 -5
  134. package/dist/fleet/v1/generated/validators/mcpUnavailableServer.zod.js +9 -5
  135. package/dist/fleet/v1/generated/validators/migrationStep.zod.d.ts +9 -5
  136. package/dist/fleet/v1/generated/validators/migrationStep.zod.js +9 -5
  137. package/dist/fleet/v1/generated/validators/namedIdentity.zod.d.ts +9 -5
  138. package/dist/fleet/v1/generated/validators/namedIdentity.zod.js +9 -5
  139. package/dist/fleet/v1/generated/validators/offsetPagination.zod.d.ts +9 -5
  140. package/dist/fleet/v1/generated/validators/offsetPagination.zod.js +9 -5
  141. package/dist/fleet/v1/generated/validators/operatingSystem.zod.d.ts +9 -5
  142. package/dist/fleet/v1/generated/validators/operatingSystem.zod.js +9 -5
  143. package/dist/fleet/v1/generated/validators/participantList.zod.d.ts +9 -5
  144. package/dist/fleet/v1/generated/validators/participantList.zod.js +9 -5
  145. package/dist/fleet/v1/generated/validators/participantResource.zod.d.ts +9 -5
  146. package/dist/fleet/v1/generated/validators/participantResource.zod.js +9 -5
  147. package/dist/fleet/v1/generated/validators/peerConnection.zod.d.ts +9 -5
  148. package/dist/fleet/v1/generated/validators/peerConnection.zod.js +9 -5
  149. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalList.zod.d.ts +9 -5
  150. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalList.zod.js +9 -5
  151. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalMode.zod.d.ts +9 -5
  152. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalMode.zod.js +9 -5
  153. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalResource.zod.d.ts +9 -5
  154. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalResource.zod.js +9 -5
  155. package/dist/fleet/v1/generated/validators/privilegeDecider.zod.d.ts +9 -5
  156. package/dist/fleet/v1/generated/validators/privilegeDecider.zod.js +9 -5
  157. package/dist/fleet/v1/generated/validators/privilegeRequestList.zod.d.ts +9 -5
  158. package/dist/fleet/v1/generated/validators/privilegeRequestList.zod.js +9 -5
  159. package/dist/fleet/v1/generated/validators/privilegeRequestResource.zod.d.ts +9 -5
  160. package/dist/fleet/v1/generated/validators/privilegeRequestResource.zod.js +9 -5
  161. package/dist/fleet/v1/generated/validators/privilegeRequestState.zod.d.ts +9 -5
  162. package/dist/fleet/v1/generated/validators/privilegeRequestState.zod.js +9 -5
  163. package/dist/fleet/v1/generated/validators/publicKey.zod.d.ts +9 -5
  164. package/dist/fleet/v1/generated/validators/publicKey.zod.js +9 -5
  165. package/dist/fleet/v1/generated/validators/renewParticipantRequest.zod.d.ts +9 -5
  166. package/dist/fleet/v1/generated/validators/renewParticipantRequest.zod.js +9 -5
  167. package/dist/fleet/v1/generated/validators/renewParticipantResponse.zod.d.ts +9 -5
  168. package/dist/fleet/v1/generated/validators/renewParticipantResponse.zod.js +9 -5
  169. package/dist/fleet/v1/generated/validators/replaceMcpConfigurationRequest.zod.d.ts +9 -5
  170. package/dist/fleet/v1/generated/validators/replaceMcpConfigurationRequest.zod.js +9 -5
  171. package/dist/fleet/v1/generated/validators/rtcConfiguration.zod.d.ts +9 -5
  172. package/dist/fleet/v1/generated/validators/rtcConfiguration.zod.js +9 -5
  173. package/dist/fleet/v1/generated/validators/runCommandRequest.zod.d.ts +9 -5
  174. package/dist/fleet/v1/generated/validators/runCommandRequest.zod.js +9 -5
  175. package/dist/fleet/v1/generated/validators/runCommandResponse.zod.d.ts +9 -5
  176. package/dist/fleet/v1/generated/validators/runCommandResponse.zod.js +9 -5
  177. package/dist/fleet/v1/generated/validators/sendMcpRequestRequest.zod.d.ts +9 -5
  178. package/dist/fleet/v1/generated/validators/sendMcpRequestRequest.zod.js +9 -5
  179. package/dist/fleet/v1/generated/validators/sendMcpRequestResponse.zod.d.ts +9 -5
  180. package/dist/fleet/v1/generated/validators/sendMcpRequestResponse.zod.js +9 -5
  181. package/dist/fleet/v1/generated/validators/sessionCloseReason.zod.d.ts +9 -5
  182. package/dist/fleet/v1/generated/validators/sessionCloseReason.zod.js +9 -5
  183. package/dist/fleet/v1/generated/validators/sessionList.zod.d.ts +9 -5
  184. package/dist/fleet/v1/generated/validators/sessionList.zod.js +9 -5
  185. package/dist/fleet/v1/generated/validators/sessionMode.zod.d.ts +9 -5
  186. package/dist/fleet/v1/generated/validators/sessionMode.zod.js +9 -5
  187. package/dist/fleet/v1/generated/validators/sessionResource.zod.d.ts +9 -5
  188. package/dist/fleet/v1/generated/validators/sessionResource.zod.js +9 -5
  189. package/dist/fleet/v1/generated/validators/sessionState.zod.d.ts +9 -5
  190. package/dist/fleet/v1/generated/validators/sessionState.zod.js +9 -5
  191. package/dist/fleet/v1/generated/validators/signedMessage.zod.d.ts +9 -5
  192. package/dist/fleet/v1/generated/validators/signedMessage.zod.js +9 -5
  193. package/dist/fleet/v1/generated/validators/signingKey.zod.d.ts +9 -5
  194. package/dist/fleet/v1/generated/validators/signingKey.zod.js +9 -5
  195. package/dist/fleet/v1/generated/validators/toolActivityList.zod.d.ts +251 -0
  196. package/dist/fleet/v1/generated/validators/toolActivityList.zod.js +253 -0
  197. package/dist/fleet/v1/generated/validators/toolContent.zod.d.ts +263 -0
  198. package/dist/fleet/v1/generated/validators/toolContent.zod.js +260 -0
  199. package/dist/fleet/v1/generated/validators/toolDescriptor.zod.d.ts +263 -0
  200. package/dist/fleet/v1/generated/validators/toolDescriptor.zod.js +258 -0
  201. package/dist/fleet/v1/generated/validators/toolImage.zod.d.ts +258 -0
  202. package/dist/fleet/v1/generated/validators/toolImage.zod.js +255 -0
  203. package/dist/fleet/v1/generated/validators/toolList.zod.d.ts +276 -0
  204. package/dist/fleet/v1/generated/validators/toolList.zod.js +257 -0
  205. package/dist/fleet/v1/generated/validators/toolRef.zod.d.ts +257 -0
  206. package/dist/fleet/v1/generated/validators/toolRef.zod.js +257 -0
  207. package/dist/fleet/v1/generated/validators/updateAccountRequest.zod.d.ts +9 -5
  208. package/dist/fleet/v1/generated/validators/updateAccountRequest.zod.js +9 -5
  209. package/dist/fleet/v1/generated/validators/updateGroupRequest.zod.d.ts +9 -5
  210. package/dist/fleet/v1/generated/validators/updateGroupRequest.zod.js +9 -5
  211. package/dist/fleet/v1/generated/validators/updateMachineRequest.zod.d.ts +9 -5
  212. package/dist/fleet/v1/generated/validators/updateMachineRequest.zod.js +9 -5
  213. package/dist/fleet/v1/generated/validators/updateMcpServerRequest.zod.d.ts +9 -5
  214. package/dist/fleet/v1/generated/validators/updateMcpServerRequest.zod.js +9 -5
  215. package/dist/fleet/v1/generated/validators/updateMcpServerResponse.zod.d.ts +9 -5
  216. package/dist/fleet/v1/generated/validators/updateMcpServerResponse.zod.js +9 -5
  217. package/dist/fleet/v1/generated/validators/updatePrivilegeAutoApprovalRequest.zod.d.ts +9 -5
  218. package/dist/fleet/v1/generated/validators/updatePrivilegeAutoApprovalRequest.zod.js +9 -5
  219. package/dist/proto/leaflow/fleet/control/v1/control_pb.d.ts +24 -2
  220. package/dist/proto/leaflow/fleet/control/v1/control_pb.js +1 -1
  221. package/dist/proto/leaflow/fleet/session/v1/session_pb.d.ts +8 -0
  222. package/dist/proto/leaflow/fleet/session/v1/session_pb.js +1 -1
  223. package/dist/proto/leaflow/fleet/tool/v1/tool_pb.d.ts +683 -0
  224. package/dist/proto/leaflow/fleet/tool/v1/tool_pb.js +205 -0
  225. package/dist/proto/leaflow/fleet/virtualdesktop/capture/v1/capture_pb.d.ts +21 -1
  226. package/dist/proto/leaflow/fleet/virtualdesktop/capture/v1/capture_pb.js +1 -1
  227. package/dist/proto/leaflow/fleet/virtualdesktop/datatransfer/v1/datatransfer_pb.d.ts +11 -2
  228. package/dist/proto/leaflow/fleet/virtualdesktop/datatransfer/v1/datatransfer_pb.js +1 -1
  229. package/dist/proto/leaflow/fleet/virtualdesktop/display/v1/display_pb.d.ts +18 -0
  230. package/dist/proto/leaflow/fleet/virtualdesktop/display/v1/display_pb.js +10 -5
  231. package/dist/proto/leaflow/fleet/virtualdesktop/input/v1/input_pb.d.ts +8 -0
  232. package/dist/proto/leaflow/fleet/virtualdesktop/input/v1/input_pb.js +1 -1
  233. package/dist/proto/leaflow/fleet/virtualdesktop/window/v1/window_pb.d.ts +24 -1
  234. package/dist/proto/leaflow/fleet/virtualdesktop/window/v1/window_pb.js +1 -1
  235. package/dist/routes.d.ts +24 -0
  236. package/dist/routes.js +27 -0
  237. package/package.json +1 -1
@@ -83,11 +83,15 @@
83
83
  * and remote ones it connects to;
84
84
  * - `leaflow.fleet.host.v1`: terminal sessions, with programs, files, ports, sound, devices,
85
85
  * printers and privilege approvals;
86
- * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a desktop.
87
- *
88
- * A machine installed without a desktop does not offer `leaflow.fleet.virtualdesktop.host.v1`. A
89
- * request that needs a feature the machine does not report available fails with
90
- * `FEATURE_UNAVAILABLE`, whose `metadata.feature` names the feature.
86
+ * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a graphical backend;
87
+ * - `leaflow.fleet.tool.v1`: live session tools. Builtin `computer.*` tools are exposed only while
88
+ * the virtual desktop capability is actually available; MCP is a separate source.
89
+ *
90
+ * A graphical backend does not require a full desktop environment. Terminal logins, commands
91
+ * and MCP server initialization prepare or reuse the account's lightweight graphical context,
92
+ * in addition to their own session or job. Configuration reads and writes do not initialize a
93
+ * server and do not require this preparation. A request that needs a feature the machine does
94
+ * not report available fails with `FEATURE_UNAVAILABLE`, whose `metadata.feature` names it.
91
95
  *
92
96
  * ## Directory
93
97
  *
@@ -83,11 +83,15 @@
83
83
  * and remote ones it connects to;
84
84
  * - `leaflow.fleet.host.v1`: terminal sessions, with programs, files, ports, sound, devices,
85
85
  * printers and privilege approvals;
86
- * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a desktop.
87
- *
88
- * A machine installed without a desktop does not offer `leaflow.fleet.virtualdesktop.host.v1`. A
89
- * request that needs a feature the machine does not report available fails with
90
- * `FEATURE_UNAVAILABLE`, whose `metadata.feature` names the feature.
86
+ * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a graphical backend;
87
+ * - `leaflow.fleet.tool.v1`: live session tools. Builtin `computer.*` tools are exposed only while
88
+ * the virtual desktop capability is actually available; MCP is a separate source.
89
+ *
90
+ * A graphical backend does not require a full desktop environment. Terminal logins, commands
91
+ * and MCP server initialization prepare or reuse the account's lightweight graphical context,
92
+ * in addition to their own session or job. Configuration reads and writes do not initialize a
93
+ * server and do not require this preparation. A request that needs a feature the machine does
94
+ * not report available fails with `FEATURE_UNAVAILABLE`, whose `metadata.feature` names it.
91
95
  *
92
96
  * ## Directory
93
97
  *
@@ -83,11 +83,15 @@
83
83
  * and remote ones it connects to;
84
84
  * - `leaflow.fleet.host.v1`: terminal sessions, with programs, files, ports, sound, devices,
85
85
  * printers and privilege approvals;
86
- * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a desktop.
87
- *
88
- * A machine installed without a desktop does not offer `leaflow.fleet.virtualdesktop.host.v1`. A
89
- * request that needs a feature the machine does not report available fails with
90
- * `FEATURE_UNAVAILABLE`, whose `metadata.feature` names the feature.
86
+ * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a graphical backend;
87
+ * - `leaflow.fleet.tool.v1`: live session tools. Builtin `computer.*` tools are exposed only while
88
+ * the virtual desktop capability is actually available; MCP is a separate source.
89
+ *
90
+ * A graphical backend does not require a full desktop environment. Terminal logins, commands
91
+ * and MCP server initialization prepare or reuse the account's lightweight graphical context,
92
+ * in addition to their own session or job. Configuration reads and writes do not initialize a
93
+ * server and do not require this preparation. A request that needs a feature the machine does
94
+ * not report available fails with `FEATURE_UNAVAILABLE`, whose `metadata.feature` names it.
91
95
  *
92
96
  * ## Directory
93
97
  *
@@ -83,11 +83,15 @@
83
83
  * and remote ones it connects to;
84
84
  * - `leaflow.fleet.host.v1`: terminal sessions, with programs, files, ports, sound, devices,
85
85
  * printers and privilege approvals;
86
- * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a desktop.
87
- *
88
- * A machine installed without a desktop does not offer `leaflow.fleet.virtualdesktop.host.v1`. A
89
- * request that needs a feature the machine does not report available fails with
90
- * `FEATURE_UNAVAILABLE`, whose `metadata.feature` names the feature.
86
+ * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a graphical backend;
87
+ * - `leaflow.fleet.tool.v1`: live session tools. Builtin `computer.*` tools are exposed only while
88
+ * the virtual desktop capability is actually available; MCP is a separate source.
89
+ *
90
+ * A graphical backend does not require a full desktop environment. Terminal logins, commands
91
+ * and MCP server initialization prepare or reuse the account's lightweight graphical context,
92
+ * in addition to their own session or job. Configuration reads and writes do not initialize a
93
+ * server and do not require this preparation. A request that needs a feature the machine does
94
+ * not report available fails with `FEATURE_UNAVAILABLE`, whose `metadata.feature` names it.
91
95
  *
92
96
  * ## Directory
93
97
  *
@@ -83,11 +83,15 @@
83
83
  * and remote ones it connects to;
84
84
  * - `leaflow.fleet.host.v1`: terminal sessions, with programs, files, ports, sound, devices,
85
85
  * printers and privilege approvals;
86
- * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a desktop.
87
- *
88
- * A machine installed without a desktop does not offer `leaflow.fleet.virtualdesktop.host.v1`. A
89
- * request that needs a feature the machine does not report available fails with
90
- * `FEATURE_UNAVAILABLE`, whose `metadata.feature` names the feature.
86
+ * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a graphical backend;
87
+ * - `leaflow.fleet.tool.v1`: live session tools. Builtin `computer.*` tools are exposed only while
88
+ * the virtual desktop capability is actually available; MCP is a separate source.
89
+ *
90
+ * A graphical backend does not require a full desktop environment. Terminal logins, commands
91
+ * and MCP server initialization prepare or reuse the account's lightweight graphical context,
92
+ * in addition to their own session or job. Configuration reads and writes do not initialize a
93
+ * server and do not require this preparation. A request that needs a feature the machine does
94
+ * not report available fails with `FEATURE_UNAVAILABLE`, whose `metadata.feature` names it.
91
95
  *
92
96
  * ## Directory
93
97
  *
@@ -83,11 +83,15 @@
83
83
  * and remote ones it connects to;
84
84
  * - `leaflow.fleet.host.v1`: terminal sessions, with programs, files, ports, sound, devices,
85
85
  * printers and privilege approvals;
86
- * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a desktop.
87
- *
88
- * A machine installed without a desktop does not offer `leaflow.fleet.virtualdesktop.host.v1`. A
89
- * request that needs a feature the machine does not report available fails with
90
- * `FEATURE_UNAVAILABLE`, whose `metadata.feature` names the feature.
86
+ * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a graphical backend;
87
+ * - `leaflow.fleet.tool.v1`: live session tools. Builtin `computer.*` tools are exposed only while
88
+ * the virtual desktop capability is actually available; MCP is a separate source.
89
+ *
90
+ * A graphical backend does not require a full desktop environment. Terminal logins, commands
91
+ * and MCP server initialization prepare or reuse the account's lightweight graphical context,
92
+ * in addition to their own session or job. Configuration reads and writes do not initialize a
93
+ * server and do not require this preparation. A request that needs a feature the machine does
94
+ * not report available fails with `FEATURE_UNAVAILABLE`, whose `metadata.feature` names it.
91
95
  *
92
96
  * ## Directory
93
97
  *
@@ -83,11 +83,15 @@
83
83
  * and remote ones it connects to;
84
84
  * - `leaflow.fleet.host.v1`: terminal sessions, with programs, files, ports, sound, devices,
85
85
  * printers and privilege approvals;
86
- * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a desktop.
87
- *
88
- * A machine installed without a desktop does not offer `leaflow.fleet.virtualdesktop.host.v1`. A
89
- * request that needs a feature the machine does not report available fails with
90
- * `FEATURE_UNAVAILABLE`, whose `metadata.feature` names the feature.
86
+ * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a graphical backend;
87
+ * - `leaflow.fleet.tool.v1`: live session tools. Builtin `computer.*` tools are exposed only while
88
+ * the virtual desktop capability is actually available; MCP is a separate source.
89
+ *
90
+ * A graphical backend does not require a full desktop environment. Terminal logins, commands
91
+ * and MCP server initialization prepare or reuse the account's lightweight graphical context,
92
+ * in addition to their own session or job. Configuration reads and writes do not initialize a
93
+ * server and do not require this preparation. A request that needs a feature the machine does
94
+ * not report available fails with `FEATURE_UNAVAILABLE`, whose `metadata.feature` names it.
91
95
  *
92
96
  * ## Directory
93
97
  *
@@ -83,11 +83,15 @@
83
83
  * and remote ones it connects to;
84
84
  * - `leaflow.fleet.host.v1`: terminal sessions, with programs, files, ports, sound, devices,
85
85
  * printers and privilege approvals;
86
- * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a desktop.
87
- *
88
- * A machine installed without a desktop does not offer `leaflow.fleet.virtualdesktop.host.v1`. A
89
- * request that needs a feature the machine does not report available fails with
90
- * `FEATURE_UNAVAILABLE`, whose `metadata.feature` names the feature.
86
+ * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a graphical backend;
87
+ * - `leaflow.fleet.tool.v1`: live session tools. Builtin `computer.*` tools are exposed only while
88
+ * the virtual desktop capability is actually available; MCP is a separate source.
89
+ *
90
+ * A graphical backend does not require a full desktop environment. Terminal logins, commands
91
+ * and MCP server initialization prepare or reuse the account's lightweight graphical context,
92
+ * in addition to their own session or job. Configuration reads and writes do not initialize a
93
+ * server and do not require this preparation. A request that needs a feature the machine does
94
+ * not report available fails with `FEATURE_UNAVAILABLE`, whose `metadata.feature` names it.
91
95
  *
92
96
  * ## Directory
93
97
  *
@@ -83,11 +83,15 @@
83
83
  * and remote ones it connects to;
84
84
  * - `leaflow.fleet.host.v1`: terminal sessions, with programs, files, ports, sound, devices,
85
85
  * printers and privilege approvals;
86
- * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a desktop.
87
- *
88
- * A machine installed without a desktop does not offer `leaflow.fleet.virtualdesktop.host.v1`. A
89
- * request that needs a feature the machine does not report available fails with
90
- * `FEATURE_UNAVAILABLE`, whose `metadata.feature` names the feature.
86
+ * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a graphical backend;
87
+ * - `leaflow.fleet.tool.v1`: live session tools. Builtin `computer.*` tools are exposed only while
88
+ * the virtual desktop capability is actually available; MCP is a separate source.
89
+ *
90
+ * A graphical backend does not require a full desktop environment. Terminal logins, commands
91
+ * and MCP server initialization prepare or reuse the account's lightweight graphical context,
92
+ * in addition to their own session or job. Configuration reads and writes do not initialize a
93
+ * server and do not require this preparation. A request that needs a feature the machine does
94
+ * not report available fails with `FEATURE_UNAVAILABLE`, whose `metadata.feature` names it.
91
95
  *
92
96
  * ## Directory
93
97
  *
@@ -83,11 +83,15 @@
83
83
  * and remote ones it connects to;
84
84
  * - `leaflow.fleet.host.v1`: terminal sessions, with programs, files, ports, sound, devices,
85
85
  * printers and privilege approvals;
86
- * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a desktop.
87
- *
88
- * A machine installed without a desktop does not offer `leaflow.fleet.virtualdesktop.host.v1`. A
89
- * request that needs a feature the machine does not report available fails with
90
- * `FEATURE_UNAVAILABLE`, whose `metadata.feature` names the feature.
86
+ * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a graphical backend;
87
+ * - `leaflow.fleet.tool.v1`: live session tools. Builtin `computer.*` tools are exposed only while
88
+ * the virtual desktop capability is actually available; MCP is a separate source.
89
+ *
90
+ * A graphical backend does not require a full desktop environment. Terminal logins, commands
91
+ * and MCP server initialization prepare or reuse the account's lightweight graphical context,
92
+ * in addition to their own session or job. Configuration reads and writes do not initialize a
93
+ * server and do not require this preparation. A request that needs a feature the machine does
94
+ * not report available fails with `FEATURE_UNAVAILABLE`, whose `metadata.feature` names it.
91
95
  *
92
96
  * ## Directory
93
97
  *
@@ -0,0 +1,251 @@
1
+ /**
2
+ * Generated by orval 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Fleet API
5
+ * Machines that run the Leaflow Fleet Agent (`leaflow-fleet-agent`): adding machines, the
6
+ * accounts and groups that log in to them, running commands, opening and closing sessions, with
7
+ * or without a desktop, and admitting participants to them.
8
+ *
9
+ * ## What this API sees
10
+ *
11
+ * This API coordinates. It admits participants to sessions and passes the signaling of their
12
+ * PeerConnections, but everything a session shows or receives — terminals, files, the screen,
13
+ * input, the clipboard, printing and privilege approvals on a participant — travels end to end
14
+ * between the participant and the session, encrypted with keys that never leave them. The
15
+ * platform sees which machine, which session and who is connected, and nothing of what happens
16
+ * inside.
17
+ *
18
+ * Commands and privilege requests decided on the platform are the exception: the platform passes
19
+ * a command and its output between the caller and the machine, and keeps the command line of a
20
+ * privilege request it asks the owner about; it sees both.
21
+ *
22
+ * ## Authentication
23
+ *
24
+ * Every request carries a scoped token; see the `bearerAuth` security scheme.
25
+ *
26
+ * **Neither the path nor the headers carry a `project_id`**: the current project is determined by
27
+ * the token.
28
+ *
29
+ * ## Adding a machine
30
+ *
31
+ * 1. Install the Agent and run `leaflow-fleet-agent daemon enroll` on the machine. The command
32
+ * carries no secret. The machine shows a pairing code such as `7K2QM-9XWTD`.
33
+ * 2. Find the request with `GET /api/v1/enrollments:find?pairing_code=…`. Compare its `hostname`
34
+ * and `source_address` with the machine in front of you: the pairing code is not a secret,
35
+ * and anyone can request enrollment.
36
+ * 3. Approve it with `POST /api/v1/enrollments/{enrollmentId}:approve`. The machine joins the
37
+ * current project within its next polling interval.
38
+ *
39
+ * ## Adding a machine without interaction
40
+ *
41
+ * A machine that is set up unattended, such as by cloud-init on first boot, joins with a
42
+ * registration token instead of a pairing code:
43
+ *
44
+ * 1. Create a registration with `POST /api/v1/machine-registrations`. It reserves a machine in
45
+ * the current project under the given name and returns its `machine_id` and a `token`. The
46
+ * token is returned only in this response.
47
+ * 2. Give the token to the machine in a file that only root can read, and run
48
+ * `leaflow-fleet-agent daemon enroll --url <control endpoint> --token-file <path>`. The
49
+ * machine joins the current project as `machine_id` at once, and the Agent deletes the file.
50
+ *
51
+ * A token enrolls one machine once, and only until the registration expires. Anyone who reads
52
+ * the token before the machine uses it can enroll a key of their own instead, so pass it only
53
+ * to the machine, keep its lifetime short, and compare the `public_key` of the used
54
+ * registration with the key the machine shows when that matters. Revoke a registration that
55
+ * will not be used with `DELETE /api/v1/machine-registrations/{registrationId}`.
56
+ *
57
+ * ## Trusting a machine's key
58
+ *
59
+ * Each machine has an Ed25519 key that it generates itself and that never leaves it. Participants
60
+ * verify that key end to end before they exchange any data with a session, so a client must
61
+ * decide which key belongs to a machine without relying on any party in between:
62
+ *
63
+ * - When approving an enrollment, recompute the pairing code from `public_key` and compare it
64
+ * with the code the machine shows. The code is derived as documented for
65
+ * `EnrollMachineResponse.pairing_code` in `leaflow/fleet/machine/v1/machine.proto`.
66
+ * Approve only when they match, and remember the key for the machine.
67
+ * - On any other client, remember the key the first time it connects to the machine, and
68
+ * refuse to continue whenever the machine later proves a different key. The fingerprint can
69
+ * be compared with the one the Agent prints on the machine.
70
+ *
71
+ * A machine that is reinstalled enrolls again as a new machine with a new key.
72
+ *
73
+ * ## Features
74
+ *
75
+ * A machine reports what it offers in `features`, each named after the protocol package that
76
+ * defines it:
77
+ *
78
+ * - `leaflow.fleet.directory.v1`: the accounts of the project's members and the project's groups
79
+ * exist on the machine; members log in over SSH with their keys and become root through sudo
80
+ * as their permissions allow;
81
+ * - `leaflow.fleet.command.v1`: running commands;
82
+ * - `leaflow.fleet.mcp.v1`: the MCP servers each account configures on the machine, local ones
83
+ * and remote ones it connects to;
84
+ * - `leaflow.fleet.host.v1`: terminal sessions, with programs, files, ports, sound, devices,
85
+ * printers and privilege approvals;
86
+ * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a graphical backend;
87
+ * - `leaflow.fleet.tool.v1`: live session tools. Builtin `computer.*` tools are exposed only while
88
+ * the virtual desktop capability is actually available; MCP is a separate source.
89
+ *
90
+ * A graphical backend does not require a full desktop environment. Terminal logins, commands
91
+ * and MCP server initialization prepare or reuse the account's lightweight graphical context,
92
+ * in addition to their own session or job. Configuration reads and writes do not initialize a
93
+ * server and do not require this preparation. A request that needs a feature the machine does
94
+ * not report available fails with `FEATURE_UNAVAILABLE`, whose `metadata.feature` names it.
95
+ *
96
+ * ## Directory
97
+ *
98
+ * Every user has one account, as with Google Cloud OS Login: a username and a uid that are the
99
+ * same on every machine of every project. The account is created the first time the user may log
100
+ * in to a machine or opens a session; its username comes from the email address, such as
101
+ * `alice_example_com` for `alice@example.com`, and its owner can change it. A project's machines
102
+ * know the accounts of the project's members and the groups the project defines. A member who
103
+ * leaves the project can no longer log in, and files keep their owner.
104
+ *
105
+ * Who may log in to which machines, and who may become root there through sudo, are permissions
106
+ * of the project's roles: `fleet:machines.login` and `fleet:machines.admin`, each for all
107
+ * machines or for chosen ones. Changes reach the machines within about a minute, and every login
108
+ * and elevation is checked against the current permissions while the machine is connected. To
109
+ * keep a member out of some machines, deny them `fleet:machines.login` on those machines.
110
+ * Elevation through sudo is never approved by a password; see "Approving sudo".
111
+ *
112
+ * Members log in over SSH with the SSH keys of their own accounts (`/account/v1/me/ssh-keys` on
113
+ * the account API), while they may log in to the machine.
114
+ *
115
+ * Machines resolve directory accounts and groups themselves and never write them into their local
116
+ * account files. A local account or group that already uses a name or id of the directory keeps
117
+ * it, and the machine records the conflict among its events.
118
+ *
119
+ * ## Running commands
120
+ *
121
+ * `POST /api/v1/machines/{machineId}:runCommand` runs one command line on the machine as the
122
+ * caller's account, as `ssh machine 'command'` would, but without SSH: the machine needs no open
123
+ * port, no distributed key and no address the caller can reach. Like logging in, it requires
124
+ * `fleet:machines.login` on the machine. Inside the command, `sudo` works without a prompt for
125
+ * a caller with `fleet:machines.admin` on the machine: the request approves the elevation.
126
+ *
127
+ * ## MCP servers
128
+ *
129
+ * A machine that offers `leaflow.fleet.mcp.v1` reaches the MCP servers its accounts configure:
130
+ * servers it runs itself and remote servers it connects to. Each account configures them in
131
+ * `~/.local/share/leaflow/agent/mcp.json` in its home directory, in the `mcpServers` format other
132
+ * MCP clients use, by hand or through this API; the machine picks up every change by itself.
133
+ * The caller's servers run as the caller's account, and the requests below act on them only.
134
+ *
135
+ * The configuration stays on the machine. The values of `env` and `headers` often hold
136
+ * credentials: this API writes them, and they then pass through the platform, but never returns
137
+ * them. Arguments, URLs, tool arguments and tool results pass through the platform as they are.
138
+ *
139
+ * ## Approving sudo
140
+ *
141
+ * An account may become root through sudo on a machine while its user has
142
+ * `fleet:machines.admin` there. Each elevation is approved, in the first of these ways that
143
+ * applies:
144
+ *
145
+ * - inside a command run through this API, by the request itself;
146
+ * - by the user's automatic approval for the machine, for a while or until removed
147
+ * (`PUT /api/v1/machines/{machineId}/privilege-auto-approval`), in one of two modes:
148
+ * - `automatic_review`, the recommended one: a large language model reviews each request and
149
+ * approves or denies it with a reason. It stops most dangerous requests, but not all of
150
+ * them. Each review is a request to Canopy, the model platform, through the project's
151
+ * Canopy service, and may incur Canopy charges; the project needs Canopy enabled. A
152
+ * request that cannot be reviewed, such as when the project has not enabled Canopy or the
153
+ * review does not complete in time, is denied with a reason saying so;
154
+ * - `always_approve`: every request is approved at once. This is dangerous: any program that
155
+ * runs as the account, such as a script or an AI agent, becomes root without anyone being
156
+ * asked;
157
+ * - by the user, on any of their devices, for a request listed by `GET /api/v1/privilege-requests`
158
+ * (`POST …:approve` or `…:deny`), or on a participant of the session the asking process belongs
159
+ * to. A request nobody decides expires, and sudo fails.
160
+ *
161
+ * A denied sudo shows whoever ran it the reason, when the denial gave one.
162
+ *
163
+ * Requests reach the user's devices as they happen through EventBus: the event
164
+ * `leaflow.fleet.privilege.requested` when one waits for the user and
165
+ * `leaflow.fleet.privilege.decided` when it ends, each addressed to the user in the current
166
+ * project and carrying the request's `id`. Requests decided without asking the user raise
167
+ * neither. A client that subscribes to them needs no polling; one that does not can list the
168
+ * pending requests.
169
+ *
170
+ * ## Connections that drop
171
+ *
172
+ * A machine's Agent and a session's process each keep a connection to the service, and on a poor
173
+ * network it may drop and come back within seconds. Requests do not fail for that:
174
+ *
175
+ * - A request that needs the machine or the session's process waits while it connects again,
176
+ * for as long as the request would wait for its answer, and fails with `MACHINE_OFFLINE` or
177
+ * `SESSION_UNAVAILABLE` only when it does not come back in that time.
178
+ * - What the machine or the session's process received before its connection dropped, such as a
179
+ * command or a session being opened, goes on, and its result is returned once it has
180
+ * connected again within that time.
181
+ *
182
+ * A machine stays `online` for up to a minute after its connection was lost, while its Agent
183
+ * connects again; a machine whose Agent stops is offline at once.
184
+ *
185
+ * ## Operations that do not exist
186
+ *
187
+ * Some resources lack an operation on purpose:
188
+ *
189
+ * - Accounts are created when they are first needed and are never deleted, so that files keep
190
+ * their owner.
191
+ * - Enrollment requests are made only by machines.
192
+ * - A machine registration cannot be changed; revoke it and create another.
193
+ * - Machine events are a log: they are listed, never changed, and kept for 30 days.
194
+ * - A privilege request is decided only by the user whose account asks, or on a participant of
195
+ * the session it comes from.
196
+ *
197
+ * ## Joining a session
198
+ *
199
+ * 1. Have an Ed25519 key, for as long as the client wants: one per participant or one kept by
200
+ * the client. The private key must never leave the client; in a browser, use a
201
+ * non-extractable WebCrypto key.
202
+ * 2. Get the ICE servers with `GET /api/v1/sessions/{sessionId}/rtc-configuration`, create a
203
+ * PeerConnection with them and its data channels (`leaflow/fleet/transport/v1/transport.proto`)
204
+ * and make an offer. Wait briefly for ICE candidates, such as until gathering completes or
205
+ * one second has passed, so that the offer carries them.
206
+ * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
207
+ * offer. The answer carries the participant's signed authorization, the keys the service
208
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
209
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
210
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
211
+ * read the session's later ones with
212
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
213
+ * `candidates_complete`.
214
+ * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
215
+ * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
216
+ * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
217
+ * PeerConnections stop within 30 seconds of their last lease.
218
+ * 5. When a path fails, start another PeerConnection with
219
+ * `POST …/participants/{participantId}/peer-connections` and move the connection to it with
220
+ * `:prepareMigration` and `:commitMigration`. Abandon a PeerConnection that does not
221
+ * connect with `DELETE …/peer-connections/{peerConnectionId}`.
222
+ * 6. Leave with `DELETE …/participants/{participantId}`.
223
+ *
224
+ * Signaling travels only through these requests; a participant holds no other connection to
225
+ * the service.
226
+ *
227
+ * What a participant may do in a session is decided when it is created, from the caller's
228
+ * permissions and what the request asks for, and does not change afterwards. Participants are not
229
+ * told apart by kind: a person in a browser and a program that operates the session are both
230
+ * participants, named by the `client_name` they choose, and either can be disconnected.
231
+ *
232
+ * Every participant that ends, including through `DELETE`, is announced through EventBus as
233
+ * `leaflow.fleet.participant.ended`, addressed to its user in the current project, with its
234
+ * `session_id`, `participant_id` (a decimal string) and `reason`: `left` when its user ended it,
235
+ * `removed` when someone else did, `lease_expired` when it was not renewed in time,
236
+ * `session_ended` when its session ended, `session_process_lost` when the session's process did
237
+ * not come back in time, `permission_revoked` when a permission it was created with was revoked
238
+ * from its user, `membership_ended` when its user is no longer a member of the project,
239
+ * `user_inactive` when its user's account was suspended or banned or its deletion was requested,
240
+ * `project_deletion_requested` when deletion of the project was requested, `machine_removed` when
241
+ * its machine was removed, or `key_revoked` when the key that signed its authorization was
242
+ * revoked. A participant whose creation failed is not announced.
243
+ * OpenAPI spec version: 1.0.0
244
+ */
245
+ import * as zod from "zod";
246
+ export declare const toolActivityListItemsMax = 64;
247
+ export declare const ToolActivityList: zod.ZodObject<{
248
+ items: zod.ZodArray<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
249
+ }, zod.z.core.$strict>;
250
+ export type ToolActivityList = zod.input<typeof ToolActivityList>;
251
+ export type ToolActivityListOutput = zod.output<typeof ToolActivityList>;