claude-use 10.1.0 → 11.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.cjs CHANGED
@@ -33969,7 +33969,7 @@ var init_package = __esm({
33969
33969
  "package.json"() {
33970
33970
  package_default = {
33971
33971
  name: "claude-use",
33972
- version: "10.1.0",
33972
+ version: "11.1.0",
33973
33973
  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.",
33974
33974
  license: "MIT",
33975
33975
  author: "Joseph Mearman <joseph@mearman.co.uk>",
@@ -62734,7 +62734,7 @@ function resolveLaunchFlags(params) {
62734
62734
  skipPermissions: params.flags?.skipPermissions ?? parseEnvBool("AGENT_SHIM_SKIP_PERMISSIONS", params.env.AGENT_SHIM_SKIP_PERMISSIONS) ?? params.cascade?.skipPermissions ?? false,
62735
62735
  remoteControl: params.flags?.remoteControl ?? parseEnvBool("AGENT_SHIM_REMOTE_CONTROL", params.env.AGENT_SHIM_REMOTE_CONTROL) ?? params.cascade?.remoteControl ?? false,
62736
62736
  headroom: params.flags?.headroom ?? parseEnvBool("AGENT_SHIM_HEADROOM", params.env.AGENT_SHIM_HEADROOM) ?? params.cascade?.headroom ?? false,
62737
- trackUsage: params.flags?.trackUsage ?? parseEnvBool("AGENT_SHIM_TRACK_USAGE", params.env.AGENT_SHIM_TRACK_USAGE) ?? params.cascade?.trackUsage ?? params.trackUsageDefault ?? false
62737
+ trackUsage: params.flags?.trackUsage ?? parseEnvBool("AGENT_SHIM_TRACK_USAGE", params.env.AGENT_SHIM_TRACK_USAGE) ?? params.cascade?.trackUsage ?? true
62738
62738
  };
62739
62739
  }
62740
62740
  function buildFlagArgs(flags) {
@@ -63237,8 +63237,6 @@ function decideLaunch(params, readOnly) {
63237
63237
  const discovered = params.resolveClaudeBinary(pinnedVersion === void 0 ? void 0 : { version: pinnedVersion.version });
63238
63238
  const flags = resolveLaunchFlags({
63239
63239
  env,
63240
- // A pool pick reads the usage the front door records, so a pool launch records its own unless something says otherwise.
63241
- ...poolExplanation === void 0 ? {} : { trackUsageDefault: true },
63242
63240
  ...cascadeLaunch === void 0 ? {} : { cascade: cascadeLaunch },
63243
63241
  flags: {
63244
63242
  ...parsedArgv.skipPermissions === void 0 ? {} : { skipPermissions: parsedArgv.skipPermissions },
@@ -113455,6 +113453,7 @@ function createDoorPipelines(deps) {
113455
113453
  responseObservers: deps.responseObservers,
113456
113454
  admit: admitLaunch(deps.isLiveToken),
113457
113455
  headroom: { headroomSocket: deps.headroomSocket, hopSecret: deps.hopSecret, custody: deps.custody, log: deps.log },
113456
+ headroomDecision: deps.headroomDecision,
113458
113457
  now: deps.now,
113459
113458
  log: deps.log
113460
113459
  },
@@ -113462,12 +113461,45 @@ function createDoorPipelines(deps) {
113462
113461
  resolveRoute: deps.resolveRoute,
113463
113462
  responseObservers: [],
113464
113463
  admit: admitHop(deps.hopSecret, deps.custody),
113464
+ headroomDecision: deps.headroomDecision,
113465
113465
  now: deps.now,
113466
113466
  log: deps.log
113467
113467
  }
113468
113468
  };
113469
113469
  }
113470
113470
 
113471
+ // src/frontdoor/headroomDecision.ts
113472
+ init_pick();
113473
+ function createHeadroomDecision() {
113474
+ const sessions = /* @__PURE__ */ new Map();
113475
+ return {
113476
+ decide: (sessionId, wanted, nowMs) => {
113477
+ if (sessionId === void 0) {
113478
+ return wanted;
113479
+ }
113480
+ const state = sessions.get(sessionId);
113481
+ const atBoundary = state === void 0 || nowMs - state.lastEndedAtMs > PROMPT_CACHE_TTL_MS || state.cacheReadInputTokens === 0;
113482
+ const viaHeadroom = atBoundary ? wanted : state.viaHeadroom;
113483
+ sessions.set(sessionId, { viaHeadroom, lastEndedAtMs: state?.lastEndedAtMs ?? nowMs, cacheReadInputTokens: state?.cacheReadInputTokens ?? 0 });
113484
+ return viaHeadroom;
113485
+ },
113486
+ observe: ({ sessionId, endedAtMs, cacheReadInputTokens }) => {
113487
+ if (sessionId === void 0 || cacheReadInputTokens === void 0) {
113488
+ return;
113489
+ }
113490
+ const state = sessions.get(sessionId);
113491
+ if (state !== void 0) {
113492
+ sessions.set(sessionId, { ...state, lastEndedAtMs: endedAtMs, cacheReadInputTokens });
113493
+ }
113494
+ for (const [id2, held] of sessions) {
113495
+ if (endedAtMs - held.lastEndedAtMs > PROMPT_CACHE_TTL_MS) {
113496
+ sessions.delete(id2);
113497
+ }
113498
+ }
113499
+ }
113500
+ };
113501
+ }
113502
+
113471
113503
  // src/frontdoor/commands.ts
113472
113504
  init_capability();
113473
113505
  init_capture();
@@ -126453,7 +126485,8 @@ async function serveRouted(request7, deps) {
126453
126485
  response2.end();
126454
126486
  return;
126455
126487
  }
126456
- const viaHeadroom = identified.session.headroom && resolution.route.headroomEligible && deps.headroom !== void 0;
126488
+ const wantsHeadroom = deps.headroomDecision.decide(identified.session.sessionId, identified.session.headroom, deps.now());
126489
+ const viaHeadroom = wantsHeadroom && resolution.route.headroomEligible && deps.headroom !== void 0;
126457
126490
  const response = createRoutedResponse(request7.response, { deps, session: identified.session, route: resolution.route.name, request: { ...observed, viaHeadroom } });
126458
126491
  try {
126459
126492
  if (viaHeadroom) {
@@ -130627,8 +130660,14 @@ function realFrontDoorSupervisorPorts(paths) {
130627
130660
  log(`job keeper failed: ${error63 instanceof Error ? error63.message : String(error63)}`);
130628
130661
  }
130629
130662
  }, ANTHROPIC_USAGE_FRESHNESS_MS).unref();
130663
+ const headroomDecision = createHeadroomDecision();
130664
+ const recordUsage = withQuotaRefresh(usageStore.record, quotaRefresher);
130630
130665
  const usageMiddleware = createUsageMiddleware({
130631
- record: withQuotaRefresh(usageStore.record, quotaRefresher),
130666
+ // Each finished response also tells the per-session headroom decision when the session's cache was last touched and whether it read from it.
130667
+ record: (record2) => {
130668
+ headroomDecision.observe({ sessionId: record2.sessionId, endedAtMs: Date.parse(record2.at) + record2.durationMs, cacheReadInputTokens: record2.usage?.cacheReadInputTokens });
130669
+ recordUsage(record2);
130670
+ },
130632
130671
  defer: (task) => {
130633
130672
  setImmediate(task);
130634
130673
  },
@@ -130643,6 +130682,7 @@ function realFrontDoorSupervisorPorts(paths) {
130643
130682
  headroomSocket: () => headroomSocketTarget(realFarmFs, realHeadroomSocketTrust, paths),
130644
130683
  // The per-generation capability the direct listener demands: held only in this process's memory, so a loopback process that discovers the direct port still cannot use it.
130645
130684
  hopSecret: (0, import_node_crypto20.randomUUID)(),
130685
+ headroomDecision,
130646
130686
  custody: createCredentialCustody(() => (0, import_node_crypto20.randomUUID)()),
130647
130687
  log
130648
130688
  });
package/dist/index.cjs CHANGED
@@ -2758,7 +2758,7 @@ var init_package = __esm({
2758
2758
  "package.json"() {
2759
2759
  package_default = {
2760
2760
  name: "claude-use",
2761
- version: "10.1.0",
2761
+ version: "11.1.0",
2762
2762
  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.",
2763
2763
  license: "MIT",
2764
2764
  author: "Joseph Mearman <joseph@mearman.co.uk>",
@@ -7145,7 +7145,7 @@ function resolveLaunchFlags(params) {
7145
7145
  skipPermissions: params.flags?.skipPermissions ?? parseEnvBool("AGENT_SHIM_SKIP_PERMISSIONS", params.env.AGENT_SHIM_SKIP_PERMISSIONS) ?? params.cascade?.skipPermissions ?? false,
7146
7146
  remoteControl: params.flags?.remoteControl ?? parseEnvBool("AGENT_SHIM_REMOTE_CONTROL", params.env.AGENT_SHIM_REMOTE_CONTROL) ?? params.cascade?.remoteControl ?? false,
7147
7147
  headroom: params.flags?.headroom ?? parseEnvBool("AGENT_SHIM_HEADROOM", params.env.AGENT_SHIM_HEADROOM) ?? params.cascade?.headroom ?? false,
7148
- trackUsage: params.flags?.trackUsage ?? parseEnvBool("AGENT_SHIM_TRACK_USAGE", params.env.AGENT_SHIM_TRACK_USAGE) ?? params.cascade?.trackUsage ?? params.trackUsageDefault ?? false
7148
+ trackUsage: params.flags?.trackUsage ?? parseEnvBool("AGENT_SHIM_TRACK_USAGE", params.env.AGENT_SHIM_TRACK_USAGE) ?? params.cascade?.trackUsage ?? true
7149
7149
  };
7150
7150
  }
7151
7151
  function buildFlagArgs(flags) {
@@ -7648,8 +7648,6 @@ function decideLaunch(params, readOnly) {
7648
7648
  const discovered = params.resolveClaudeBinary(pinnedVersion === void 0 ? void 0 : { version: pinnedVersion.version });
7649
7649
  const flags = resolveLaunchFlags({
7650
7650
  env,
7651
- // A pool pick reads the usage the front door records, so a pool launch records its own unless something says otherwise.
7652
- ...poolExplanation === void 0 ? {} : { trackUsageDefault: true },
7653
7651
  ...cascadeLaunch === void 0 ? {} : { cascade: cascadeLaunch },
7654
7652
  flags: {
7655
7653
  ...parsedArgv.skipPermissions === void 0 ? {} : { skipPermissions: parsedArgv.skipPermissions },
package/dist/index.mjs CHANGED
@@ -2734,7 +2734,7 @@ var init_package = __esm({
2734
2734
  "package.json"() {
2735
2735
  package_default = {
2736
2736
  name: "claude-use",
2737
- version: "10.1.0",
2737
+ version: "11.1.0",
2738
2738
  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.",
2739
2739
  license: "MIT",
2740
2740
  author: "Joseph Mearman <joseph@mearman.co.uk>",
@@ -7119,7 +7119,7 @@ function resolveLaunchFlags(params) {
7119
7119
  skipPermissions: params.flags?.skipPermissions ?? parseEnvBool("AGENT_SHIM_SKIP_PERMISSIONS", params.env.AGENT_SHIM_SKIP_PERMISSIONS) ?? params.cascade?.skipPermissions ?? false,
7120
7120
  remoteControl: params.flags?.remoteControl ?? parseEnvBool("AGENT_SHIM_REMOTE_CONTROL", params.env.AGENT_SHIM_REMOTE_CONTROL) ?? params.cascade?.remoteControl ?? false,
7121
7121
  headroom: params.flags?.headroom ?? parseEnvBool("AGENT_SHIM_HEADROOM", params.env.AGENT_SHIM_HEADROOM) ?? params.cascade?.headroom ?? false,
7122
- trackUsage: params.flags?.trackUsage ?? parseEnvBool("AGENT_SHIM_TRACK_USAGE", params.env.AGENT_SHIM_TRACK_USAGE) ?? params.cascade?.trackUsage ?? params.trackUsageDefault ?? false
7122
+ trackUsage: params.flags?.trackUsage ?? parseEnvBool("AGENT_SHIM_TRACK_USAGE", params.env.AGENT_SHIM_TRACK_USAGE) ?? params.cascade?.trackUsage ?? true
7123
7123
  };
7124
7124
  }
7125
7125
  function buildFlagArgs(flags) {
@@ -7623,8 +7623,6 @@ function decideLaunch(params, readOnly) {
7623
7623
  const discovered = params.resolveClaudeBinary(pinnedVersion === void 0 ? void 0 : { version: pinnedVersion.version });
7624
7624
  const flags = resolveLaunchFlags({
7625
7625
  env,
7626
- // A pool pick reads the usage the front door records, so a pool launch records its own unless something says otherwise.
7627
- ...poolExplanation === void 0 ? {} : { trackUsageDefault: true },
7628
7626
  ...cascadeLaunch === void 0 ? {} : { cascade: cascadeLaunch },
7629
7627
  flags: {
7630
7628
  ...parsedArgv.skipPermissions === void 0 ? {} : { skipPermissions: parsedArgv.skipPermissions },
@@ -1332,8 +1332,8 @@ declare const HeadroomGlobalConfigSchema: z.ZodObject<{
1332
1332
  targetRatio: z.ZodOptional<z.ZodNumber>;
1333
1333
  ccr: z.ZodOptional<z.ZodEnum<{
1334
1334
  default: "default";
1335
- lossless: "lossless";
1336
1335
  none: "none";
1336
+ lossless: "lossless";
1337
1337
  }>>;
1338
1338
  rolloutChannel: z.ZodOptional<z.ZodEnum<{
1339
1339
  beta: "beta";
@@ -1460,8 +1460,8 @@ declare const GlobalConfigSchema: z.ZodObject<{
1460
1460
  targetRatio: z.ZodOptional<z.ZodNumber>;
1461
1461
  ccr: z.ZodOptional<z.ZodEnum<{
1462
1462
  default: "default";
1463
- lossless: "lossless";
1464
1463
  none: "none";
1464
+ lossless: "lossless";
1465
1465
  }>>;
1466
1466
  rolloutChannel: z.ZodOptional<z.ZodEnum<{
1467
1467
  beta: "beta";
@@ -4161,12 +4161,12 @@ declare const CheckReportJsonSchema: z.ZodObject<{
4161
4161
  identity: z.ZodObject<{
4162
4162
  name: z.ZodNullable<z.ZodString>;
4163
4163
  source: z.ZodEnum<{
4164
- env: "env";
4165
- none: "none";
4166
4164
  "config-dir-escape-hatch": "config-dir-escape-hatch";
4167
4165
  argv: "argv";
4166
+ env: "env";
4168
4167
  "directory-pin": "directory-pin";
4169
4168
  "active-identity-file": "active-identity-file";
4169
+ none: "none";
4170
4170
  }>;
4171
4171
  }, z.core.$strict>;
4172
4172
  pool: z.ZodOptional<z.ZodObject<{
@@ -4244,11 +4244,11 @@ declare const CheckReportJsonSchema: z.ZodObject<{
4244
4244
  "category-default": "category-default";
4245
4245
  }>;
4246
4246
  category: z.ZodNullable<z.ZodEnum<{
4247
+ secret: "secret";
4247
4248
  runtime: "runtime";
4248
4249
  history: "history";
4249
4250
  knowledge: "knowledge";
4250
4251
  settings: "settings";
4251
- secret: "secret";
4252
4252
  }>>;
4253
4253
  rule: z.ZodOptional<z.ZodObject<{
4254
4254
  key: z.ZodString;
@@ -6940,9 +6940,9 @@ declare function createLifecycleApiRouter(deps: LifecycleApiDeps): {
6940
6940
  current: zod.ZodString;
6941
6941
  latest: zod.ZodString;
6942
6942
  action: zod.ZodEnum<{
6943
- updated: "updated";
6944
6943
  current: "current";
6945
6944
  available: "available";
6945
+ updated: "updated";
6946
6946
  }>;
6947
6947
  }, zod_v4_core.$strict>, MergedErrorMap<$ErrorMap, TErrorMap>>;
6948
6948
  };
@@ -7189,12 +7189,12 @@ declare function createLaunchApiRouter(deps: LaunchApiDeps): {
7189
7189
  decision: zod.ZodObject<{
7190
7190
  identity: zod.ZodOptional<zod.ZodString>;
7191
7191
  identitySource: zod.ZodEnum<{
7192
- env: "env";
7193
- none: "none";
7194
7192
  "config-dir-escape-hatch": "config-dir-escape-hatch";
7195
7193
  argv: "argv";
7194
+ env: "env";
7196
7195
  "directory-pin": "directory-pin";
7197
7196
  "active-identity-file": "active-identity-file";
7197
+ none: "none";
7198
7198
  }>;
7199
7199
  pool: zod.ZodOptional<zod.ZodObject<{
7200
7200
  name: zod.ZodString;
@@ -7789,12 +7789,12 @@ declare function createControlApiRouter(deps: ControlApiDeps): {
7789
7789
  identity: zod.ZodObject<{
7790
7790
  name: zod.ZodNullable<zod.ZodString>;
7791
7791
  source: zod.ZodEnum<{
7792
- env: "env";
7793
- none: "none";
7794
7792
  "config-dir-escape-hatch": "config-dir-escape-hatch";
7795
7793
  argv: "argv";
7794
+ env: "env";
7796
7795
  "directory-pin": "directory-pin";
7797
7796
  "active-identity-file": "active-identity-file";
7797
+ none: "none";
7798
7798
  }>;
7799
7799
  }, zod_v4_core.$strict>;
7800
7800
  pool: zod.ZodOptional<zod.ZodObject<{
@@ -7872,11 +7872,11 @@ declare function createControlApiRouter(deps: ControlApiDeps): {
7872
7872
  "category-default": "category-default";
7873
7873
  }>;
7874
7874
  category: zod.ZodNullable<zod.ZodEnum<{
7875
+ secret: "secret";
7875
7876
  runtime: "runtime";
7876
7877
  history: "history";
7877
7878
  knowledge: "knowledge";
7878
7879
  settings: "settings";
7879
- secret: "secret";
7880
7880
  }>>;
7881
7881
  rule: zod.ZodOptional<zod.ZodObject<{
7882
7882
  key: zod.ZodString;
@@ -8095,11 +8095,10 @@ declare function createControlApiRouter(deps: ControlApiDeps): {
8095
8095
  "global-config": "global-config";
8096
8096
  "config-profile": "config-profile";
8097
8097
  identity: "identity";
8098
- keychain: "keychain";
8099
8098
  provider: "provider";
8100
- headroom: "headroom";
8101
8099
  frontdoor: "frontdoor";
8102
8100
  pool: "pool";
8101
+ keychain: "keychain";
8103
8102
  "ambient-credential": "ambient-credential";
8104
8103
  "binary-discovery": "binary-discovery";
8105
8104
  "claude-shim": "claude-shim";
@@ -8109,6 +8108,7 @@ declare function createControlApiRouter(deps: ControlApiDeps): {
8109
8108
  "directory-rules": "directory-rules";
8110
8109
  "categories-local": "categories-local";
8111
8110
  "active-identity": "active-identity";
8111
+ headroom: "headroom";
8112
8112
  }>;
8113
8113
  subject: zod.ZodOptional<zod.ZodString>;
8114
8114
  severity: zod.ZodEnum<{
@@ -8301,12 +8301,12 @@ declare function createDoorApiRouter(deps: DoorApiDeps): {
8301
8301
  decision: zod.ZodObject<{
8302
8302
  identity: zod.ZodOptional<zod.ZodString>;
8303
8303
  identitySource: zod.ZodEnum<{
8304
- env: "env";
8305
- none: "none";
8306
8304
  "config-dir-escape-hatch": "config-dir-escape-hatch";
8307
8305
  argv: "argv";
8306
+ env: "env";
8308
8307
  "directory-pin": "directory-pin";
8309
8308
  "active-identity-file": "active-identity-file";
8309
+ none: "none";
8310
8310
  }>;
8311
8311
  pool: zod.ZodOptional<zod.ZodObject<{
8312
8312
  name: zod.ZodString;
@@ -9682,9 +9682,9 @@ declare function createDoorApiRouter(deps: DoorApiDeps): {
9682
9682
  current: zod.ZodString;
9683
9683
  latest: zod.ZodString;
9684
9684
  action: zod.ZodEnum<{
9685
- updated: "updated";
9686
9685
  current: "current";
9687
9686
  available: "available";
9687
+ updated: "updated";
9688
9688
  }>;
9689
9689
  }, zod_v4_core.$strict>, MergedErrorMap<$ErrorMap, TErrorMap>>;
9690
9690
  };
@@ -9883,12 +9883,12 @@ declare function createDoorApiRouter(deps: DoorApiDeps): {
9883
9883
  identity: zod.ZodObject<{
9884
9884
  name: zod.ZodNullable<zod.ZodString>;
9885
9885
  source: zod.ZodEnum<{
9886
- env: "env";
9887
- none: "none";
9888
9886
  "config-dir-escape-hatch": "config-dir-escape-hatch";
9889
9887
  argv: "argv";
9888
+ env: "env";
9890
9889
  "directory-pin": "directory-pin";
9891
9890
  "active-identity-file": "active-identity-file";
9891
+ none: "none";
9892
9892
  }>;
9893
9893
  }, zod_v4_core.$strict>;
9894
9894
  pool: zod.ZodOptional<zod.ZodObject<{
@@ -9966,11 +9966,11 @@ declare function createDoorApiRouter(deps: DoorApiDeps): {
9966
9966
  "category-default": "category-default";
9967
9967
  }>;
9968
9968
  category: zod.ZodNullable<zod.ZodEnum<{
9969
+ secret: "secret";
9969
9970
  runtime: "runtime";
9970
9971
  history: "history";
9971
9972
  knowledge: "knowledge";
9972
9973
  settings: "settings";
9973
- secret: "secret";
9974
9974
  }>>;
9975
9975
  rule: zod.ZodOptional<zod.ZodObject<{
9976
9976
  key: zod.ZodString;
@@ -10189,11 +10189,10 @@ declare function createDoorApiRouter(deps: DoorApiDeps): {
10189
10189
  "global-config": "global-config";
10190
10190
  "config-profile": "config-profile";
10191
10191
  identity: "identity";
10192
- keychain: "keychain";
10193
10192
  provider: "provider";
10194
- headroom: "headroom";
10195
10193
  frontdoor: "frontdoor";
10196
10194
  pool: "pool";
10195
+ keychain: "keychain";
10197
10196
  "ambient-credential": "ambient-credential";
10198
10197
  "binary-discovery": "binary-discovery";
10199
10198
  "claude-shim": "claude-shim";
@@ -10203,6 +10202,7 @@ declare function createDoorApiRouter(deps: DoorApiDeps): {
10203
10202
  "directory-rules": "directory-rules";
10204
10203
  "categories-local": "categories-local";
10205
10204
  "active-identity": "active-identity";
10205
+ headroom: "headroom";
10206
10206
  }>;
10207
10207
  subject: zod.ZodOptional<zod.ZodString>;
10208
10208
  severity: zod.ZodEnum<{
@@ -12035,11 +12035,10 @@ declare const DoctorFindingSchema: z.ZodObject<{
12035
12035
  "global-config": "global-config";
12036
12036
  "config-profile": "config-profile";
12037
12037
  identity: "identity";
12038
- keychain: "keychain";
12039
12038
  provider: "provider";
12040
- headroom: "headroom";
12041
12039
  frontdoor: "frontdoor";
12042
12040
  pool: "pool";
12041
+ keychain: "keychain";
12043
12042
  "ambient-credential": "ambient-credential";
12044
12043
  "binary-discovery": "binary-discovery";
12045
12044
  "claude-shim": "claude-shim";
@@ -12049,6 +12048,7 @@ declare const DoctorFindingSchema: z.ZodObject<{
12049
12048
  "directory-rules": "directory-rules";
12050
12049
  "categories-local": "categories-local";
12051
12050
  "active-identity": "active-identity";
12051
+ headroom: "headroom";
12052
12052
  }>;
12053
12053
  subject: z.ZodOptional<z.ZodString>;
12054
12054
  severity: z.ZodEnum<{
@@ -12066,11 +12066,10 @@ declare const DoctorRunOutputSchema: z.ZodObject<{
12066
12066
  "global-config": "global-config";
12067
12067
  "config-profile": "config-profile";
12068
12068
  identity: "identity";
12069
- keychain: "keychain";
12070
12069
  provider: "provider";
12071
- headroom: "headroom";
12072
12070
  frontdoor: "frontdoor";
12073
12071
  pool: "pool";
12072
+ keychain: "keychain";
12074
12073
  "ambient-credential": "ambient-credential";
12075
12074
  "binary-discovery": "binary-discovery";
12076
12075
  "claude-shim": "claude-shim";
@@ -12080,6 +12079,7 @@ declare const DoctorRunOutputSchema: z.ZodObject<{
12080
12079
  "directory-rules": "directory-rules";
12081
12080
  "categories-local": "categories-local";
12082
12081
  "active-identity": "active-identity";
12082
+ headroom: "headroom";
12083
12083
  }>;
12084
12084
  subject: z.ZodOptional<z.ZodString>;
12085
12085
  severity: z.ZodEnum<{
@@ -12100,9 +12100,9 @@ declare const UpdateCheckOutputSchema: z.ZodObject<{
12100
12100
  current: z.ZodString;
12101
12101
  latest: z.ZodString;
12102
12102
  action: z.ZodEnum<{
12103
- updated: "updated";
12104
12103
  current: "current";
12105
12104
  available: "available";
12105
+ updated: "updated";
12106
12106
  }>;
12107
12107
  }, z.core.$strict>;
12108
12108
  /** The Sign in with ChatGPT login's state as `codex status` reports it: no sign-in yet, signed in (with who, whether the plan scope was granted, and when the access token lapses), or a file that cannot be read. */
@@ -12152,12 +12152,12 @@ declare const LaunchResolveOutputSchema: z.ZodObject<{
12152
12152
  decision: z.ZodObject<{
12153
12153
  identity: z.ZodOptional<z.ZodString>;
12154
12154
  identitySource: z.ZodEnum<{
12155
- env: "env";
12156
- none: "none";
12157
12155
  "config-dir-escape-hatch": "config-dir-escape-hatch";
12158
12156
  argv: "argv";
12157
+ env: "env";
12159
12158
  "directory-pin": "directory-pin";
12160
12159
  "active-identity-file": "active-identity-file";
12160
+ none: "none";
12161
12161
  }>;
12162
12162
  pool: z.ZodOptional<z.ZodObject<{
12163
12163
  name: z.ZodString;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-use",
3
- "version": "10.1.0",
3
+ "version": "11.1.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>",