oh-my-codex 0.18.8 → 0.18.9

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.
Files changed (88) hide show
  1. package/Cargo.lock +12 -12
  2. package/Cargo.toml +1 -1
  3. package/dist/autopilot/__tests__/fsm.test.js +3 -0
  4. package/dist/autopilot/__tests__/fsm.test.js.map +1 -1
  5. package/dist/autopilot/fsm.js +2 -2
  6. package/dist/autopilot/fsm.js.map +1 -1
  7. package/dist/cli/__tests__/auth.test.js +4 -2
  8. package/dist/cli/__tests__/auth.test.js.map +1 -1
  9. package/dist/cli/__tests__/codex-plugin-layout.test.js +1 -1
  10. package/dist/cli/__tests__/codex-plugin-layout.test.js.map +1 -1
  11. package/dist/cli/__tests__/index.test.js +38 -2
  12. package/dist/cli/__tests__/index.test.js.map +1 -1
  13. package/dist/cli/__tests__/package-bin-contract.test.js +20 -4
  14. package/dist/cli/__tests__/package-bin-contract.test.js.map +1 -1
  15. package/dist/cli/__tests__/question.test.js +26 -9
  16. package/dist/cli/__tests__/question.test.js.map +1 -1
  17. package/dist/cli/__tests__/resume.test.js +50 -1
  18. package/dist/cli/__tests__/resume.test.js.map +1 -1
  19. package/dist/cli/__tests__/update.test.js +214 -17
  20. package/dist/cli/__tests__/update.test.js.map +1 -1
  21. package/dist/cli/__tests__/windows-popup-loop-contract.test.js +1 -1
  22. package/dist/cli/index.d.ts +11 -3
  23. package/dist/cli/index.d.ts.map +1 -1
  24. package/dist/cli/index.js +35 -13
  25. package/dist/cli/index.js.map +1 -1
  26. package/dist/cli/update.d.ts +20 -3
  27. package/dist/cli/update.d.ts.map +1 -1
  28. package/dist/cli/update.js +265 -23
  29. package/dist/cli/update.js.map +1 -1
  30. package/dist/cli/version.d.ts.map +1 -1
  31. package/dist/cli/version.js +5 -9
  32. package/dist/cli/version.js.map +1 -1
  33. package/dist/compat/__tests__/doctor-contract.test.js +12 -1
  34. package/dist/compat/__tests__/doctor-contract.test.js.map +1 -1
  35. package/dist/hooks/__tests__/code-review-skill-contract.test.js +7 -3
  36. package/dist/hooks/__tests__/code-review-skill-contract.test.js.map +1 -1
  37. package/dist/hooks/__tests__/deep-interview-contract.test.js +30 -1
  38. package/dist/hooks/__tests__/deep-interview-contract.test.js.map +1 -1
  39. package/dist/hud/__tests__/reconcile.test.js +121 -0
  40. package/dist/hud/__tests__/reconcile.test.js.map +1 -1
  41. package/dist/hud/__tests__/state.test.js +28 -0
  42. package/dist/hud/__tests__/state.test.js.map +1 -1
  43. package/dist/hud/state.d.ts.map +1 -1
  44. package/dist/hud/state.js +4 -18
  45. package/dist/hud/state.js.map +1 -1
  46. package/dist/question/__tests__/renderer.test.js +566 -1
  47. package/dist/question/__tests__/renderer.test.js.map +1 -1
  48. package/dist/question/renderer.d.ts +9 -1
  49. package/dist/question/renderer.d.ts.map +1 -1
  50. package/dist/question/renderer.js +246 -70
  51. package/dist/question/renderer.js.map +1 -1
  52. package/dist/scripts/__tests__/codex-native-hook.test.js +154 -0
  53. package/dist/scripts/__tests__/codex-native-hook.test.js.map +1 -1
  54. package/dist/scripts/codex-native-hook.d.ts.map +1 -1
  55. package/dist/scripts/codex-native-hook.js +20 -9
  56. package/dist/scripts/codex-native-hook.js.map +1 -1
  57. package/dist/utils/__tests__/platform-command.test.js +16 -1
  58. package/dist/utils/__tests__/platform-command.test.js.map +1 -1
  59. package/dist/utils/__tests__/version.test.d.ts +2 -0
  60. package/dist/utils/__tests__/version.test.d.ts.map +1 -0
  61. package/dist/utils/__tests__/version.test.js +51 -0
  62. package/dist/utils/__tests__/version.test.js.map +1 -0
  63. package/dist/utils/paths.d.ts +8 -1
  64. package/dist/utils/paths.d.ts.map +1 -1
  65. package/dist/utils/paths.js +16 -4
  66. package/dist/utils/paths.js.map +1 -1
  67. package/dist/utils/platform-command.d.ts +9 -0
  68. package/dist/utils/platform-command.d.ts.map +1 -1
  69. package/dist/utils/platform-command.js +15 -0
  70. package/dist/utils/platform-command.js.map +1 -1
  71. package/dist/utils/version.d.ts +7 -0
  72. package/dist/utils/version.d.ts.map +1 -0
  73. package/dist/utils/version.js +67 -0
  74. package/dist/utils/version.js.map +1 -0
  75. package/dist/verification/__tests__/ci-rust-gates.test.js +8 -0
  76. package/dist/verification/__tests__/ci-rust-gates.test.js.map +1 -1
  77. package/dist/verification/__tests__/dev-merge-issue-close-workflow.test.js +16 -2
  78. package/dist/verification/__tests__/dev-merge-issue-close-workflow.test.js.map +1 -1
  79. package/package.json +4 -3
  80. package/plugins/oh-my-codex/.codex-plugin/plugin.json +1 -1
  81. package/plugins/oh-my-codex/skills/code-review/SKILL.md +2 -2
  82. package/plugins/oh-my-codex/skills/deep-interview/SKILL.md +51 -11
  83. package/skills/code-review/SKILL.md +2 -2
  84. package/skills/deep-interview/SKILL.md +51 -11
  85. package/src/scripts/__tests__/codex-native-hook.test.ts +175 -0
  86. package/src/scripts/codex-native-hook.ts +19 -7
  87. package/src/scripts/prepare-build.js +83 -0
  88. package/src/scripts/postinstall-bootstrap.js +0 -23
