@leaflow/sdk 0.188.0 → 0.190.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/account/v1/generated/functions.d.ts +113 -1
- package/dist/account/v1/generated/functions.js +126 -0
- package/dist/account/v1/generated/models.d.ts +74 -0
- package/dist/account/v1/generated/models.js +8 -0
- package/dist/account/v1/generated/schemas.zod.d.ts +56 -0
- package/dist/account/v1/generated/schemas.zod.js +63 -0
- package/dist/account/v1/generated/validators/acceptConsentsRequestBody.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/acceptConsentsRequestBody.zod.js +4 -0
- package/dist/account/v1/generated/validators/acceptInvitationByTokenRequestBody.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/acceptInvitationByTokenRequestBody.zod.js +4 -0
- package/dist/account/v1/generated/validators/acceptedInvitationResponseBody.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/acceptedInvitationResponseBody.zod.js +4 -0
- package/dist/account/v1/generated/validators/accountDeletionObjectionResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/accountDeletionObjectionResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/accountDeletionResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/accountDeletionResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/accountDeletionState.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/accountDeletionState.zod.js +4 -0
- package/dist/account/v1/generated/validators/accountResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/accountResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/agreementListResponseBody.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/agreementListResponseBody.zod.js +4 -0
- package/dist/account/v1/generated/validators/agreementResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/agreementResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/consentBody.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/consentBody.zod.js +4 -0
- package/dist/account/v1/generated/validators/consentListResponseBody.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/consentListResponseBody.zod.js +4 -0
- package/dist/account/v1/generated/validators/consentResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/consentResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/countryOption.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/countryOption.zod.js +4 -0
- package/dist/account/v1/generated/validators/createProjectRequestBody.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/createProjectRequestBody.zod.js +4 -0
- package/dist/account/v1/generated/validators/createSSHKeyRequestBody.zod.d.ts +38 -0
- package/dist/account/v1/generated/validators/createSSHKeyRequestBody.zod.js +40 -0
- package/dist/account/v1/generated/validators/cursorPagination.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/cursorPagination.zod.js +4 -0
- package/dist/account/v1/generated/validators/error.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/error.zod.js +4 -0
- package/dist/account/v1/generated/validators/errorStatus.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/errorStatus.zod.js +4 -0
- package/dist/account/v1/generated/validators/fieldViolation.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/fieldViolation.zod.js +4 -0
- package/dist/account/v1/generated/validators/grantResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/grantResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/identityVerificationResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/identityVerificationResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/invitationPreviewResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/invitationPreviewResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/invitationResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/invitationResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/languageOption.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/languageOption.zod.js +4 -0
- package/dist/account/v1/generated/validators/lengthAwarePageInvitationResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/lengthAwarePageInvitationResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/lengthAwarePageProjectAccessResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/lengthAwarePageProjectAccessResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/lengthAwarePageSSHKeyResource.zod.d.ts +49 -0
- package/dist/account/v1/generated/validators/lengthAwarePageSSHKeyResource.zod.js +37 -0
- package/dist/account/v1/generated/validators/listMyInvitationsParams.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/listMyInvitationsParams.zod.js +4 -0
- package/dist/account/v1/generated/validators/listProjectsParams.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/listProjectsParams.zod.js +4 -0
- package/dist/account/v1/generated/validators/listSshKeysParams.zod.d.ts +45 -0
- package/dist/account/v1/generated/validators/listSshKeysParams.zod.js +47 -0
- package/dist/account/v1/generated/validators/locale.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/locale.zod.js +4 -0
- package/dist/account/v1/generated/validators/localeOptionsResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/localeOptionsResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/offsetPagination.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/offsetPagination.zod.js +4 -0
- package/dist/account/v1/generated/validators/previewInvitationByTokenParams.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/previewInvitationByTokenParams.zod.js +4 -0
- package/dist/account/v1/generated/validators/projectAccessList.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/projectAccessList.zod.js +4 -0
- package/dist/account/v1/generated/validators/projectAccessResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/projectAccessResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/projectResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/projectResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/projectSlugAvailabilityResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/projectSlugAvailabilityResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/projectStatus.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/projectStatus.zod.js +4 -0
- package/dist/account/v1/generated/validators/projectTraitResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/projectTraitResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/registerRequestBody.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/registerRequestBody.zod.js +4 -0
- package/dist/account/v1/generated/validators/renameSSHKeyRequestBody.zod.d.ts +36 -0
- package/dist/account/v1/generated/validators/renameSSHKeyRequestBody.zod.js +34 -0
- package/dist/account/v1/generated/validators/requestAccountDeletionParams.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/requestAccountDeletionParams.zod.js +4 -0
- package/dist/account/v1/generated/validators/resourceRefResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/resourceRefResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/ruleResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/ruleResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/sSHKeyResource.zod.d.ts +44 -0
- package/dist/account/v1/generated/validators/sSHKeyResource.zod.js +41 -0
- package/dist/account/v1/generated/validators/scopedTokenResponseBody.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/scopedTokenResponseBody.zod.js +4 -0
- package/dist/account/v1/generated/validators/searchProjectsRequestBody.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/searchProjectsRequestBody.zod.js +4 -0
- package/dist/account/v1/generated/validators/settingsResource.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/settingsResource.zod.js +4 -0
- package/dist/account/v1/generated/validators/submitIdentityVerificationRequestBody.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/submitIdentityVerificationRequestBody.zod.js +4 -0
- package/dist/account/v1/generated/validators/updateAccountRequestBody.zod.d.ts +4 -0
- package/dist/account/v1/generated/validators/updateAccountRequestBody.zod.js +4 -0
- package/dist/fleet/v1/generated/functions.d.ts +31 -16
- package/dist/fleet/v1/generated/functions.js +27 -8
- package/dist/fleet/v1/generated/models.d.ts +58 -10
- package/dist/fleet/v1/generated/models.js +6 -1
- package/dist/fleet/v1/generated/schemas.zod.d.ts +36 -14
- package/dist/fleet/v1/generated/schemas.zod.js +31 -14
- package/dist/fleet/v1/generated/validators/accountList.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/accountList.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/accountResource.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/accountResource.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/approveEnrollmentRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/approveEnrollmentRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/callMcpToolRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/callMcpToolRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/callMcpToolResponse.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/callMcpToolResponse.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/createGroupMemberRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/createGroupMemberRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/createGroupRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/createGroupRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/createMachineRegistrationRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/createMachineRegistrationRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/createMachineRegistrationResponse.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/createMachineRegistrationResponse.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/createParticipantRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/createParticipantRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/createParticipantResponse.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/createParticipantResponse.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/createPeerConnectionCandidatesRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/createPeerConnectionCandidatesRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/createPeerConnectionRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/createPeerConnectionRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/createSessionRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/createSessionRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/cursorPagination.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/cursorPagination.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/deleteMcpServerParams.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/deleteMcpServerParams.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/denyPrivilegeRequestRequest.zod.d.ts +245 -0
- package/dist/fleet/v1/generated/validators/denyPrivilegeRequestRequest.zod.js +247 -0
- package/dist/fleet/v1/generated/validators/desktopOptions.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/desktopOptions.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/desktopState.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/desktopState.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/directoryName.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/directoryName.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/enrollmentResource.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/enrollmentResource.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/enrollmentState.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/enrollmentState.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/error.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/error.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/errorStatus.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/errorStatus.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/featureState.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/featureState.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/fieldViolation.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/fieldViolation.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/findEnrollmentByPairingCodeParams.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/findEnrollmentByPairingCodeParams.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/findEnrollmentResponse.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/findEnrollmentResponse.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/groupList.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/groupList.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/groupResource.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/groupResource.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/iceCandidate.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/iceCandidate.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/iceServer.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/iceServer.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/listAccountsParams.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/listAccountsParams.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/listGroupMembersParams.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/listGroupMembersParams.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/listGroupsParams.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/listGroupsParams.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/listMachineEventsParams.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/listMachineEventsParams.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/listMachineRegistrationsParams.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/listMachineRegistrationsParams.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/listMachinesParams.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/listMachinesParams.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/listMcpToolsParams.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/listMcpToolsParams.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/listPrivilegeAutoApprovalsParams.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/listPrivilegeAutoApprovalsParams.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/listPrivilegeRequestsParams.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/listPrivilegeRequestsParams.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/listSessionsParams.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/listSessionsParams.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/machineEventList.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/machineEventList.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/machineEventResource.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/machineEventResource.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/machineEventType.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/machineEventType.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/machineFeature.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/machineFeature.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/machineList.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/machineList.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/machineRegistrationList.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/machineRegistrationList.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/machineRegistrationResource.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/machineRegistrationResource.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/machineRegistrationState.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/machineRegistrationState.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/machineResource.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/machineResource.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/mcpConfigurationFile.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/mcpConfigurationFile.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/mcpConfigurationResource.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/mcpConfigurationResource.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/mcpImplementation.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/mcpImplementation.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/mcpServerFailure.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/mcpServerFailure.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/mcpServerResource.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/mcpServerResource.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/mcpToolList.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/mcpToolList.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/mcpToolResource.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/mcpToolResource.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/mcpTransport.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/mcpTransport.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/mcpUnavailableServer.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/mcpUnavailableServer.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/migrationStep.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/migrationStep.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/namedIdentity.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/namedIdentity.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/offsetPagination.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/offsetPagination.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/operatingSystem.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/operatingSystem.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/participantList.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/participantList.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/participantResource.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/participantResource.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/peerConnection.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/peerConnection.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/privilegeAutoApprovalList.zod.d.ts +24 -7
- package/dist/fleet/v1/generated/validators/privilegeAutoApprovalList.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/privilegeAutoApprovalMode.zod.d.ts +245 -0
- package/dist/fleet/v1/generated/validators/privilegeAutoApprovalMode.zod.js +242 -0
- package/dist/fleet/v1/generated/validators/privilegeAutoApprovalResource.zod.d.ts +24 -7
- package/dist/fleet/v1/generated/validators/privilegeAutoApprovalResource.zod.js +22 -7
- package/dist/fleet/v1/generated/validators/privilegeDecider.zod.d.ts +22 -8
- package/dist/fleet/v1/generated/validators/privilegeDecider.zod.js +22 -9
- package/dist/fleet/v1/generated/validators/privilegeRequestList.zod.d.ts +23 -8
- package/dist/fleet/v1/generated/validators/privilegeRequestList.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/privilegeRequestResource.zod.d.ts +24 -8
- package/dist/fleet/v1/generated/validators/privilegeRequestResource.zod.js +26 -7
- package/dist/fleet/v1/generated/validators/privilegeRequestState.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/privilegeRequestState.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/publicKey.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/publicKey.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/renewParticipantRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/renewParticipantRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/renewParticipantResponse.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/renewParticipantResponse.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/replaceMcpConfigurationRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/replaceMcpConfigurationRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/rtcConfiguration.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/rtcConfiguration.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/runCommandRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/runCommandRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/runCommandResponse.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/runCommandResponse.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/sendMcpRequestRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/sendMcpRequestRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/sendMcpRequestResponse.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/sendMcpRequestResponse.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/sessionCloseReason.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/sessionCloseReason.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/sessionList.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/sessionList.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/sessionMode.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/sessionMode.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/sessionResource.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/sessionResource.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/sessionState.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/sessionState.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/signedMessage.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/signedMessage.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/signingKey.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/signingKey.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/updateAccountRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/updateAccountRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/updateGroupRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/updateGroupRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/updateMachineRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/updateMachineRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/updateMcpServerRequest.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/updateMcpServerRequest.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/updateMcpServerResponse.zod.d.ts +20 -7
- package/dist/fleet/v1/generated/validators/updateMcpServerResponse.zod.js +20 -7
- package/dist/fleet/v1/generated/validators/updatePrivilegeAutoApprovalRequest.zod.d.ts +24 -7
- package/dist/fleet/v1/generated/validators/updatePrivilegeAutoApprovalRequest.zod.js +22 -7
- package/dist/iam/v1/generated/functions.d.ts +8 -6
- package/dist/iam/v1/generated/functions.js +7 -5
- package/dist/iam/v1/generated/models.d.ts +1 -13
- package/dist/iam/v1/generated/models.js +0 -4
- package/dist/iam/v1/generated/schemas.zod.d.ts +8 -10
- package/dist/iam/v1/generated/schemas.zod.js +8 -6
- package/dist/iam/v1/generated/validators/applicationResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/applicationResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/attachPolicyRequestBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/attachPolicyRequestBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/batchGetMembersRequestBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/batchGetMembersRequestBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/batchGetMembersResponseBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/batchGetMembersResponseBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/catalogListResponseBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/catalogListResponseBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/catalogResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/catalogResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/createApplicationRequestBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/createApplicationRequestBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/createApplicationResponseBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/createApplicationResponseBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/createRoleRequestBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/createRoleRequestBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/createSSHKeyRequestBody.zod.d.ts +1 -6
- package/dist/iam/v1/generated/validators/createSSHKeyRequestBody.zod.js +1 -6
- package/dist/iam/v1/generated/validators/cursorPagination.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/cursorPagination.zod.js +1 -1
- package/dist/iam/v1/generated/validators/error.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/error.zod.js +1 -1
- package/dist/iam/v1/generated/validators/errorStatus.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/errorStatus.zod.js +1 -1
- package/dist/iam/v1/generated/validators/fieldViolation.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/fieldViolation.zod.js +1 -1
- package/dist/iam/v1/generated/validators/grantResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/grantResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/invitationResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/invitationResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/issueInvitationRequestBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/issueInvitationRequestBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/issuedInvitationResponseBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/issuedInvitationResponseBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/lengthAwarePageApplicationResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/lengthAwarePageApplicationResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/lengthAwarePageInvitationResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/lengthAwarePageInvitationResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/lengthAwarePageMemberResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/lengthAwarePageMemberResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/lengthAwarePageSSHKeyResource.zod.d.ts +1 -2
- package/dist/iam/v1/generated/validators/lengthAwarePageSSHKeyResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/listApplicationsParams.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/listApplicationsParams.zod.js +1 -1
- package/dist/iam/v1/generated/validators/listMembersParams.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/listMembersParams.zod.js +1 -1
- package/dist/iam/v1/generated/validators/listPoliciesParams.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/listPoliciesParams.zod.js +1 -1
- package/dist/iam/v1/generated/validators/listProjectInvitationsParams.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/listProjectInvitationsParams.zod.js +1 -1
- package/dist/iam/v1/generated/validators/listSshKeysParams.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/listSshKeysParams.zod.js +1 -1
- package/dist/iam/v1/generated/validators/memberResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/memberResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/membershipResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/membershipResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/offsetPagination.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/offsetPagination.zod.js +1 -1
- package/dist/iam/v1/generated/validators/ownershipTransferResponseBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/ownershipTransferResponseBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/permissionResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/permissionResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/policyListResponseBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/policyListResponseBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/policyResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/policyResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/projectAccessResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/projectAccessResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/projectResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/projectResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/projectTraitResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/projectTraitResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/quotaListResponseBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/quotaListResponseBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/quotaResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/quotaResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/renameSSHKeyRequestBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/renameSSHKeyRequestBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/resolvedMemberResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/resolvedMemberResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/resourceRefResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/resourceRefResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/resourceTypeResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/resourceTypeResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/roleListResponseBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/roleListResponseBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/roleResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/roleResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/rotateApplicationSecretResponseBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/rotateApplicationSecretResponseBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/ruleResource.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/ruleResource.zod.js +1 -1
- package/dist/iam/v1/generated/validators/sSHKeyResource.zod.d.ts +1 -2
- package/dist/iam/v1/generated/validators/sSHKeyResource.zod.js +1 -5
- package/dist/iam/v1/generated/validators/setMemberPermissionsRequestBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/setMemberPermissionsRequestBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/setMemberRolesRequestBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/setMemberRolesRequestBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/setProjectSlugRequestBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/setProjectSlugRequestBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/transferOwnershipRequestBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/transferOwnershipRequestBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/updateApplicationRequestBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/updateApplicationRequestBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/updatePolicyRequestBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/updatePolicyRequestBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/updateProjectRequestBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/updateProjectRequestBody.zod.js +1 -1
- package/dist/iam/v1/generated/validators/updateRoleRequestBody.zod.d.ts +1 -1
- package/dist/iam/v1/generated/validators/updateRoleRequestBody.zod.js +1 -1
- package/dist/proto/leaflow/fleet/privilege/v1/privilege_pb.d.ts +20 -5
- package/dist/proto/leaflow/fleet/privilege/v1/privilege_pb.js +1 -1
- package/dist/routes.d.ts +40 -0
- package/dist/routes.js +45 -0
- package/package.json +1 -1
|
@@ -105,8 +105,9 @@
|
|
|
105
105
|
* keep a member out of some machines, deny them `fleet:machines.login` on those machines.
|
|
106
106
|
* Elevation through sudo is never approved by a password; see "Approving sudo".
|
|
107
107
|
*
|
|
108
|
-
* Members log in over SSH with the keys
|
|
109
|
-
* log in to the machine.
|
|
108
|
+
* Members log in over SSH with the SSH keys of their own accounts (`/account/v1/me/ssh-keys` on
|
|
109
|
+
* the account API), while they may log in to the machine. The SSH keys a project shares sign in
|
|
110
|
+
* to no directory account.
|
|
110
111
|
*
|
|
111
112
|
* Machines resolve directory accounts and groups themselves and never write them into their local
|
|
112
113
|
* account files. A local account or group that already uses a name or id of the directory keeps
|
|
@@ -139,16 +140,28 @@
|
|
|
139
140
|
* applies:
|
|
140
141
|
*
|
|
141
142
|
* - inside a command run through this API, by the request itself;
|
|
142
|
-
* -
|
|
143
|
-
*
|
|
143
|
+
* - by the user's automatic approval for the machine, for a while or until removed
|
|
144
|
+
* (`PUT /api/v1/machines/{machineId}/privilege-auto-approval`), in one of two modes:
|
|
145
|
+
* - `automatic_review`, the recommended one: a large language model reviews each request and
|
|
146
|
+
* approves or denies it with a reason. It stops most dangerous requests, but not all of
|
|
147
|
+
* them. Each review is a request to Canopy, the model platform, through the project's
|
|
148
|
+
* Canopy service, and may incur Canopy charges; the project needs Canopy enabled. A
|
|
149
|
+
* request that cannot be reviewed, such as when the project has not enabled Canopy or the
|
|
150
|
+
* review does not complete in time, is denied with a reason saying so;
|
|
151
|
+
* - `always_approve`: every request is approved at once. This is dangerous: any program that
|
|
152
|
+
* runs as the account, such as a script or an AI agent, becomes root without anyone being
|
|
153
|
+
* asked;
|
|
144
154
|
* - by the user, on any of their devices, for a request listed by `GET /api/v1/privilege-requests`
|
|
145
155
|
* (`POST …:approve` or `…:deny`), or on a participant of the session the asking process belongs
|
|
146
156
|
* to. A request nobody decides expires, and sudo fails.
|
|
147
157
|
*
|
|
158
|
+
* A denied sudo shows whoever ran it the reason, when the denial gave one.
|
|
159
|
+
*
|
|
148
160
|
* Requests reach the user's devices as they happen through EventBus: the event
|
|
149
|
-
* `leaflow.fleet.privilege.requested` when one
|
|
150
|
-
* when it ends, each addressed to the user in the current
|
|
151
|
-
*
|
|
161
|
+
* `leaflow.fleet.privilege.requested` when one waits for the user and
|
|
162
|
+
* `leaflow.fleet.privilege.decided` when it ends, each addressed to the user in the current
|
|
163
|
+
* project and carrying the request's `id`. Requests decided without asking the user raise
|
|
164
|
+
* neither. A client that subscribes to them needs no polling; one that does not can list the
|
|
152
165
|
* pending requests.
|
|
153
166
|
*
|
|
154
167
|
* ## Connections that drop
|
|
@@ -520,17 +533,23 @@ export declare const GetPrivilegeAutoApprovalParams: zod.ZodObject<{
|
|
|
520
533
|
machineId: zod.ZodUUID;
|
|
521
534
|
}, zod.z.core.$strict>;
|
|
522
535
|
/**
|
|
523
|
-
*
|
|
524
|
-
* until removed when `expires_at` is null, replacing any
|
|
525
|
-
*
|
|
526
|
-
*
|
|
536
|
+
* Has the caller's privilege requests on the machine decided without asking them, in
|
|
537
|
+
* `mode`, until `expires_at`, or until removed when `expires_at` is null, replacing any
|
|
538
|
+
* earlier automatic approval. `automatic_review` is recommended; with `always_approve` any
|
|
539
|
+
* program that runs as the account becomes root without anyone being asked. It applies to
|
|
540
|
+
* the caller's own account only, which is created if the caller has none yet, and only
|
|
541
|
+
* while they may become root on the machine. Fails with `INVALID_ARGUMENT` when
|
|
527
542
|
* `expires_at` has passed.
|
|
528
|
-
* @summary
|
|
543
|
+
* @summary Decide the caller's privilege requests on a machine without asking
|
|
529
544
|
*/
|
|
530
545
|
export declare const UpdatePrivilegeAutoApprovalParams: zod.ZodObject<{
|
|
531
546
|
machineId: zod.ZodUUID;
|
|
532
547
|
}, zod.z.core.$strict>;
|
|
533
548
|
export declare const UpdatePrivilegeAutoApprovalBody: zod.ZodObject<{
|
|
549
|
+
mode: zod.ZodEnum<{
|
|
550
|
+
automatic_review: "automatic_review";
|
|
551
|
+
always_approve: "always_approve";
|
|
552
|
+
}>;
|
|
534
553
|
expires_at: zod.ZodNullable<zod.z.ZodISODateTime>;
|
|
535
554
|
}, zod.z.core.$strict>;
|
|
536
555
|
/**
|
|
@@ -592,13 +611,16 @@ export declare const ApprovePrivilegeRequestParams: zod.ZodObject<{
|
|
|
592
611
|
requestId: zod.ZodUUID;
|
|
593
612
|
}, zod.z.core.$strict>;
|
|
594
613
|
/**
|
|
595
|
-
* Denies one of the caller's pending requests; the waiting sudo fails
|
|
596
|
-
* `PRIVILEGE_REQUEST_CLOSED` as for approving.
|
|
614
|
+
* Denies one of the caller's pending requests; the waiting sudo fails and shows `reason`,
|
|
615
|
+
* when given, to whoever ran it. Fails with `PRIVILEGE_REQUEST_CLOSED` as for approving.
|
|
597
616
|
* @summary Deny a privilege request
|
|
598
617
|
*/
|
|
599
618
|
export declare const DenyPrivilegeRequestParams: zod.ZodObject<{
|
|
600
619
|
requestId: zod.ZodUUID;
|
|
601
620
|
}, zod.z.core.$strict>;
|
|
621
|
+
export declare const DenyPrivilegeRequestBody: zod.ZodObject<{
|
|
622
|
+
reason: zod.ZodOptional<zod.ZodString>;
|
|
623
|
+
}, zod.z.core.$strict>;
|
|
602
624
|
/**
|
|
603
625
|
* Returns the pending enrollment request whose pairing code matches, or no enrollment when
|
|
604
626
|
* none does. Mistyped codes are expected and are not an error. Letters are matched
|
|
@@ -105,8 +105,9 @@
|
|
|
105
105
|
* keep a member out of some machines, deny them `fleet:machines.login` on those machines.
|
|
106
106
|
* Elevation through sudo is never approved by a password; see "Approving sudo".
|
|
107
107
|
*
|
|
108
|
-
* Members log in over SSH with the keys
|
|
109
|
-
* log in to the machine.
|
|
108
|
+
* Members log in over SSH with the SSH keys of their own accounts (`/account/v1/me/ssh-keys` on
|
|
109
|
+
* the account API), while they may log in to the machine. The SSH keys a project shares sign in
|
|
110
|
+
* to no directory account.
|
|
110
111
|
*
|
|
111
112
|
* Machines resolve directory accounts and groups themselves and never write them into their local
|
|
112
113
|
* account files. A local account or group that already uses a name or id of the directory keeps
|
|
@@ -139,16 +140,28 @@
|
|
|
139
140
|
* applies:
|
|
140
141
|
*
|
|
141
142
|
* - inside a command run through this API, by the request itself;
|
|
142
|
-
* -
|
|
143
|
-
*
|
|
143
|
+
* - by the user's automatic approval for the machine, for a while or until removed
|
|
144
|
+
* (`PUT /api/v1/machines/{machineId}/privilege-auto-approval`), in one of two modes:
|
|
145
|
+
* - `automatic_review`, the recommended one: a large language model reviews each request and
|
|
146
|
+
* approves or denies it with a reason. It stops most dangerous requests, but not all of
|
|
147
|
+
* them. Each review is a request to Canopy, the model platform, through the project's
|
|
148
|
+
* Canopy service, and may incur Canopy charges; the project needs Canopy enabled. A
|
|
149
|
+
* request that cannot be reviewed, such as when the project has not enabled Canopy or the
|
|
150
|
+
* review does not complete in time, is denied with a reason saying so;
|
|
151
|
+
* - `always_approve`: every request is approved at once. This is dangerous: any program that
|
|
152
|
+
* runs as the account, such as a script or an AI agent, becomes root without anyone being
|
|
153
|
+
* asked;
|
|
144
154
|
* - by the user, on any of their devices, for a request listed by `GET /api/v1/privilege-requests`
|
|
145
155
|
* (`POST …:approve` or `…:deny`), or on a participant of the session the asking process belongs
|
|
146
156
|
* to. A request nobody decides expires, and sudo fails.
|
|
147
157
|
*
|
|
158
|
+
* A denied sudo shows whoever ran it the reason, when the denial gave one.
|
|
159
|
+
*
|
|
148
160
|
* Requests reach the user's devices as they happen through EventBus: the event
|
|
149
|
-
* `leaflow.fleet.privilege.requested` when one
|
|
150
|
-
* when it ends, each addressed to the user in the current
|
|
151
|
-
*
|
|
161
|
+
* `leaflow.fleet.privilege.requested` when one waits for the user and
|
|
162
|
+
* `leaflow.fleet.privilege.decided` when it ends, each addressed to the user in the current
|
|
163
|
+
* project and carrying the request's `id`. Requests decided without asking the user raise
|
|
164
|
+
* neither. A client that subscribes to them needs no polling; one that does not can list the
|
|
152
165
|
* pending requests.
|
|
153
166
|
*
|
|
154
167
|
* ## Connections that drop
|
|
@@ -233,6 +246,7 @@ import { CreateParticipantRequest } from "./validators/createParticipantRequest.
|
|
|
233
246
|
import { CreatePeerConnectionCandidatesRequest } from "./validators/createPeerConnectionCandidatesRequest.zod.js";
|
|
234
247
|
import { CreatePeerConnectionRequest } from "./validators/createPeerConnectionRequest.zod.js";
|
|
235
248
|
import { CreateSessionRequest } from "./validators/createSessionRequest.zod.js";
|
|
249
|
+
import { DenyPrivilegeRequestRequest } from "./validators/denyPrivilegeRequestRequest.zod.js";
|
|
236
250
|
import { MigrationStep } from "./validators/migrationStep.zod.js";
|
|
237
251
|
import { RenewParticipantRequest } from "./validators/renewParticipantRequest.zod.js";
|
|
238
252
|
import { ReplaceMcpConfigurationRequest } from "./validators/replaceMcpConfigurationRequest.zod.js";
|
|
@@ -567,12 +581,14 @@ export const GetPrivilegeAutoApprovalParams = zod.strictObject({
|
|
|
567
581
|
machineId: zod.uuid(),
|
|
568
582
|
});
|
|
569
583
|
/**
|
|
570
|
-
*
|
|
571
|
-
* until removed when `expires_at` is null, replacing any
|
|
572
|
-
*
|
|
573
|
-
*
|
|
584
|
+
* Has the caller's privilege requests on the machine decided without asking them, in
|
|
585
|
+
* `mode`, until `expires_at`, or until removed when `expires_at` is null, replacing any
|
|
586
|
+
* earlier automatic approval. `automatic_review` is recommended; with `always_approve` any
|
|
587
|
+
* program that runs as the account becomes root without anyone being asked. It applies to
|
|
588
|
+
* the caller's own account only, which is created if the caller has none yet, and only
|
|
589
|
+
* while they may become root on the machine. Fails with `INVALID_ARGUMENT` when
|
|
574
590
|
* `expires_at` has passed.
|
|
575
|
-
* @summary
|
|
591
|
+
* @summary Decide the caller's privilege requests on a machine without asking
|
|
576
592
|
*/
|
|
577
593
|
export const UpdatePrivilegeAutoApprovalParams = zod.strictObject({
|
|
578
594
|
machineId: zod.uuid(),
|
|
@@ -654,13 +670,14 @@ export const ApprovePrivilegeRequestParams = zod.strictObject({
|
|
|
654
670
|
requestId: zod.uuid(),
|
|
655
671
|
});
|
|
656
672
|
/**
|
|
657
|
-
* Denies one of the caller's pending requests; the waiting sudo fails
|
|
658
|
-
* `PRIVILEGE_REQUEST_CLOSED` as for approving.
|
|
673
|
+
* Denies one of the caller's pending requests; the waiting sudo fails and shows `reason`,
|
|
674
|
+
* when given, to whoever ran it. Fails with `PRIVILEGE_REQUEST_CLOSED` as for approving.
|
|
659
675
|
* @summary Deny a privilege request
|
|
660
676
|
*/
|
|
661
677
|
export const DenyPrivilegeRequestParams = zod.strictObject({
|
|
662
678
|
requestId: zod.uuid(),
|
|
663
679
|
});
|
|
680
|
+
export const DenyPrivilegeRequestBody = DenyPrivilegeRequestRequest;
|
|
664
681
|
/**
|
|
665
682
|
* Returns the pending enrollment request whose pairing code matches, or no enrollment when
|
|
666
683
|
* none does. Mistyped codes are expected and are not an error. Letters are matched
|
|
@@ -105,8 +105,9 @@
|
|
|
105
105
|
* keep a member out of some machines, deny them `fleet:machines.login` on those machines.
|
|
106
106
|
* Elevation through sudo is never approved by a password; see "Approving sudo".
|
|
107
107
|
*
|
|
108
|
-
* Members log in over SSH with the keys
|
|
109
|
-
* log in to the machine.
|
|
108
|
+
* Members log in over SSH with the SSH keys of their own accounts (`/account/v1/me/ssh-keys` on
|
|
109
|
+
* the account API), while they may log in to the machine. The SSH keys a project shares sign in
|
|
110
|
+
* to no directory account.
|
|
110
111
|
*
|
|
111
112
|
* Machines resolve directory accounts and groups themselves and never write them into their local
|
|
112
113
|
* account files. A local account or group that already uses a name or id of the directory keeps
|
|
@@ -139,16 +140,28 @@
|
|
|
139
140
|
* applies:
|
|
140
141
|
*
|
|
141
142
|
* - inside a command run through this API, by the request itself;
|
|
142
|
-
* -
|
|
143
|
-
*
|
|
143
|
+
* - by the user's automatic approval for the machine, for a while or until removed
|
|
144
|
+
* (`PUT /api/v1/machines/{machineId}/privilege-auto-approval`), in one of two modes:
|
|
145
|
+
* - `automatic_review`, the recommended one: a large language model reviews each request and
|
|
146
|
+
* approves or denies it with a reason. It stops most dangerous requests, but not all of
|
|
147
|
+
* them. Each review is a request to Canopy, the model platform, through the project's
|
|
148
|
+
* Canopy service, and may incur Canopy charges; the project needs Canopy enabled. A
|
|
149
|
+
* request that cannot be reviewed, such as when the project has not enabled Canopy or the
|
|
150
|
+
* review does not complete in time, is denied with a reason saying so;
|
|
151
|
+
* - `always_approve`: every request is approved at once. This is dangerous: any program that
|
|
152
|
+
* runs as the account, such as a script or an AI agent, becomes root without anyone being
|
|
153
|
+
* asked;
|
|
144
154
|
* - by the user, on any of their devices, for a request listed by `GET /api/v1/privilege-requests`
|
|
145
155
|
* (`POST …:approve` or `…:deny`), or on a participant of the session the asking process belongs
|
|
146
156
|
* to. A request nobody decides expires, and sudo fails.
|
|
147
157
|
*
|
|
158
|
+
* A denied sudo shows whoever ran it the reason, when the denial gave one.
|
|
159
|
+
*
|
|
148
160
|
* Requests reach the user's devices as they happen through EventBus: the event
|
|
149
|
-
* `leaflow.fleet.privilege.requested` when one
|
|
150
|
-
* when it ends, each addressed to the user in the current
|
|
151
|
-
*
|
|
161
|
+
* `leaflow.fleet.privilege.requested` when one waits for the user and
|
|
162
|
+
* `leaflow.fleet.privilege.decided` when it ends, each addressed to the user in the current
|
|
163
|
+
* project and carrying the request's `id`. Requests decided without asking the user raise
|
|
164
|
+
* neither. A client that subscribes to them needs no polling; one that does not can list the
|
|
152
165
|
* pending requests.
|
|
153
166
|
*
|
|
154
167
|
* ## Connections that drop
|
|
@@ -105,8 +105,9 @@
|
|
|
105
105
|
* keep a member out of some machines, deny them `fleet:machines.login` on those machines.
|
|
106
106
|
* Elevation through sudo is never approved by a password; see "Approving sudo".
|
|
107
107
|
*
|
|
108
|
-
* Members log in over SSH with the keys
|
|
109
|
-
* log in to the machine.
|
|
108
|
+
* Members log in over SSH with the SSH keys of their own accounts (`/account/v1/me/ssh-keys` on
|
|
109
|
+
* the account API), while they may log in to the machine. The SSH keys a project shares sign in
|
|
110
|
+
* to no directory account.
|
|
110
111
|
*
|
|
111
112
|
* Machines resolve directory accounts and groups themselves and never write them into their local
|
|
112
113
|
* account files. A local account or group that already uses a name or id of the directory keeps
|
|
@@ -139,16 +140,28 @@
|
|
|
139
140
|
* applies:
|
|
140
141
|
*
|
|
141
142
|
* - inside a command run through this API, by the request itself;
|
|
142
|
-
* -
|
|
143
|
-
*
|
|
143
|
+
* - by the user's automatic approval for the machine, for a while or until removed
|
|
144
|
+
* (`PUT /api/v1/machines/{machineId}/privilege-auto-approval`), in one of two modes:
|
|
145
|
+
* - `automatic_review`, the recommended one: a large language model reviews each request and
|
|
146
|
+
* approves or denies it with a reason. It stops most dangerous requests, but not all of
|
|
147
|
+
* them. Each review is a request to Canopy, the model platform, through the project's
|
|
148
|
+
* Canopy service, and may incur Canopy charges; the project needs Canopy enabled. A
|
|
149
|
+
* request that cannot be reviewed, such as when the project has not enabled Canopy or the
|
|
150
|
+
* review does not complete in time, is denied with a reason saying so;
|
|
151
|
+
* - `always_approve`: every request is approved at once. This is dangerous: any program that
|
|
152
|
+
* runs as the account, such as a script or an AI agent, becomes root without anyone being
|
|
153
|
+
* asked;
|
|
144
154
|
* - by the user, on any of their devices, for a request listed by `GET /api/v1/privilege-requests`
|
|
145
155
|
* (`POST …:approve` or `…:deny`), or on a participant of the session the asking process belongs
|
|
146
156
|
* to. A request nobody decides expires, and sudo fails.
|
|
147
157
|
*
|
|
158
|
+
* A denied sudo shows whoever ran it the reason, when the denial gave one.
|
|
159
|
+
*
|
|
148
160
|
* Requests reach the user's devices as they happen through EventBus: the event
|
|
149
|
-
* `leaflow.fleet.privilege.requested` when one
|
|
150
|
-
* when it ends, each addressed to the user in the current
|
|
151
|
-
*
|
|
161
|
+
* `leaflow.fleet.privilege.requested` when one waits for the user and
|
|
162
|
+
* `leaflow.fleet.privilege.decided` when it ends, each addressed to the user in the current
|
|
163
|
+
* project and carrying the request's `id`. Requests decided without asking the user raise
|
|
164
|
+
* neither. A client that subscribes to them needs no polling; one that does not can list the
|
|
152
165
|
* pending requests.
|
|
153
166
|
*
|
|
154
167
|
* ## Connections that drop
|
|
@@ -105,8 +105,9 @@
|
|
|
105
105
|
* keep a member out of some machines, deny them `fleet:machines.login` on those machines.
|
|
106
106
|
* Elevation through sudo is never approved by a password; see "Approving sudo".
|
|
107
107
|
*
|
|
108
|
-
* Members log in over SSH with the keys
|
|
109
|
-
* log in to the machine.
|
|
108
|
+
* Members log in over SSH with the SSH keys of their own accounts (`/account/v1/me/ssh-keys` on
|
|
109
|
+
* the account API), while they may log in to the machine. The SSH keys a project shares sign in
|
|
110
|
+
* to no directory account.
|
|
110
111
|
*
|
|
111
112
|
* Machines resolve directory accounts and groups themselves and never write them into their local
|
|
112
113
|
* account files. A local account or group that already uses a name or id of the directory keeps
|
|
@@ -139,16 +140,28 @@
|
|
|
139
140
|
* applies:
|
|
140
141
|
*
|
|
141
142
|
* - inside a command run through this API, by the request itself;
|
|
142
|
-
* -
|
|
143
|
-
*
|
|
143
|
+
* - by the user's automatic approval for the machine, for a while or until removed
|
|
144
|
+
* (`PUT /api/v1/machines/{machineId}/privilege-auto-approval`), in one of two modes:
|
|
145
|
+
* - `automatic_review`, the recommended one: a large language model reviews each request and
|
|
146
|
+
* approves or denies it with a reason. It stops most dangerous requests, but not all of
|
|
147
|
+
* them. Each review is a request to Canopy, the model platform, through the project's
|
|
148
|
+
* Canopy service, and may incur Canopy charges; the project needs Canopy enabled. A
|
|
149
|
+
* request that cannot be reviewed, such as when the project has not enabled Canopy or the
|
|
150
|
+
* review does not complete in time, is denied with a reason saying so;
|
|
151
|
+
* - `always_approve`: every request is approved at once. This is dangerous: any program that
|
|
152
|
+
* runs as the account, such as a script or an AI agent, becomes root without anyone being
|
|
153
|
+
* asked;
|
|
144
154
|
* - by the user, on any of their devices, for a request listed by `GET /api/v1/privilege-requests`
|
|
145
155
|
* (`POST …:approve` or `…:deny`), or on a participant of the session the asking process belongs
|
|
146
156
|
* to. A request nobody decides expires, and sudo fails.
|
|
147
157
|
*
|
|
158
|
+
* A denied sudo shows whoever ran it the reason, when the denial gave one.
|
|
159
|
+
*
|
|
148
160
|
* Requests reach the user's devices as they happen through EventBus: the event
|
|
149
|
-
* `leaflow.fleet.privilege.requested` when one
|
|
150
|
-
* when it ends, each addressed to the user in the current
|
|
151
|
-
*
|
|
161
|
+
* `leaflow.fleet.privilege.requested` when one waits for the user and
|
|
162
|
+
* `leaflow.fleet.privilege.decided` when it ends, each addressed to the user in the current
|
|
163
|
+
* project and carrying the request's `id`. Requests decided without asking the user raise
|
|
164
|
+
* neither. A client that subscribes to them needs no polling; one that does not can list the
|
|
152
165
|
* pending requests.
|
|
153
166
|
*
|
|
154
167
|
* ## Connections that drop
|
|
@@ -105,8 +105,9 @@
|
|
|
105
105
|
* keep a member out of some machines, deny them `fleet:machines.login` on those machines.
|
|
106
106
|
* Elevation through sudo is never approved by a password; see "Approving sudo".
|
|
107
107
|
*
|
|
108
|
-
* Members log in over SSH with the keys
|
|
109
|
-
* log in to the machine.
|
|
108
|
+
* Members log in over SSH with the SSH keys of their own accounts (`/account/v1/me/ssh-keys` on
|
|
109
|
+
* the account API), while they may log in to the machine. The SSH keys a project shares sign in
|
|
110
|
+
* to no directory account.
|
|
110
111
|
*
|
|
111
112
|
* Machines resolve directory accounts and groups themselves and never write them into their local
|
|
112
113
|
* account files. A local account or group that already uses a name or id of the directory keeps
|
|
@@ -139,16 +140,28 @@
|
|
|
139
140
|
* applies:
|
|
140
141
|
*
|
|
141
142
|
* - inside a command run through this API, by the request itself;
|
|
142
|
-
* -
|
|
143
|
-
*
|
|
143
|
+
* - by the user's automatic approval for the machine, for a while or until removed
|
|
144
|
+
* (`PUT /api/v1/machines/{machineId}/privilege-auto-approval`), in one of two modes:
|
|
145
|
+
* - `automatic_review`, the recommended one: a large language model reviews each request and
|
|
146
|
+
* approves or denies it with a reason. It stops most dangerous requests, but not all of
|
|
147
|
+
* them. Each review is a request to Canopy, the model platform, through the project's
|
|
148
|
+
* Canopy service, and may incur Canopy charges; the project needs Canopy enabled. A
|
|
149
|
+
* request that cannot be reviewed, such as when the project has not enabled Canopy or the
|
|
150
|
+
* review does not complete in time, is denied with a reason saying so;
|
|
151
|
+
* - `always_approve`: every request is approved at once. This is dangerous: any program that
|
|
152
|
+
* runs as the account, such as a script or an AI agent, becomes root without anyone being
|
|
153
|
+
* asked;
|
|
144
154
|
* - by the user, on any of their devices, for a request listed by `GET /api/v1/privilege-requests`
|
|
145
155
|
* (`POST …:approve` or `…:deny`), or on a participant of the session the asking process belongs
|
|
146
156
|
* to. A request nobody decides expires, and sudo fails.
|
|
147
157
|
*
|
|
158
|
+
* A denied sudo shows whoever ran it the reason, when the denial gave one.
|
|
159
|
+
*
|
|
148
160
|
* Requests reach the user's devices as they happen through EventBus: the event
|
|
149
|
-
* `leaflow.fleet.privilege.requested` when one
|
|
150
|
-
* when it ends, each addressed to the user in the current
|
|
151
|
-
*
|
|
161
|
+
* `leaflow.fleet.privilege.requested` when one waits for the user and
|
|
162
|
+
* `leaflow.fleet.privilege.decided` when it ends, each addressed to the user in the current
|
|
163
|
+
* project and carrying the request's `id`. Requests decided without asking the user raise
|
|
164
|
+
* neither. A client that subscribes to them needs no polling; one that does not can list the
|
|
152
165
|
* pending requests.
|
|
153
166
|
*
|
|
154
167
|
* ## Connections that drop
|
|
@@ -105,8 +105,9 @@
|
|
|
105
105
|
* keep a member out of some machines, deny them `fleet:machines.login` on those machines.
|
|
106
106
|
* Elevation through sudo is never approved by a password; see "Approving sudo".
|
|
107
107
|
*
|
|
108
|
-
* Members log in over SSH with the keys
|
|
109
|
-
* log in to the machine.
|
|
108
|
+
* Members log in over SSH with the SSH keys of their own accounts (`/account/v1/me/ssh-keys` on
|
|
109
|
+
* the account API), while they may log in to the machine. The SSH keys a project shares sign in
|
|
110
|
+
* to no directory account.
|
|
110
111
|
*
|
|
111
112
|
* Machines resolve directory accounts and groups themselves and never write them into their local
|
|
112
113
|
* account files. A local account or group that already uses a name or id of the directory keeps
|
|
@@ -139,16 +140,28 @@
|
|
|
139
140
|
* applies:
|
|
140
141
|
*
|
|
141
142
|
* - inside a command run through this API, by the request itself;
|
|
142
|
-
* -
|
|
143
|
-
*
|
|
143
|
+
* - by the user's automatic approval for the machine, for a while or until removed
|
|
144
|
+
* (`PUT /api/v1/machines/{machineId}/privilege-auto-approval`), in one of two modes:
|
|
145
|
+
* - `automatic_review`, the recommended one: a large language model reviews each request and
|
|
146
|
+
* approves or denies it with a reason. It stops most dangerous requests, but not all of
|
|
147
|
+
* them. Each review is a request to Canopy, the model platform, through the project's
|
|
148
|
+
* Canopy service, and may incur Canopy charges; the project needs Canopy enabled. A
|
|
149
|
+
* request that cannot be reviewed, such as when the project has not enabled Canopy or the
|
|
150
|
+
* review does not complete in time, is denied with a reason saying so;
|
|
151
|
+
* - `always_approve`: every request is approved at once. This is dangerous: any program that
|
|
152
|
+
* runs as the account, such as a script or an AI agent, becomes root without anyone being
|
|
153
|
+
* asked;
|
|
144
154
|
* - by the user, on any of their devices, for a request listed by `GET /api/v1/privilege-requests`
|
|
145
155
|
* (`POST …:approve` or `…:deny`), or on a participant of the session the asking process belongs
|
|
146
156
|
* to. A request nobody decides expires, and sudo fails.
|
|
147
157
|
*
|
|
158
|
+
* A denied sudo shows whoever ran it the reason, when the denial gave one.
|
|
159
|
+
*
|
|
148
160
|
* Requests reach the user's devices as they happen through EventBus: the event
|
|
149
|
-
* `leaflow.fleet.privilege.requested` when one
|
|
150
|
-
* when it ends, each addressed to the user in the current
|
|
151
|
-
*
|
|
161
|
+
* `leaflow.fleet.privilege.requested` when one waits for the user and
|
|
162
|
+
* `leaflow.fleet.privilege.decided` when it ends, each addressed to the user in the current
|
|
163
|
+
* project and carrying the request's `id`. Requests decided without asking the user raise
|
|
164
|
+
* neither. A client that subscribes to them needs no polling; one that does not can list the
|
|
152
165
|
* pending requests.
|
|
153
166
|
*
|
|
154
167
|
* ## Connections that drop
|
|
@@ -105,8 +105,9 @@
|
|
|
105
105
|
* keep a member out of some machines, deny them `fleet:machines.login` on those machines.
|
|
106
106
|
* Elevation through sudo is never approved by a password; see "Approving sudo".
|
|
107
107
|
*
|
|
108
|
-
* Members log in over SSH with the keys
|
|
109
|
-
* log in to the machine.
|
|
108
|
+
* Members log in over SSH with the SSH keys of their own accounts (`/account/v1/me/ssh-keys` on
|
|
109
|
+
* the account API), while they may log in to the machine. The SSH keys a project shares sign in
|
|
110
|
+
* to no directory account.
|
|
110
111
|
*
|
|
111
112
|
* Machines resolve directory accounts and groups themselves and never write them into their local
|
|
112
113
|
* account files. A local account or group that already uses a name or id of the directory keeps
|
|
@@ -139,16 +140,28 @@
|
|
|
139
140
|
* applies:
|
|
140
141
|
*
|
|
141
142
|
* - inside a command run through this API, by the request itself;
|
|
142
|
-
* -
|
|
143
|
-
*
|
|
143
|
+
* - by the user's automatic approval for the machine, for a while or until removed
|
|
144
|
+
* (`PUT /api/v1/machines/{machineId}/privilege-auto-approval`), in one of two modes:
|
|
145
|
+
* - `automatic_review`, the recommended one: a large language model reviews each request and
|
|
146
|
+
* approves or denies it with a reason. It stops most dangerous requests, but not all of
|
|
147
|
+
* them. Each review is a request to Canopy, the model platform, through the project's
|
|
148
|
+
* Canopy service, and may incur Canopy charges; the project needs Canopy enabled. A
|
|
149
|
+
* request that cannot be reviewed, such as when the project has not enabled Canopy or the
|
|
150
|
+
* review does not complete in time, is denied with a reason saying so;
|
|
151
|
+
* - `always_approve`: every request is approved at once. This is dangerous: any program that
|
|
152
|
+
* runs as the account, such as a script or an AI agent, becomes root without anyone being
|
|
153
|
+
* asked;
|
|
144
154
|
* - by the user, on any of their devices, for a request listed by `GET /api/v1/privilege-requests`
|
|
145
155
|
* (`POST …:approve` or `…:deny`), or on a participant of the session the asking process belongs
|
|
146
156
|
* to. A request nobody decides expires, and sudo fails.
|
|
147
157
|
*
|
|
158
|
+
* A denied sudo shows whoever ran it the reason, when the denial gave one.
|
|
159
|
+
*
|
|
148
160
|
* Requests reach the user's devices as they happen through EventBus: the event
|
|
149
|
-
* `leaflow.fleet.privilege.requested` when one
|
|
150
|
-
* when it ends, each addressed to the user in the current
|
|
151
|
-
*
|
|
161
|
+
* `leaflow.fleet.privilege.requested` when one waits for the user and
|
|
162
|
+
* `leaflow.fleet.privilege.decided` when it ends, each addressed to the user in the current
|
|
163
|
+
* project and carrying the request's `id`. Requests decided without asking the user raise
|
|
164
|
+
* neither. A client that subscribes to them needs no polling; one that does not can list the
|
|
152
165
|
* pending requests.
|
|
153
166
|
*
|
|
154
167
|
* ## Connections that drop
|
|
@@ -105,8 +105,9 @@
|
|
|
105
105
|
* keep a member out of some machines, deny them `fleet:machines.login` on those machines.
|
|
106
106
|
* Elevation through sudo is never approved by a password; see "Approving sudo".
|
|
107
107
|
*
|
|
108
|
-
* Members log in over SSH with the keys
|
|
109
|
-
* log in to the machine.
|
|
108
|
+
* Members log in over SSH with the SSH keys of their own accounts (`/account/v1/me/ssh-keys` on
|
|
109
|
+
* the account API), while they may log in to the machine. The SSH keys a project shares sign in
|
|
110
|
+
* to no directory account.
|
|
110
111
|
*
|
|
111
112
|
* Machines resolve directory accounts and groups themselves and never write them into their local
|
|
112
113
|
* account files. A local account or group that already uses a name or id of the directory keeps
|
|
@@ -139,16 +140,28 @@
|
|
|
139
140
|
* applies:
|
|
140
141
|
*
|
|
141
142
|
* - inside a command run through this API, by the request itself;
|
|
142
|
-
* -
|
|
143
|
-
*
|
|
143
|
+
* - by the user's automatic approval for the machine, for a while or until removed
|
|
144
|
+
* (`PUT /api/v1/machines/{machineId}/privilege-auto-approval`), in one of two modes:
|
|
145
|
+
* - `automatic_review`, the recommended one: a large language model reviews each request and
|
|
146
|
+
* approves or denies it with a reason. It stops most dangerous requests, but not all of
|
|
147
|
+
* them. Each review is a request to Canopy, the model platform, through the project's
|
|
148
|
+
* Canopy service, and may incur Canopy charges; the project needs Canopy enabled. A
|
|
149
|
+
* request that cannot be reviewed, such as when the project has not enabled Canopy or the
|
|
150
|
+
* review does not complete in time, is denied with a reason saying so;
|
|
151
|
+
* - `always_approve`: every request is approved at once. This is dangerous: any program that
|
|
152
|
+
* runs as the account, such as a script or an AI agent, becomes root without anyone being
|
|
153
|
+
* asked;
|
|
144
154
|
* - by the user, on any of their devices, for a request listed by `GET /api/v1/privilege-requests`
|
|
145
155
|
* (`POST …:approve` or `…:deny`), or on a participant of the session the asking process belongs
|
|
146
156
|
* to. A request nobody decides expires, and sudo fails.
|
|
147
157
|
*
|
|
158
|
+
* A denied sudo shows whoever ran it the reason, when the denial gave one.
|
|
159
|
+
*
|
|
148
160
|
* Requests reach the user's devices as they happen through EventBus: the event
|
|
149
|
-
* `leaflow.fleet.privilege.requested` when one
|
|
150
|
-
* when it ends, each addressed to the user in the current
|
|
151
|
-
*
|
|
161
|
+
* `leaflow.fleet.privilege.requested` when one waits for the user and
|
|
162
|
+
* `leaflow.fleet.privilege.decided` when it ends, each addressed to the user in the current
|
|
163
|
+
* project and carrying the request's `id`. Requests decided without asking the user raise
|
|
164
|
+
* neither. A client that subscribes to them needs no polling; one that does not can list the
|
|
152
165
|
* pending requests.
|
|
153
166
|
*
|
|
154
167
|
* ## Connections that drop
|
|
@@ -105,8 +105,9 @@
|
|
|
105
105
|
* keep a member out of some machines, deny them `fleet:machines.login` on those machines.
|
|
106
106
|
* Elevation through sudo is never approved by a password; see "Approving sudo".
|
|
107
107
|
*
|
|
108
|
-
* Members log in over SSH with the keys
|
|
109
|
-
* log in to the machine.
|
|
108
|
+
* Members log in over SSH with the SSH keys of their own accounts (`/account/v1/me/ssh-keys` on
|
|
109
|
+
* the account API), while they may log in to the machine. The SSH keys a project shares sign in
|
|
110
|
+
* to no directory account.
|
|
110
111
|
*
|
|
111
112
|
* Machines resolve directory accounts and groups themselves and never write them into their local
|
|
112
113
|
* account files. A local account or group that already uses a name or id of the directory keeps
|
|
@@ -139,16 +140,28 @@
|
|
|
139
140
|
* applies:
|
|
140
141
|
*
|
|
141
142
|
* - inside a command run through this API, by the request itself;
|
|
142
|
-
* -
|
|
143
|
-
*
|
|
143
|
+
* - by the user's automatic approval for the machine, for a while or until removed
|
|
144
|
+
* (`PUT /api/v1/machines/{machineId}/privilege-auto-approval`), in one of two modes:
|
|
145
|
+
* - `automatic_review`, the recommended one: a large language model reviews each request and
|
|
146
|
+
* approves or denies it with a reason. It stops most dangerous requests, but not all of
|
|
147
|
+
* them. Each review is a request to Canopy, the model platform, through the project's
|
|
148
|
+
* Canopy service, and may incur Canopy charges; the project needs Canopy enabled. A
|
|
149
|
+
* request that cannot be reviewed, such as when the project has not enabled Canopy or the
|
|
150
|
+
* review does not complete in time, is denied with a reason saying so;
|
|
151
|
+
* - `always_approve`: every request is approved at once. This is dangerous: any program that
|
|
152
|
+
* runs as the account, such as a script or an AI agent, becomes root without anyone being
|
|
153
|
+
* asked;
|
|
144
154
|
* - by the user, on any of their devices, for a request listed by `GET /api/v1/privilege-requests`
|
|
145
155
|
* (`POST …:approve` or `…:deny`), or on a participant of the session the asking process belongs
|
|
146
156
|
* to. A request nobody decides expires, and sudo fails.
|
|
147
157
|
*
|
|
158
|
+
* A denied sudo shows whoever ran it the reason, when the denial gave one.
|
|
159
|
+
*
|
|
148
160
|
* Requests reach the user's devices as they happen through EventBus: the event
|
|
149
|
-
* `leaflow.fleet.privilege.requested` when one
|
|
150
|
-
* when it ends, each addressed to the user in the current
|
|
151
|
-
*
|
|
161
|
+
* `leaflow.fleet.privilege.requested` when one waits for the user and
|
|
162
|
+
* `leaflow.fleet.privilege.decided` when it ends, each addressed to the user in the current
|
|
163
|
+
* project and carrying the request's `id`. Requests decided without asking the user raise
|
|
164
|
+
* neither. A client that subscribes to them needs no polling; one that does not can list the
|
|
152
165
|
* pending requests.
|
|
153
166
|
*
|
|
154
167
|
* ## Connections that drop
|
|
@@ -105,8 +105,9 @@
|
|
|
105
105
|
* keep a member out of some machines, deny them `fleet:machines.login` on those machines.
|
|
106
106
|
* Elevation through sudo is never approved by a password; see "Approving sudo".
|
|
107
107
|
*
|
|
108
|
-
* Members log in over SSH with the keys
|
|
109
|
-
* log in to the machine.
|
|
108
|
+
* Members log in over SSH with the SSH keys of their own accounts (`/account/v1/me/ssh-keys` on
|
|
109
|
+
* the account API), while they may log in to the machine. The SSH keys a project shares sign in
|
|
110
|
+
* to no directory account.
|
|
110
111
|
*
|
|
111
112
|
* Machines resolve directory accounts and groups themselves and never write them into their local
|
|
112
113
|
* account files. A local account or group that already uses a name or id of the directory keeps
|
|
@@ -139,16 +140,28 @@
|
|
|
139
140
|
* applies:
|
|
140
141
|
*
|
|
141
142
|
* - inside a command run through this API, by the request itself;
|
|
142
|
-
* -
|
|
143
|
-
*
|
|
143
|
+
* - by the user's automatic approval for the machine, for a while or until removed
|
|
144
|
+
* (`PUT /api/v1/machines/{machineId}/privilege-auto-approval`), in one of two modes:
|
|
145
|
+
* - `automatic_review`, the recommended one: a large language model reviews each request and
|
|
146
|
+
* approves or denies it with a reason. It stops most dangerous requests, but not all of
|
|
147
|
+
* them. Each review is a request to Canopy, the model platform, through the project's
|
|
148
|
+
* Canopy service, and may incur Canopy charges; the project needs Canopy enabled. A
|
|
149
|
+
* request that cannot be reviewed, such as when the project has not enabled Canopy or the
|
|
150
|
+
* review does not complete in time, is denied with a reason saying so;
|
|
151
|
+
* - `always_approve`: every request is approved at once. This is dangerous: any program that
|
|
152
|
+
* runs as the account, such as a script or an AI agent, becomes root without anyone being
|
|
153
|
+
* asked;
|
|
144
154
|
* - by the user, on any of their devices, for a request listed by `GET /api/v1/privilege-requests`
|
|
145
155
|
* (`POST …:approve` or `…:deny`), or on a participant of the session the asking process belongs
|
|
146
156
|
* to. A request nobody decides expires, and sudo fails.
|
|
147
157
|
*
|
|
158
|
+
* A denied sudo shows whoever ran it the reason, when the denial gave one.
|
|
159
|
+
*
|
|
148
160
|
* Requests reach the user's devices as they happen through EventBus: the event
|
|
149
|
-
* `leaflow.fleet.privilege.requested` when one
|
|
150
|
-
* when it ends, each addressed to the user in the current
|
|
151
|
-
*
|
|
161
|
+
* `leaflow.fleet.privilege.requested` when one waits for the user and
|
|
162
|
+
* `leaflow.fleet.privilege.decided` when it ends, each addressed to the user in the current
|
|
163
|
+
* project and carrying the request's `id`. Requests decided without asking the user raise
|
|
164
|
+
* neither. A client that subscribes to them needs no polling; one that does not can list the
|
|
152
165
|
* pending requests.
|
|
153
166
|
*
|
|
154
167
|
* ## Connections that drop
|