sidekick-shared 0.24.4 → 0.25.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/CHANGELOG.md +59 -0
- package/README.md +200 -52
- package/dist/accountChangeSignal.d.ts +3 -0
- package/dist/accountChangeSignal.js +19 -0
- package/dist/accountChanges.d.ts +21 -0
- package/dist/accountChanges.js +151 -0
- package/dist/accountManager.d.ts +13 -0
- package/dist/accountManager.js +60 -32
- package/dist/accountRegistry.d.ts +3 -1
- package/dist/accountRegistry.js +64 -41
- package/dist/accounts.js +40 -19
- package/dist/autoSwitch.d.ts +2 -1
- package/dist/autoSwitch.js +32 -7
- package/dist/browser.d.ts +10 -3
- package/dist/browser.js +17 -1
- package/dist/codexProfiles.d.ts +14 -0
- package/dist/codexProfiles.js +268 -116
- package/dist/codexQuotaWatcher.d.ts +6 -0
- package/dist/codexQuotaWatcher.js +101 -47
- package/dist/context/sessionContext.js +2 -4
- package/dist/ensureDefaultAccounts.js +4 -4
- package/dist/index.d.ts +32 -15
- package/dist/index.js +54 -9
- package/dist/modelAliases.d.ts +13 -0
- package/dist/modelAliases.js +58 -0
- package/dist/modelCatalog.d.ts +32 -0
- package/dist/modelCatalog.js +145 -0
- package/dist/modelContext.d.ts +36 -3
- package/dist/modelContext.js +109 -34
- package/dist/modelInfo.d.ts +30 -1
- package/dist/modelInfo.js +116 -26
- package/dist/multiProviderQuotaService.d.ts +8 -0
- package/dist/multiProviderQuotaService.js +64 -3
- package/dist/node.d.ts +8 -2
- package/dist/node.js +11 -1
- package/dist/observedContextWindows.d.ts +13 -0
- package/dist/observedContextWindows.js +13 -0
- package/dist/observedSessionCollector.d.ts +75 -4
- package/dist/observedSessionCollector.js +452 -42
- package/dist/parsers/codexHistory.d.ts +32 -0
- package/dist/parsers/codexHistory.js +125 -0
- package/dist/parsers/mcpToolName.d.ts +26 -0
- package/dist/parsers/mcpToolName.js +31 -0
- package/dist/parsers/sessionActivityDetector.d.ts +6 -0
- package/dist/parsers/sessionActivityDetector.js +17 -0
- package/dist/parsers/sessionPathResolver.d.ts +11 -4
- package/dist/parsers/sessionPathResolver.js +11 -4
- package/dist/paths.d.ts +7 -3
- package/dist/paths.js +7 -3
- package/dist/providerIds.d.ts +11 -0
- package/dist/providerIds.js +9 -0
- package/dist/providerQuota.d.ts +3 -1
- package/dist/providerQuota.js +3 -0
- package/dist/providers/claudeCode.d.ts +11 -1
- package/dist/providers/claudeCode.js +222 -39
- package/dist/providers/codex.d.ts +39 -1
- package/dist/providers/codex.js +326 -39
- package/dist/providers/codexDatabase.d.ts +9 -0
- package/dist/providers/codexDatabase.js +107 -2
- package/dist/providers/diagnostics.d.ts +13 -0
- package/dist/providers/diagnostics.js +88 -0
- package/dist/providers/factory.d.ts +14 -0
- package/dist/providers/factory.js +57 -0
- package/dist/providers/openCode.d.ts +20 -1
- package/dist/providers/openCode.js +361 -11
- package/dist/providers/openCodeDatabase.d.ts +10 -0
- package/dist/providers/openCodeDatabase.js +69 -0
- package/dist/providers/types.d.ts +57 -2
- package/dist/providers/types.js +4 -0
- package/dist/quota.d.ts +4 -1
- package/dist/quota.js +3 -7
- package/dist/quotaHistory.d.ts +3 -2
- package/dist/quotaHistory.js +2 -2
- package/dist/quotaPoller.d.ts +13 -1
- package/dist/quotaPoller.js +65 -3
- package/dist/quotaSnapshots.js +8 -77
- package/dist/schemas/accountManager.d.ts +2 -2
- package/dist/schemas/accountManager.js +2 -4
- package/dist/schemas/accountStatus.d.ts +3 -0
- package/dist/schemas/accountStatus.js +1 -0
- package/dist/schemas/index.d.ts +1 -0
- package/dist/schemas/index.js +7 -2
- package/dist/schemas/observedSessionV1.d.ts +27 -26
- package/dist/schemas/observedSessionV1.js +6 -4
- package/dist/schemas/quota.d.ts +2 -2
- package/dist/schemas/quota.js +3 -6
- package/dist/schemas/quotaHistory.d.ts +2 -2
- package/dist/schemas/tokenEstimation.d.ts +1 -1
- package/dist/sessionMonitor.d.ts +15 -0
- package/dist/sessionMonitor.js +142 -0
- package/dist/sessionPreviews.d.ts +85 -0
- package/dist/sessionPreviews.js +549 -0
- package/dist/sessionTranscripts.js +10 -4
- package/dist/types/observedSessionV1.d.ts +6 -2
- package/dist/types/observedSessionV1.js +14 -8
- package/dist/writers/atomic.d.ts +20 -0
- package/dist/writers/atomic.js +190 -19
- package/package.json +22 -1
package/dist/autoSwitch.js
CHANGED
|
@@ -83,6 +83,7 @@ class AutoSwitchController {
|
|
|
83
83
|
subscription = null;
|
|
84
84
|
switchedDuringCrossing = new Set();
|
|
85
85
|
lastSwitchAt = {};
|
|
86
|
+
switchInFlight = new Set();
|
|
86
87
|
constructor(options) {
|
|
87
88
|
this.quotaService = options.quotaService;
|
|
88
89
|
this.config = mergedConfig(options.config);
|
|
@@ -91,7 +92,7 @@ class AutoSwitchController {
|
|
|
91
92
|
this.getCodexAccounts = options.getCodexAccounts ?? codexProfiles_1.listCodexAccounts;
|
|
92
93
|
this.getActiveCodexAccount = options.getActiveCodexAccount ?? codexProfiles_1.getActiveCodexAccount;
|
|
93
94
|
this.readSnapshot = options.readSnapshot ?? quotaSnapshots_1.readQuotaSnapshot;
|
|
94
|
-
this.switchAccount = options.switchAccount ?? accountManager_1.
|
|
95
|
+
this.switchAccount = options.switchAccount ?? accountManager_1.switchAccountAsync;
|
|
95
96
|
this.onTransition = options.onTransition;
|
|
96
97
|
this.log = options.log;
|
|
97
98
|
this.cooldownMs = options.cooldownMs ?? 0;
|
|
@@ -116,13 +117,22 @@ class AutoSwitchController {
|
|
|
116
117
|
}
|
|
117
118
|
}
|
|
118
119
|
handleUpdate(state) {
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
120
|
+
// Fire-and-forget, but the registry/snapshot reads and the consumer's
|
|
121
|
+
// onTransition can all throw — a rejection here would escape the quota
|
|
122
|
+
// service's per-listener guard as an unhandled promise rejection.
|
|
123
|
+
if (state.claude) {
|
|
124
|
+
this.handleProviderUpdate('claude', state.claude).catch((error) => this.log?.('[AutoSwitch] Update failed for claude.', error));
|
|
125
|
+
}
|
|
126
|
+
if (state.codex) {
|
|
127
|
+
this.handleProviderUpdate('codex', state.codex).catch((error) => this.log?.('[AutoSwitch] Update failed for codex.', error));
|
|
128
|
+
}
|
|
123
129
|
}
|
|
124
|
-
handleProviderUpdate(runtimeProvider, activeQuota) {
|
|
130
|
+
async handleProviderUpdate(runtimeProvider, activeQuota) {
|
|
125
131
|
const providerId = runtimeStateToProvider(runtimeProvider);
|
|
132
|
+
// While a switch is mid-flight the registry's active account is
|
|
133
|
+
// indeterminate, so skip the whole update until it settles.
|
|
134
|
+
if (this.switchInFlight.has(providerId))
|
|
135
|
+
return;
|
|
126
136
|
const activeAccount = providerId === 'claude-code' ? this.getActiveClaudeAccount() : this.getActiveCodexAccount();
|
|
127
137
|
if (!activeAccount)
|
|
128
138
|
return;
|
|
@@ -148,13 +158,28 @@ class AutoSwitchController {
|
|
|
148
158
|
const previousSwitchAt = this.lastSwitchAt[providerId] ?? 0;
|
|
149
159
|
if (this.cooldownMs > 0 && this.now() - previousSwitchAt < this.cooldownMs)
|
|
150
160
|
return;
|
|
151
|
-
|
|
161
|
+
this.switchInFlight.add(providerId);
|
|
162
|
+
let result;
|
|
163
|
+
try {
|
|
164
|
+
result = await this.switchAccount(providerId, decision.switchTo);
|
|
165
|
+
}
|
|
166
|
+
catch (error) {
|
|
167
|
+
this.log?.(`[AutoSwitch] Switch threw for ${providerId} to ${decision.switchTo}.`, error);
|
|
168
|
+
return;
|
|
169
|
+
}
|
|
170
|
+
finally {
|
|
171
|
+
this.switchInFlight.delete(providerId);
|
|
172
|
+
}
|
|
152
173
|
if (!result.success) {
|
|
153
174
|
this.log?.(`[AutoSwitch] Could not switch ${providerId} to ${decision.switchTo}.`, result.error);
|
|
154
175
|
return;
|
|
155
176
|
}
|
|
156
177
|
this.lastSwitchAt[providerId] = this.now();
|
|
157
178
|
this.switchedDuringCrossing.add(providerId);
|
|
179
|
+
// A switch that completes after stop()/dispose() still records its
|
|
180
|
+
// state, but must not fire a transition into a stopped consumer.
|
|
181
|
+
if (!this.subscription)
|
|
182
|
+
return;
|
|
158
183
|
this.onTransition?.({
|
|
159
184
|
provider: providerId,
|
|
160
185
|
from: activeAccountId,
|
package/dist/browser.d.ts
CHANGED
|
@@ -7,7 +7,8 @@
|
|
|
7
7
|
*
|
|
8
8
|
* For pricing hydration (LiteLLM catalog refresh), use `sidekick-shared/node`.
|
|
9
9
|
*/
|
|
10
|
-
export { getModelContextWindowSize, DEFAULT_CONTEXT_WINDOW } from './modelContext';
|
|
10
|
+
export { getModelContextWindowSize, resolveModelContextWindow, DEFAULT_CONTEXT_WINDOW, } from './modelContext';
|
|
11
|
+
export type { ModelCatalogMatch, ModelContextWindowProvenance, ModelContextWindowSource, ResolvedModelContextWindow, } from './modelContext';
|
|
11
12
|
export { normalizeProviderUsage, extractNormalizedUsage, calculateNormalizedUsageCost, } from './usageNormalization';
|
|
12
13
|
export type { UsageProvider, UsageSemantics, UsageNormalizationProvenance, ProviderUsageInput, AnthropicUsageInput, OpenAIUsageInput, SidekickUsageInput, NormalizedUsage, PricingProvenance, NormalizedUsageCostInput, NormalizedUsageCost, } from './usageNormalization';
|
|
13
14
|
export { estimateTextTokens, estimateSerializedTokens } from './tokenEstimation';
|
|
@@ -16,9 +17,15 @@ export { projectSessionTranscript } from './transcript';
|
|
|
16
17
|
export type { TranscriptFidelity, TranscriptSourceProvenance, CanonicalTranscriptBlock, CanonicalTranscriptMessage, CanonicalToolCall, CanonicalTranscriptUsageTotals, CanonicalSessionTranscript, ProjectSessionTranscriptOptions, } from './transcript';
|
|
17
18
|
export { formatDurationMs, formatTokenCount } from './formatting';
|
|
18
19
|
export type { FormatDurationMsOptions, FormatTokenCountOptions } from './formatting';
|
|
20
|
+
export { parseMcpToolName } from './parsers/mcpToolName';
|
|
21
|
+
export type { McpToolNameParts } from './parsers/mcpToolName';
|
|
19
22
|
export { buildSessionContextSnapshot, calculateSessionContextPressure, createSessionContextProjector, } from './context/sessionContext';
|
|
23
|
+
export { ACCOUNT_PROVIDER_IDS, MODEL_PROVIDER_IDS, QUOTA_PROVIDER_IDS, RUNTIME_QUOTA_PROVIDER_IDS, SESSION_PROVIDER_IDS, } from './providerIds';
|
|
24
|
+
export type { AccountProviderId, ModelProviderId, QuotaProviderId, RuntimeQuotaProviderId, SessionProviderId, } from './providerIds';
|
|
20
25
|
export type { BuildSessionContextSnapshotOptions, SessionContextCapabilities, SessionContextLayerBreakdown, SessionContextPressure, SessionContextProjector, SessionContextSnapshot, SessionContextSource, SessionContextSourceType, } from './context/sessionContext';
|
|
21
26
|
export { assistantTurnEventsFromSessionEvents, extractTurnSubagents, isAssistantTurnSubagentTool, reasoningSummary, segmentAssistantTurn, } from './turns/assistantTurn';
|
|
22
27
|
export type { AssistantTurnEvent, AssistantTurnEventType, AssistantTurnProcess, AssistantTurnProcessStep, AssistantTurnProjection, AssistantTurnSubagent, AssistantTurnSubagentStatus, AssistantTurnTimelineItem, AssistantTurnToolRef, ExtractTurnSubagentsOptions, ReasoningSummary, SegmentAssistantTurnOptions, } from './turns/assistantTurn';
|
|
23
|
-
export { parseModelId, getModelPricing, getModelInfo, calculateCost, calculateCostWithPricing, calculateCostWithProvenance, mergeCostSources, shortModelName, getModelDisplayInfo, compareModelIds, sortModelIds, formatCost, } from './modelInfo';
|
|
24
|
-
export type { ModelPricing, CostTokenUsage, CostSource, CostProvenanceInput, CostWithProvenance, ModelProvider, ParsedModelId, ModelInfo, ModelDisplayInfo, } from './modelInfo';
|
|
28
|
+
export { parseModelId, getModelPricing, resolveModelPricing, getModelInfo, calculateCost, calculateCostWithPricing, calculateCostWithProvenance, mergeCostSources, shortModelName, getModelDisplayInfo, compareModelIds, sortModelIds, formatCost, } from './modelInfo';
|
|
29
|
+
export type { ModelPricing, CostTokenUsage, CostSource, CostProvenanceInput, CostWithProvenance, ModelProvider, ParsedModelId, ModelInfo, ModelDisplayInfo, ModelPricingMatch, ModelPricingProvenance, ModelPricingSource, ResolvedModelPricing, } from './modelInfo';
|
|
30
|
+
export { exportResolvedModelCatalog, importResolvedModelCatalog, registerModelAlias, resolveModelAlias, RESOLVED_MODEL_CATALOG_SCHEMA_VERSION, } from './modelCatalog';
|
|
31
|
+
export type { ImportResolvedModelCatalogResult, ResolvedModelCatalogEntry, ResolvedModelCatalogSnapshot, } from './modelCatalog';
|
package/dist/browser.js
CHANGED
|
@@ -9,9 +9,10 @@
|
|
|
9
9
|
* For pricing hydration (LiteLLM catalog refresh), use `sidekick-shared/node`.
|
|
10
10
|
*/
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.formatCost = exports.sortModelIds = exports.compareModelIds = exports.getModelDisplayInfo = exports.shortModelName = exports.mergeCostSources = exports.calculateCostWithProvenance = exports.calculateCostWithPricing = exports.calculateCost = exports.getModelInfo = exports.getModelPricing = exports.parseModelId = exports.segmentAssistantTurn = exports.reasoningSummary = exports.isAssistantTurnSubagentTool = exports.extractTurnSubagents = exports.assistantTurnEventsFromSessionEvents = exports.createSessionContextProjector = exports.calculateSessionContextPressure = exports.buildSessionContextSnapshot = exports.formatTokenCount = exports.formatDurationMs = exports.projectSessionTranscript = exports.estimateSerializedTokens = exports.estimateTextTokens = exports.calculateNormalizedUsageCost = exports.extractNormalizedUsage = exports.normalizeProviderUsage = exports.DEFAULT_CONTEXT_WINDOW = exports.getModelContextWindowSize = void 0;
|
|
12
|
+
exports.RESOLVED_MODEL_CATALOG_SCHEMA_VERSION = exports.resolveModelAlias = exports.registerModelAlias = exports.importResolvedModelCatalog = exports.exportResolvedModelCatalog = exports.formatCost = exports.sortModelIds = exports.compareModelIds = exports.getModelDisplayInfo = exports.shortModelName = exports.mergeCostSources = exports.calculateCostWithProvenance = exports.calculateCostWithPricing = exports.calculateCost = exports.getModelInfo = exports.resolveModelPricing = exports.getModelPricing = exports.parseModelId = exports.segmentAssistantTurn = exports.reasoningSummary = exports.isAssistantTurnSubagentTool = exports.extractTurnSubagents = exports.assistantTurnEventsFromSessionEvents = exports.SESSION_PROVIDER_IDS = exports.RUNTIME_QUOTA_PROVIDER_IDS = exports.QUOTA_PROVIDER_IDS = exports.MODEL_PROVIDER_IDS = exports.ACCOUNT_PROVIDER_IDS = exports.createSessionContextProjector = exports.calculateSessionContextPressure = exports.buildSessionContextSnapshot = exports.parseMcpToolName = exports.formatTokenCount = exports.formatDurationMs = exports.projectSessionTranscript = exports.estimateSerializedTokens = exports.estimateTextTokens = exports.calculateNormalizedUsageCost = exports.extractNormalizedUsage = exports.normalizeProviderUsage = exports.DEFAULT_CONTEXT_WINDOW = exports.resolveModelContextWindow = exports.getModelContextWindowSize = void 0;
|
|
13
13
|
var modelContext_1 = require("./modelContext");
|
|
14
14
|
Object.defineProperty(exports, "getModelContextWindowSize", { enumerable: true, get: function () { return modelContext_1.getModelContextWindowSize; } });
|
|
15
|
+
Object.defineProperty(exports, "resolveModelContextWindow", { enumerable: true, get: function () { return modelContext_1.resolveModelContextWindow; } });
|
|
15
16
|
Object.defineProperty(exports, "DEFAULT_CONTEXT_WINDOW", { enumerable: true, get: function () { return modelContext_1.DEFAULT_CONTEXT_WINDOW; } });
|
|
16
17
|
var usageNormalization_1 = require("./usageNormalization");
|
|
17
18
|
Object.defineProperty(exports, "normalizeProviderUsage", { enumerable: true, get: function () { return usageNormalization_1.normalizeProviderUsage; } });
|
|
@@ -25,10 +26,18 @@ Object.defineProperty(exports, "projectSessionTranscript", { enumerable: true, g
|
|
|
25
26
|
var formatting_1 = require("./formatting");
|
|
26
27
|
Object.defineProperty(exports, "formatDurationMs", { enumerable: true, get: function () { return formatting_1.formatDurationMs; } });
|
|
27
28
|
Object.defineProperty(exports, "formatTokenCount", { enumerable: true, get: function () { return formatting_1.formatTokenCount; } });
|
|
29
|
+
var mcpToolName_1 = require("./parsers/mcpToolName");
|
|
30
|
+
Object.defineProperty(exports, "parseMcpToolName", { enumerable: true, get: function () { return mcpToolName_1.parseMcpToolName; } });
|
|
28
31
|
var sessionContext_1 = require("./context/sessionContext");
|
|
29
32
|
Object.defineProperty(exports, "buildSessionContextSnapshot", { enumerable: true, get: function () { return sessionContext_1.buildSessionContextSnapshot; } });
|
|
30
33
|
Object.defineProperty(exports, "calculateSessionContextPressure", { enumerable: true, get: function () { return sessionContext_1.calculateSessionContextPressure; } });
|
|
31
34
|
Object.defineProperty(exports, "createSessionContextProjector", { enumerable: true, get: function () { return sessionContext_1.createSessionContextProjector; } });
|
|
35
|
+
var providerIds_1 = require("./providerIds");
|
|
36
|
+
Object.defineProperty(exports, "ACCOUNT_PROVIDER_IDS", { enumerable: true, get: function () { return providerIds_1.ACCOUNT_PROVIDER_IDS; } });
|
|
37
|
+
Object.defineProperty(exports, "MODEL_PROVIDER_IDS", { enumerable: true, get: function () { return providerIds_1.MODEL_PROVIDER_IDS; } });
|
|
38
|
+
Object.defineProperty(exports, "QUOTA_PROVIDER_IDS", { enumerable: true, get: function () { return providerIds_1.QUOTA_PROVIDER_IDS; } });
|
|
39
|
+
Object.defineProperty(exports, "RUNTIME_QUOTA_PROVIDER_IDS", { enumerable: true, get: function () { return providerIds_1.RUNTIME_QUOTA_PROVIDER_IDS; } });
|
|
40
|
+
Object.defineProperty(exports, "SESSION_PROVIDER_IDS", { enumerable: true, get: function () { return providerIds_1.SESSION_PROVIDER_IDS; } });
|
|
32
41
|
var assistantTurn_1 = require("./turns/assistantTurn");
|
|
33
42
|
Object.defineProperty(exports, "assistantTurnEventsFromSessionEvents", { enumerable: true, get: function () { return assistantTurn_1.assistantTurnEventsFromSessionEvents; } });
|
|
34
43
|
Object.defineProperty(exports, "extractTurnSubagents", { enumerable: true, get: function () { return assistantTurn_1.extractTurnSubagents; } });
|
|
@@ -38,6 +47,7 @@ Object.defineProperty(exports, "segmentAssistantTurn", { enumerable: true, get:
|
|
|
38
47
|
var modelInfo_1 = require("./modelInfo");
|
|
39
48
|
Object.defineProperty(exports, "parseModelId", { enumerable: true, get: function () { return modelInfo_1.parseModelId; } });
|
|
40
49
|
Object.defineProperty(exports, "getModelPricing", { enumerable: true, get: function () { return modelInfo_1.getModelPricing; } });
|
|
50
|
+
Object.defineProperty(exports, "resolveModelPricing", { enumerable: true, get: function () { return modelInfo_1.resolveModelPricing; } });
|
|
41
51
|
Object.defineProperty(exports, "getModelInfo", { enumerable: true, get: function () { return modelInfo_1.getModelInfo; } });
|
|
42
52
|
Object.defineProperty(exports, "calculateCost", { enumerable: true, get: function () { return modelInfo_1.calculateCost; } });
|
|
43
53
|
Object.defineProperty(exports, "calculateCostWithPricing", { enumerable: true, get: function () { return modelInfo_1.calculateCostWithPricing; } });
|
|
@@ -48,3 +58,9 @@ Object.defineProperty(exports, "getModelDisplayInfo", { enumerable: true, get: f
|
|
|
48
58
|
Object.defineProperty(exports, "compareModelIds", { enumerable: true, get: function () { return modelInfo_1.compareModelIds; } });
|
|
49
59
|
Object.defineProperty(exports, "sortModelIds", { enumerable: true, get: function () { return modelInfo_1.sortModelIds; } });
|
|
50
60
|
Object.defineProperty(exports, "formatCost", { enumerable: true, get: function () { return modelInfo_1.formatCost; } });
|
|
61
|
+
var modelCatalog_1 = require("./modelCatalog");
|
|
62
|
+
Object.defineProperty(exports, "exportResolvedModelCatalog", { enumerable: true, get: function () { return modelCatalog_1.exportResolvedModelCatalog; } });
|
|
63
|
+
Object.defineProperty(exports, "importResolvedModelCatalog", { enumerable: true, get: function () { return modelCatalog_1.importResolvedModelCatalog; } });
|
|
64
|
+
Object.defineProperty(exports, "registerModelAlias", { enumerable: true, get: function () { return modelCatalog_1.registerModelAlias; } });
|
|
65
|
+
Object.defineProperty(exports, "resolveModelAlias", { enumerable: true, get: function () { return modelCatalog_1.resolveModelAlias; } });
|
|
66
|
+
Object.defineProperty(exports, "RESOLVED_MODEL_CATALOG_SCHEMA_VERSION", { enumerable: true, get: function () { return modelCatalog_1.RESOLVED_MODEL_CATALOG_SCHEMA_VERSION; } });
|
package/dist/codexProfiles.d.ts
CHANGED
|
@@ -10,7 +10,11 @@ export declare function getCodexMonitoringHomes(): string[];
|
|
|
10
10
|
export declare function getCodexProfilesDir(): string;
|
|
11
11
|
export declare function getCodexProfileHome(profileId: string): string;
|
|
12
12
|
export declare function readCodexAccountMetadata(codexHome: string): AccountIdentityMetadata;
|
|
13
|
+
/** {@link readCodexAccountMetadata} without blocking the event loop on the CLI probe. */
|
|
14
|
+
export declare function readCodexAccountMetadataAsync(codexHome: string): Promise<AccountIdentityMetadata>;
|
|
13
15
|
export declare function isCodexProfileAuthenticated(codexHome: string): boolean;
|
|
16
|
+
/** {@link isCodexProfileAuthenticated} without blocking the event loop on the CLI probe. */
|
|
17
|
+
export declare function isCodexProfileAuthenticatedAsync(codexHome: string): Promise<boolean>;
|
|
14
18
|
export declare function listCodexAccounts(): SavedAccountProfile[];
|
|
15
19
|
export declare function getActiveCodexAccount(): SavedAccountProfile | null;
|
|
16
20
|
export declare function resolveSidekickCodexHome(): string;
|
|
@@ -30,9 +34,19 @@ export declare function resolveSidekickCodexHome(): string;
|
|
|
30
34
|
export declare function resolveActiveCodexAccount(): ResolvedActiveAccount;
|
|
31
35
|
export declare function getCodexExecutionEnv(baseEnv?: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
|
|
32
36
|
export declare function prepareCodexAccount(label: string): CodexAccountManagerResult;
|
|
37
|
+
/** {@link prepareCodexAccount} without blocking the event loop on CLI probes. */
|
|
38
|
+
export declare function prepareCodexAccountAsync(label: string): Promise<CodexAccountManagerResult>;
|
|
33
39
|
export declare function finalizeCodexAccount(profileId: string, opts?: {
|
|
34
40
|
activate?: boolean;
|
|
35
41
|
}): CodexAccountManagerResult;
|
|
42
|
+
/** {@link finalizeCodexAccount} without blocking the event loop on CLI probes. */
|
|
43
|
+
export declare function finalizeCodexAccountAsync(profileId: string, opts?: {
|
|
44
|
+
activate?: boolean;
|
|
45
|
+
}): Promise<CodexAccountManagerResult>;
|
|
36
46
|
export declare function switchToCodexAccount(profileId: string): CodexAccountManagerResult;
|
|
47
|
+
/** {@link switchToCodexAccount} without blocking the event loop on CLI probes. */
|
|
48
|
+
export declare function switchToCodexAccountAsync(profileId: string): Promise<CodexAccountManagerResult>;
|
|
37
49
|
export declare function reconcileCodexAuthState(): void;
|
|
50
|
+
/** {@link reconcileCodexAuthState} without blocking the event loop on CLI probes. */
|
|
51
|
+
export declare function reconcileCodexAuthStateAsync(): Promise<void>;
|
|
38
52
|
export declare function removeCodexAccount(profileId: string): AccountManagerResult;
|