@kaitranntt/ccs 8.8.1-dev.19 → 8.8.1-dev.20

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.
@@ -12,6 +12,15 @@ export interface ResumeFlagIntent {
12
12
  implicit: boolean;
13
13
  explicitSessionId?: string;
14
14
  }
15
+ export interface ResumeSessionLane {
16
+ kind: 'native' | 'account';
17
+ configDir: string;
18
+ accountName?: string;
19
+ }
20
+ export interface ResumeSessionScanDependencies {
21
+ beforeSessionOpen?: (sessionPath: string) => void;
22
+ }
23
+ export declare function findResumeSessionLanes(sessionId: string, deps?: ResumeSessionScanDependencies): ResumeSessionLane[];
15
24
  export declare function resolveConfiguredPlainCcsResumeLane(): Promise<ResumeLaneSummary>;
16
25
  export declare function resolveRuntimePlainCcsResumeLane(): Promise<ResumeLaneSummary>;
17
26
  export declare function parseResumeFlagIntent(args: string[]): ResumeFlagIntent | null;
@@ -1 +1 @@
1
- {"version":3,"file":"resume-lane-diagnostics.d.ts","sourceRoot":"","sources":["../../src/auth/resume-lane-diagnostics.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGpD,MAAM,MAAM,cAAc,GACtB,QAAQ,GACR,iBAAiB,GACjB,mBAAmB,GACnB,iBAAiB,GACjB,SAAS,CAAC;AAEd,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAkDD,wBAAsB,mCAAmC,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAqBtF;AAED,wBAAsB,gCAAgC,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAYnF;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,gBAAgB,GAAG,IAAI,CAsB7E;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,wBAAgB,oBAAoB,CAAC,IAAI,OAAa,GAAG,MAAM,CAQ9D;AAED,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,WAAW,GAAG,MAAM,EAAE,CAS7E"}
1
+ {"version":3,"file":"resume-lane-diagnostics.d.ts","sourceRoot":"","sources":["../../src/auth/resume-lane-diagnostics.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAIpD,MAAM,MAAM,cAAc,GACtB,QAAQ,GACR,iBAAiB,GACjB,mBAAmB,GACnB,iBAAiB,GACjB,SAAS,CAAC;AAEd,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,6BAA6B;IAC5C,iBAAiB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;CACnD;AAkGD,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,IAAI,GAAE,6BAAkC,GACvC,iBAAiB,EAAE,CA2BrB;AAwCD,wBAAsB,mCAAmC,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAqBtF;AAED,wBAAsB,gCAAgC,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAYnF;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,gBAAgB,GAAG,IAAI,CAsB7E;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,wBAAgB,oBAAoB,CAAC,IAAI,OAAa,GAAG,MAAM,CAQ9D;AAED,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,WAAW,GAAG,MAAM,EAAE,CAS7E"}
@@ -26,14 +26,31 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.getContinuityArtifactNames = exports.createTimestampStamp = exports.getAuthBackupRoot = exports.parseResumeFlagIntent = exports.resolveRuntimePlainCcsResumeLane = exports.resolveConfiguredPlainCcsResumeLane = void 0;
29
+ exports.getContinuityArtifactNames = exports.createTimestampStamp = exports.getAuthBackupRoot = exports.parseResumeFlagIntent = exports.resolveRuntimePlainCcsResumeLane = exports.resolveConfiguredPlainCcsResumeLane = exports.findResumeSessionLanes = void 0;
30
30
  const fs = __importStar(require("fs"));
31
31
  const path = __importStar(require("path"));
32
32
  const claude_config_path_1 = require("../utils/claude-config-path");
33
33
  const instance_manager_1 = __importDefault(require("../management/instance-manager"));
34
34
  const profile_detector_1 = __importDefault(require("./profile-detector"));
35
+ const profile_registry_1 = __importDefault(require("./profile-registry"));
35
36
  const profile_continuity_inheritance_1 = require("./profile-continuity-inheritance");
36
37
  const config_loader_facade_1 = require("../config/config-loader-facade");
38
+ const account_context_1 = require("./account-context");
39
+ const SESSION_ID_PATTERN = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
40
+ function isPathWithin(candidate, root) {
41
+ return candidate === root || candidate.startsWith(`${root}${path.sep}`);
42
+ }
43
+ function hasSameIdentity(before, after) {
44
+ return before.dev === after.dev && before.ino === after.ino;
45
+ }
46
+ function isStableDirectory(directoryPath, before) {
47
+ const after = fs.lstatSync(directoryPath);
48
+ return after.isDirectory() && !after.isSymbolicLink() && hasSameIdentity(before, after);
49
+ }
50
+ function isStableFile(filePath, before) {
51
+ const after = fs.lstatSync(filePath);
52
+ return after.isFile() && !after.isSymbolicLink() && hasSameIdentity(before, after);
53
+ }
37
54
  function countTopLevelProjectDirs(projectsDir) {
38
55
  try {
39
56
  return fs
@@ -44,6 +61,93 @@ function countTopLevelProjectDirs(projectsDir) {
44
61
  return 0;
45
62
  }
46
63
  }
64
+ function laneContainsSession(configDir, sessionId, deps) {
65
+ if (!SESSION_ID_PATTERN.test(sessionId)) {
66
+ return false;
67
+ }
68
+ const projectsDir = path.join(configDir, 'projects');
69
+ try {
70
+ const configStat = fs.lstatSync(configDir);
71
+ if (!configStat.isDirectory() || configStat.isSymbolicLink())
72
+ return false;
73
+ const configRealPath = fs.realpathSync(configDir);
74
+ const projectsStat = fs.lstatSync(projectsDir);
75
+ if (!projectsStat.isDirectory() || projectsStat.isSymbolicLink())
76
+ return false;
77
+ const projectsRealPath = fs.realpathSync(projectsDir);
78
+ if (!isPathWithin(projectsRealPath, configRealPath))
79
+ return false;
80
+ return fs.readdirSync(projectsDir, { withFileTypes: true }).some((projectEntry) => {
81
+ if (!projectEntry.isDirectory() || projectEntry.isSymbolicLink()) {
82
+ return false;
83
+ }
84
+ const projectPath = path.join(projectsDir, projectEntry.name);
85
+ const sessionPath = path.join(projectPath, `${sessionId}.jsonl`);
86
+ let sessionFd;
87
+ try {
88
+ const projectStat = fs.lstatSync(projectPath);
89
+ if (!projectStat.isDirectory() || projectStat.isSymbolicLink())
90
+ return false;
91
+ const projectRealPath = fs.realpathSync(projectPath);
92
+ if (!isPathWithin(projectRealPath, projectsRealPath))
93
+ return false;
94
+ const sessionRealPath = fs.realpathSync(sessionPath);
95
+ if (!isPathWithin(sessionRealPath, projectRealPath))
96
+ return false;
97
+ const sessionStat = fs.lstatSync(sessionPath);
98
+ if (!sessionStat.isFile() || sessionStat.isSymbolicLink())
99
+ return false;
100
+ deps.beforeSessionOpen?.(sessionPath);
101
+ sessionFd = fs.openSync(sessionPath, fs.constants.O_RDONLY | (fs.constants.O_NOFOLLOW ?? 0));
102
+ const openedSessionStat = fs.fstatSync(sessionFd);
103
+ if (!openedSessionStat.isFile() || !hasSameIdentity(sessionStat, openedSessionStat)) {
104
+ return false;
105
+ }
106
+ return (isStableDirectory(configDir, configStat) &&
107
+ isStableDirectory(projectsDir, projectsStat) &&
108
+ isStableDirectory(projectPath, projectStat) &&
109
+ isStableFile(sessionPath, sessionStat) &&
110
+ fs.realpathSync(configDir) === configRealPath &&
111
+ fs.realpathSync(projectsDir) === projectsRealPath &&
112
+ fs.realpathSync(projectPath) === projectRealPath &&
113
+ fs.realpathSync(sessionPath) === sessionRealPath);
114
+ }
115
+ catch {
116
+ return false;
117
+ }
118
+ finally {
119
+ if (sessionFd !== undefined)
120
+ fs.closeSync(sessionFd);
121
+ }
122
+ });
123
+ }
124
+ catch {
125
+ return false;
126
+ }
127
+ }
128
+ function findResumeSessionLanes(sessionId, deps = {}) {
129
+ if (!SESSION_ID_PATTERN.test(sessionId)) {
130
+ return [];
131
+ }
132
+ const instanceMgr = new instance_manager_1.default();
133
+ const profileRegistry = new profile_registry_1.default();
134
+ const lanes = [];
135
+ const nativeConfigDir = (0, claude_config_path_1.getDefaultClaudeConfigDir)();
136
+ if (laneContainsSession(nativeConfigDir, sessionId, deps)) {
137
+ lanes.push({ kind: 'native', configDir: nativeConfigDir });
138
+ }
139
+ const accountNames = Object.entries(profileRegistry.getAllProfilesMerged())
140
+ .filter(([accountName, profile]) => profile.type === 'account' && (0, account_context_1.isValidAccountProfileName)(accountName))
141
+ .map(([accountName]) => accountName);
142
+ for (const accountName of accountNames) {
143
+ const configDir = instanceMgr.getInstancePath(accountName);
144
+ if (laneContainsSession(configDir, sessionId, deps)) {
145
+ lanes.push({ kind: 'account', configDir, accountName });
146
+ }
147
+ }
148
+ return lanes;
149
+ }
150
+ exports.findResumeSessionLanes = findResumeSessionLanes;
47
151
  function resolveNativeLaneSummary(kind = 'native', profileName) {
48
152
  const configDir = (0, claude_config_path_1.getDefaultClaudeConfigDir)();
49
153
  const label = kind === 'profile-default' && profileName
@@ -1 +1 @@
1
- {"version":3,"file":"resume-lane-diagnostics.js","sourceRoot":"","sources":["../../src/auth/resume-lane-diagnostics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resume-lane-diagnostics.js","sourceRoot":"","sources":["../../src/auth/resume-lane-diagnostics.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,14 @@
1
- import { type ResumeLaneSummary } from './resume-lane-diagnostics';
1
+ /// <reference types="node" />
2
+ /// <reference types="bun-types" />
3
+ import { type Shell } from '../codex-auth/shell-detect';
4
+ import { type ResumeSessionLane, type ResumeLaneSummary } from './resume-lane-diagnostics';
2
5
  interface ResumeLaneWarningDependencies {
3
6
  resolvePlainLane?: () => Promise<ResumeLaneSummary>;
7
+ findSessionLanes?: (sessionId: string) => ResumeSessionLane[];
8
+ shell?: Shell;
9
+ env?: NodeJS.ProcessEnv;
10
+ platform?: string;
11
+ parentProcessName?: string;
4
12
  log?: (message: string) => void;
5
13
  debug?: boolean;
6
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"resume-lane-warning.d.ts","sourceRoot":"","sources":["../../src/auth/resume-lane-warning.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,iBAAiB,EACvB,MAAM,2BAA2B,CAAC;AAEnC,UAAU,6BAA6B;IACrC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACpD,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAsB,gCAAgC,CACpD,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,GAAE,6BAAkC,GACvC,OAAO,CAAC,IAAI,CAAC,CA4Cf"}
1
+ {"version":3,"file":"resume-lane-warning.d.ts","sourceRoot":"","sources":["../../src/auth/resume-lane-warning.ts"],"names":[],"mappings":";;AAEA,OAAO,EAA0C,KAAK,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAGhG,OAAO,EAIL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACvB,MAAM,2BAA2B,CAAC;AAEnC,UAAU,6BAA6B;IACrC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACpD,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,iBAAiB,EAAE,CAAC;IAC9D,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAwCD,wBAAsB,gCAAgC,CACpD,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,GAAE,6BAAkC,GACvC,OAAO,CAAC,IAAI,CAAC,CA4Gf"}
@@ -26,7 +26,35 @@ Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.maybeWarnAboutResumeLaneMismatch = void 0;
27
27
  const path = __importStar(require("path"));
28
28
  const ui_1 = require("../utils/ui");
29
+ const shell_detect_1 = require("../codex-auth/shell-detect");
30
+ const shell_executor_1 = require("../utils/shell-executor");
31
+ const account_context_1 = require("./account-context");
29
32
  const resume_lane_diagnostics_1 = require("./resume-lane-diagnostics");
33
+ function joinShellStatements(shell, statements) {
34
+ if (shell === 'cmd')
35
+ return statements.join(' && ');
36
+ if (shell === 'fish')
37
+ return statements.join(' ');
38
+ return statements.join('; ');
39
+ }
40
+ function buildExplicitNativeResumeCommand(configDir, sessionId, shell) {
41
+ const statements = shell_executor_1.ANTHROPIC_ROUTING_ENV_KEYS.map((key) => (0, shell_detect_1.formatUnset)(shell, key));
42
+ statements.push((0, shell_detect_1.formatExport)(shell, 'CLAUDE_CONFIG_DIR', configDir));
43
+ statements.push(`claude --resume ${sessionId}`);
44
+ return joinShellStatements(shell, statements);
45
+ }
46
+ function buildResumeCommand(sourceLane, plainLane, sessionId, shell) {
47
+ if (sourceLane.kind === 'account') {
48
+ if (!sourceLane.accountName || !(0, account_context_1.isValidAccountProfileName)(sourceLane.accountName))
49
+ return null;
50
+ return `ccs ${sourceLane.accountName} --resume ${sessionId}`;
51
+ }
52
+ if (plainLane.kind === 'native' &&
53
+ path.resolve(sourceLane.configDir) === path.resolve(plainLane.configDir)) {
54
+ return `ccs --resume ${sessionId}`;
55
+ }
56
+ return buildExplicitNativeResumeCommand(sourceLane.configDir, sessionId, shell);
57
+ }
30
58
  async function maybeWarnAboutResumeLaneMismatch(profileName, accountConfigDir, args, deps = {}) {
31
59
  const resumeIntent = (0, resume_lane_diagnostics_1.parseResumeFlagIntent)(args);
32
60
  if (!resumeIntent) {
@@ -34,19 +62,58 @@ async function maybeWarnAboutResumeLaneMismatch(profileName, accountConfigDir, a
34
62
  }
35
63
  const log = deps.log ?? console.error;
36
64
  try {
65
+ const sessionLanes = resumeIntent.explicitSessionId
66
+ ? (deps.findSessionLanes ?? resume_lane_diagnostics_1.findResumeSessionLanes)(resumeIntent.explicitSessionId)
67
+ : [];
68
+ if (sessionLanes.some((lane) => path.resolve(lane.configDir) === path.resolve(accountConfigDir))) {
69
+ return;
70
+ }
37
71
  const plainLane = await (deps.resolvePlainLane ?? resume_lane_diagnostics_1.resolveRuntimePlainCcsResumeLane)();
38
- if (path.resolve(plainLane.configDir) === path.resolve(accountConfigDir)) {
72
+ if (sessionLanes.length === 0 &&
73
+ path.resolve(plainLane.configDir) === path.resolve(accountConfigDir)) {
39
74
  return;
40
75
  }
41
76
  log((0, ui_1.warn)(`Resume for account "${profileName}" will search that account lane, not the current plain ccs lane.`));
42
77
  log((0, ui_1.info)(` Account lane: ${accountConfigDir}`));
43
78
  log((0, ui_1.info)(` Plain ccs lane: ${plainLane.label} (${plainLane.configDir})`));
79
+ const sourceLanes = sessionLanes.filter((lane) => path.resolve(lane.configDir) !== path.resolve(accountConfigDir));
80
+ const shell = deps.shell ??
81
+ (0, shell_detect_1.detectShell)(deps.env ?? process.env, deps.platform ?? process.platform, deps.parentProcessName);
44
82
  if (resumeIntent.explicitSessionId) {
45
- log((0, ui_1.info)(' This explicit session ID may have been created in a different lane, so Claude may not find it here.'));
83
+ if (sourceLanes.length === 1) {
84
+ const sourceLane = sourceLanes[0];
85
+ const command = buildResumeCommand(sourceLane, plainLane, resumeIntent.explicitSessionId, shell);
86
+ if (command) {
87
+ log((0, ui_1.info)(` Resume from the lane that owns this session: ${command}`));
88
+ }
89
+ else {
90
+ log((0, ui_1.warn)(' Session owner has an unsafe account name; no executable command emitted.'));
91
+ }
92
+ }
93
+ else if (sourceLanes.length > 1) {
94
+ log((0, ui_1.info)(' This session exists in multiple lanes; choose one without merging history:'));
95
+ for (const sourceLane of sourceLanes) {
96
+ const command = buildResumeCommand(sourceLane, plainLane, resumeIntent.explicitSessionId, shell);
97
+ if (command)
98
+ log((0, ui_1.info)(` ${command}`));
99
+ }
100
+ }
101
+ else {
102
+ log((0, ui_1.info)(' This explicit session ID may have been created in a different lane, so Claude may not find it here.'));
103
+ }
104
+ }
105
+ if (sourceLanes.length === 0) {
106
+ log((0, ui_1.info)(' Recover the original lane first: ccs -r'));
107
+ log((0, ui_1.info)(' Back it up before changing setup: ccs auth backup default'));
108
+ if ((0, account_context_1.isValidAccountProfileName)(profileName)) {
109
+ log((0, ui_1.info)(` For future work, align plain ccs with this account: ccs auth default ${profileName}`));
110
+ }
111
+ }
112
+ else if (sourceLanes.length === 1 &&
113
+ sourceLanes[0].accountName &&
114
+ (0, account_context_1.isValidAccountProfileName)(sourceLanes[0].accountName)) {
115
+ log((0, ui_1.info)(` Back up that lane before changing setup: ccs auth backup ${sourceLanes[0].accountName}`));
46
116
  }
47
- log((0, ui_1.info)(' Recover the original lane first: ccs -r'));
48
- log((0, ui_1.info)(' Back it up before changing setup: ccs auth backup default'));
49
- log((0, ui_1.info)(` For future work, align plain ccs with this account: ccs auth default ${profileName}`));
50
117
  log('');
51
118
  }
52
119
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"resume-lane-warning.js","sourceRoot":"","sources":["../../src/auth/resume-lane-warning.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6B;AAC7B,oCAAyC;AACzC,uEAImC;AAQ5B,KAAK,UAAU,gCAAgC,CACpD,WAAmB,EACnB,gBAAwB,EACxB,IAAc,EACd,OAAsC,EAAE;IAExC,MAAM,YAAY,GAAG,IAAA,+CAAqB,EAAC,IAAI,CAAC,CAAC;IACjD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO;IACT,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC;IAEtC,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,IAAI,0DAAgC,CAAC,EAAE,CAAC;QACtF,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACzE,OAAO;QACT,CAAC;QAED,GAAG,CACD,IAAA,SAAI,EACF,uBAAuB,WAAW,kEAAkE,CACrG,CACF,CAAC;QACF,GAAG,CAAC,IAAA,SAAI,EAAC,mBAAmB,gBAAgB,EAAE,CAAC,CAAC,CAAC;QACjD,GAAG,CAAC,IAAA,SAAI,EAAC,qBAAqB,SAAS,CAAC,KAAK,KAAK,SAAS,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QAC3E,IAAI,YAAY,CAAC,iBAAiB,EAAE,CAAC;YACnC,GAAG,CACD,IAAA,SAAI,EACF,uGAAuG,CACxG,CACF,CAAC;QACJ,CAAC;QACD,GAAG,CAAC,IAAA,SAAI,EAAC,2CAA2C,CAAC,CAAC,CAAC;QACvD,GAAG,CAAC,IAAA,SAAI,EAAC,6DAA6D,CAAC,CAAC,CAAC;QACzE,GAAG,CACD,IAAA,SAAI,EAAC,0EAA0E,WAAW,EAAE,CAAC,CAC9F,CAAC;QACF,GAAG,CAAC,EAAE,CAAC,CAAC;IACV,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,GAAG,CACD,IAAA,SAAI,EACF,4FAA4F,CAC7F,CACF,CAAC;QACF,IAAI,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACjD,GAAG,CAAC,IAAA,SAAI,EAAC,uBAAwB,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;AACH,CAAC;AAjDD,4EAiDC"}
1
+ {"version":3,"file":"resume-lane-warning.js","sourceRoot":"","sources":["../../src/auth/resume-lane-warning.ts"],"names":[],"mappings":"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"}
@@ -16,4 +16,6 @@ export declare function detectShell(env?: NodeJS.ProcessEnv, platform?: string,
16
16
  * Used by use-command to emit eval-safe lines.
17
17
  */
18
18
  export declare function formatExport(shell: Shell, key: string, value: string): string;
19
+ /** Format removal of one environment variable for the target shell. */
20
+ export declare function formatUnset(shell: Shell, key: string): string;
19
21
  //# sourceMappingURL=shell-detect.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shell-detect.d.ts","sourceRoot":"","sources":["../../src/codex-auth/shell-detect.ts"],"names":[],"mappings":"AAAA;;;GAGG;;;AAEH,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;AAE7D;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,QAAQ,GAAE,MAAyB,EACnC,iBAAiB,CAAC,EAAE,MAAM,GACzB,KAAK,CAaP;AAmDD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAY7E"}
1
+ {"version":3,"file":"shell-detect.d.ts","sourceRoot":"","sources":["../../src/codex-auth/shell-detect.ts"],"names":[],"mappings":"AAAA;;;GAGG;;;AAEH,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;AAE7D;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,QAAQ,GAAE,MAAyB,EACnC,iBAAiB,CAAC,EAAE,MAAM,GACzB,KAAK,CAaP;AAmDD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAY7E;AAED,uEAAuE;AACvE,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAW7D"}
@@ -4,7 +4,7 @@
4
4
  * Determines current shell to emit correct eval-safe export syntax.
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.formatExport = exports.detectShell = void 0;
7
+ exports.formatUnset = exports.formatExport = exports.detectShell = void 0;
8
8
  /**
9
9
  * Detect current shell from environment.
10
10
  * On Windows: inspect explicit shell executable hints, else default to cmd.
@@ -88,4 +88,18 @@ function formatExport(shell, key, value) {
88
88
  }
89
89
  }
90
90
  exports.formatExport = formatExport;
91
+ /** Format removal of one environment variable for the target shell. */
92
+ function formatUnset(shell, key) {
93
+ switch (shell) {
94
+ case 'fish':
95
+ return `set -e ${key};`;
96
+ case 'pwsh':
97
+ return `Remove-Item Env:${key} -ErrorAction SilentlyContinue`;
98
+ case 'cmd':
99
+ return `set "${key}="`;
100
+ default:
101
+ return `unset ${key}`;
102
+ }
103
+ }
104
+ exports.formatUnset = formatUnset;
91
105
  //# sourceMappingURL=shell-detect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shell-detect.js","sourceRoot":"","sources":["../../src/codex-auth/shell-detect.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAIH;;;;GAIG;AACH,SAAgB,WAAW,CACzB,MAAyB,OAAO,CAAC,GAAG,EACpC,WAAmB,OAAO,CAAC,QAAQ,EACnC,iBAA0B;IAE1B,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,OAAO,CACL,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC;YAC9B,mBAAmB,CAAC,iBAAiB,CAAC;YACtC,mBAAmB,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC;YAC/C,KAAK,CACN,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC3C,IAAI,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,MAAM,CAAC;IACxC,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IACtC,OAAO,MAAM,CAAC,CAAC,kCAAkC;AACnD,CAAC;AAjBD,kCAiBC;AAED,SAAS,mBAAmB,CAAC,KAAyB;IACpD,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,IAAI,GAAG,KAAK;SACf,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;SAC3B,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,EAAE;QACN,EAAE,WAAW,EAAE;SACd,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;IAExC,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK,CAAC;QACX,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK;YACR,OAAO,IAAI,CAAC;QACd,KAAK,MAAM,CAAC;QACZ,KAAK,YAAY;YACf,OAAO,MAAM,CAAC;QAChB;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,gBAAgB,CAAC,KAAa;IACrC,OAAO,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,GAAG,CAAC;AAClD,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,KAAa;IACpC,OAAO,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC;AACxF,CAAC;AAED;;;GAGG;AACH,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACjG,CAAC;AAED;;;GAGG;AACH,SAAgB,YAAY,CAAC,KAAY,EAAE,GAAW,EAAE,KAAa;IACnE,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,MAAM;YACT,OAAO,WAAW,GAAG,IAAI,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC;QACtD,KAAK,MAAM;YACT,OAAO,QAAQ,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QACnD,KAAK,KAAK;YACR,OAAO,QAAQ,GAAG,IAAI,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC;QAC9C;YACE,aAAa;YACb,OAAO,UAAU,GAAG,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;IACtD,CAAC;AACH,CAAC;AAZD,oCAYC"}
1
+ {"version":3,"file":"shell-detect.js","sourceRoot":"","sources":["../../src/codex-auth/shell-detect.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kaitranntt/ccs",
3
- "version": "8.8.1-dev.19",
3
+ "version": "8.8.1-dev.20",
4
4
  "description": "Claude Codex Switch - Instant profile switching between Claude, GLM, Kimi, and more",
5
5
  "keywords": [
6
6
  "cli",