primcli 1.38.0 → 1.39.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/{auto-signals-UPcJmV3j.js → auto-signals-C8nMME8J.js} +1 -1
- package/dist/{connect-skill-HJNQC3A9.js → connect-skill-DjKt8NC8.js} +2 -2
- package/dist/oclif/auto-signal-worker.js +3 -3
- package/dist/oclif/auto-signals.js +1 -1
- package/dist/oclif/index.js +119 -66
- package/dist/oclif/receiver-heal.js +1 -1
- package/dist/{repeats-CQmyvUGQ-CMnOmWgL.js → repeats-CoK0tpCK-Bx7nmyRi.js} +2 -2
- package/dist/{sdk.gen-CugwPoCf.js → sdk.gen-CgKZwHs3.js} +1 -1
- package/dist/{signal-command-CKaEqXro.js → signal-command-C8Ph0ylh.js} +4 -4
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as isTrustedSender, c as classifySignalContent } from "./repeats-
|
|
1
|
+
import { _ as isTrustedSender, c as classifySignalContent } from "./repeats-CoK0tpCK-Bx7nmyRi.js";
|
|
2
2
|
import { d as readMailJson, h as writeMailJson, i as mailId, l as privateMailDirectory, r as mailAddress } from "./shared-mail-files-CZqI1kj6.js";
|
|
3
3
|
import { existsSync, readFileSync, readdirSync, unlinkSync, writeFileSync } from "node:fs";
|
|
4
4
|
import { randomUUID } from "node:crypto";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { _ as isTrustedSender, c as classifySignalContent, g as isEmailReceivedEvent, v as parseWebhookEvent } from "./repeats-
|
|
2
|
-
import { g as downloadEmailAttachmentPart } from "./sdk.gen-
|
|
1
|
+
import { _ as isTrustedSender, c as classifySignalContent, g as isEmailReceivedEvent, v as parseWebhookEvent } from "./repeats-CoK0tpCK-Bx7nmyRi.js";
|
|
2
|
+
import { g as downloadEmailAttachmentPart } from "./sdk.gen-CgKZwHs3.js";
|
|
3
3
|
import { _ as acquireListenLock, g as ListenStateError, y as listenIdentity } from "./shared-mail-files-CZqI1kj6.js";
|
|
4
4
|
import { closeSync, copyFileSync, existsSync, fsyncSync, lstatSync, mkdirSync, openSync, opendirSync, readFileSync, readdirSync, readlinkSync, renameSync, rmSync, statSync, symlinkSync, unlinkSync, writeFileSync } from "node:fs";
|
|
5
5
|
import { createHash, randomUUID, scryptSync } from "node:crypto";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { j as getSentEmail } from "../sdk.gen-
|
|
1
|
+
import { j as getSentEmail } from "../sdk.gen-CgKZwHs3.js";
|
|
2
2
|
import { _ as acquireListenLock } from "../shared-mail-files-CZqI1kj6.js";
|
|
3
|
-
import { Mt as createAuthenticatedCliApiClient, t as sendSignal, z as readThreadContext } from "../signal-command-
|
|
4
|
-
import { A as stopWorkingLease, b as readWorkingLease, d as autoSignalsDisabled, j as writeWorkingLease, p as clearWorkingSending, r as AUTO_SIGNAL_KIND_ENV, s as AUTO_WORKING_RENEW_MS, v as markWorkingSending, x as recordRenewer, y as readAutoClaim } from "../auto-signals-
|
|
3
|
+
import { Mt as createAuthenticatedCliApiClient, t as sendSignal, z as readThreadContext } from "../signal-command-C8Ph0ylh.js";
|
|
4
|
+
import { A as stopWorkingLease, b as readWorkingLease, d as autoSignalsDisabled, j as writeWorkingLease, p as clearWorkingSending, r as AUTO_SIGNAL_KIND_ENV, s as AUTO_WORKING_RENEW_MS, v as markWorkingSending, x as recordRenewer, y as readAutoClaim } from "../auto-signals-C8nMME8J.js";
|
|
5
5
|
import { join } from "node:path";
|
|
6
6
|
import { homedir } from "node:os";
|
|
7
7
|
//#region src/oclif/auto-signal-worker.ts
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { A as stopWorkingLease, C as releaseStopHold, D as resumeAutoWorking, E as restoreWorkingLease, O as spawnAutoSignalWorker, S as recordSentSignal, T as restoreAutoWorking, _ as isSentSignal, a as AUTO_WORKING_CAP_MS, b as readWorkingLease, c as activeWorkingLeases, d as autoSignalsDisabled, f as claimAutoRead, g as haltAutoWorking, h as dispatchAutoWorking, i as AUTO_SIGNAL_WORKER_ENV, j as writeWorkingLease, k as startWorkingLease, l as autoSignalEligible, m as dispatchAutoRead, n as AUTO_SIGNAL_EMAIL_ENV, o as AUTO_WORKING_EXPIRES_SECONDS, p as clearWorkingSending, r as AUTO_SIGNAL_KIND_ENV, s as AUTO_WORKING_RENEW_MS, t as AUTO_SIGNALS_OPT_OUT_ENV, u as autoSignalEntrypoint, v as markWorkingSending, w as renewerAlive, x as recordRenewer, y as readAutoClaim } from "../auto-signals-
|
|
1
|
+
import { A as stopWorkingLease, C as releaseStopHold, D as resumeAutoWorking, E as restoreWorkingLease, O as spawnAutoSignalWorker, S as recordSentSignal, T as restoreAutoWorking, _ as isSentSignal, a as AUTO_WORKING_CAP_MS, b as readWorkingLease, c as activeWorkingLeases, d as autoSignalsDisabled, f as claimAutoRead, g as haltAutoWorking, h as dispatchAutoWorking, i as AUTO_SIGNAL_WORKER_ENV, j as writeWorkingLease, k as startWorkingLease, l as autoSignalEligible, m as dispatchAutoRead, n as AUTO_SIGNAL_EMAIL_ENV, o as AUTO_WORKING_EXPIRES_SECONDS, p as clearWorkingSending, r as AUTO_SIGNAL_KIND_ENV, s as AUTO_WORKING_RENEW_MS, t as AUTO_SIGNALS_OPT_OUT_ENV, u as autoSignalEntrypoint, v as markWorkingSending, w as renewerAlive, x as recordRenewer, y as readAutoClaim } from "../auto-signals-C8nMME8J.js";
|
|
2
2
|
export { AUTO_SIGNALS_OPT_OUT_ENV, AUTO_SIGNAL_EMAIL_ENV, AUTO_SIGNAL_KIND_ENV, AUTO_SIGNAL_WORKER_ENV, AUTO_WORKING_CAP_MS, AUTO_WORKING_EXPIRES_SECONDS, AUTO_WORKING_RENEW_MS, activeWorkingLeases, autoSignalEligible, autoSignalEntrypoint, autoSignalsDisabled, claimAutoRead, clearWorkingSending, dispatchAutoRead, dispatchAutoWorking, haltAutoWorking, isSentSignal, markWorkingSending, readAutoClaim, readWorkingLease, recordRenewer, recordSentSignal, releaseStopHold, renewerAlive, restoreAutoWorking, restoreWorkingLease, resumeAutoWorking, spawnAutoSignalWorker, startWorkingLease, stopWorkingLease, writeWorkingLease };
|
package/dist/oclif/index.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { a as REPEAT_IDLE_MAX_MINUTES, d as parseRepeatTick, f as preparePresenceAliveEmail, g as isEmailReceivedEvent, i as REPEAT_EVERY_MAX_MINUTES, l as parseInteractionEnvelope$1, m as repeatStopCommand, o as REPEAT_MAX_SENDS_MAX, p as prepareSignalEmail, s as buildRepeatStopBody, u as parsePresenceEnvelope, v as parseWebhookEvent, y as parseFromHeader } from "../repeats-
|
|
1
|
+
import { a as REPEAT_IDLE_MAX_MINUTES, d as parseRepeatTick, f as preparePresenceAliveEmail, g as isEmailReceivedEvent, i as REPEAT_EVERY_MAX_MINUTES, l as parseInteractionEnvelope$1, m as repeatStopCommand, o as REPEAT_MAX_SENDS_MAX, p as prepareSignalEmail, s as buildRepeatStopBody, u as parsePresenceEnvelope, v as parseWebhookEvent, y as parseFromHeader } from "../repeats-CoK0tpCK-Bx7nmyRi.js";
|
|
2
2
|
import { a as agentProfilesDirectory, c as loadConnectedAgentProfile, d as requireDefaultLoginProfile, f as saveConnectedAgentProfile, i as agentProfileName, l as parseConnectedAgentProfile, n as AgentConnectionSetupError, o as connectedAgentIdentity, r as agentProfileDirectory, s as connectedApiBaseUrl, t as AGENT_PROFILE_ENV, u as parseOwnerMemberAddress } from "../connected-agent-profile-8tpOMdq3.js";
|
|
3
|
-
import { $ as putAgentContactPolicy, A as getRepeatingSend, B as listEmails, C as getEmail, Ct as updateFunction, D as getInboxStatus, Dt as updateWakeSchedule, E as getFunctionTestRunTrace, Et as updateWakeAuthorization, F as listAgentNetworks, G as listRoutes, H as listFunctionLogs, I as listContacts, J as listWakeDispatches, K as listSentEmails, L as listDefaultNetworkAgents, M as getThread, N as getWakeSchedule, O as getMemory, Ot as verifyAgentClaim, P as listAgentContacts, Q as putAgentContact, R as listDefaultNetworkMembers, S as getDefaultNetworkAgent, St as updateDefaultNetworkMember, T as getFunctionRouting, Tt as updateRoute, U as listFunctions, V as listEndpoints, W as listRepeatingSends, X as pollCliLogin, Y as listWakeSchedules, Z as pullWebhookEvent, _ as getAccount, _t as startAgentSignup, a as createEndpoint, at as resendAgentSignupVerification, b as getConversation, bt as testFunction, c as createWakeAuthorization, ct as searchEmails, d as deleteContact, dt as sendEmail, et as putContact, f as deleteMemory, ft as setFunctionRoute, gt as startAgentClaim, h as deleteWakeSchedule, ht as simulateRoute, i as completeWebhookEvent, it as replyToEmail, j as getSentEmail, k as getOrgRoutingTopology, kt as verifyAgentSignup, l as createWakeSchedule, lt as searchMemories, m as deleteWakeAuthorization, mt as setMemory, n as checkDefaultNetworkContactAdmission, nt as removeDefaultNetworkMember, o as createFunction, ot as runWakeSchedule, p as deleteRoute, pt as setFunctionSecret, q as listWakeAuthorizations, r as cliLogout, rt as reorderRoutes, s as createRoute, t as addDefaultNetworkMember, tt as redeemCreditCode, u as deleteAgentContact, ut as semanticSearch, v as getAgentContactPolicy, vt as startCliLogin, w as getFunction, wt as updateRepeatingSend, x as getCreditBalance, xt as unsetFunctionRoute, y as getContact, yt as stopRepeatFromEmail, z as listDomains } from "../sdk.gen-
|
|
3
|
+
import { $ as putAgentContactPolicy, A as getRepeatingSend, B as listEmails, C as getEmail, Ct as updateFunction, D as getInboxStatus, Dt as updateWakeSchedule, E as getFunctionTestRunTrace, Et as updateWakeAuthorization, F as listAgentNetworks, G as listRoutes, H as listFunctionLogs, I as listContacts, J as listWakeDispatches, K as listSentEmails, L as listDefaultNetworkAgents, M as getThread, N as getWakeSchedule, O as getMemory, Ot as verifyAgentClaim, P as listAgentContacts, Q as putAgentContact, R as listDefaultNetworkMembers, S as getDefaultNetworkAgent, St as updateDefaultNetworkMember, T as getFunctionRouting, Tt as updateRoute, U as listFunctions, V as listEndpoints, W as listRepeatingSends, X as pollCliLogin, Y as listWakeSchedules, Z as pullWebhookEvent, _ as getAccount, _t as startAgentSignup, a as createEndpoint, at as resendAgentSignupVerification, b as getConversation, bt as testFunction, c as createWakeAuthorization, ct as searchEmails, d as deleteContact, dt as sendEmail, et as putContact, f as deleteMemory, ft as setFunctionRoute, gt as startAgentClaim, h as deleteWakeSchedule, ht as simulateRoute, i as completeWebhookEvent, it as replyToEmail, j as getSentEmail, k as getOrgRoutingTopology, kt as verifyAgentSignup, l as createWakeSchedule, lt as searchMemories, m as deleteWakeAuthorization, mt as setMemory, n as checkDefaultNetworkContactAdmission, nt as removeDefaultNetworkMember, o as createFunction, ot as runWakeSchedule, p as deleteRoute, pt as setFunctionSecret, q as listWakeAuthorizations, r as cliLogout, rt as reorderRoutes, s as createRoute, t as addDefaultNetworkMember, tt as redeemCreditCode, u as deleteAgentContact, ut as semanticSearch, v as getAgentContactPolicy, vt as startCliLogin, w as getFunction, wt as updateRepeatingSend, x as getCreditBalance, xt as unsetFunctionRoute, y as getContact, yt as stopRepeatFromEmail, z as listDomains } from "../sdk.gen-CgKZwHs3.js";
|
|
4
4
|
import { A as saveActiveChatState, C as resolveCliAuth, D as deleteChatState, E as chatStatePath, O as loadActiveChatState, T as saveSignupCredentials, _ as deleteCliCredentials, a as normalizeCliEnvironmentName, b as hasStoredCliLogin, c as resolveConfigEnvironment, g as credentialsPath, h as credentialsLockPath, i as loadCliConfig, j as PrimitiveApiClient, k as loadChatConversationByLocalId, l as saveCliConfig, m as cliAccessTokenExpiresAt, n as deleteCliConfig, o as redactCliEnvironment, p as acquireCliCredentialsLock, r as emptyCliConfig, s as removeCliEnvironment, u as upsertCliEnvironment, v as deleteCliCredentialsLock, w as saveCliCredentials, x as loadCliCredentials, y as detectPrimitiveKeyEnvMisname } from "../cli-config-UOlrfcPz.js";
|
|
5
5
|
import { S as resolveListenSubscription, _ as acquireListenLock, a as mailLockBusy, c as mailTime, d as readMailJson, f as removeMailFile, g as ListenStateError, h as writeMailJson, i as mailId, l as privateMailDirectory, m as withMailLock, o as mailObject, p as syncMailDirectory, r as mailAddress, s as mailString, u as privateMailPermissions, x as normalizeListenOrigin, y as listenIdentity } from "../shared-mail-files-CZqI1kj6.js";
|
|
6
|
-
import { $ as extractErrorCode, A as reserveSharedMailSubscription, At as queryUsesAutomated, B as sentInThread, C as thrownErrorExitCode, Ct as AutomatedFilterUnsupportedError, D as ensureSharedMailSubscription, Dt as expectedAutomatedVerdicts, E as sharedMailScope, Et as ensureSearchReportsAutomated, F as describeWake, Ft as resolveCliApiRequestConfig, G as EventConnection, H as serverRelationship, I as displayAddress, J as pushFile, K as EventReceiverError, L as formatWakeContext, M as readConversationFollow, Mt as createAuthenticatedCliApiClient, N as otherParticipants, Nt as createCliApiClient, O as createSharedMailWaiter, Ot as hasAutomatedVerdict, P as bareAddress, Pt as refreshStoredCliCredentials, Q as createOperationCommand, R as latestOwnOutbound, S as successfulSendOutcome, St as AUTOMATED_VALUES, T as openSharedMailReceiver, Tt as automatedRejectedError, U as wakeRelationship, V as serverMuted, W as readSharedMailOwner, X as API_ERROR_CODES, Y as API_BASE_URL_FLAG_DESCRIPTION, Z as TIME_FLAG_DESCRIPTION, _ as reportSendCommandResult, _t as queryUsesAwaiting, a as assertValidIdempotencyKey, at as writeErrorWithHints, b as sentHistoryWindowStart, bt as AUTOMATED_FILTER_UNSUPPORTED_CODE, c as checkPriorReplies, ct as REPLY_STATE_UNSUPPORTED_CODE, d as formatDeletedEarlierSendNotice, dt as awaitingRejectedError, et as extractErrorPayload, f as formatPriorRepliesCheckSkipped, ft as ensureSearchReportsReplyState, g as priorRepliesThatWentOut, gt as isAwaitingRejectedError, h as formatSendRecordFailureSummary, ht as hasReplyState, i as apiResultHttpStatus, it as surfaceUnauthorizedHint, j as followEmailConversation, k as openSharedMailStore, kt as isAutomatedRejectedError, l as classifySendError, lt as ReplyStateUnsupportedError, m as formatSendFailureSummary, mt as formatRepliesCell, n as IDEMPOTENCY_KEY_FLAG_DESCRIPTION, nt as readTextFileFlag, o as buildFollowUpCommand, ot as AWAITING_FLAG_DESCRIPTION, p as formatPriorRepliesWarning, pt as formatAwaitingCell, q as pullFile, r as SEND_OUTCOME_HELP, rt as runWithTiming, s as buildThrownSendFailureEnvelope, st as AWAITING_VALUES, t as sendSignal, tt as formatErrorPayload, u as deriveSendIdempotencyKey, ut as assertAwaitingFilterRows, v as sendIdentityFields, vt as formatAlreadySentNotice, w as reconcileChatSend, wt as assertAutomatedVerdict, x as serializeErrorPayload, xt as AUTOMATED_FLAG_DESCRIPTION, y as sendOutcomeExitCode, yt as writeIdempotentReplayBannerIfReplay, z as readThreadContext } from "../signal-command-
|
|
7
|
-
import { _ as NativeSessionDisconnectedError, a as readBundledConnectSkill, b as NotificationOutcomeUnknownError, c as openSessionNotifications, d as isRoutineNotificationContent, f as notificationPartReader, g as defaultSessionSocket, h as connectNativeSession, i as installedVersion, l as notificationReceiptPage, m as SESSION_UUID$1, n as detectAgentRuntime, o as notificationScope, p as readConversationStatusContent, r as installConnectSkill, s as notificationSenders, t as connectSkillTarget, u as NotificationRetryError, v as NativeSessionError, y as NativeSessionNotLoadedError } from "../connect-skill-
|
|
6
|
+
import { $ as extractErrorCode, A as reserveSharedMailSubscription, At as queryUsesAutomated, B as sentInThread, C as thrownErrorExitCode, Ct as AutomatedFilterUnsupportedError, D as ensureSharedMailSubscription, Dt as expectedAutomatedVerdicts, E as sharedMailScope, Et as ensureSearchReportsAutomated, F as describeWake, Ft as resolveCliApiRequestConfig, G as EventConnection, H as serverRelationship, I as displayAddress, J as pushFile, K as EventReceiverError, L as formatWakeContext, M as readConversationFollow, Mt as createAuthenticatedCliApiClient, N as otherParticipants, Nt as createCliApiClient, O as createSharedMailWaiter, Ot as hasAutomatedVerdict, P as bareAddress, Pt as refreshStoredCliCredentials, Q as createOperationCommand, R as latestOwnOutbound, S as successfulSendOutcome, St as AUTOMATED_VALUES, T as openSharedMailReceiver, Tt as automatedRejectedError, U as wakeRelationship, V as serverMuted, W as readSharedMailOwner, X as API_ERROR_CODES, Y as API_BASE_URL_FLAG_DESCRIPTION, Z as TIME_FLAG_DESCRIPTION, _ as reportSendCommandResult, _t as queryUsesAwaiting, a as assertValidIdempotencyKey, at as writeErrorWithHints, b as sentHistoryWindowStart, bt as AUTOMATED_FILTER_UNSUPPORTED_CODE, c as checkPriorReplies, ct as REPLY_STATE_UNSUPPORTED_CODE, d as formatDeletedEarlierSendNotice, dt as awaitingRejectedError, et as extractErrorPayload, f as formatPriorRepliesCheckSkipped, ft as ensureSearchReportsReplyState, g as priorRepliesThatWentOut, gt as isAwaitingRejectedError, h as formatSendRecordFailureSummary, ht as hasReplyState, i as apiResultHttpStatus, it as surfaceUnauthorizedHint, j as followEmailConversation, k as openSharedMailStore, kt as isAutomatedRejectedError, l as classifySendError, lt as ReplyStateUnsupportedError, m as formatSendFailureSummary, mt as formatRepliesCell, n as IDEMPOTENCY_KEY_FLAG_DESCRIPTION, nt as readTextFileFlag, o as buildFollowUpCommand, ot as AWAITING_FLAG_DESCRIPTION, p as formatPriorRepliesWarning, pt as formatAwaitingCell, q as pullFile, r as SEND_OUTCOME_HELP, rt as runWithTiming, s as buildThrownSendFailureEnvelope, st as AWAITING_VALUES, t as sendSignal, tt as formatErrorPayload, u as deriveSendIdempotencyKey, ut as assertAwaitingFilterRows, v as sendIdentityFields, vt as formatAlreadySentNotice, w as reconcileChatSend, wt as assertAutomatedVerdict, x as serializeErrorPayload, xt as AUTOMATED_FLAG_DESCRIPTION, y as sendOutcomeExitCode, yt as writeIdempotentReplayBannerIfReplay, z as readThreadContext } from "../signal-command-C8Ph0ylh.js";
|
|
7
|
+
import { _ as NativeSessionDisconnectedError, a as readBundledConnectSkill, b as NotificationOutcomeUnknownError, c as openSessionNotifications, d as isRoutineNotificationContent, f as notificationPartReader, g as defaultSessionSocket, h as connectNativeSession, i as installedVersion, l as notificationReceiptPage, m as SESSION_UUID$1, n as detectAgentRuntime, o as notificationScope, p as readConversationStatusContent, r as installConnectSkill, s as notificationSenders, t as connectSkillTarget, u as NotificationRetryError, v as NativeSessionError, y as NativeSessionNotLoadedError } from "../connect-skill-DjKt8NC8.js";
|
|
8
8
|
import { c as startBackgroundListen, i as backgroundListenToken, l as stopBackgroundListen, o as runBackgroundListen, r as backgroundListenStatus, u as verifyBackgroundListenTarget } from "../listen-background-Bsofqq_6.js";
|
|
9
|
-
import { F as readBeforeDeadline, I as scopedChatSenderTrust, L as presenceDisposition, M as isConnectedChatCredential, N as isPlainChatReply, P as isScopedChatReply, R as readPresenceProjection, T as restoreAutoWorking, g as haltAutoWorking, h as dispatchAutoWorking, l as autoSignalEligible, m as dispatchAutoRead } from "../auto-signals-
|
|
9
|
+
import { F as readBeforeDeadline, I as scopedChatSenderTrust, L as presenceDisposition, M as isConnectedChatCredential, N as isPlainChatReply, P as isScopedChatReply, R as readPresenceProjection, T as restoreAutoWorking, g as haltAutoWorking, h as dispatchAutoWorking, l as autoSignalEligible, m as dispatchAutoRead } from "../auto-signals-C8nMME8J.js";
|
|
10
10
|
import { t as guardJsonOutputCommands } from "../json-output-BVRgl6jf.js";
|
|
11
11
|
import { Args, Command, Errors, Flags, ux } from "@oclif/core";
|
|
12
12
|
import { accessSync, chmodSync, closeSync, constants, copyFileSync, cpSync, existsSync, fstatSync, fsyncSync, linkSync, lstatSync, mkdirSync, openSync, readFileSync, readdirSync, realpathSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
|
|
@@ -10741,11 +10741,27 @@ const openapiDocument = {
|
|
|
10741
10741
|
},
|
|
10742
10742
|
"quota_mb": {
|
|
10743
10743
|
"type": "number",
|
|
10744
|
-
"description": "
|
|
10744
|
+
"description": "The plan's included storage in megabytes, the same value as included_mb. It is an allowance, not a limit; see limit_mb."
|
|
10745
10745
|
},
|
|
10746
10746
|
"percentage": {
|
|
10747
10747
|
"type": "number",
|
|
10748
|
-
"description": "
|
|
10748
|
+
"description": "Storage used as a percentage of the included storage (1 decimal). Can exceed 100."
|
|
10749
|
+
},
|
|
10750
|
+
"included_mb": {
|
|
10751
|
+
"type": "number",
|
|
10752
|
+
"description": "Storage included with the plan, in megabytes."
|
|
10753
|
+
},
|
|
10754
|
+
"limit_mb": {
|
|
10755
|
+
"type": ["number", "null"],
|
|
10756
|
+
"description": "Storage in megabytes past which inbound email is refused. Null when inbound email is never refused for storage."
|
|
10757
|
+
},
|
|
10758
|
+
"overage_mb": {
|
|
10759
|
+
"type": "number",
|
|
10760
|
+
"description": "Storage past included_mb, in megabytes, counting stored email and the search index."
|
|
10761
|
+
},
|
|
10762
|
+
"search_index_bytes": {
|
|
10763
|
+
"type": "integer",
|
|
10764
|
+
"description": "Storage attributed to the semantic search index, in bytes. Counted toward included_mb and overage_mb, never toward limit_mb."
|
|
10749
10765
|
},
|
|
10750
10766
|
"emails_count": {
|
|
10751
10767
|
"type": "integer",
|
|
@@ -13258,7 +13274,7 @@ const openapiDocument = {
|
|
|
13258
13274
|
"properties": {
|
|
13259
13275
|
"every_minutes": {
|
|
13260
13276
|
"type": "integer",
|
|
13261
|
-
"minimum":
|
|
13277
|
+
"minimum": 1,
|
|
13262
13278
|
"maximum": 10080
|
|
13263
13279
|
},
|
|
13264
13280
|
"only_if_recipient_idle_minutes": {
|
|
@@ -13396,7 +13412,7 @@ const openapiDocument = {
|
|
|
13396
13412
|
},
|
|
13397
13413
|
"every_minutes": {
|
|
13398
13414
|
"type": "integer",
|
|
13399
|
-
"minimum":
|
|
13415
|
+
"minimum": 1,
|
|
13400
13416
|
"maximum": 10080
|
|
13401
13417
|
},
|
|
13402
13418
|
"only_if_recipient_idle_minutes": {
|
|
@@ -16888,11 +16904,27 @@ const operationManifest = [
|
|
|
16888
16904
|
},
|
|
16889
16905
|
"quota_mb": {
|
|
16890
16906
|
"type": "number",
|
|
16891
|
-
"description": "
|
|
16907
|
+
"description": "The plan's included storage in megabytes, the same value as included_mb. It is an allowance, not a limit; see limit_mb."
|
|
16892
16908
|
},
|
|
16893
16909
|
"percentage": {
|
|
16894
16910
|
"type": "number",
|
|
16895
|
-
"description": "
|
|
16911
|
+
"description": "Storage used as a percentage of the included storage (1 decimal). Can exceed 100."
|
|
16912
|
+
},
|
|
16913
|
+
"included_mb": {
|
|
16914
|
+
"type": "number",
|
|
16915
|
+
"description": "Storage included with the plan, in megabytes."
|
|
16916
|
+
},
|
|
16917
|
+
"limit_mb": {
|
|
16918
|
+
"type": ["number", "null"],
|
|
16919
|
+
"description": "Storage in megabytes past which inbound email is refused. Null when inbound email is never refused for storage."
|
|
16920
|
+
},
|
|
16921
|
+
"overage_mb": {
|
|
16922
|
+
"type": "number",
|
|
16923
|
+
"description": "Storage past included_mb, in megabytes, counting stored email and the search index."
|
|
16924
|
+
},
|
|
16925
|
+
"search_index_bytes": {
|
|
16926
|
+
"type": "integer",
|
|
16927
|
+
"description": "Storage attributed to the semantic search index, in bytes. Counted toward included_mb and overage_mb, never toward limit_mb."
|
|
16896
16928
|
},
|
|
16897
16929
|
"emails_count": {
|
|
16898
16930
|
"type": "integer",
|
|
@@ -29796,7 +29828,7 @@ const operationManifest = [
|
|
|
29796
29828
|
},
|
|
29797
29829
|
"every_minutes": {
|
|
29798
29830
|
"type": "integer",
|
|
29799
|
-
"minimum":
|
|
29831
|
+
"minimum": 1,
|
|
29800
29832
|
"maximum": 10080
|
|
29801
29833
|
},
|
|
29802
29834
|
"only_if_recipient_idle_minutes": {
|
|
@@ -32354,7 +32386,7 @@ const operationManifest = [
|
|
|
32354
32386
|
"properties": {
|
|
32355
32387
|
"every_minutes": {
|
|
32356
32388
|
"type": "integer",
|
|
32357
|
-
"minimum":
|
|
32389
|
+
"minimum": 1,
|
|
32358
32390
|
"maximum": 10080
|
|
32359
32391
|
},
|
|
32360
32392
|
"only_if_recipient_idle_minutes": {
|
|
@@ -32927,7 +32959,7 @@ const operationManifest = [
|
|
|
32927
32959
|
"properties": {
|
|
32928
32960
|
"every_minutes": {
|
|
32929
32961
|
"type": "integer",
|
|
32930
|
-
"minimum":
|
|
32962
|
+
"minimum": 1,
|
|
32931
32963
|
"maximum": 10080
|
|
32932
32964
|
},
|
|
32933
32965
|
"only_if_recipient_idle_minutes": {
|
|
@@ -45850,7 +45882,7 @@ const PRIMITIVE_TEAM_AUTHOR = {
|
|
|
45850
45882
|
url: "https://primitive.dev"
|
|
45851
45883
|
};
|
|
45852
45884
|
const SDK_VERSION_RANGE = "^1.34.0";
|
|
45853
|
-
const CLI_VERSION_RANGE = "^1.
|
|
45885
|
+
const CLI_VERSION_RANGE = "^1.39.0";
|
|
45854
45886
|
const ESBUILD_VERSION_RANGE = "^0.27.0";
|
|
45855
45887
|
function renderHandler() {
|
|
45856
45888
|
return `// env.PRIMITIVE_API_KEY, env.PRIMITIVE_WEBHOOK_SECRET, and
|
|
@@ -51081,6 +51113,52 @@ function retryAfterSeconds$1(result) {
|
|
|
51081
51113
|
const parsed = Number.parseInt(raw, 10);
|
|
51082
51114
|
return Number.isFinite(parsed) && parsed > 0 ? parsed : null;
|
|
51083
51115
|
}
|
|
51116
|
+
const SIGN_IN_EMAIL_CHANGE_REQUIRED = "sign_in_email_change_required";
|
|
51117
|
+
const SIGN_IN_EMAIL_CHANGE_REQUIRED_FALLBACK = "Your Primitive sign-in email is on a domain Primitive receives mail for. Change it to an external address in the browser, then log in again.";
|
|
51118
|
+
function errorMessage$1(payload) {
|
|
51119
|
+
if (!payload || typeof payload !== "object") return null;
|
|
51120
|
+
const inner = payload.error;
|
|
51121
|
+
const message = (inner && typeof inner === "object" ? inner : payload).message;
|
|
51122
|
+
return typeof message === "string" && message.trim() !== "" ? message.trim() : null;
|
|
51123
|
+
}
|
|
51124
|
+
async function pollCliLoginUntilApproved(params) {
|
|
51125
|
+
const wait = params.sleep ?? sleep;
|
|
51126
|
+
const { retryCommand, start } = params;
|
|
51127
|
+
const deadline = Date.now() + start.expires_in * 1e3;
|
|
51128
|
+
let interval = Math.min(Math.max(1, start.interval), MAX_CLI_LOGIN_POLL_INTERVAL_SECONDS);
|
|
51129
|
+
let nextPollDelay = 1;
|
|
51130
|
+
while (Date.now() < deadline) {
|
|
51131
|
+
await wait(nextPollDelay * 1e3);
|
|
51132
|
+
nextPollDelay = interval;
|
|
51133
|
+
const polled = await params.poll(start.device_code);
|
|
51134
|
+
if (polled.data) {
|
|
51135
|
+
const login = unwrapData$2(polled.data);
|
|
51136
|
+
if (!login) throw cliError$3("Primitive API returned an empty CLI poll response.");
|
|
51137
|
+
return login;
|
|
51138
|
+
}
|
|
51139
|
+
const payload = extractErrorPayload(polled.error);
|
|
51140
|
+
const code = extractErrorCode(payload);
|
|
51141
|
+
if (code === API_ERROR_CODES.authorizationPending) {
|
|
51142
|
+
nextPollDelay = interval;
|
|
51143
|
+
continue;
|
|
51144
|
+
}
|
|
51145
|
+
if (code === API_ERROR_CODES.slowDown) {
|
|
51146
|
+
interval = Math.min(retryAfterSeconds$1(polled) ?? interval + 5, MAX_CLI_LOGIN_POLL_INTERVAL_SECONDS);
|
|
51147
|
+
nextPollDelay = interval;
|
|
51148
|
+
continue;
|
|
51149
|
+
}
|
|
51150
|
+
if (code === "sign_in_email_change_required") throw new Errors.CLIError(errorMessage$1(payload) ?? SIGN_IN_EMAIL_CHANGE_REQUIRED_FALLBACK, {
|
|
51151
|
+
code: SIGN_IN_EMAIL_CHANGE_REQUIRED,
|
|
51152
|
+
exit: 1
|
|
51153
|
+
});
|
|
51154
|
+
if (code === API_ERROR_CODES.accessDenied) throw cliError$3("Primitive CLI login was denied in the browser.");
|
|
51155
|
+
if (code === API_ERROR_CODES.expiredToken) throw cliError$3(`Primitive CLI login expired. Run \`primitive ${retryCommand}\` again.`);
|
|
51156
|
+
if (code === API_ERROR_CODES.invalidDeviceCode) throw cliError$3(`Primitive CLI login device code is invalid. Run \`primitive ${retryCommand}\` again.`);
|
|
51157
|
+
writeErrorWithHints(payload);
|
|
51158
|
+
throw cliError$3("Primitive CLI login failed while polling for approval.");
|
|
51159
|
+
}
|
|
51160
|
+
throw cliError$3(`Primitive CLI login expired. Run \`primitive ${retryCommand}\` again.`);
|
|
51161
|
+
}
|
|
51084
51162
|
async function checkExistingLogin(params) {
|
|
51085
51163
|
const requestConfig = resolveCliApiRequestConfig({
|
|
51086
51164
|
apiBaseUrl: params.apiBaseUrl,
|
|
@@ -51217,57 +51295,32 @@ var LoginCommand$1 = class extends Command {
|
|
|
51217
51295
|
}
|
|
51218
51296
|
process.stderr.write(`If the browser did not open, visit: ${start.verification_uri_complete}\n`);
|
|
51219
51297
|
process.stderr.write("Waiting for browser approval...\n");
|
|
51220
|
-
const
|
|
51221
|
-
|
|
51222
|
-
|
|
51223
|
-
while (Date.now() < deadline) {
|
|
51224
|
-
await sleep(nextPollDelay * 1e3);
|
|
51225
|
-
nextPollDelay = interval;
|
|
51226
|
-
const polled = await pollCliLogin({
|
|
51227
|
-
body: { device_code: start.device_code },
|
|
51298
|
+
const login = await pollCliLoginUntilApproved({
|
|
51299
|
+
poll: (deviceCode) => pollCliLogin({
|
|
51300
|
+
body: { device_code: deviceCode },
|
|
51228
51301
|
client: apiClient.client,
|
|
51229
51302
|
responseStyle: "fields"
|
|
51230
|
-
})
|
|
51231
|
-
|
|
51232
|
-
|
|
51233
|
-
|
|
51234
|
-
|
|
51235
|
-
|
|
51236
|
-
|
|
51237
|
-
|
|
51238
|
-
|
|
51239
|
-
|
|
51240
|
-
|
|
51241
|
-
|
|
51242
|
-
|
|
51243
|
-
|
|
51244
|
-
|
|
51245
|
-
|
|
51246
|
-
|
|
51247
|
-
|
|
51248
|
-
|
|
51249
|
-
|
|
51250
|
-
|
|
51251
|
-
return;
|
|
51252
|
-
}
|
|
51253
|
-
const payload = extractErrorPayload(polled.error);
|
|
51254
|
-
const code = extractErrorCode(payload);
|
|
51255
|
-
if (code === API_ERROR_CODES.authorizationPending) {
|
|
51256
|
-
nextPollDelay = interval;
|
|
51257
|
-
continue;
|
|
51258
|
-
}
|
|
51259
|
-
if (code === API_ERROR_CODES.slowDown) {
|
|
51260
|
-
interval = Math.min(retryAfterSeconds$1(polled) ?? interval + 5, MAX_CLI_LOGIN_POLL_INTERVAL_SECONDS);
|
|
51261
|
-
nextPollDelay = interval;
|
|
51262
|
-
continue;
|
|
51263
|
-
}
|
|
51264
|
-
if (code === API_ERROR_CODES.accessDenied) throw cliError$3("Primitive CLI login was denied in the browser.");
|
|
51265
|
-
if (code === API_ERROR_CODES.expiredToken) throw cliError$3(`Primitive CLI login expired. Run \`primitive ${retryCommand}\` again.`);
|
|
51266
|
-
if (code === API_ERROR_CODES.invalidDeviceCode) throw cliError$3(`Primitive CLI login device code is invalid. Run \`primitive ${retryCommand}\` again.`);
|
|
51267
|
-
writeErrorWithHints(payload);
|
|
51268
|
-
throw cliError$3("Primitive CLI login failed while polling for approval.");
|
|
51269
|
-
}
|
|
51270
|
-
throw cliError$3(`Primitive CLI login expired. Run \`primitive ${retryCommand}\` again.`);
|
|
51303
|
+
}),
|
|
51304
|
+
retryCommand,
|
|
51305
|
+
start
|
|
51306
|
+
});
|
|
51307
|
+
deleteChatState(this.config.configDir);
|
|
51308
|
+
saveCliCredentials(this.config.configDir, {
|
|
51309
|
+
access_token: login.access_token,
|
|
51310
|
+
api_base_url: apiBaseUrl,
|
|
51311
|
+
auth_method: "oauth",
|
|
51312
|
+
created_at: (/* @__PURE__ */ new Date()).toISOString(),
|
|
51313
|
+
expires_at: cliAccessTokenExpiresAt(login.expires_in),
|
|
51314
|
+
oauth_client_id: login.oauth_client_id,
|
|
51315
|
+
oauth_grant_id: login.oauth_grant_id,
|
|
51316
|
+
org_id: login.org_id,
|
|
51317
|
+
org_name: login.org_name,
|
|
51318
|
+
refresh_token: login.refresh_token,
|
|
51319
|
+
token_type: login.token_type
|
|
51320
|
+
});
|
|
51321
|
+
const org = login.org_name ? ` (${login.org_name})` : "";
|
|
51322
|
+
process.stderr.write(`Logged in to org ${login.org_id}${org}.\n`);
|
|
51323
|
+
process.stderr.write(`Saved credentials to ${credentialsPath(this.config.configDir)}.\n`);
|
|
51271
51324
|
}
|
|
51272
51325
|
};
|
|
51273
51326
|
//#endregion
|
|
@@ -56691,8 +56744,8 @@ var PaymentsRegisterPayoutAddressCommand = class PaymentsRegisterPayoutAddressCo
|
|
|
56691
56744
|
function repeatFlags(exclusive, requirement) {
|
|
56692
56745
|
return {
|
|
56693
56746
|
"repeat-every": Flags.integer({
|
|
56694
|
-
description: `Send this message now and then again every N minutes (
|
|
56695
|
-
min:
|
|
56747
|
+
description: `Send this message now and then again every N minutes (1 to ${REPEAT_EVERY_MAX_MINUTES}) in the same thread. ${requirement} Manage it later with \`primitive repeats\`.`,
|
|
56748
|
+
min: 1,
|
|
56696
56749
|
max: REPEAT_EVERY_MAX_MINUTES,
|
|
56697
56750
|
exclusive
|
|
56698
56751
|
}),
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { c as loadConnectedAgentProfile, i as agentProfileName, r as agentProfileDirectory, t as AGENT_PROFILE_ENV } from "../connected-agent-profile-8tpOMdq3.js";
|
|
2
2
|
import { d as readMailJson } from "../shared-mail-files-CZqI1kj6.js";
|
|
3
|
-
import { m as SESSION_UUID, n as detectAgentRuntime, o as notificationScope } from "../connect-skill-
|
|
3
|
+
import { m as SESSION_UUID, n as detectAgentRuntime, o as notificationScope } from "../connect-skill-DjKt8NC8.js";
|
|
4
4
|
import { a as claimBackgroundListenRestart, n as backgroundListenRestartable, r as backgroundListenStatus } from "../listen-background-Bsofqq_6.js";
|
|
5
5
|
import { join } from "node:path";
|
|
6
6
|
import { spawn } from "node:child_process";
|
|
@@ -9676,7 +9676,7 @@ function normalizeOptions(options) {
|
|
|
9676
9676
|
};
|
|
9677
9677
|
}
|
|
9678
9678
|
//#endregion
|
|
9679
|
-
//#region ../sdk-node/dist/repeats-
|
|
9679
|
+
//#region ../sdk-node/dist/repeats-CoK0tpCK.js
|
|
9680
9680
|
const UUID$3 = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
9681
9681
|
const ATOM = "[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+";
|
|
9682
9682
|
const MAILBOX$1 = new RegExp(`^${ATOM}(?:\\.${ATOM})*@(?:[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?)(?:\\.[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*$`);
|
|
@@ -10378,7 +10378,7 @@ function readRepeatTick(envelope) {
|
|
|
10378
10378
|
status: "invalid",
|
|
10379
10379
|
reason: "invalid_payload"
|
|
10380
10380
|
};
|
|
10381
|
-
if (!p || typeof p.repeat_id !== "string" || !UUID.test(p.repeat_id) || !integerIn(p.sequence, 1, Number.MAX_SAFE_INTEGER) || !integerIn(p.every_minutes,
|
|
10381
|
+
if (!p || typeof p.repeat_id !== "string" || !UUID.test(p.repeat_id) || !integerIn(p.sequence, 1, Number.MAX_SAFE_INTEGER) || !integerIn(p.every_minutes, 1, 10080) || !(p.only_if_recipient_idle_minutes === null || integerIn(p.only_if_recipient_idle_minutes, 1, 10080)) || typeof p.stoppable_by_recipient !== "boolean") return invalid;
|
|
10382
10382
|
return {
|
|
10383
10383
|
status: "valid",
|
|
10384
10384
|
tick: {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { b as __exportAll } from "./repeats-
|
|
1
|
+
import { b as __exportAll } from "./repeats-CoK0tpCK-Bx7nmyRi.js";
|
|
2
2
|
import { m as createConfig, p as createClient } from "./connected-agent-profile-8tpOMdq3.js";
|
|
3
3
|
//#region ../packages/api-core/src/api/client.gen.ts
|
|
4
4
|
const client = createClient(createConfig({ baseUrl: "https://api.primitive.dev/v1" }));
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { h as sendPreparedSignal, p as prepareSignalEmail } from "./repeats-
|
|
1
|
+
import { h as sendPreparedSignal, p as prepareSignalEmail } from "./repeats-CoK0tpCK-Bx7nmyRi.js";
|
|
2
2
|
import { d as requireDefaultLoginProfile } from "./connected-agent-profile-8tpOMdq3.js";
|
|
3
|
-
import { C as getEmail, K as listSentEmails, V as listEndpoints, a as createEndpoint, ct as searchEmails, dt as sendEmail, st as sdk_gen_exports } from "./sdk.gen-
|
|
3
|
+
import { C as getEmail, K as listSentEmails, V as listEndpoints, a as createEndpoint, ct as searchEmails, dt as sendEmail, st as sdk_gen_exports } from "./sdk.gen-CgKZwHs3.js";
|
|
4
4
|
import { C as resolveCliAuth, S as normalizeApiBaseUrl, T as saveSignupCredentials, _ as deleteCliCredentials, c as resolveConfigEnvironment, d as validateCliHeaderName, f as validateCliHeaderValue, i as loadCliConfig, j as PrimitiveApiClient, m as cliAccessTokenExpiresAt, p as acquireCliCredentialsLock, w as saveCliCredentials, x as loadCliCredentials, y as detectPrimitiveKeyEnvMisname } from "./cli-config-UOlrfcPz.js";
|
|
5
5
|
import { _ as acquireListenLock, a as mailLockBusy, b as listenProcessIdentity, c as mailTime, d as readMailJson, f as removeMailFile, h as writeMailJson, i as mailId, l as privateMailDirectory, m as withMailLock, n as invalidSharedMail, o as mailObject, p as syncMailDirectory, r as mailAddress, s as mailString, t as SharedMailStateError, v as compareListenProcessIdentity, y as listenIdentity } from "./shared-mail-files-CZqI1kj6.js";
|
|
6
|
-
import { F as readBeforeDeadline, I as scopedChatSenderTrust, N as isPlainChatReply, S as recordSentSignal } from "./auto-signals-
|
|
6
|
+
import { F as readBeforeDeadline, I as scopedChatSenderTrust, N as isPlainChatReply, S as recordSentSignal } from "./auto-signals-C8nMME8J.js";
|
|
7
7
|
import { Command, Errors, Flags } from "@oclif/core";
|
|
8
8
|
import { opendirSync, readFileSync, watch, writeFileSync } from "node:fs";
|
|
9
9
|
import { createHash, randomUUID, scryptSync } from "node:crypto";
|
|
@@ -1542,7 +1542,7 @@ async function pullFile(root, outPath, opts) {
|
|
|
1542
1542
|
return manifest;
|
|
1543
1543
|
}
|
|
1544
1544
|
//#endregion
|
|
1545
|
-
//#region ../sdk-node/dist/api-
|
|
1545
|
+
//#region ../sdk-node/dist/api-CV59-Ci2.js
|
|
1546
1546
|
const jsonBodySerializer = { bodySerializer: (body) => JSON.stringify(body, (_key, value) => typeof value === "bigint" ? value.toString() : value) };
|
|
1547
1547
|
function createSseClient({ onRequest, onSseError, onSseEvent, responseTransformer, responseValidator, sseDefaultRetryDelay, sseMaxRetryAttempts, sseMaxRetryDelay, sseSleepFn, url, ...options }) {
|
|
1548
1548
|
let lastEventId;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "primcli",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.39.0",
|
|
4
4
|
"description": "Official Primitive CLI: deploy Primitive Functions, send and inspect mail, manage endpoints, all from the terminal. Wraps the @primitivedotdev/sdk runtime client with one-shot commands.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": false,
|