charness 3.1.0 → 3.3.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/.env.example +11 -13
- package/DEVELOPMENT.md +27 -6
- package/MIGRATION_1_TO_2.md +1 -1
- package/MIGRATION_RENAME_TO_CHARNESS.md +133 -0
- package/README.md +185 -618
- package/SETUP.md +644 -0
- package/dist/adapters/adapterEventRouting.d.ts +2 -1
- package/dist/adapters/adapterEventRouting.d.ts.map +1 -1
- package/dist/adapters/adapterEventRouting.js +3 -0
- package/dist/adapters/adapterEventRouting.js.map +1 -1
- package/dist/adapters/adapterNames.d.ts +13 -0
- package/dist/adapters/adapterNames.d.ts.map +1 -1
- package/dist/adapters/adapterNames.js +16 -0
- package/dist/adapters/adapterNames.js.map +1 -1
- package/dist/adapters/backendUnavailableError.d.ts +11 -0
- package/dist/adapters/backendUnavailableError.d.ts.map +1 -0
- package/dist/adapters/backendUnavailableError.js +19 -0
- package/dist/adapters/backendUnavailableError.js.map +1 -0
- package/dist/adapters/claudeCliAdapter.d.ts +30 -7
- package/dist/adapters/claudeCliAdapter.d.ts.map +1 -1
- package/dist/adapters/claudeCliAdapter.js +71 -17
- package/dist/adapters/claudeCliAdapter.js.map +1 -1
- package/dist/adapters/claudeJsonStreamAdapter.d.ts +36 -3
- package/dist/adapters/claudeJsonStreamAdapter.d.ts.map +1 -1
- package/dist/adapters/claudeJsonStreamAdapter.js +95 -31
- package/dist/adapters/claudeJsonStreamAdapter.js.map +1 -1
- package/dist/adapters/createAdapter.d.ts +3 -14
- package/dist/adapters/createAdapter.d.ts.map +1 -1
- package/dist/adapters/createAdapter.js +9 -19
- package/dist/adapters/createAdapter.js.map +1 -1
- package/dist/adapters/openCodeAdapter.d.ts +140 -12
- package/dist/adapters/openCodeAdapter.d.ts.map +1 -1
- package/dist/adapters/openCodeAdapter.js +386 -120
- package/dist/adapters/openCodeAdapter.js.map +1 -1
- package/dist/apiErrorRetry.d.ts +70 -6
- package/dist/apiErrorRetry.d.ts.map +1 -1
- package/dist/apiErrorRetry.js +312 -34
- package/dist/apiErrorRetry.js.map +1 -1
- package/dist/apiRetryKick.d.ts +26 -1
- package/dist/apiRetryKick.d.ts.map +1 -1
- package/dist/apiRetryKick.js +41 -2
- package/dist/apiRetryKick.js.map +1 -1
- package/dist/bot.d.ts +2 -1
- package/dist/bot.d.ts.map +1 -1
- package/dist/bot.js +743 -190
- package/dist/bot.js.map +1 -1
- package/dist/cli/bot.d.ts +4 -2
- package/dist/cli/bot.d.ts.map +1 -1
- package/dist/cli/bot.js +11 -3
- package/dist/cli/bot.js.map +1 -1
- package/dist/cli/botEntry.js +3 -1
- package/dist/cli/botEntry.js.map +1 -1
- package/dist/cli/claudeProfiles.d.ts +4 -4
- package/dist/cli/claudeProfiles.js +5 -5
- package/dist/cli/claudeProfiles.js.map +1 -1
- package/dist/cli/envLoader.d.ts +6 -5
- package/dist/cli/envLoader.d.ts.map +1 -1
- package/dist/cli/envLoader.js +8 -27
- package/dist/cli/envLoader.js.map +1 -1
- package/dist/cli/hot.d.ts +9 -3
- package/dist/cli/hot.d.ts.map +1 -1
- package/dist/cli/hot.js +55 -19
- package/dist/cli/hot.js.map +1 -1
- package/dist/cli.js +12 -12
- package/dist/cli.js.map +1 -1
- package/dist/configDirFile.d.ts +73 -0
- package/dist/configDirFile.d.ts.map +1 -0
- package/dist/configDirFile.js +216 -0
- package/dist/configDirFile.js.map +1 -0
- package/dist/connectors/jira/adf.d.ts +21 -0
- package/dist/connectors/jira/adf.d.ts.map +1 -1
- package/dist/connectors/jira/adf.js +39 -0
- package/dist/connectors/jira/adf.js.map +1 -1
- package/dist/connectors/jira/answerSink.d.ts +20 -3
- package/dist/connectors/jira/answerSink.d.ts.map +1 -1
- package/dist/connectors/jira/answerSink.js +126 -13
- package/dist/connectors/jira/answerSink.js.map +1 -1
- package/dist/connectors/jira/client.d.ts +4 -0
- package/dist/connectors/jira/client.d.ts.map +1 -1
- package/dist/connectors/jira/client.js +3 -0
- package/dist/connectors/jira/client.js.map +1 -1
- package/dist/connectors/jira/config.d.ts +10 -1
- package/dist/connectors/jira/config.d.ts.map +1 -1
- package/dist/connectors/jira/config.js +11 -2
- package/dist/connectors/jira/config.js.map +1 -1
- package/dist/connectors/jira/connector.d.ts +7 -1
- package/dist/connectors/jira/connector.d.ts.map +1 -1
- package/dist/connectors/jira/connector.js +23 -4
- package/dist/connectors/jira/connector.js.map +1 -1
- package/dist/connectors/jira/contextLedger.d.ts +6 -0
- package/dist/connectors/jira/contextLedger.d.ts.map +1 -1
- package/dist/connectors/jira/contextLedger.js +16 -0
- package/dist/connectors/jira/contextLedger.js.map +1 -1
- package/dist/connectors/jira/contextPreamble.d.ts.map +1 -1
- package/dist/connectors/jira/contextPreamble.js +6 -3
- package/dist/connectors/jira/contextPreamble.js.map +1 -1
- package/dist/connectors/jira/inbound.d.ts +60 -7
- package/dist/connectors/jira/inbound.d.ts.map +1 -1
- package/dist/connectors/jira/inbound.js +169 -16
- package/dist/connectors/jira/inbound.js.map +1 -1
- package/dist/connectors/jira/issueBlocks.d.ts +6 -1
- package/dist/connectors/jira/issueBlocks.d.ts.map +1 -1
- package/dist/connectors/jira/issueBlocks.js +5 -1
- package/dist/connectors/jira/issueBlocks.js.map +1 -1
- package/dist/connectors/jira/prompt.d.ts +2 -0
- package/dist/connectors/jira/prompt.d.ts.map +1 -1
- package/dist/connectors/jira/prompt.js +16 -0
- package/dist/connectors/jira/prompt.js.map +1 -1
- package/dist/connectors/jira/trigger.d.ts +12 -3
- package/dist/connectors/jira/trigger.d.ts.map +1 -1
- package/dist/connectors/jira/trigger.js +8 -1
- package/dist/connectors/jira/trigger.js.map +1 -1
- package/dist/connectors/jira/triggerLog.d.ts +10 -3
- package/dist/connectors/jira/triggerLog.d.ts.map +1 -1
- package/dist/connectors/jira/triggerLog.js +18 -2
- package/dist/connectors/jira/triggerLog.js.map +1 -1
- package/dist/connectors/telegram/commands/autoContinueLimits.d.ts +2 -2
- package/dist/connectors/telegram/commands/autoContinueLimits.d.ts.map +1 -1
- package/dist/connectors/telegram/commands/autoContinueLimits.js +4 -4
- package/dist/connectors/telegram/commands/autoContinueLimits.js.map +1 -1
- package/dist/connectors/telegram/commands/backendSwitch.d.ts +25 -0
- package/dist/connectors/telegram/commands/backendSwitch.d.ts.map +1 -0
- package/dist/connectors/telegram/commands/backendSwitch.js +104 -0
- package/dist/connectors/telegram/commands/backendSwitch.js.map +1 -0
- package/dist/connectors/telegram/commands/callbackMessage.d.ts +12 -0
- package/dist/connectors/telegram/commands/callbackMessage.d.ts.map +1 -1
- package/dist/connectors/telegram/commands/callbackMessage.js +24 -0
- package/dist/connectors/telegram/commands/callbackMessage.js.map +1 -1
- package/dist/connectors/telegram/commands/callbackToast.d.ts +36 -0
- package/dist/connectors/telegram/commands/callbackToast.d.ts.map +1 -0
- package/dist/connectors/telegram/commands/callbackToast.js +83 -0
- package/dist/connectors/telegram/commands/callbackToast.js.map +1 -0
- package/dist/connectors/telegram/commands/claudeAccounts.d.ts +18 -0
- package/dist/connectors/telegram/commands/claudeAccounts.d.ts.map +1 -1
- package/dist/connectors/telegram/commands/claudeAccounts.js +220 -66
- package/dist/connectors/telegram/commands/claudeAccounts.js.map +1 -1
- package/dist/connectors/telegram/commands/displayModes.d.ts.map +1 -1
- package/dist/connectors/telegram/commands/displayModes.js +4 -2
- package/dist/connectors/telegram/commands/displayModes.js.map +1 -1
- package/dist/connectors/telegram/commands/fallbackChain.d.ts +5 -8
- package/dist/connectors/telegram/commands/fallbackChain.d.ts.map +1 -1
- package/dist/connectors/telegram/commands/fallbackChain.js +183 -193
- package/dist/connectors/telegram/commands/fallbackChain.js.map +1 -1
- package/dist/connectors/telegram/commands/limitsBoard.d.ts +40 -0
- package/dist/connectors/telegram/commands/limitsBoard.d.ts.map +1 -0
- package/dist/connectors/telegram/commands/limitsBoard.js +281 -0
- package/dist/connectors/telegram/commands/limitsBoard.js.map +1 -0
- package/dist/connectors/telegram/commands/modelPage.d.ts +130 -0
- package/dist/connectors/telegram/commands/modelPage.d.ts.map +1 -0
- package/dist/connectors/telegram/commands/modelPage.js +120 -0
- package/dist/connectors/telegram/commands/modelPage.js.map +1 -0
- package/dist/connectors/telegram/commands/modelProviders.d.ts +9 -1
- package/dist/connectors/telegram/commands/modelProviders.d.ts.map +1 -1
- package/dist/connectors/telegram/commands/modelProviders.js +203 -111
- package/dist/connectors/telegram/commands/modelProviders.js.map +1 -1
- package/dist/connectors/telegram/commands/stt.d.ts +32 -0
- package/dist/connectors/telegram/commands/stt.d.ts.map +1 -0
- package/dist/connectors/telegram/commands/stt.js +460 -0
- package/dist/connectors/telegram/commands/stt.js.map +1 -0
- package/dist/effortLevels.d.ts +57 -7
- package/dist/effortLevels.d.ts.map +1 -1
- package/dist/effortLevels.js +65 -9
- package/dist/effortLevels.js.map +1 -1
- package/dist/i18n/de.d.ts.map +1 -1
- package/dist/i18n/de.js +160 -17
- package/dist/i18n/de.js.map +1 -1
- package/dist/i18n/en.d.ts.map +1 -1
- package/dist/i18n/en.js +160 -17
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/es.d.ts.map +1 -1
- package/dist/i18n/es.js +160 -17
- package/dist/i18n/es.js.map +1 -1
- package/dist/i18n/fr.d.ts.map +1 -1
- package/dist/i18n/fr.js +160 -17
- package/dist/i18n/fr.js.map +1 -1
- package/dist/i18n/hi.d.ts.map +1 -1
- package/dist/i18n/hi.js +160 -17
- package/dist/i18n/hi.js.map +1 -1
- package/dist/i18n/ja.d.ts.map +1 -1
- package/dist/i18n/ja.js +160 -17
- package/dist/i18n/ja.js.map +1 -1
- package/dist/i18n/ka.d.ts.map +1 -1
- package/dist/i18n/ka.js +160 -17
- package/dist/i18n/ka.js.map +1 -1
- package/dist/i18n/pt.d.ts.map +1 -1
- package/dist/i18n/pt.js +160 -17
- package/dist/i18n/pt.js.map +1 -1
- package/dist/i18n/ru.d.ts.map +1 -1
- package/dist/i18n/ru.js +160 -17
- package/dist/i18n/ru.js.map +1 -1
- package/dist/i18n/uk.d.ts.map +1 -1
- package/dist/i18n/uk.js +160 -17
- package/dist/i18n/uk.js.map +1 -1
- package/dist/i18n/uz.d.ts.map +1 -1
- package/dist/i18n/uz.js +160 -17
- package/dist/i18n/uz.js.map +1 -1
- package/dist/i18n/zh.d.ts.map +1 -1
- package/dist/i18n/zh.js +160 -17
- package/dist/i18n/zh.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/installManager.d.ts +36 -6
- package/dist/installManager.d.ts.map +1 -1
- package/dist/installManager.js +124 -26
- package/dist/installManager.js.map +1 -1
- package/dist/instanceLock.d.ts.map +1 -1
- package/dist/instanceLock.js +10 -8
- package/dist/instanceLock.js.map +1 -1
- package/dist/instanceSettings.d.ts +52 -0
- package/dist/instanceSettings.d.ts.map +1 -0
- package/dist/instanceSettings.js +136 -0
- package/dist/instanceSettings.js.map +1 -0
- package/dist/legacyMigration.d.ts +69 -0
- package/dist/legacyMigration.d.ts.map +1 -0
- package/dist/legacyMigration.js +338 -0
- package/dist/legacyMigration.js.map +1 -0
- package/dist/legacyNames.d.ts +107 -0
- package/dist/legacyNames.d.ts.map +1 -0
- package/dist/legacyNames.js +230 -0
- package/dist/legacyNames.js.map +1 -0
- package/dist/pinnedStatus.d.ts +7 -1
- package/dist/pinnedStatus.d.ts.map +1 -1
- package/dist/pinnedStatus.js +1 -1
- package/dist/pinnedStatus.js.map +1 -1
- package/dist/platform/answerSink.d.ts +5 -0
- package/dist/platform/answerSink.d.ts.map +1 -1
- package/dist/platform/answerSink.js.map +1 -1
- package/dist/requests/answerRequest.d.ts +2 -0
- package/dist/requests/answerRequest.d.ts.map +1 -1
- package/dist/requests/answerRequest.js +3 -1
- package/dist/requests/answerRequest.js.map +1 -1
- package/dist/requests/answerStyle.d.ts +11 -0
- package/dist/requests/answerStyle.d.ts.map +1 -0
- package/dist/requests/answerStyle.js +14 -0
- package/dist/requests/answerStyle.js.map +1 -0
- package/dist/requests/answerTail.d.ts.map +1 -1
- package/dist/requests/answerTail.js +2 -0
- package/dist/requests/answerTail.js.map +1 -1
- package/dist/requests/requestHeader.d.ts.map +1 -1
- package/dist/requests/requestHeader.js +3 -0
- package/dist/requests/requestHeader.js.map +1 -1
- package/dist/requests/requestLedger.d.ts +8 -0
- package/dist/requests/requestLedger.d.ts.map +1 -1
- package/dist/requests/requestLedger.js +20 -2
- package/dist/requests/requestLedger.js.map +1 -1
- package/dist/requests/types.d.ts +3 -1
- package/dist/requests/types.d.ts.map +1 -1
- package/dist/scheduler/mcpSurface.d.ts +9 -1
- package/dist/scheduler/mcpSurface.d.ts.map +1 -1
- package/dist/scheduler/mcpSurface.js +49 -16
- package/dist/scheduler/mcpSurface.js.map +1 -1
- package/dist/shutdown.d.ts +14 -0
- package/dist/shutdown.d.ts.map +1 -1
- package/dist/shutdown.js +16 -0
- package/dist/shutdown.js.map +1 -1
- package/dist/state.d.ts +57 -3
- package/dist/state.d.ts.map +1 -1
- package/dist/state.js +67 -3
- package/dist/state.js.map +1 -1
- package/dist/stt/sttAutoInstall.d.ts +39 -0
- package/dist/stt/sttAutoInstall.d.ts.map +1 -0
- package/dist/stt/sttAutoInstall.js +158 -0
- package/dist/stt/sttAutoInstall.js.map +1 -0
- package/dist/stt/sttChildEnv.d.ts +11 -0
- package/dist/stt/sttChildEnv.d.ts.map +1 -0
- package/dist/stt/sttChildEnv.js +30 -0
- package/dist/stt/sttChildEnv.js.map +1 -0
- package/dist/stt/sttConfigEdit.d.ts +71 -0
- package/dist/stt/sttConfigEdit.d.ts.map +1 -0
- package/dist/stt/sttConfigEdit.js +144 -0
- package/dist/stt/sttConfigEdit.js.map +1 -0
- package/dist/stt/sttInstall.d.ts +147 -0
- package/dist/stt/sttInstall.d.ts.map +1 -0
- package/dist/stt/sttInstall.js +491 -0
- package/dist/stt/sttInstall.js.map +1 -0
- package/dist/stt/sttInstallEntry.d.ts +2 -0
- package/dist/stt/sttInstallEntry.d.ts.map +1 -0
- package/dist/stt/sttInstallEntry.js +31 -0
- package/dist/stt/sttInstallEntry.js.map +1 -0
- package/dist/stt/sttInstallReporter.d.ts +45 -0
- package/dist/stt/sttInstallReporter.d.ts.map +1 -0
- package/dist/stt/sttInstallReporter.js +57 -0
- package/dist/stt/sttInstallReporter.js.map +1 -0
- package/dist/stt/sttRuntime.d.ts +35 -0
- package/dist/stt/sttRuntime.d.ts.map +1 -0
- package/dist/stt/sttRuntime.js +73 -0
- package/dist/stt/sttRuntime.js.map +1 -0
- package/dist/stt/sttScreenPlan.d.ts +193 -0
- package/dist/stt/sttScreenPlan.d.ts.map +1 -0
- package/dist/stt/sttScreenPlan.js +541 -0
- package/dist/stt/sttScreenPlan.js.map +1 -0
- package/dist/stt/sttSettings.d.ts +201 -0
- package/dist/stt/sttSettings.d.ts.map +1 -0
- package/dist/stt/sttSettings.js +387 -0
- package/dist/stt/sttSettings.js.map +1 -0
- package/dist/stt/sttSidecarOwner.d.ts +115 -0
- package/dist/stt/sttSidecarOwner.d.ts.map +1 -0
- package/dist/stt/sttSidecarOwner.js +475 -0
- package/dist/stt/sttSidecarOwner.js.map +1 -0
- package/dist/stt/transcribeChain.d.ts +36 -0
- package/dist/stt/transcribeChain.d.ts.map +1 -0
- package/dist/stt/transcribeChain.js +42 -0
- package/dist/stt/transcribeChain.js.map +1 -0
- package/dist/types.d.ts +77 -4
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/adapterSwitchSessionIds.d.ts +32 -0
- package/dist/utils/adapterSwitchSessionIds.d.ts.map +1 -0
- package/dist/utils/adapterSwitchSessionIds.js +44 -0
- package/dist/utils/adapterSwitchSessionIds.js.map +1 -0
- package/dist/utils/backendSwitchPlan.d.ts +63 -0
- package/dist/utils/backendSwitchPlan.d.ts.map +1 -0
- package/dist/utils/backendSwitchPlan.js +73 -0
- package/dist/utils/backendSwitchPlan.js.map +1 -0
- package/dist/utils/claudeAccountPickerPlan.d.ts +12 -1
- package/dist/utils/claudeAccountPickerPlan.d.ts.map +1 -1
- package/dist/utils/claudeAccountPickerPlan.js +20 -1
- package/dist/utils/claudeAccountPickerPlan.js.map +1 -1
- package/dist/utils/claudeProfiles.d.ts +7 -0
- package/dist/utils/claudeProfiles.d.ts.map +1 -1
- package/dist/utils/claudeProfiles.js +19 -0
- package/dist/utils/claudeProfiles.js.map +1 -1
- package/dist/utils/claudeTranscriptContent.d.ts +24 -0
- package/dist/utils/claudeTranscriptContent.d.ts.map +1 -0
- package/dist/utils/claudeTranscriptContent.js +107 -0
- package/dist/utils/claudeTranscriptContent.js.map +1 -0
- package/dist/utils/claudeUsage.d.ts +47 -8
- package/dist/utils/claudeUsage.d.ts.map +1 -1
- package/dist/utils/claudeUsage.js +76 -14
- package/dist/utils/claudeUsage.js.map +1 -1
- package/dist/utils/claudeUsageRefresher.d.ts +8 -1
- package/dist/utils/claudeUsageRefresher.d.ts.map +1 -1
- package/dist/utils/claudeUsageRefresher.js +9 -4
- package/dist/utils/claudeUsageRefresher.js.map +1 -1
- package/dist/utils/effortPickerPlan.d.ts +54 -0
- package/dist/utils/effortPickerPlan.d.ts.map +1 -0
- package/dist/utils/effortPickerPlan.js +56 -0
- package/dist/utils/effortPickerPlan.js.map +1 -0
- package/dist/utils/ensureSessionPlan.d.ts +20 -4
- package/dist/utils/ensureSessionPlan.d.ts.map +1 -1
- package/dist/utils/ensureSessionPlan.js +17 -4
- package/dist/utils/ensureSessionPlan.js.map +1 -1
- package/dist/utils/fallbackBridge.d.ts +6 -2
- package/dist/utils/fallbackBridge.d.ts.map +1 -1
- package/dist/utils/fallbackBridge.js +10 -3
- package/dist/utils/fallbackBridge.js.map +1 -1
- package/dist/utils/fallbackChain.d.ts +36 -0
- package/dist/utils/fallbackChain.d.ts.map +1 -1
- package/dist/utils/fallbackChain.js +65 -1
- package/dist/utils/fallbackChain.js.map +1 -1
- package/dist/utils/fallbackSwitchNotice.d.ts +41 -0
- package/dist/utils/fallbackSwitchNotice.d.ts.map +1 -0
- package/dist/utils/fallbackSwitchNotice.js +75 -0
- package/dist/utils/fallbackSwitchNotice.js.map +1 -0
- package/dist/utils/fileSendService.d.ts +33 -10
- package/dist/utils/fileSendService.d.ts.map +1 -1
- package/dist/utils/fileSendService.js +78 -27
- package/dist/utils/fileSendService.js.map +1 -1
- package/dist/utils/jsonStreamHost.d.ts +39 -0
- package/dist/utils/jsonStreamHost.d.ts.map +1 -1
- package/dist/utils/jsonStreamHost.js +60 -1
- package/dist/utils/jsonStreamHost.js.map +1 -1
- package/dist/utils/limitEpisodeRecovery.d.ts +16 -2
- package/dist/utils/limitEpisodeRecovery.d.ts.map +1 -1
- package/dist/utils/limitEpisodeRecovery.js +44 -3
- package/dist/utils/limitEpisodeRecovery.js.map +1 -1
- package/dist/utils/limitSettings.d.ts +25 -0
- package/dist/utils/limitSettings.d.ts.map +1 -0
- package/dist/utils/limitSettings.js +31 -0
- package/dist/utils/limitSettings.js.map +1 -0
- package/dist/utils/limitsBoardPlan.d.ts +52 -0
- package/dist/utils/limitsBoardPlan.d.ts.map +1 -0
- package/dist/utils/limitsBoardPlan.js +93 -0
- package/dist/utils/limitsBoardPlan.js.map +1 -0
- package/dist/utils/openCodeCompactPlugin.d.ts +11 -3
- package/dist/utils/openCodeCompactPlugin.d.ts.map +1 -1
- package/dist/utils/openCodeCompactPlugin.js +37 -5
- package/dist/utils/openCodeCompactPlugin.js.map +1 -1
- package/dist/utils/openCodeUsage.d.ts +93 -0
- package/dist/utils/openCodeUsage.d.ts.map +1 -0
- package/dist/utils/openCodeUsage.js +248 -0
- package/dist/utils/openCodeUsage.js.map +1 -0
- package/dist/utils/operatorSwitchPlan.d.ts +61 -0
- package/dist/utils/operatorSwitchPlan.d.ts.map +1 -0
- package/dist/utils/operatorSwitchPlan.js +32 -0
- package/dist/utils/operatorSwitchPlan.js.map +1 -0
- package/dist/utils/promptDelivery.d.ts +40 -0
- package/dist/utils/promptDelivery.d.ts.map +1 -1
- package/dist/utils/promptDelivery.js +31 -0
- package/dist/utils/promptDelivery.js.map +1 -1
- package/dist/utils/recvPreviewRedaction.d.ts +14 -4
- package/dist/utils/recvPreviewRedaction.d.ts.map +1 -1
- package/dist/utils/recvPreviewRedaction.js +19 -7
- package/dist/utils/recvPreviewRedaction.js.map +1 -1
- package/dist/utils/startupReadiness.d.ts +3 -3
- package/dist/utils/startupReadiness.d.ts.map +1 -1
- package/dist/utils/startupReadiness.js +2 -2
- package/dist/utils/startupReadiness.js.map +1 -1
- package/dist/utils/threadStatusReport.d.ts +3 -1
- package/dist/utils/threadStatusReport.d.ts.map +1 -1
- package/dist/utils/threadStatusReport.js +4 -3
- package/dist/utils/threadStatusReport.js.map +1 -1
- package/dist/utils/timezone.d.ts +23 -0
- package/dist/utils/timezone.d.ts.map +1 -1
- package/dist/utils/timezone.js +38 -0
- package/dist/utils/timezone.js.map +1 -1
- package/dist/utils/transcribeAudio.d.ts +25 -12
- package/dist/utils/transcribeAudio.d.ts.map +1 -1
- package/dist/utils/transcribeAudio.js +39 -21
- package/dist/utils/transcribeAudio.js.map +1 -1
- package/dist/utils/usageRefreshBudget.d.ts +9 -0
- package/dist/utils/usageRefreshBudget.d.ts.map +1 -0
- package/dist/utils/usageRefreshBudget.js +27 -0
- package/dist/utils/usageRefreshBudget.js.map +1 -0
- package/examples/.env.example +13 -9
- package/examples/docker-compose.yml +20 -17
- package/package.json +4 -1
- package/stt/gigaam_sidecar.py +800 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claudeAccountPickerPlan.js","sourceRoot":"","sources":["../../src/utils/claudeAccountPickerPlan.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;
|
|
1
|
+
{"version":3,"file":"claudeAccountPickerPlan.js","sourceRoot":"","sources":["../../src/utils/claudeAccountPickerPlan.ts"],"names":[],"mappings":"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"}
|
|
@@ -106,6 +106,13 @@ export type ClaudeAccountKind = 'personal' | 'corporate' | 'unknown';
|
|
|
106
106
|
/** Personal (`pro`, `max`) versus corporate (`team`, `enterprise`) subscription, from the CLI's `subscriptionType`. */
|
|
107
107
|
export declare function getClaudeAccountKind(subscriptionType: string | null): ClaudeAccountKind;
|
|
108
108
|
export declare const claudeConfigDirVariableName = "CLAUDE_CONFIG_DIR";
|
|
109
|
+
/**
|
|
110
|
+
* @description Whether two `CLAUDE_CONFIG_DIR` values name the same directory: equal strings, or paths that
|
|
111
|
+
* resolve to the same real directory. A process adopted after the data dir was moved to its new name keeps
|
|
112
|
+
* the old path in its command line (the old path is now a symlink), and must not look like a different
|
|
113
|
+
* account — that would re-spawn it for nothing.
|
|
114
|
+
*/
|
|
115
|
+
export declare function checkIsSameClaudeConfigDir(left: string | null, right: string | null): boolean;
|
|
109
116
|
/**
|
|
110
117
|
* @description Recover the `CLAUDE_CONFIG_DIR` a running process was started with from its command line —
|
|
111
118
|
* the json-stream wrapper script or a tmux pane's `#{pane_start_command}` — so an adopted process after a bot
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claudeProfiles.d.ts","sourceRoot":"","sources":["../../src/utils/claudeProfiles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAMH,uEAAuE;AACvE,eAAO,MAAM,wBAAwB,YAAY,CAAC;AAElD,8EAA8E;AAC9E,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AAEvD;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,6DAA8D,CAAC;AACtG,eAAO,MAAM,kCAAkC,wBAAyB,CAAC;AAEzE,iGAAiG;AACjG,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAG7C,wHAAwH;AACxH,eAAO,MAAM,2BAA2B,UAAU,CAAC;AAEnD;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnE;AAED,2GAA2G;AAC3G,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGpF;AAED,qEAAqE;AACrE,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,MAAqB,GAAG,MAAM,CAE3E;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CA6BlH;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAI7E;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,aAAa,GAAE,MAA+B,GAAG,OAAO,CAoBjG;AAED,2GAA2G;AAC3G,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAGlF;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE;IAC9C,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACjC,GAAG,MAAM,CAMT;AAID,sGAAsG;AACtG,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,+FAA+F;IAC/F,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAiBjF;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAM7D;AAED,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC;AAErE,uHAAuH;AACvH,wBAAgB,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAAG,iBAAiB,CAMvF;AAID,eAAO,MAAM,2BAA2B,sBAAsB,CAAC;AAE/D;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM9E"}
|
|
1
|
+
{"version":3,"file":"claudeProfiles.d.ts","sourceRoot":"","sources":["../../src/utils/claudeProfiles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAMH,uEAAuE;AACvE,eAAO,MAAM,wBAAwB,YAAY,CAAC;AAElD,8EAA8E;AAC9E,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AAEvD;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,6DAA8D,CAAC;AACtG,eAAO,MAAM,kCAAkC,wBAAyB,CAAC;AAEzE,iGAAiG;AACjG,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAG7C,wHAAwH;AACxH,eAAO,MAAM,2BAA2B,UAAU,CAAC;AAEnD;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnE;AAED,2GAA2G;AAC3G,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGpF;AAED,qEAAqE;AACrE,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,MAAqB,GAAG,MAAM,CAE3E;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CA6BlH;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAI7E;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,aAAa,GAAE,MAA+B,GAAG,OAAO,CAoBjG;AAED,2GAA2G;AAC3G,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAGlF;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE;IAC9C,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACjC,GAAG,MAAM,CAMT;AAID,sGAAsG;AACtG,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,+FAA+F;IAC/F,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAiBjF;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAM7D;AAED,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC;AAErE,uHAAuH;AACvH,wBAAgB,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAAG,iBAAiB,CAMvF;AAID,eAAO,MAAM,2BAA2B,sBAAsB,CAAC;AAE/D;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAQ7F;AAED;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM9E"}
|
|
@@ -66,6 +66,7 @@ exports.resolveClaudeProfileName = resolveClaudeProfileName;
|
|
|
66
66
|
exports.parseClaudeAuthStatus = parseClaudeAuthStatus;
|
|
67
67
|
exports.readProcessErrorStdout = readProcessErrorStdout;
|
|
68
68
|
exports.getClaudeAccountKind = getClaudeAccountKind;
|
|
69
|
+
exports.checkIsSameClaudeConfigDir = checkIsSameClaudeConfigDir;
|
|
69
70
|
exports.parseClaudeConfigDirFromCommand = parseClaudeConfigDirFromCommand;
|
|
70
71
|
const fs = __importStar(require("fs"));
|
|
71
72
|
const os = __importStar(require("os"));
|
|
@@ -266,6 +267,24 @@ function getClaudeAccountKind(subscriptionType) {
|
|
|
266
267
|
}
|
|
267
268
|
// ── the spawn-side variable ──
|
|
268
269
|
exports.claudeConfigDirVariableName = 'CLAUDE_CONFIG_DIR';
|
|
270
|
+
/**
|
|
271
|
+
* @description Whether two `CLAUDE_CONFIG_DIR` values name the same directory: equal strings, or paths that
|
|
272
|
+
* resolve to the same real directory. A process adopted after the data dir was moved to its new name keeps
|
|
273
|
+
* the old path in its command line (the old path is now a symlink), and must not look like a different
|
|
274
|
+
* account — that would re-spawn it for nothing.
|
|
275
|
+
*/
|
|
276
|
+
function checkIsSameClaudeConfigDir(left, right) {
|
|
277
|
+
if (left === right)
|
|
278
|
+
return true;
|
|
279
|
+
if (left === null || right === null)
|
|
280
|
+
return false;
|
|
281
|
+
try {
|
|
282
|
+
return fs.realpathSync(left) === fs.realpathSync(right);
|
|
283
|
+
}
|
|
284
|
+
catch {
|
|
285
|
+
return false;
|
|
286
|
+
}
|
|
287
|
+
}
|
|
269
288
|
/**
|
|
270
289
|
* @description Recover the `CLAUDE_CONFIG_DIR` a running process was started with from its command line —
|
|
271
290
|
* the json-stream wrapper script or a tmux pane's `#{pane_start_command}` — so an adopted process after a bot
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claudeProfiles.js","sourceRoot":"","sources":["../../src/utils/claudeProfiles.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCH,sEAEC;AAGD,gEAEC;AAED,8DAEC;AAMD,0DAGC;AAGD,oDAEC;AAQD,8DA6BC;AAMD,8DAIC;AAQD,8DAoBC;AAGD,kEAGC;AAOD,4DAUC;AAiBD,sDAiBC;AAOD,wDAMC;AAKD,oDAMC;
|
|
1
|
+
{"version":3,"file":"claudeProfiles.js","sourceRoot":"","sources":["../../src/utils/claudeProfiles.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/** `absent`: no file; `metadataOnly`: a file with no conversation entry (the CLI's stub); `conversation`: a resumable one. */
|
|
2
|
+
export type ClaudeTranscriptContent = 'absent' | 'metadataOnly' | 'conversation';
|
|
3
|
+
/**
|
|
4
|
+
* @description What the transcript at `transcriptPath` holds. Streams the file from its start and stops at the first
|
|
5
|
+
* conversation entry — a real conversation answers within its first lines, a stub is a few hundred bytes — so a
|
|
6
|
+
* transcript of any size costs next to nothing. A file that cannot be read for another reason than being absent
|
|
7
|
+
* counts as a conversation: it is never taken for a stub, which the caller may remove.
|
|
8
|
+
*/
|
|
9
|
+
export declare function readClaudeTranscriptContent(transcriptPath: string): Promise<ClaudeTranscriptContent>;
|
|
10
|
+
/**
|
|
11
|
+
* @description How the CLI can be launched on a session id: `isResumable` — a resume was asked for AND the transcript
|
|
12
|
+
* holds a conversation; `isConversationLost` — a resume was asked for and the conversation is known to have had turns
|
|
13
|
+
* that are gone: the transcript is the metadata-only STUB (proof by itself), or it is missing while the caller
|
|
14
|
+
* `isConversationRecorded` (the bot saw the session take a turn — the file was removed by Claude Code's cleanup of
|
|
15
|
+
* old conversations). A missing transcript of a session nobody saw take a turn loses nothing (a session that never took
|
|
16
|
+
* a turn has none): it is neither resumable nor lost, and the id is simply started. What a launch that cannot resume does
|
|
17
|
+
* is the caller's to decide. A metadata-only stub is removed first — no launch flag accepts it («already in use»), and
|
|
18
|
+
* it holds nothing a conversation could be rebuilt from.
|
|
19
|
+
*/
|
|
20
|
+
export declare function prepareClaudeSessionLaunch(transcriptPath: string, isResumeRequested: boolean, isConversationRecorded?: boolean): Promise<{
|
|
21
|
+
isResumable: boolean;
|
|
22
|
+
isConversationLost: boolean;
|
|
23
|
+
}>;
|
|
24
|
+
//# sourceMappingURL=claudeTranscriptContent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claudeTranscriptContent.d.ts","sourceRoot":"","sources":["../../src/utils/claudeTranscriptContent.ts"],"names":[],"mappings":"AAkBA,8HAA8H;AAC9H,MAAM,MAAM,uBAAuB,GAAG,QAAQ,GAAG,cAAc,GAAG,cAAc,CAAC;AAWjF;;;;;GAKG;AACH,wBAAsB,2BAA2B,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAgB1G;AAED;;;;;;;;;GASG;AACH,wBAAsB,0BAA0B,CAC9C,cAAc,EAAE,MAAM,EACtB,iBAAiB,EAAE,OAAO,EAC1B,sBAAsB,UAAQ,GAC7B,OAAO,CAAC;IAAE,WAAW,EAAE,OAAO,CAAC;IAAC,kBAAkB,EAAE,OAAO,CAAA;CAAE,CAAC,CAKhE"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.readClaudeTranscriptContent = readClaudeTranscriptContent;
|
|
37
|
+
exports.prepareClaudeSessionLaunch = prepareClaudeSessionLaunch;
|
|
38
|
+
/**
|
|
39
|
+
* What a Claude transcript file (`<projects>/<slug>/<sessionId>.jsonl`) holds, as far as launching the CLI on its
|
|
40
|
+
* session id is concerned. A file's EXISTENCE says nothing: the CLI leaves metadata-only stubs of its own (a process that
|
|
41
|
+
* is stopped while its transcript was removed under it — Claude Code's own cleanup of old transcripts — writes its
|
|
42
|
+
* `last-prompt`, `cost-state`, … entries back into a fresh file at exit), and measured against CLI 2.1.302 such a stub
|
|
43
|
+
* is refused by BOTH launch flags: `--resume` answers «No conversation found with session ID», `--session-id` answers
|
|
44
|
+
* «Session ID … is already in use».
|
|
45
|
+
*/
|
|
46
|
+
const fs = __importStar(require("fs"));
|
|
47
|
+
const readline = __importStar(require("readline"));
|
|
48
|
+
/**
|
|
49
|
+
* The entry types that make a transcript a conversation. Measured against CLI 2.1.302: `--resume` runs on a transcript
|
|
50
|
+
* holding any one of them (even alone) and refuses one holding only metadata — `last-prompt`, `cost-state`,
|
|
51
|
+
* `atis-latch`, `ai-title`, `mode`, `queue-operation`, `api-request*`.
|
|
52
|
+
*/
|
|
53
|
+
const conversationEntryTypes = ['user', 'assistant', 'attachment'];
|
|
54
|
+
function readEntryType(line) {
|
|
55
|
+
try {
|
|
56
|
+
const entry = JSON.parse(line);
|
|
57
|
+
return typeof entry?.type === 'string' ? entry.type : null;
|
|
58
|
+
}
|
|
59
|
+
catch {
|
|
60
|
+
return null; // a torn or foreign line holds no conversation
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* @description What the transcript at `transcriptPath` holds. Streams the file from its start and stops at the first
|
|
65
|
+
* conversation entry — a real conversation answers within its first lines, a stub is a few hundred bytes — so a
|
|
66
|
+
* transcript of any size costs next to nothing. A file that cannot be read for another reason than being absent
|
|
67
|
+
* counts as a conversation: it is never taken for a stub, which the caller may remove.
|
|
68
|
+
*/
|
|
69
|
+
async function readClaudeTranscriptContent(transcriptPath) {
|
|
70
|
+
const stream = fs.createReadStream(transcriptPath, { encoding: 'utf8' });
|
|
71
|
+
const lines = readline.createInterface({ input: stream, crlfDelay: Infinity });
|
|
72
|
+
try {
|
|
73
|
+
for await (const line of lines) {
|
|
74
|
+
const entryType = readEntryType(line);
|
|
75
|
+
if (entryType !== null && conversationEntryTypes.includes(entryType))
|
|
76
|
+
return 'conversation';
|
|
77
|
+
}
|
|
78
|
+
return 'metadataOnly';
|
|
79
|
+
}
|
|
80
|
+
catch (error) {
|
|
81
|
+
if (error instanceof Error && 'code' in error && error.code === 'ENOENT')
|
|
82
|
+
return 'absent';
|
|
83
|
+
return 'conversation';
|
|
84
|
+
}
|
|
85
|
+
finally {
|
|
86
|
+
lines.close();
|
|
87
|
+
stream.destroy();
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* @description How the CLI can be launched on a session id: `isResumable` — a resume was asked for AND the transcript
|
|
92
|
+
* holds a conversation; `isConversationLost` — a resume was asked for and the conversation is known to have had turns
|
|
93
|
+
* that are gone: the transcript is the metadata-only STUB (proof by itself), or it is missing while the caller
|
|
94
|
+
* `isConversationRecorded` (the bot saw the session take a turn — the file was removed by Claude Code's cleanup of
|
|
95
|
+
* old conversations). A missing transcript of a session nobody saw take a turn loses nothing (a session that never took
|
|
96
|
+
* a turn has none): it is neither resumable nor lost, and the id is simply started. What a launch that cannot resume does
|
|
97
|
+
* is the caller's to decide. A metadata-only stub is removed first — no launch flag accepts it («already in use»), and
|
|
98
|
+
* it holds nothing a conversation could be rebuilt from.
|
|
99
|
+
*/
|
|
100
|
+
async function prepareClaudeSessionLaunch(transcriptPath, isResumeRequested, isConversationRecorded = false) {
|
|
101
|
+
const content = await readClaudeTranscriptContent(transcriptPath);
|
|
102
|
+
if (content === 'metadataOnly')
|
|
103
|
+
await fs.promises.rm(transcriptPath, { force: true });
|
|
104
|
+
const isGone = content === 'metadataOnly' || (content === 'absent' && isConversationRecorded);
|
|
105
|
+
return { isResumable: isResumeRequested && content === 'conversation', isConversationLost: isResumeRequested && isGone };
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=claudeTranscriptContent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claudeTranscriptContent.js","sourceRoot":"","sources":["../../src/utils/claudeTranscriptContent.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,kEAgBC;AAYD,gEASC;AAzED;;;;;;;GAOG;AACH,uCAAyB;AACzB,mDAAqC;AAErC;;;;GAIG;AACH,MAAM,sBAAsB,GAAsB,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;AAKtF,SAAS,aAAa,CAAC,IAAY;IACjC,IAAI,CAAC;QACH,MAAM,KAAK,GAA8B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,OAAO,OAAO,KAAK,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,CAAC,+CAA+C;IAC9D,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,2BAA2B,CAAC,cAAsB;IACtE,MAAM,MAAM,GAAG,EAAE,CAAC,gBAAgB,CAAC,cAAc,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IACzE,MAAM,KAAK,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC/E,IAAI,CAAC;QACH,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,SAAS,KAAK,IAAI,IAAI,sBAAsB,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAAE,OAAO,cAAc,CAAC;QAC9F,CAAC;QACD,OAAO,cAAc,CAAC;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC1F,OAAO,cAAc,CAAC;IACxB,CAAC;YAAS,CAAC;QACT,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,MAAM,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,0BAA0B,CAC9C,cAAsB,EACtB,iBAA0B,EAC1B,sBAAsB,GAAG,KAAK;IAE9B,MAAM,OAAO,GAAG,MAAM,2BAA2B,CAAC,cAAc,CAAC,CAAC;IAClE,IAAI,OAAO,KAAK,cAAc;QAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACtF,MAAM,MAAM,GAAG,OAAO,KAAK,cAAc,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,sBAAsB,CAAC,CAAC;IAC9F,OAAO,EAAE,WAAW,EAAE,iBAAiB,IAAI,OAAO,KAAK,cAAc,EAAE,kBAAkB,EAAE,iBAAiB,IAAI,MAAM,EAAE,CAAC;AAC3H,CAAC"}
|
|
@@ -68,20 +68,33 @@ export type ClaudeUsageFetchResult = {
|
|
|
68
68
|
error: string;
|
|
69
69
|
isAuthError: boolean;
|
|
70
70
|
};
|
|
71
|
-
type
|
|
71
|
+
export type UsageFetchLike = (url: string, init: {
|
|
72
72
|
headers: Record<string, string>;
|
|
73
73
|
signal: AbortSignal;
|
|
74
74
|
}) => Promise<{
|
|
75
75
|
status: number;
|
|
76
76
|
json(): Promise<unknown>;
|
|
77
77
|
}>;
|
|
78
|
+
/** What one GET of a usage endpoint needs: where, with which headers, and how its body becomes buckets. */
|
|
79
|
+
export interface UsageEndpointRequest {
|
|
80
|
+
url: string;
|
|
81
|
+
headers: Record<string, string>;
|
|
82
|
+
parse: (body: unknown) => ClaudeUsageBucket[];
|
|
83
|
+
fetchImpl?: UsageFetchLike;
|
|
84
|
+
timeoutMs?: number;
|
|
85
|
+
}
|
|
78
86
|
/**
|
|
79
|
-
* @description One GET of
|
|
80
|
-
* token is no longer accepted — the CLI's next run
|
|
81
|
-
* throws;
|
|
87
|
+
* @description One GET of a usage endpoint, the shared mechanics of every subscription usage reader (Claude's own, the
|
|
88
|
+
* ChatGPT one of `openCodeUsage.ts`): a 401/403 is an auth error (the token is no longer accepted — the CLI's next run
|
|
89
|
+
* renews it), anything else non-200 a plain failure, an empty parse a failure too. Never throws; the headers (the token)
|
|
90
|
+
* never appear in the result.
|
|
91
|
+
*/
|
|
92
|
+
export declare function fetchUsageBuckets(request: UsageEndpointRequest): Promise<ClaudeUsageFetchResult>;
|
|
93
|
+
/**
|
|
94
|
+
* @description One GET of the Claude usage endpoint with the profile's token (see {@link fetchUsageBuckets}).
|
|
82
95
|
*/
|
|
83
96
|
export declare function fetchClaudeUsage(token: string, options?: {
|
|
84
|
-
fetchImpl?:
|
|
97
|
+
fetchImpl?: UsageFetchLike;
|
|
85
98
|
timeoutMs?: number;
|
|
86
99
|
}): Promise<ClaudeUsageFetchResult>;
|
|
87
100
|
/**
|
|
@@ -113,10 +126,37 @@ export declare function markClaudeUsageSnapshotStale(previous: ClaudeUsageSnapsh
|
|
|
113
126
|
/** Whether `next` says anything `previous` did not — a stream frame per API request must not rewrite state.json each time. */
|
|
114
127
|
export declare function checkClaudeUsageBucketsChanged(previous: ClaudeUsageSnapshot | undefined, next: readonly ClaudeUsageBucket[]): boolean;
|
|
115
128
|
export declare function getClaudeUsageBucket(snapshot: ClaudeUsageSnapshot | undefined, kind: ClaudeUsageBucketKind): ClaudeUsageBucket | null;
|
|
116
|
-
/** Whether a model name (`fable`, `claude-fable-5-1`, …)
|
|
129
|
+
/** Whether a model name (`fable`, `claude-fable-5-1`, …) also drains Fable's own weekly window. */
|
|
117
130
|
export declare function checkIsScopedWeeklyModel(model: string | null): boolean;
|
|
118
|
-
/**
|
|
131
|
+
/**
|
|
132
|
+
* The windows that bound a launch of `model`. The session window and the weekly «all models» window are shared by EVERY model,
|
|
133
|
+
* Fable included; Fable additionally drains its own weekly window (`weekly_scoped`). So an exhausted shared window stops Fable
|
|
134
|
+
* too, while an exhausted Fable window stops Fable alone.
|
|
135
|
+
*/
|
|
119
136
|
export declare function getRelevantClaudeUsageKinds(model: string | null): ClaudeUsageBucketKind[];
|
|
137
|
+
/**
|
|
138
|
+
* @description Whether every window a launch of `model` drains is KNOWN and below 100 % — the model is clear of an exhausted
|
|
139
|
+
* window: a Fable-only weekly limit does not stop `sonnet`, while an exhausted session or shared weekly window stops every
|
|
140
|
+
* model, Fable included. Unknown figures (no snapshot, a window the snapshot lacks) are `false`: a limit nobody can tell the
|
|
141
|
+
* scope of is taken to cover the model. A stale snapshot still counts — its last figures are the best there are.
|
|
142
|
+
*/
|
|
143
|
+
export declare function checkHasHeadroomForClaudeModel(usage: ClaudeUsageSnapshot | undefined, model: string | null): boolean;
|
|
144
|
+
/**
|
|
145
|
+
* @description Whether the usage reading SHOWS a window `model` drains at 100 % NOW (`nowMs`) — the proof an
|
|
146
|
+
* unconfirmed usage-limit wording lacks. Unknown figures prove nothing (`false`), unlike
|
|
147
|
+
* {@link checkHasHeadroomForClaudeModel}, which takes an unknown window as covering the model; neither does an
|
|
148
|
+
* out-of-date reading — a snapshot marked stale, or a 100 % window whose reset has passed since it was read.
|
|
149
|
+
*/
|
|
150
|
+
export declare function checkIsClaudeUsageExhausted(usage: ClaudeUsageSnapshot | undefined, model: string | null, nowMs: number): boolean;
|
|
151
|
+
/**
|
|
152
|
+
* @description Whether a pick of `pickedModel`, on the account a usage limit stopped while it ran `limitedModel`, is clear of that
|
|
153
|
+
* limit. The window that stopped the limited model is one of the windows IT drains, so a picked model that drains all of them
|
|
154
|
+
* (the same model, a model on the same windows, or Fable after any other model — Fable drains the shared windows too) is covered
|
|
155
|
+
* by the limit however far the figures lag behind it. Only a model draining FEWER windows — a non-Fable model after Fable, which
|
|
156
|
+
* may have stopped on its own weekly window alone — is judged by {@link checkHasHeadroomForClaudeModel}. An unknown
|
|
157
|
+
* `limitedModel` leaves it to the figures.
|
|
158
|
+
*/
|
|
159
|
+
export declare function checkIsClaudeModelClearOfLimit(usage: ClaudeUsageSnapshot | undefined, limitedModel: string | null, pickedModel: string): boolean;
|
|
120
160
|
/** What the ranking needs to know about one profile (the bot reads it off state, the CLI off state.json). */
|
|
121
161
|
export interface ClaudeProfileUsageView {
|
|
122
162
|
name: string;
|
|
@@ -205,5 +245,4 @@ export declare function formatClaudeUsageBucket(bucket: ClaudeUsageBucket | null
|
|
|
205
245
|
fallbackResetsAt?: string | null;
|
|
206
246
|
words?: ClaudeRelativeResetWords;
|
|
207
247
|
}): string;
|
|
208
|
-
export {};
|
|
209
248
|
//# sourceMappingURL=claudeUsage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claudeUsage.d.ts","sourceRoot":"","sources":["../../src/utils/claudeUsage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAuE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE/H,eAAO,MAAM,mBAAmB,8CAA8C,CAAC;AAK/E,eAAO,MAAM,yBAAyB,QAAS,CAAC;AAEhD,gGAAgG;AAChG,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,YAAY,GAAG,eAAe,CAAC;AAE/E,eAAO,MAAM,sBAAsB,EAAE,SAAS,qBAAqB,EAA+C,CAAC;AAEnH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,qBAAqB,CAAC;IAC5B,iFAAiF;IACjF,OAAO,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,4FAA4F;IAC5F,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,gFAAgF;AAChF,MAAM,WAAW,mBAAmB;IAClC,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,KAAK,GAAG,QAAQ,CAAC;IACzB,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kEAAkE;IAClE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAID,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,aAAa,GAAE,MAA+B,GAAG,gBAAgB,GAAG,IAAI,CAWtI;AAED,+FAA+F;AAC/F,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAEzF;AAID,MAAM,MAAM,sBAAsB,GAC9B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,iBAAiB,EAAE,CAAA;CAAE,GAC1C;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,CAAC;AAEvD,
|
|
1
|
+
{"version":3,"file":"claudeUsage.d.ts","sourceRoot":"","sources":["../../src/utils/claudeUsage.ts"],"names":[],"mappings":"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"}
|
|
@@ -55,6 +55,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
55
55
|
exports.englishRelativeResetWords = exports.claudeUsageBucketKinds = exports.claudeUsageFetchTimeoutMs = exports.claudeUsageEndpoint = void 0;
|
|
56
56
|
exports.readClaudeOAuthToken = readClaudeOAuthToken;
|
|
57
57
|
exports.checkIsClaudeTokenExpired = checkIsClaudeTokenExpired;
|
|
58
|
+
exports.fetchUsageBuckets = fetchUsageBuckets;
|
|
58
59
|
exports.fetchClaudeUsage = fetchClaudeUsage;
|
|
59
60
|
exports.parseClaudeUsageResponse = parseClaudeUsageResponse;
|
|
60
61
|
exports.buildBucketsFromRateLimitWindows = buildBucketsFromRateLimitWindows;
|
|
@@ -64,6 +65,9 @@ exports.checkClaudeUsageBucketsChanged = checkClaudeUsageBucketsChanged;
|
|
|
64
65
|
exports.getClaudeUsageBucket = getClaudeUsageBucket;
|
|
65
66
|
exports.checkIsScopedWeeklyModel = checkIsScopedWeeklyModel;
|
|
66
67
|
exports.getRelevantClaudeUsageKinds = getRelevantClaudeUsageKinds;
|
|
68
|
+
exports.checkHasHeadroomForClaudeModel = checkHasHeadroomForClaudeModel;
|
|
69
|
+
exports.checkIsClaudeUsageExhausted = checkIsClaudeUsageExhausted;
|
|
70
|
+
exports.checkIsClaudeModelClearOfLimit = checkIsClaudeModelClearOfLimit;
|
|
67
71
|
exports.buildClaudeProfilesReport = buildClaudeProfilesReport;
|
|
68
72
|
exports.buildClaudeProfileUsageViews = buildClaudeProfileUsageViews;
|
|
69
73
|
exports.readClaudeProfileRecordsFromStateFile = readClaudeProfileRecordsFromStateFile;
|
|
@@ -102,24 +106,22 @@ function checkIsClaudeTokenExpired(token, nowMs) {
|
|
|
102
106
|
return token.expiresAtMs !== null && token.expiresAtMs <= nowMs;
|
|
103
107
|
}
|
|
104
108
|
/**
|
|
105
|
-
* @description One GET of
|
|
106
|
-
* token is no longer accepted — the CLI's next run
|
|
107
|
-
* throws;
|
|
109
|
+
* @description One GET of a usage endpoint, the shared mechanics of every subscription usage reader (Claude's own, the
|
|
110
|
+
* ChatGPT one of `openCodeUsage.ts`): a 401/403 is an auth error (the token is no longer accepted — the CLI's next run
|
|
111
|
+
* renews it), anything else non-200 a plain failure, an empty parse a failure too. Never throws; the headers (the token)
|
|
112
|
+
* never appear in the result.
|
|
108
113
|
*/
|
|
109
|
-
async function
|
|
110
|
-
const fetchImpl =
|
|
114
|
+
async function fetchUsageBuckets(request) {
|
|
115
|
+
const fetchImpl = request.fetchImpl ?? globalThis.fetch;
|
|
111
116
|
const controller = new AbortController();
|
|
112
|
-
const timer = setTimeout(() => controller.abort(),
|
|
117
|
+
const timer = setTimeout(() => controller.abort(), request.timeoutMs ?? exports.claudeUsageFetchTimeoutMs);
|
|
113
118
|
try {
|
|
114
|
-
const response = await fetchImpl(
|
|
115
|
-
headers: { Authorization: `Bearer ${token}`, 'anthropic-beta': claudeOAuthBetaHeader, Accept: 'application/json' },
|
|
116
|
-
signal: controller.signal,
|
|
117
|
-
});
|
|
119
|
+
const response = await fetchImpl(request.url, { headers: request.headers, signal: controller.signal });
|
|
118
120
|
if (response.status === 401 || response.status === 403)
|
|
119
121
|
return { ok: false, error: `http ${response.status}`, isAuthError: true };
|
|
120
122
|
if (response.status !== 200)
|
|
121
123
|
return { ok: false, error: `http ${response.status}`, isAuthError: false };
|
|
122
|
-
const buckets =
|
|
124
|
+
const buckets = request.parse(await response.json());
|
|
123
125
|
if (buckets.length === 0)
|
|
124
126
|
return { ok: false, error: 'no limits in the response', isAuthError: false };
|
|
125
127
|
return { ok: true, buckets };
|
|
@@ -132,6 +134,17 @@ async function fetchClaudeUsage(token, options = {}) {
|
|
|
132
134
|
clearTimeout(timer);
|
|
133
135
|
}
|
|
134
136
|
}
|
|
137
|
+
/**
|
|
138
|
+
* @description One GET of the Claude usage endpoint with the profile's token (see {@link fetchUsageBuckets}).
|
|
139
|
+
*/
|
|
140
|
+
async function fetchClaudeUsage(token, options = {}) {
|
|
141
|
+
return fetchUsageBuckets({
|
|
142
|
+
url: exports.claudeUsageEndpoint,
|
|
143
|
+
headers: { Authorization: `Bearer ${token}`, 'anthropic-beta': claudeOAuthBetaHeader, Accept: 'application/json' },
|
|
144
|
+
parse: parseClaudeUsageResponse,
|
|
145
|
+
...options,
|
|
146
|
+
});
|
|
147
|
+
}
|
|
135
148
|
/**
|
|
136
149
|
* @description The buckets of a usage response. Reads `limits[]` (`kind` session / weekly_all /
|
|
137
150
|
* weekly_scoped, `percent`, `resets_at`, `scope.model.display_name`); a response without it (an older
|
|
@@ -229,13 +242,62 @@ function getClaudeUsageBucket(snapshot, kind) {
|
|
|
229
242
|
return snapshot?.buckets.find((bucket) => bucket.kind === kind) ?? null;
|
|
230
243
|
}
|
|
231
244
|
// ── which profile for a model ──
|
|
232
|
-
/** Whether a model name (`fable`, `claude-fable-5-1`, …)
|
|
245
|
+
/** Whether a model name (`fable`, `claude-fable-5-1`, …) also drains Fable's own weekly window. */
|
|
233
246
|
function checkIsScopedWeeklyModel(model) {
|
|
234
247
|
return model !== null && /fable/i.test(model);
|
|
235
248
|
}
|
|
236
|
-
/**
|
|
249
|
+
/**
|
|
250
|
+
* The windows that bound a launch of `model`. The session window and the weekly «all models» window are shared by EVERY model,
|
|
251
|
+
* Fable included; Fable additionally drains its own weekly window (`weekly_scoped`). So an exhausted shared window stops Fable
|
|
252
|
+
* too, while an exhausted Fable window stops Fable alone.
|
|
253
|
+
*/
|
|
237
254
|
function getRelevantClaudeUsageKinds(model) {
|
|
238
|
-
return
|
|
255
|
+
return checkIsScopedWeeklyModel(model) ? ['session', 'weekly_all', 'weekly_scoped'] : ['session', 'weekly_all'];
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* @description Whether every window a launch of `model` drains is KNOWN and below 100 % — the model is clear of an exhausted
|
|
259
|
+
* window: a Fable-only weekly limit does not stop `sonnet`, while an exhausted session or shared weekly window stops every
|
|
260
|
+
* model, Fable included. Unknown figures (no snapshot, a window the snapshot lacks) are `false`: a limit nobody can tell the
|
|
261
|
+
* scope of is taken to cover the model. A stale snapshot still counts — its last figures are the best there are.
|
|
262
|
+
*/
|
|
263
|
+
function checkHasHeadroomForClaudeModel(usage, model) {
|
|
264
|
+
return getRelevantClaudeUsageKinds(model).every((kind) => {
|
|
265
|
+
const bucket = getClaudeUsageBucket(usage, kind);
|
|
266
|
+
return bucket !== null && bucket.percent < 100;
|
|
267
|
+
});
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* @description Whether the usage reading SHOWS a window `model` drains at 100 % NOW (`nowMs`) — the proof an
|
|
271
|
+
* unconfirmed usage-limit wording lacks. Unknown figures prove nothing (`false`), unlike
|
|
272
|
+
* {@link checkHasHeadroomForClaudeModel}, which takes an unknown window as covering the model; neither does an
|
|
273
|
+
* out-of-date reading — a snapshot marked stale, or a 100 % window whose reset has passed since it was read.
|
|
274
|
+
*/
|
|
275
|
+
function checkIsClaudeUsageExhausted(usage, model, nowMs) {
|
|
276
|
+
if (!usage || usage.isStale === true)
|
|
277
|
+
return false;
|
|
278
|
+
return getRelevantClaudeUsageKinds(model).some((kind) => {
|
|
279
|
+
const bucket = getClaudeUsageBucket(usage, kind);
|
|
280
|
+
if (!bucket || bucket.percent < 100)
|
|
281
|
+
return false;
|
|
282
|
+
const resetsAtMs = bucket.resetsAt === null ? Number.NaN : Date.parse(bucket.resetsAt);
|
|
283
|
+
return !(Number.isFinite(resetsAtMs) && resetsAtMs <= nowMs);
|
|
284
|
+
});
|
|
285
|
+
}
|
|
286
|
+
/**
|
|
287
|
+
* @description Whether a pick of `pickedModel`, on the account a usage limit stopped while it ran `limitedModel`, is clear of that
|
|
288
|
+
* limit. The window that stopped the limited model is one of the windows IT drains, so a picked model that drains all of them
|
|
289
|
+
* (the same model, a model on the same windows, or Fable after any other model — Fable drains the shared windows too) is covered
|
|
290
|
+
* by the limit however far the figures lag behind it. Only a model draining FEWER windows — a non-Fable model after Fable, which
|
|
291
|
+
* may have stopped on its own weekly window alone — is judged by {@link checkHasHeadroomForClaudeModel}. An unknown
|
|
292
|
+
* `limitedModel` leaves it to the figures.
|
|
293
|
+
*/
|
|
294
|
+
function checkIsClaudeModelClearOfLimit(usage, limitedModel, pickedModel) {
|
|
295
|
+
if (limitedModel !== null) {
|
|
296
|
+
const pickedKinds = getRelevantClaudeUsageKinds(pickedModel);
|
|
297
|
+
if (getRelevantClaudeUsageKinds(limitedModel).every((kind) => pickedKinds.includes(kind)))
|
|
298
|
+
return false;
|
|
299
|
+
}
|
|
300
|
+
return checkHasHeadroomForClaudeModel(usage, pickedModel);
|
|
239
301
|
}
|
|
240
302
|
/**
|
|
241
303
|
* @description Rank the profiles for a launch of `model`: a profile that is signed out, marked limited
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claudeUsage.js","sourceRoot":"","sources":["../../src/utils/claudeUsage.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"claudeUsage.js","sourceRoot":"","sources":["../../src/utils/claudeUsage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @description The usage poller behind `/account`, the `claude_profiles` MCP tool and the stream frames: keeps
|
|
3
3
|
* one `ClaudeUsageSnapshot` per account profile current (`utils/claudeUsage.ts`), reading every signed-in
|
|
4
|
-
* profile's own token. Runs on a modest timer (`claudeUsageRefreshIntervalMs`), on `/account` open and on
|
|
4
|
+
* profile's own token — and, beside them, the usage of the OpenCode subscriptions (`utils/openCodeUsage.ts`). Runs on a modest timer (`claudeUsageRefreshIntervalMs`), on `/account` open and on
|
|
5
5
|
* demand (`refreshAll({ maxAgeMs })` skips a snapshot fresher than that), and folds in the `rate_limit_event`
|
|
6
6
|
* windows a json-stream session reports (`noteStreamWindows`), persisting only when a bucket actually moved.
|
|
7
7
|
*
|
|
@@ -25,6 +25,13 @@ export interface ClaudeUsageRefresherDeps {
|
|
|
25
25
|
saveSnapshot: (name: string, snapshot: ClaudeUsageSnapshot) => void;
|
|
26
26
|
readToken: (configDir: string | null) => ClaudeOAuthToken | null;
|
|
27
27
|
fetchUsage: (accessToken: string) => Promise<ClaudeUsageFetchResult>;
|
|
28
|
+
/**
|
|
29
|
+
* The OpenCode providers' usage (`openCodeUsage.ts`) is polled on the same timer and by the same on-demand call; a
|
|
30
|
+
* failure there never reaches the Claude profiles' polls.
|
|
31
|
+
*/
|
|
32
|
+
refreshOpenCode?: (options: {
|
|
33
|
+
maxAgeMs?: number;
|
|
34
|
+
}) => Promise<void>;
|
|
28
35
|
now?: () => number;
|
|
29
36
|
log?: (line: string) => void;
|
|
30
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claudeUsageRefresher.d.ts","sourceRoot":"","sources":["../../src/utils/claudeUsageRefresher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAML,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACzB,MAAM,eAAe,CAAC;AAEvB,eAAO,MAAM,4BAA4B,QAAc,CAAC;AAExD,wGAAwG;AACxG,eAAO,MAAM,2BAA2B,QAAS,CAAC;AAElD,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,wEAAwE;IACxE,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B;AAED,MAAM,WAAW,wBAAwB;IACvC,YAAY,EAAE,MAAM,2BAA2B,EAAE,CAAC;IAClD,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,mBAAmB,GAAG,SAAS,CAAC;IAC/D,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACpE,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,KAAK,gBAAgB,GAAG,IAAI,CAAC;IACjE,UAAU,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACrE,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,oBAAoB;IACnC,kIAAkI;IAClI,UAAU,EAAE,CAAC,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,qDAAqD;IACrD,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,yEAAyE;IACzE,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,qBAAqB,EAAE,KAAK,IAAI,CAAC;IACrF,KAAK,EAAE,CAAC,UAAU,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,wBAAwB,GAAG,oBAAoB,
|
|
1
|
+
{"version":3,"file":"claudeUsageRefresher.d.ts","sourceRoot":"","sources":["../../src/utils/claudeUsageRefresher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAML,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACzB,MAAM,eAAe,CAAC;AAEvB,eAAO,MAAM,4BAA4B,QAAc,CAAC;AAExD,wGAAwG;AACxG,eAAO,MAAM,2BAA2B,QAAS,CAAC;AAElD,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,wEAAwE;IACxE,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B;AAED,MAAM,WAAW,wBAAwB;IACvC,YAAY,EAAE,MAAM,2BAA2B,EAAE,CAAC;IAClD,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,mBAAmB,GAAG,SAAS,CAAC;IAC/D,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACpE,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,KAAK,gBAAgB,GAAG,IAAI,CAAC;IACjE,UAAU,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACrE;;;OAGG;IACH,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,oBAAoB;IACnC,kIAAkI;IAClI,UAAU,EAAE,CAAC,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,qDAAqD;IACrD,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,yEAAyE;IACzE,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,qBAAqB,EAAE,KAAK,IAAI,CAAC;IACrF,KAAK,EAAE,CAAC,UAAU,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,wBAAwB,GAAG,oBAAoB,CA8E/F"}
|