@@ -13,6 +13,9 @@ export interface UpdateState {
13
13
  export interface UserInstallStamp {
14
14
  installed_version: string;
15
15
  setup_completed_version?: string;
16
+ install_channel?: UpdateChannel;
17
+ install_source?: string;
18
+ install_revision?: string;
16
19
  updated_at: string;
17
20
  }
18
21
  export interface UpdateExecutionResult {
@@ -20,9 +23,15 @@ export interface UpdateExecutionResult {
20
23
  currentVersion: string | null;
21
24
  latestVersion: string | null;
22
25
  }
26
+ export type UpdateChannel = 'stable' | 'dev';
27
+ export interface UpdateChannelConfig {
28
+ channel: UpdateChannel;
29
+ installSource: string;
30
+ }
23
31
  type RunGlobalUpdateResult = {
24
32
  ok: boolean;
25
33
  stderr: string;
34
+ revision?: string | null;
26
35
  };
27
36
  type RunSetupRefreshResult = {
28
37
  ok: boolean;
@@ -36,13 +45,14 @@ type RunDeferredUpdateResult = {
36
45
  type SpawnSyncLike = typeof spawnSync;
37
46
  type SpawnLike = typeof spawn;
38
47
  export type AutoUpdateMode = 'disabled' | 'prompt' | 'defer';
48
+ export declare function resolveUpdateChannelConfig(channel?: UpdateChannel): UpdateChannelConfig;
39
49
  export declare function resolveAutoUpdateMode(value?: string | undefined): AutoUpdateMode;
40
50
  export declare function isNewerVersion(current: string, latest: string): boolean;
41
51
  export declare function shouldCheckForUpdates(nowMs: number, state: UpdateState | null, intervalMs?: number): boolean;
42
52
  declare function writeUpdateState(cwd: string, state: UpdateState): Promise<void>;
43
53
  declare function fetchLatestVersion(timeoutMs?: number): Promise<string | null>;
44
54
  declare function getCurrentVersion(): Promise<string | null>;
45
- declare function runGlobalUpdate(): RunGlobalUpdateResult;
55
+ export declare function runGlobalUpdate(installSourceOrSpawnProcess?: string | SpawnSyncLike, spawnProcessOrPlatform?: SpawnSyncLike | NodeJS.Platform, platform?: NodeJS.Platform): RunGlobalUpdateResult;
46
56
  export declare function resolveSetupRefreshArgs(cwd: string): string[];
47
57
  export declare function formatDeferredSetupCommand(platform: NodeJS.Platform, command: string, args: string[]): string;
48
58
  export declare function runDeferredGlobalUpdate(cwd: string, spawnProcess?: SpawnLike, platform?: NodeJS.Platform, parentPid?: number): RunDeferredUpdateResult;
@@ -51,8 +61,10 @@ interface UpdateDependencies {
51
61
  askYesNo: typeof askYesNo;
52
62
  fetchLatestVersion: typeof fetchLatestVersion;
53
63
  getCurrentVersion: typeof getCurrentVersion;
64
+ getInstalledVersionAfterUpdate: typeof getInstalledVersionAfterUpdate;
65
+ getInstalledRevisionAfterUpdate: typeof getInstalledRevisionAfterUpdate;
54
66
  readUserInstallStamp: typeof readUserInstallStamp;
55
- runGlobalUpdate: typeof runGlobalUpdate;
67
+ runGlobalUpdate: (installSource: string) => RunGlobalUpdateResult;
56
68
  runDeferredGlobalUpdate: typeof runDeferredGlobalUpdate;
57
69
  runSetupRefresh: (cwd: string) => Promise<RunSetupRefreshResult>;
58
70
  writeUpdateState: typeof writeUpdateState;
@@ -60,9 +72,14 @@ interface UpdateDependencies {
60
72
  export declare function readUserInstallStamp(path?: string): Promise<UserInstallStamp | null>;
61
73
  export declare function writeUserInstallStamp(stamp: UserInstallStamp, path?: string): Promise<void>;
62
74
  export declare function isInstallVersionBump(currentVersion: string | null | undefined, stamp: UserInstallStamp | null): boolean;
75
+ export declare function resolveGlobalInstallRoot(spawnProcess?: SpawnSyncLike, platform?: NodeJS.Platform): string | null;
76
+ declare function getInstalledVersionAfterUpdate(): Promise<string | null>;
77
+ declare function getInstalledRevisionAfterUpdate(): Promise<string | null>;
63
78
  export declare function resolveInstalledCliEntry(globalInstallRoot: string): Promise<string | null>;
64
79
  export declare function spawnInstalledSetupRefresh(cliEntry: string, cwd: string, spawnProcess?: SpawnSyncLike): RunSetupRefreshResult;
65
- export declare function runImmediateUpdate(cwd?: string, dependencies?: Partial<UpdateDependencies>): Promise<UpdateExecutionResult>;
80
+ export declare function runImmediateUpdate(cwd?: string, dependencies?: Partial<UpdateDependencies>, options?: {
81
+ channel?: UpdateChannel;
82
+ }): Promise<UpdateExecutionResult>;
66
83
  export declare function maybeCheckAndPromptUpdate(cwd: string, dependencies?: Partial<UpdateDependencies>): Promise<void>;
67
84
  export {};
68
85
  //# sourceMappingURL=update.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/cli/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/cli/update.ts"],"names":[],"mappings":"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"}
@@ -6,8 +6,9 @@
6
6
  * launch-time cadence so a user request always checks npm immediately.
7
7
  */
8
8
  import { readFile, writeFile, mkdir } from 'fs/promises';
9
- import { appendFileSync, existsSync, mkdirSync } from 'fs';
9
+ import { appendFileSync, existsSync, mkdirSync, mkdtempSync, rmSync } from 'fs';
10
10
  import { dirname, join } from 'path';
11
+ import { tmpdir } from 'os';
11
12
  import { spawn, spawnSync } from 'child_process';
12
13
  import { createInterface } from 'readline/promises';
13
14
  import { getPackageRoot } from '../utils/package.js';
@@ -15,6 +16,17 @@ import { omxUserInstallStampPath } from '../utils/paths.js';
15
16
  import { readPersistedSetupPreferencesSync } from './setup-preferences.js';
16
17
  const PACKAGE_NAME = 'oh-my-codex';
17
18
  const CHECK_INTERVAL_MS = 12 * 60 * 60 * 1000; // 12h
19
+ const STABLE_INSTALL_SOURCE = `${PACKAGE_NAME}@latest`;
20
+ const DEV_INSTALL_SOURCE = 'github:Yeachan-Heo/oh-my-codex#dev';
21
+ const DEV_REPOSITORY_URL = 'https://github.com/Yeachan-Heo/oh-my-codex.git';
22
+ const DEV_REPOSITORY_BRANCH = 'dev';
23
+ const DEV_UPDATE_TIMEOUT_MS = 300000;
24
+ export function resolveUpdateChannelConfig(channel = 'stable') {
25
+ if (channel === 'dev') {
26
+ return { channel: 'dev', installSource: DEV_INSTALL_SOURCE };
27
+ }
28
+ return { channel: 'stable', installSource: STABLE_INSTALL_SOURCE };
29
+ }
18
30
  export function resolveAutoUpdateMode(value = process.env.OMX_AUTO_UPDATE) {
19
31
  const normalized = (value ?? '').trim().toLowerCase();
20
32
  if (!normalized)
@@ -99,18 +111,166 @@ async function getCurrentVersion() {
99
111
  return null;
100
112
  }
101
113
  }
102
- function runGlobalUpdate() {
103
- const result = spawnSync('npm', ['install', '-g', `${PACKAGE_NAME}@latest`], {
114
+ function isEnoentSpawnError(error) {
115
+ return Boolean(error &&
116
+ typeof error === 'object' &&
117
+ 'code' in error &&
118
+ error.code === 'ENOENT');
119
+ }
120
+ function spawnNpmSync(args, options, spawnProcess = spawnSync, platform = process.platform) {
121
+ const result = spawnProcess('npm', args, options);
122
+ if (platform === 'win32' && isEnoentSpawnError(result.error)) {
123
+ return spawnProcess('npm.cmd', args, options);
124
+ }
125
+ return result;
126
+ }
127
+ function commandFailure(stderr, status, label) {
128
+ const details = String(stderr || '').trim();
129
+ return {
130
+ ok: false,
131
+ stderr: details || `${label} exited ${typeof status === 'number' ? status : 'without a status'}`,
132
+ };
133
+ }
134
+ function runDevGlobalUpdate(spawnProcess = spawnSync, platform = process.platform) {
135
+ const tempRoot = mkdtempSync(join(tmpdir(), 'omx-dev-update-'));
136
+ const checkoutDir = join(tempRoot, 'checkout');
137
+ try {
138
+ const cloneResult = spawnProcess('git', ['clone', '--depth', '1', '--branch', DEV_REPOSITORY_BRANCH, DEV_REPOSITORY_URL, checkoutDir], {
139
+ encoding: 'utf-8',
140
+ stdio: ['ignore', 'pipe', 'pipe'],
141
+ timeout: DEV_UPDATE_TIMEOUT_MS,
142
+ windowsHide: true,
143
+ });
144
+ if (cloneResult.error)
145
+ return { ok: false, stderr: cloneResult.error.message };
146
+ if (cloneResult.status !== 0) {
147
+ return commandFailure(cloneResult.stderr, cloneResult.status, 'git clone');
148
+ }
149
+ const revisionResult = spawnProcess('git', ['rev-parse', 'HEAD'], {
150
+ cwd: checkoutDir,
151
+ encoding: 'utf-8',
152
+ stdio: ['ignore', 'pipe', 'pipe'],
153
+ timeout: 15000,
154
+ windowsHide: true,
155
+ });
156
+ const clonedRevision = revisionResult.status === 0
157
+ ? String(revisionResult.stdout || '').trim()
158
+ : null;
159
+ const installRevision = /^[0-9a-f]{7,40}$/i.test(clonedRevision ?? '')
160
+ ? String(clonedRevision).slice(0, 12)
161
+ : null;
162
+ const installResult = spawnNpmSync([
163
+ 'install',
164
+ '--global=false',
165
+ '--location=project',
166
+ '--include=dev',
167
+ '--ignore-scripts',
168
+ '--no-audit',
169
+ '--no-progress',
170
+ ], {
171
+ cwd: checkoutDir,
172
+ encoding: 'utf-8',
173
+ stdio: ['ignore', 'pipe', 'pipe'],
174
+ timeout: DEV_UPDATE_TIMEOUT_MS,
175
+ windowsHide: true,
176
+ env: { ...process.env, npm_config_global: 'false', npm_config_location: 'project' },
177
+ }, spawnProcess, platform);
178
+ if (installResult.error)
179
+ return { ok: false, stderr: installResult.error.message };
180
+ if (installResult.status !== 0) {
181
+ return commandFailure(installResult.stderr, installResult.status, 'npm install --include=dev');
182
+ }
183
+ const prepackResult = spawnNpmSync(['run', 'prepack'], {
184
+ cwd: checkoutDir,
185
+ encoding: 'utf-8',
186
+ stdio: ['ignore', 'pipe', 'pipe'],
187
+ timeout: DEV_UPDATE_TIMEOUT_MS,
188
+ windowsHide: true,
189
+ }, spawnProcess, platform);
190
+ if (prepackResult.error)
191
+ return { ok: false, stderr: prepackResult.error.message };
192
+ if (prepackResult.status !== 0) {
193
+ return commandFailure(prepackResult.stderr, prepackResult.status, 'npm run prepack');
194
+ }
195
+ const packResult = spawnNpmSync(['pack', '--ignore-scripts', '--json'], {
196
+ cwd: checkoutDir,
197
+ encoding: 'utf-8',
198
+ stdio: ['ignore', 'pipe', 'pipe'],
199
+ timeout: DEV_UPDATE_TIMEOUT_MS,
200
+ windowsHide: true,
201
+ }, spawnProcess, platform);
202
+ if (packResult.error)
203
+ return { ok: false, stderr: packResult.error.message };
204
+ if (packResult.status !== 0) {
205
+ return commandFailure(packResult.stderr, packResult.status, 'npm pack');
206
+ }
207
+ let tarballPath = null;
208
+ try {
209
+ const packed = JSON.parse(String(packResult.stdout || '[]'));
210
+ const filename = packed[0]?.filename;
211
+ if (typeof filename === 'string' && filename.trim() !== '') {
212
+ tarballPath = join(checkoutDir, filename);
213
+ }
214
+ }
215
+ catch {
216
+ tarballPath = null;
217
+ }
218
+ if (!tarballPath || !existsSync(tarballPath)) {
219
+ return { ok: false, stderr: 'npm pack did not produce an installable tarball.' };
220
+ }
221
+ const globalInstallResult = spawnNpmSync(['install', '-g', tarballPath], {
222
+ encoding: 'utf-8',
223
+ stdio: ['ignore', 'pipe', 'pipe'],
224
+ timeout: DEV_UPDATE_TIMEOUT_MS,
225
+ windowsHide: true,
226
+ }, spawnProcess, platform);
227
+ if (globalInstallResult.error) {
228
+ return { ok: false, stderr: globalInstallResult.error.message };
229
+ }
230
+ if (globalInstallResult.status !== 0) {
231
+ return commandFailure(globalInstallResult.stderr, globalInstallResult.status, 'npm install -g dev tarball');
232
+ }
233
+ return { ok: true, stderr: '', revision: installRevision };
234
+ }
235
+ finally {
236
+ try {
237
+ rmSync(tempRoot, { recursive: true, force: true });
238
+ }
239
+ catch {
240
+ // Cleanup is best-effort. Do not mask a successful update or the primary
241
+ // failure from git/npm with a transient temp-directory removal error.
242
+ }
243
+ }
244
+ }
245
+ export function runGlobalUpdate(installSourceOrSpawnProcess = STABLE_INSTALL_SOURCE, spawnProcessOrPlatform = spawnSync, platform = process.platform) {
246
+ const legacySpawnFirst = typeof installSourceOrSpawnProcess === 'function';
247
+ const installSource = legacySpawnFirst ? STABLE_INSTALL_SOURCE : installSourceOrSpawnProcess;
248
+ const spawnProcess = legacySpawnFirst
249
+ ? installSourceOrSpawnProcess
250
+ : typeof spawnProcessOrPlatform === 'function'
251
+ ? spawnProcessOrPlatform
252
+ : spawnSync;
253
+ const resolvedPlatform = legacySpawnFirst
254
+ ? typeof spawnProcessOrPlatform === 'string'
255
+ ? spawnProcessOrPlatform
256
+ : platform
257
+ : typeof spawnProcessOrPlatform === 'string'
258
+ ? spawnProcessOrPlatform
259
+ : platform;
260
+ if (installSource === DEV_INSTALL_SOURCE) {
261
+ return runDevGlobalUpdate(spawnProcess, resolvedPlatform);
262
+ }
263
+ const result = spawnNpmSync(['install', '-g', installSource], {
104
264
  encoding: 'utf-8',
105
265
  stdio: ['ignore', 'pipe', 'pipe'],
106
266
  timeout: 120000,
107
267
  windowsHide: true,
108
- });
268
+ }, spawnProcess, resolvedPlatform);
109
269
  if (result.error) {
110
270
  return { ok: false, stderr: result.error.message };
111
271
  }
112
272
  if (result.status !== 0) {
113
- return { ok: false, stderr: (result.stderr || '').trim() || `npm exited ${result.status}` };
273
+ return { ok: false, stderr: String(result.stderr || '').trim() || `npm exited ${result.status}` };
114
274
  }
115
275
  return { ok: true, stderr: '' };
116
276
  }
@@ -227,13 +387,21 @@ function formatDeferredUpdateFailure(stderr, logPath) {
227
387
  '[omx] You can retry manually with: npm install -g oh-my-codex@latest && omx setup',
228
388
  ].filter((line) => typeof line === 'string').join('\n');
229
389
  }
230
- function summarizeUpdateFailure(stderr, logPath) {
390
+ function summarizeUpdateFailure(stderr, installSource = STABLE_INSTALL_SOURCE, logPath) {
231
391
  const details = stderr.trim().split(/\r?\n/).filter(Boolean).slice(0, 3).join(' | ');
392
+ if (installSource === DEV_INSTALL_SOURCE) {
393
+ return [
394
+ `[omx] Update failed while building and installing the dev channel from ${DEV_REPOSITORY_URL}#${DEV_REPOSITORY_BRANCH}.`,
395
+ details ? `[omx] update stderr: ${details}` : undefined,
396
+ logPath ? `[omx] Full log: ${logPath}` : undefined,
397
+ '[omx] You can retry manually with: omx update --dev',
398
+ ].filter((line) => typeof line === 'string').join('\n');
399
+ }
232
400
  return [
233
- '[omx] Update failed while running npm install -g oh-my-codex@latest.',
401
+ `[omx] Update failed while running npm install -g ${installSource}.`,
234
402
  details ? `[omx] npm stderr: ${details}` : undefined,
235
403
  logPath ? `[omx] Full log: ${logPath}` : undefined,
236
- '[omx] You can retry manually with: npm install -g oh-my-codex@latest && omx setup',
404
+ `[omx] You can retry manually with: npm install -g ${installSource} && omx setup`,
237
405
  ].filter((line) => typeof line === 'string').join('\n');
238
406
  }
239
407
  async function askYesNo(question) {
@@ -252,6 +420,8 @@ const defaultUpdateDependencies = {
252
420
  askYesNo,
253
421
  fetchLatestVersion,
254
422
  getCurrentVersion,
423
+ getInstalledVersionAfterUpdate,
424
+ getInstalledRevisionAfterUpdate,
255
425
  readUserInstallStamp,
256
426
  runGlobalUpdate,
257
427
  runDeferredGlobalUpdate,
@@ -261,10 +431,13 @@ const defaultUpdateDependencies = {
261
431
  function stripLeadingV(version) {
262
432
  return version.trim().replace(/^v/i, '');
263
433
  }
264
- async function writeSuccessfulInstallStamp(installedVersion) {
434
+ async function writeSuccessfulInstallStamp(installedVersion, metadata = {}) {
265
435
  await writeUserInstallStamp({
266
436
  installed_version: stripLeadingV(installedVersion),
267
437
  setup_completed_version: stripLeadingV(installedVersion),
438
+ ...(metadata.channel ? { install_channel: metadata.channel } : {}),
439
+ ...(metadata.source ? { install_source: metadata.source } : {}),
440
+ ...(metadata.revision ? { install_revision: metadata.revision } : {}),
268
441
  updated_at: new Date().toISOString(),
269
442
  });
270
443
  }
@@ -282,6 +455,15 @@ export async function readUserInstallStamp(path = omxUserInstallStampPath()) {
282
455
  ...(typeof parsed.setup_completed_version === 'string'
283
456
  ? { setup_completed_version: parsed.setup_completed_version }
284
457
  : {}),
458
+ ...(parsed.install_channel === 'stable' || parsed.install_channel === 'dev'
459
+ ? { install_channel: parsed.install_channel }
460
+ : {}),
461
+ ...(typeof parsed.install_source === 'string'
462
+ ? { install_source: parsed.install_source }
463
+ : {}),
464
+ ...(typeof parsed.install_revision === 'string'
465
+ ? { install_revision: parsed.install_revision }
466
+ : {}),
285
467
  updated_at: parsed.updated_at,
286
468
  };
287
469
  }
@@ -303,19 +485,50 @@ export function isInstallVersionBump(currentVersion, stamp) {
303
485
  function doesSetupStampMatchVersion(currentVersion, stamp) {
304
486
  return stripLeadingV(stamp?.setup_completed_version ?? '') === stripLeadingV(currentVersion);
305
487
  }
306
- function resolveGlobalInstallRoot() {
307
- const result = spawnSync('npm', ['root', '-g'], {
488
+ export function resolveGlobalInstallRoot(spawnProcess = spawnSync, platform = process.platform) {
489
+ const result = spawnNpmSync(['root', '-g'], {
308
490
  encoding: 'utf-8',
309
491
  stdio: ['ignore', 'pipe', 'pipe'],
310
492
  timeout: 15000,
311
493
  windowsHide: true,
312
- });
494
+ }, spawnProcess, platform);
313
495
  if (result.error || result.status !== 0) {
314
496
  return null;
315
497
  }
316
- const root = (result.stdout || '').trim();
498
+ const root = String(result.stdout || '').trim();
317
499
  return root === '' ? null : root;
318
500
  }
501
+ async function getInstalledVersionAfterUpdate() {
502
+ const globalInstallRoot = resolveGlobalInstallRoot();
503
+ if (!globalInstallRoot)
504
+ return null;
505
+ try {
506
+ const packageJsonPath = join(globalInstallRoot, PACKAGE_NAME, 'package.json');
507
+ const content = await readFile(packageJsonPath, 'utf-8');
508
+ const pkg = JSON.parse(content);
509
+ return typeof pkg.version === 'string' && pkg.version.trim() !== ''
510
+ ? pkg.version
511
+ : null;
512
+ }
513
+ catch {
514
+ return null;
515
+ }
516
+ }
517
+ async function getInstalledRevisionAfterUpdate() {
518
+ const globalInstallRoot = resolveGlobalInstallRoot();
519
+ if (!globalInstallRoot)
520
+ return null;
521
+ try {
522
+ const packageJsonPath = join(globalInstallRoot, PACKAGE_NAME, 'package.json');
523
+ const content = await readFile(packageJsonPath, 'utf-8');
524
+ const pkg = JSON.parse(content);
525
+ const revision = typeof pkg.gitHead === 'string' ? pkg.gitHead.trim() : '';
526
+ return /^[0-9a-f]{7,40}$/i.test(revision) ? revision.slice(0, 12) : null;
527
+ }
528
+ catch {
529
+ return null;
530
+ }
531
+ }
319
532
  export async function resolveInstalledCliEntry(globalInstallRoot) {
320
533
  const packageRoot = join(globalInstallRoot, PACKAGE_NAME);
321
534
  const packageJsonPath = join(packageRoot, 'package.json');
@@ -375,10 +588,11 @@ async function runSetupRefresh(cwd) {
375
588
  return spawnInstalledSetupRefresh(cliEntry, cwd);
376
589
  }
377
590
  async function executeUpdate(options) {
378
- const { cwd, dependencies, prompt, immediate, nowMs = Date.now() } = options;
591
+ const { cwd, dependencies, prompt, immediate, channel = 'stable', forceInstall = false, nowMs = Date.now(), } = options;
592
+ const channelConfig = resolveUpdateChannelConfig(channel);
379
593
  const [current, latest] = await Promise.all([
380
594
  dependencies.getCurrentVersion(),
381
- dependencies.fetchLatestVersion(),
595
+ channel === 'stable' || !forceInstall ? dependencies.fetchLatestVersion() : Promise.resolve(null),
382
596
  ]);
383
597
  try {
384
598
  await dependencies.writeUpdateState(cwd, {
@@ -390,13 +604,13 @@ async function executeUpdate(options) {
390
604
  // Update-check state is advisory only. Do not fail installs or explicit updates
391
605
  // just because the current working directory is read-only or unavailable.
392
606
  }
393
- if (!current || !latest) {
607
+ if (!forceInstall && (!current || !latest)) {
394
608
  if (immediate) {
395
609
  console.log('[omx] Unable to determine the latest oh-my-codex version. Try again later.');
396
610
  }
397
611
  return { status: 'unavailable', currentVersion: current, latestVersion: latest };
398
612
  }
399
- if (!isNewerVersion(current, latest)) {
613
+ if (!forceInstall && current && latest && !isNewerVersion(current, latest)) {
400
614
  if (immediate) {
401
615
  const installStamp = await dependencies.readUserInstallStamp();
402
616
  if (!doesSetupStampMatchVersion(current, installStamp)) {
@@ -436,10 +650,17 @@ async function executeUpdate(options) {
436
650
  }
437
651
  return { status: 'scheduled', currentVersion: current, latestVersion: latest };
438
652
  }
439
- console.log(`[omx] Running: npm install -g ${PACKAGE_NAME}@latest`);
440
- const result = dependencies.runGlobalUpdate();
653
+ console.log(`[omx] Selected update channel: ${channelConfig.channel}`);
654
+ console.log(`[omx] Install source: ${channelConfig.installSource}`);
655
+ if (channelConfig.channel === 'dev') {
656
+ console.log('[omx] Running: clone dev branch, run prepack, then npm install -g the packed tarball');
657
+ }
658
+ else {
659
+ console.log(`[omx] Running: npm install -g ${channelConfig.installSource}`);
660
+ }
661
+ const result = dependencies.runGlobalUpdate(channelConfig.installSource);
441
662
  if (!result.ok) {
442
- console.log(summarizeUpdateFailure(result.stderr));
663
+ console.log(summarizeUpdateFailure(result.stderr, channelConfig.installSource));
443
664
  return { status: 'failed', currentVersion: current, latestVersion: latest };
444
665
  }
445
666
  const setupRefreshResult = await dependencies.runSetupRefresh(cwd);
@@ -447,17 +668,38 @@ async function executeUpdate(options) {
447
668
  console.log(`[omx] Update installed, but the setup refresh failed. Run \`omx setup\` with the new install. (${setupRefreshResult.stderr})`);
448
669
  return { status: 'failed', currentVersion: current, latestVersion: latest };
449
670
  }
450
- await writeSuccessfulInstallStamp(latest);
451
- console.log(`[omx] Updated to v${latest}. Restart to use new code.`);
671
+ const installedVersion = await dependencies.getInstalledVersionAfterUpdate();
672
+ const installedRevision = channelConfig.channel === 'dev'
673
+ ? ((await dependencies.getInstalledRevisionAfterUpdate()) ?? result.revision ?? null)
674
+ : null;
675
+ const stampVersion = channelConfig.channel === 'stable'
676
+ ? (latest ?? installedVersion ?? current)
677
+ : installedVersion;
678
+ if (stampVersion) {
679
+ await writeSuccessfulInstallStamp(stampVersion, {
680
+ channel: channelConfig.channel,
681
+ source: channelConfig.installSource,
682
+ revision: channelConfig.channel === 'dev' ? installedRevision : null,
683
+ });
684
+ }
685
+ else if (channelConfig.channel === 'dev') {
686
+ console.log('[omx] Dev update completed, but the installed package version could not be determined for the setup stamp.');
687
+ }
688
+ const versionSummary = channelConfig.channel === 'stable' && latest
689
+ ? ` to v${latest}`
690
+ : '';
691
+ console.log(`[omx] Updated ${channelConfig.channel} channel${versionSummary}. Restart to use new code.`);
452
692
  return { status: 'updated', currentVersion: current, latestVersion: latest };
453
693
  }
454
- export async function runImmediateUpdate(cwd = process.cwd(), dependencies = {}) {
694
+ export async function runImmediateUpdate(cwd = process.cwd(), dependencies = {}, options = {}) {
455
695
  const updateDependencies = { ...defaultUpdateDependencies, ...dependencies };
456
696
  return executeUpdate({
457
697
  cwd,
458
698
  dependencies: updateDependencies,
459
699
  prompt: false,
460
700
  immediate: true,
701
+ channel: options.channel ?? 'stable',
702
+ forceInstall: true,
461
703
  });
462
704
  }
463
705
  export async function maybeCheckAndPromptUpdate(cwd, dependencies = {}) {
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/cli/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/cli/update.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/cli/version.ts"],"names":[],"mappings":"AAIA,wBAAgB,OAAO,IAAI,IAAI,CAW9B"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/cli/version.ts"],"names":[],"mappings":"AAEA,wBAAgB,OAAO,IAAI,IAAI,CAS9B"}
@@ -1,16 +1,12 @@
1
- import { readFileSync } from 'fs';
2
- import { join, dirname } from 'path';
3
- import { fileURLToPath } from 'url';
1
+ import { resolveOmxDisplayVersionSync } from '../utils/version.js';
4
2
  export function version() {
5
- try {
6
- const __filename = fileURLToPath(import.meta.url);
7
- const pkgPath = join(dirname(__filename), '..', '..', 'package.json');
8
- const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
9
- console.log(`oh-my-codex v${pkg.version}`);
3
+ const displayVersion = resolveOmxDisplayVersionSync();
4
+ if (displayVersion) {
5
+ console.log(`oh-my-codex ${displayVersion}`);
10
6
  console.log(`Node.js ${process.version}`);
11
7
  console.log(`Platform: ${process.platform} ${process.arch}`);
12
8
  }
13
- catch {
9
+ else {
14
10
  console.log('oh-my-codex (version unknown)');
15
11
  }
16
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/cli/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,UAAU,OAAO;IACrB,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACtE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,WAAW,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,aAAa,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/cli/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AAEnE,MAAM,UAAU,OAAO;IACrB,MAAM,cAAc,GAAG,4BAA4B,EAAE,CAAC;IACtD,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,eAAe,cAAc,EAAE,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,WAAW,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,aAAa,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}