agent-shim 11.76.0 → 11.78.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.
@@ -6121,6 +6121,8 @@ interface ReportRow {
6121
6121
  readonly detail?: string;
6122
6122
  /** Further lines under the row, lined up under its value and dimmed. */
6123
6123
  readonly notes?: readonly string[];
6124
+ /** True for a row that tells the person something changed beneath them (the account their session now bills to), set apart from the plain facts around it. */
6125
+ readonly notice?: boolean;
6124
6126
  }
6125
6127
  /** Where the launcher reports what it decided and why — refusals, warnings about an identity that could not be loaded, and (per the "strictly-better than the legacy script" goal) which identity/profile ended up selected. */
6126
6128
  interface LogPort {
@@ -8874,6 +8876,180 @@ type PathShadowStatus = {
8874
8876
  readonly by: string;
8875
8877
  };
8876
8878
 
8879
+ /** One routed request, appended to the usage log when its response has finished. */
8880
+ declare const UsageRecordSchema: z.ZodObject<{
8881
+ schemaVersion: z.ZodLiteral<1>;
8882
+ at: z.ZodISODateTime;
8883
+ identity: z.ZodOptional<z.ZodString>;
8884
+ provider: z.ZodString;
8885
+ sessionId: z.ZodOptional<z.ZodString>;
8886
+ clientSessionId: z.ZodOptional<z.ZodString>;
8887
+ project: z.ZodOptional<z.ZodString>;
8888
+ viaHeadroom: z.ZodOptional<z.ZodBoolean>;
8889
+ route: z.ZodString;
8890
+ method: z.ZodString;
8891
+ endpoint: z.ZodString;
8892
+ model: z.ZodOptional<z.ZodString>;
8893
+ requestedModel: z.ZodOptional<z.ZodString>;
8894
+ candidateProviders: z.ZodOptional<z.ZodArray<z.ZodString>>;
8895
+ status: z.ZodNumber;
8896
+ latencyMs: z.ZodNumber;
8897
+ durationMs: z.ZodNumber;
8898
+ outcome: z.ZodEnum<{
8899
+ completed: "completed";
8900
+ aborted: "aborted";
8901
+ }>;
8902
+ usage: z.ZodOptional<z.ZodObject<{
8903
+ inputTokens: z.ZodOptional<z.ZodNumber>;
8904
+ outputTokens: z.ZodOptional<z.ZodNumber>;
8905
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
8906
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
8907
+ }, z.core.$strict>>;
8908
+ rateLimitHeaders: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
8909
+ limit: z.ZodOptional<z.ZodObject<{
8910
+ kind: z.ZodEnum<{
8911
+ "rate-limited": "rate-limited";
8912
+ "quota-exhausted": "quota-exhausted";
8913
+ }>;
8914
+ retryAfterSeconds: z.ZodOptional<z.ZodNumber>;
8915
+ resetAt: z.ZodOptional<z.ZodISODateTime>;
8916
+ window: z.ZodOptional<z.ZodString>;
8917
+ evidence: z.ZodArray<z.ZodString>;
8918
+ }, z.core.$strict>>;
8919
+ requestId: z.ZodOptional<z.ZodString>;
8920
+ }, z.core.$strict>;
8921
+ type UsageRecord = z.infer<typeof UsageRecordSchema>;
8922
+ /** One quota window from Anthropic's unified rate-limit headers. */
8923
+ declare const QuotaWindowSchema: z.ZodObject<{
8924
+ utilization: z.ZodOptional<z.ZodNumber>;
8925
+ resetsAt: z.ZodOptional<z.ZodISODateTime>;
8926
+ status: z.ZodOptional<z.ZodString>;
8927
+ graceUtilization: z.ZodOptional<z.ZodNumber>;
8928
+ }, z.core.$strict>;
8929
+ type QuotaWindow = z.infer<typeof QuotaWindowSchema>;
8930
+ /**
8931
+ * The account fields copied from an identity's stored Claude login (`oauthAccount` in the identity's `.claude.json`): who the account is and which plan and tier it is on. Never the token, which Claude Code keeps elsewhere. Each field is present only when the stored login has it; a setup-token identity has no profile scope and so none of them (see issue #44).
8932
+ */
8933
+ declare const AccountMetadataSchema: z.ZodObject<{
8934
+ accountUuid: z.ZodOptional<z.ZodString>;
8935
+ emailAddress: z.ZodOptional<z.ZodString>;
8936
+ displayName: z.ZodOptional<z.ZodString>;
8937
+ organizationUuid: z.ZodOptional<z.ZodString>;
8938
+ organizationName: z.ZodOptional<z.ZodString>;
8939
+ organizationType: z.ZodOptional<z.ZodString>;
8940
+ organizationRole: z.ZodOptional<z.ZodString>;
8941
+ workspaceRole: z.ZodOptional<z.ZodString>;
8942
+ billingType: z.ZodOptional<z.ZodString>;
8943
+ seatTier: z.ZodOptional<z.ZodString>;
8944
+ organizationRateLimitTier: z.ZodOptional<z.ZodString>;
8945
+ userRateLimitTier: z.ZodOptional<z.ZodString>;
8946
+ hasExtraUsageEnabled: z.ZodOptional<z.ZodBoolean>;
8947
+ subscriptionCreatedAt: z.ZodOptional<z.ZodString>;
8948
+ accountCreatedAt: z.ZodOptional<z.ZodString>;
8949
+ }, z.core.$strict>;
8950
+ type AccountMetadata = z.infer<typeof AccountMetadataSchema>;
8951
+ /**
8952
+ * The latest state for one identity, rewritten atomically after each recorded response: the snapshot file other tools read (`~/.agent-shim/usage/snapshots/<identity>.json`) without shelling out to `agent-shim`.
8953
+ */
8954
+ declare const UsageSnapshotSchema: z.ZodObject<{
8955
+ schemaVersion: z.ZodLiteral<1>;
8956
+ identity: z.ZodString;
8957
+ updatedAt: z.ZodISODateTime;
8958
+ account: z.ZodOptional<z.ZodObject<{
8959
+ accountUuid: z.ZodOptional<z.ZodString>;
8960
+ emailAddress: z.ZodOptional<z.ZodString>;
8961
+ displayName: z.ZodOptional<z.ZodString>;
8962
+ organizationUuid: z.ZodOptional<z.ZodString>;
8963
+ organizationName: z.ZodOptional<z.ZodString>;
8964
+ organizationType: z.ZodOptional<z.ZodString>;
8965
+ organizationRole: z.ZodOptional<z.ZodString>;
8966
+ workspaceRole: z.ZodOptional<z.ZodString>;
8967
+ billingType: z.ZodOptional<z.ZodString>;
8968
+ seatTier: z.ZodOptional<z.ZodString>;
8969
+ organizationRateLimitTier: z.ZodOptional<z.ZodString>;
8970
+ userRateLimitTier: z.ZodOptional<z.ZodString>;
8971
+ hasExtraUsageEnabled: z.ZodOptional<z.ZodBoolean>;
8972
+ subscriptionCreatedAt: z.ZodOptional<z.ZodString>;
8973
+ accountCreatedAt: z.ZodOptional<z.ZodString>;
8974
+ }, z.core.$strict>>;
8975
+ providers: z.ZodRecord<z.ZodString, z.ZodObject<{
8976
+ lastRequestAt: z.ZodOptional<z.ZodISODateTime>;
8977
+ lastStatus: z.ZodOptional<z.ZodNumber>;
8978
+ lastModel: z.ZodOptional<z.ZodString>;
8979
+ rateLimit: z.ZodOptional<z.ZodObject<{
8980
+ observedAt: z.ZodISODateTime;
8981
+ headers: z.ZodRecord<z.ZodString, z.ZodString>;
8982
+ unified: z.ZodOptional<z.ZodObject<{
8983
+ status: z.ZodOptional<z.ZodString>;
8984
+ fiveHour: z.ZodOptional<z.ZodObject<{
8985
+ utilization: z.ZodOptional<z.ZodNumber>;
8986
+ resetsAt: z.ZodOptional<z.ZodISODateTime>;
8987
+ status: z.ZodOptional<z.ZodString>;
8988
+ graceUtilization: z.ZodOptional<z.ZodNumber>;
8989
+ }, z.core.$strict>>;
8990
+ sevenDay: z.ZodOptional<z.ZodObject<{
8991
+ utilization: z.ZodOptional<z.ZodNumber>;
8992
+ resetsAt: z.ZodOptional<z.ZodISODateTime>;
8993
+ status: z.ZodOptional<z.ZodString>;
8994
+ graceUtilization: z.ZodOptional<z.ZodNumber>;
8995
+ }, z.core.$strict>>;
8996
+ sevenDayOverageIncluded: z.ZodOptional<z.ZodObject<{
8997
+ utilization: z.ZodOptional<z.ZodNumber>;
8998
+ resetsAt: z.ZodOptional<z.ZodISODateTime>;
8999
+ status: z.ZodOptional<z.ZodString>;
9000
+ graceUtilization: z.ZodOptional<z.ZodNumber>;
9001
+ }, z.core.$strict>>;
9002
+ representativeClaim: z.ZodOptional<z.ZodString>;
9003
+ resetAt: z.ZodOptional<z.ZodISODateTime>;
9004
+ overageStatus: z.ZodOptional<z.ZodString>;
9005
+ overageUtilization: z.ZodOptional<z.ZodNumber>;
9006
+ overageResetsAt: z.ZodOptional<z.ZodISODateTime>;
9007
+ overageDisabledReason: z.ZodOptional<z.ZodString>;
9008
+ overageInUse: z.ZodOptional<z.ZodBoolean>;
9009
+ extraUsageSpend: z.ZodOptional<z.ZodObject<{
9010
+ usedMinor: z.ZodNumber;
9011
+ limitMinor: z.ZodOptional<z.ZodNumber>;
9012
+ currency: z.ZodString;
9013
+ }, z.core.$strict>>;
9014
+ fallbackAvailable: z.ZodOptional<z.ZodBoolean>;
9015
+ }, z.core.$strict>>;
9016
+ planWindowsUnavailableAt: z.ZodOptional<z.ZodISODateTime>;
9017
+ }, z.core.$strict>>;
9018
+ lastLimit: z.ZodOptional<z.ZodObject<{
9019
+ kind: z.ZodEnum<{
9020
+ "rate-limited": "rate-limited";
9021
+ "quota-exhausted": "quota-exhausted";
9022
+ }>;
9023
+ retryAfterSeconds: z.ZodOptional<z.ZodNumber>;
9024
+ resetAt: z.ZodOptional<z.ZodISODateTime>;
9025
+ window: z.ZodOptional<z.ZodString>;
9026
+ evidence: z.ZodArray<z.ZodString>;
9027
+ observedAt: z.ZodISODateTime;
9028
+ status: z.ZodNumber;
9029
+ }, z.core.$strict>>;
9030
+ quota: z.ZodOptional<z.ZodObject<{
9031
+ observedAt: z.ZodISODateTime;
9032
+ source: z.ZodString;
9033
+ level: z.ZodOptional<z.ZodString>;
9034
+ account: z.ZodOptional<z.ZodObject<{
9035
+ email: z.ZodOptional<z.ZodString>;
9036
+ accountId: z.ZodOptional<z.ZodString>;
9037
+ }, z.core.$strict>>;
9038
+ windows: z.ZodArray<z.ZodObject<{
9039
+ measures: z.ZodString;
9040
+ periodMs: z.ZodOptional<z.ZodNumber>;
9041
+ period: z.ZodOptional<z.ZodString>;
9042
+ utilization: z.ZodNumber;
9043
+ resetsAt: z.ZodOptional<z.ZodISODateTime>;
9044
+ limit: z.ZodOptional<z.ZodNumber>;
9045
+ used: z.ZodOptional<z.ZodNumber>;
9046
+ remaining: z.ZodOptional<z.ZodNumber>;
9047
+ }, z.core.$strict>>;
9048
+ }, z.core.$strict>>;
9049
+ }, z.core.$strict>>;
9050
+ }, z.core.$strict>;
9051
+ type UsageSnapshot = z.infer<typeof UsageSnapshotSchema>;
9052
+
8877
9053
  /**
8878
9054
  * How the allowlist the headroom daemon serves lags the allowlist computed now. The daemon re-reads its allowlist file on every request that follows a change to it, and its supervisor rewrites the file and records the hash in the same tick, so a lag that lasts beyond one tick means the supervisor is not running or cannot write the file. A daemon started by an earlier release reads no file, and is reported as such instead.
8879
9055
  */
@@ -9083,6 +9259,8 @@ interface DoctorIdentityInput {
9083
9259
  readonly farmRoot: string;
9084
9260
  /** Whether the identity's `.credentials.json` exists, pre-resolved by the wiring layer since it is a file-existence check. */
9085
9261
  readonly credentialsFilePresent: boolean;
9262
+ /** The account metadata of the identity's stored login, pre-resolved by the wiring layer since it is a read of the identity's `.claude.json`. Undefined when the identity has no stored login or its metadata cannot be read. */
9263
+ readonly account: AccountMetadata | undefined;
9086
9264
  }
9087
9265
  /** One configuration profile's raw `<name>.json`, unparsed. */
9088
9266
  interface DoctorConfigProfileInput {
@@ -9190,180 +9368,6 @@ interface CollectDoctorReportParams {
9190
9368
  */
9191
9369
  declare function collectDoctorReport(params: CollectDoctorReportParams): DoctorReport;
9192
9370
 
9193
- /** One routed request, appended to the usage log when its response has finished. */
9194
- declare const UsageRecordSchema: z.ZodObject<{
9195
- schemaVersion: z.ZodLiteral<1>;
9196
- at: z.ZodISODateTime;
9197
- identity: z.ZodOptional<z.ZodString>;
9198
- provider: z.ZodString;
9199
- sessionId: z.ZodOptional<z.ZodString>;
9200
- clientSessionId: z.ZodOptional<z.ZodString>;
9201
- project: z.ZodOptional<z.ZodString>;
9202
- viaHeadroom: z.ZodOptional<z.ZodBoolean>;
9203
- route: z.ZodString;
9204
- method: z.ZodString;
9205
- endpoint: z.ZodString;
9206
- model: z.ZodOptional<z.ZodString>;
9207
- requestedModel: z.ZodOptional<z.ZodString>;
9208
- candidateProviders: z.ZodOptional<z.ZodArray<z.ZodString>>;
9209
- status: z.ZodNumber;
9210
- latencyMs: z.ZodNumber;
9211
- durationMs: z.ZodNumber;
9212
- outcome: z.ZodEnum<{
9213
- completed: "completed";
9214
- aborted: "aborted";
9215
- }>;
9216
- usage: z.ZodOptional<z.ZodObject<{
9217
- inputTokens: z.ZodOptional<z.ZodNumber>;
9218
- outputTokens: z.ZodOptional<z.ZodNumber>;
9219
- cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
9220
- cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
9221
- }, z.core.$strict>>;
9222
- rateLimitHeaders: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
9223
- limit: z.ZodOptional<z.ZodObject<{
9224
- kind: z.ZodEnum<{
9225
- "rate-limited": "rate-limited";
9226
- "quota-exhausted": "quota-exhausted";
9227
- }>;
9228
- retryAfterSeconds: z.ZodOptional<z.ZodNumber>;
9229
- resetAt: z.ZodOptional<z.ZodISODateTime>;
9230
- window: z.ZodOptional<z.ZodString>;
9231
- evidence: z.ZodArray<z.ZodString>;
9232
- }, z.core.$strict>>;
9233
- requestId: z.ZodOptional<z.ZodString>;
9234
- }, z.core.$strict>;
9235
- type UsageRecord = z.infer<typeof UsageRecordSchema>;
9236
- /** One quota window from Anthropic's unified rate-limit headers. */
9237
- declare const QuotaWindowSchema: z.ZodObject<{
9238
- utilization: z.ZodOptional<z.ZodNumber>;
9239
- resetsAt: z.ZodOptional<z.ZodISODateTime>;
9240
- status: z.ZodOptional<z.ZodString>;
9241
- graceUtilization: z.ZodOptional<z.ZodNumber>;
9242
- }, z.core.$strict>;
9243
- type QuotaWindow = z.infer<typeof QuotaWindowSchema>;
9244
- /**
9245
- * The account fields copied from an identity's stored Claude login (`oauthAccount` in the identity's `.claude.json`): who the account is and which plan and tier it is on. Never the token, which Claude Code keeps elsewhere. Each field is present only when the stored login has it; a setup-token identity has no profile scope and so none of them (see issue #44).
9246
- */
9247
- declare const AccountMetadataSchema: z.ZodObject<{
9248
- accountUuid: z.ZodOptional<z.ZodString>;
9249
- emailAddress: z.ZodOptional<z.ZodString>;
9250
- displayName: z.ZodOptional<z.ZodString>;
9251
- organizationUuid: z.ZodOptional<z.ZodString>;
9252
- organizationName: z.ZodOptional<z.ZodString>;
9253
- organizationType: z.ZodOptional<z.ZodString>;
9254
- organizationRole: z.ZodOptional<z.ZodString>;
9255
- workspaceRole: z.ZodOptional<z.ZodString>;
9256
- billingType: z.ZodOptional<z.ZodString>;
9257
- seatTier: z.ZodOptional<z.ZodString>;
9258
- organizationRateLimitTier: z.ZodOptional<z.ZodString>;
9259
- userRateLimitTier: z.ZodOptional<z.ZodString>;
9260
- hasExtraUsageEnabled: z.ZodOptional<z.ZodBoolean>;
9261
- subscriptionCreatedAt: z.ZodOptional<z.ZodString>;
9262
- accountCreatedAt: z.ZodOptional<z.ZodString>;
9263
- }, z.core.$strict>;
9264
- type AccountMetadata = z.infer<typeof AccountMetadataSchema>;
9265
- /**
9266
- * The latest state for one identity, rewritten atomically after each recorded response: the snapshot file other tools read (`~/.agent-shim/usage/snapshots/<identity>.json`) without shelling out to `agent-shim`.
9267
- */
9268
- declare const UsageSnapshotSchema: z.ZodObject<{
9269
- schemaVersion: z.ZodLiteral<1>;
9270
- identity: z.ZodString;
9271
- updatedAt: z.ZodISODateTime;
9272
- account: z.ZodOptional<z.ZodObject<{
9273
- accountUuid: z.ZodOptional<z.ZodString>;
9274
- emailAddress: z.ZodOptional<z.ZodString>;
9275
- displayName: z.ZodOptional<z.ZodString>;
9276
- organizationUuid: z.ZodOptional<z.ZodString>;
9277
- organizationName: z.ZodOptional<z.ZodString>;
9278
- organizationType: z.ZodOptional<z.ZodString>;
9279
- organizationRole: z.ZodOptional<z.ZodString>;
9280
- workspaceRole: z.ZodOptional<z.ZodString>;
9281
- billingType: z.ZodOptional<z.ZodString>;
9282
- seatTier: z.ZodOptional<z.ZodString>;
9283
- organizationRateLimitTier: z.ZodOptional<z.ZodString>;
9284
- userRateLimitTier: z.ZodOptional<z.ZodString>;
9285
- hasExtraUsageEnabled: z.ZodOptional<z.ZodBoolean>;
9286
- subscriptionCreatedAt: z.ZodOptional<z.ZodString>;
9287
- accountCreatedAt: z.ZodOptional<z.ZodString>;
9288
- }, z.core.$strict>>;
9289
- providers: z.ZodRecord<z.ZodString, z.ZodObject<{
9290
- lastRequestAt: z.ZodOptional<z.ZodISODateTime>;
9291
- lastStatus: z.ZodOptional<z.ZodNumber>;
9292
- lastModel: z.ZodOptional<z.ZodString>;
9293
- rateLimit: z.ZodOptional<z.ZodObject<{
9294
- observedAt: z.ZodISODateTime;
9295
- headers: z.ZodRecord<z.ZodString, z.ZodString>;
9296
- unified: z.ZodOptional<z.ZodObject<{
9297
- status: z.ZodOptional<z.ZodString>;
9298
- fiveHour: z.ZodOptional<z.ZodObject<{
9299
- utilization: z.ZodOptional<z.ZodNumber>;
9300
- resetsAt: z.ZodOptional<z.ZodISODateTime>;
9301
- status: z.ZodOptional<z.ZodString>;
9302
- graceUtilization: z.ZodOptional<z.ZodNumber>;
9303
- }, z.core.$strict>>;
9304
- sevenDay: z.ZodOptional<z.ZodObject<{
9305
- utilization: z.ZodOptional<z.ZodNumber>;
9306
- resetsAt: z.ZodOptional<z.ZodISODateTime>;
9307
- status: z.ZodOptional<z.ZodString>;
9308
- graceUtilization: z.ZodOptional<z.ZodNumber>;
9309
- }, z.core.$strict>>;
9310
- sevenDayOverageIncluded: z.ZodOptional<z.ZodObject<{
9311
- utilization: z.ZodOptional<z.ZodNumber>;
9312
- resetsAt: z.ZodOptional<z.ZodISODateTime>;
9313
- status: z.ZodOptional<z.ZodString>;
9314
- graceUtilization: z.ZodOptional<z.ZodNumber>;
9315
- }, z.core.$strict>>;
9316
- representativeClaim: z.ZodOptional<z.ZodString>;
9317
- resetAt: z.ZodOptional<z.ZodISODateTime>;
9318
- overageStatus: z.ZodOptional<z.ZodString>;
9319
- overageUtilization: z.ZodOptional<z.ZodNumber>;
9320
- overageResetsAt: z.ZodOptional<z.ZodISODateTime>;
9321
- overageDisabledReason: z.ZodOptional<z.ZodString>;
9322
- overageInUse: z.ZodOptional<z.ZodBoolean>;
9323
- extraUsageSpend: z.ZodOptional<z.ZodObject<{
9324
- usedMinor: z.ZodNumber;
9325
- limitMinor: z.ZodOptional<z.ZodNumber>;
9326
- currency: z.ZodString;
9327
- }, z.core.$strict>>;
9328
- fallbackAvailable: z.ZodOptional<z.ZodBoolean>;
9329
- }, z.core.$strict>>;
9330
- planWindowsUnavailableAt: z.ZodOptional<z.ZodISODateTime>;
9331
- }, z.core.$strict>>;
9332
- lastLimit: z.ZodOptional<z.ZodObject<{
9333
- kind: z.ZodEnum<{
9334
- "rate-limited": "rate-limited";
9335
- "quota-exhausted": "quota-exhausted";
9336
- }>;
9337
- retryAfterSeconds: z.ZodOptional<z.ZodNumber>;
9338
- resetAt: z.ZodOptional<z.ZodISODateTime>;
9339
- window: z.ZodOptional<z.ZodString>;
9340
- evidence: z.ZodArray<z.ZodString>;
9341
- observedAt: z.ZodISODateTime;
9342
- status: z.ZodNumber;
9343
- }, z.core.$strict>>;
9344
- quota: z.ZodOptional<z.ZodObject<{
9345
- observedAt: z.ZodISODateTime;
9346
- source: z.ZodString;
9347
- level: z.ZodOptional<z.ZodString>;
9348
- account: z.ZodOptional<z.ZodObject<{
9349
- email: z.ZodOptional<z.ZodString>;
9350
- accountId: z.ZodOptional<z.ZodString>;
9351
- }, z.core.$strict>>;
9352
- windows: z.ZodArray<z.ZodObject<{
9353
- measures: z.ZodString;
9354
- periodMs: z.ZodOptional<z.ZodNumber>;
9355
- period: z.ZodOptional<z.ZodString>;
9356
- utilization: z.ZodNumber;
9357
- resetsAt: z.ZodOptional<z.ZodISODateTime>;
9358
- limit: z.ZodOptional<z.ZodNumber>;
9359
- used: z.ZodOptional<z.ZodNumber>;
9360
- remaining: z.ZodOptional<z.ZodNumber>;
9361
- }, z.core.$strict>>;
9362
- }, z.core.$strict>>;
9363
- }, z.core.$strict>>;
9364
- }, z.core.$strict>;
9365
- type UsageSnapshot = z.infer<typeof UsageSnapshotSchema>;
9366
-
9367
9371
  /** How a sign-out went: whether OpenAI was told, so the person knows the grant is dead on its side too. */
9368
9372
  interface SiwcLogoutResult {
9369
9373
  readonly hadGrant: boolean;
@@ -13950,6 +13954,8 @@ interface SupervisedLaunch {
13950
13954
  readonly conversation: ClaudeConversation;
13951
13955
  /** The pool member to run as, for a relaunch after the previous member ran out of quota. The pool pick is skipped. */
13952
13956
  readonly member?: string;
13957
+ /** The pool member the session left, for a relaunch after it ran out of quota: what the launch report names as the account the session moved from. */
13958
+ readonly from?: string;
13953
13959
  /** The model to resume with, named by a model move that brought the session onto its member: the model part of the `acct:` member the session picked. Replaces any model the caller's own arguments name. */
13954
13960
  readonly model?: string;
13955
13961
  /** Claude Code settings, as the JSON `--settings` takes, to add to the launch: the hooks that tell the supervisor when a turn begins and ends. */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-shim",
3
- "version": "11.76.0",
3
+ "version": "11.78.0",
4
4
  "description": "A profile manager and launcher for Claude Code that lets one person run multiple logins from one machine while controlling what gets shared between them.",
5
5
  "license": "MIT",
6
6
  "author": "Joseph Mearman <joseph@mearman.co.uk>",