oh-my-codex 0.21.19 → 0.21.21
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/Cargo.lock +20 -20
- package/Cargo.toml +1 -1
- package/dist/cli/__tests__/plugin-cache-live-pin-3790.test.js +3 -1
- package/dist/cli/__tests__/plugin-cache-live-pin-3790.test.js.map +1 -1
- package/dist/cli/__tests__/plugin-launcher-provenance-3558.test.js +1 -1
- package/dist/cli/__tests__/plugin-launcher-provenance-3558.test.js.map +1 -1
- package/dist/cli/__tests__/setup-install-mode.test.js +44 -31
- package/dist/cli/__tests__/setup-install-mode.test.js.map +1 -1
- package/dist/cli/__tests__/setup-reasoning-preserve.test.js +18 -0
- package/dist/cli/__tests__/setup-reasoning-preserve.test.js.map +1 -1
- package/dist/cli/__tests__/uninstall.test.js +33 -22
- package/dist/cli/__tests__/uninstall.test.js.map +1 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +9 -4
- package/dist/cli/setup.js.map +1 -1
- package/dist/cli/uninstall.js +2 -2
- package/dist/cli/uninstall.js.map +1 -1
- package/dist/config/codex-hooks.d.ts +7 -0
- package/dist/config/codex-hooks.d.ts.map +1 -1
- package/dist/config/codex-hooks.js +13 -0
- package/dist/config/codex-hooks.js.map +1 -1
- package/dist/team/__tests__/tmux-session.test.js +60 -0
- package/dist/team/__tests__/tmux-session.test.js.map +1 -1
- package/dist/team/tmux-session.d.ts.map +1 -1
- package/dist/team/tmux-session.js +32 -10
- package/dist/team/tmux-session.js.map +1 -1
- package/package.json +1 -1
- package/plugins/oh-my-codex/.codex-plugin/plugin.json +1 -1
|
@@ -194,5 +194,23 @@ describe("omx setup preserves user reasoning effort (issue #3630)", () => {
|
|
|
194
194
|
const parsed = TOML.parse(await readFile(home.configPath, "utf-8"));
|
|
195
195
|
assert.equal(parsed.model_reasoning_effort, "low");
|
|
196
196
|
});
|
|
197
|
+
it("does not create stray files starting with backslash in cwd after setup on POSIX", async () => {
|
|
198
|
+
if (process.platform === "win32")
|
|
199
|
+
return; // Skip on Windows
|
|
200
|
+
const home = await createIsolatedHome("omx3630-regression-");
|
|
201
|
+
homes.push(home);
|
|
202
|
+
const { readdirSync } = await import("node:fs");
|
|
203
|
+
const cwdBefore = readdirSync(process.cwd(), { encoding: "utf-8" });
|
|
204
|
+
try {
|
|
205
|
+
await setup({ scope: "user", mergeAgents: true, installMode: "legacy" });
|
|
206
|
+
}
|
|
207
|
+
finally {
|
|
208
|
+
// cleanup happens in `after`
|
|
209
|
+
}
|
|
210
|
+
const cwdAfter = readdirSync(process.cwd(), { encoding: "utf-8" });
|
|
211
|
+
const newFiles = cwdAfter.filter((f) => !cwdBefore.includes(f));
|
|
212
|
+
const strayBackslashFiles = newFiles.filter((f) => f.startsWith("\\") || f.includes("\\"));
|
|
213
|
+
assert.equal(strayBackslashFiles.length, 0, `setup created stray files with backslashes: ${strayBackslashFiles.join(", ")}`);
|
|
214
|
+
});
|
|
197
215
|
});
|
|
198
216
|
//# sourceMappingURL=setup-reasoning-preserve.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-reasoning-preserve.test.js","sourceRoot":"","sources":["../../../src/cli/__tests__/setup-reasoning-preserve.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setup-reasoning-preserve.test.js","sourceRoot":"","sources":["../../../src/cli/__tests__/setup-reasoning-preserve.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ import { tmpdir as osTmpdir } from 'node:os';
|
|
|
7
7
|
import { spawnSync } from 'node:child_process';
|
|
8
8
|
import { fileURLToPath } from 'node:url';
|
|
9
9
|
import { createHash } from 'node:crypto';
|
|
10
|
-
import { buildManagedCodexHookTrustState, buildManagedCodexHooksConfig, buildManagedCodexNativeHookWindowsShimContent, buildManagedCodexNativeHookWindowsShimPath, } from '../../config/codex-hooks.js';
|
|
10
|
+
import { buildManagedCodexHookTrustState, buildManagedCodexHooksConfig, buildManagedCodexNativeHookWindowsShimContent, buildManagedCodexNativeHookWindowsShimPath, buildManagedCodexNativeHookWindowsShimPathForFilesystem, } from '../../config/codex-hooks.js';
|
|
11
11
|
import { setUninstallClaimJournalDurabilityForTest, uninstall } from '../uninstall.js';
|
|
12
12
|
import TOML from '@iarna/toml';
|
|
13
13
|
const tmpdir = () => realpathSync(osTmpdir());
|
|
@@ -667,7 +667,7 @@ describe('omx uninstall', () => {
|
|
|
667
667
|
const codexDir = join(wd, '.codex');
|
|
668
668
|
const configPath = join(codexDir, 'config.toml');
|
|
669
669
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
670
|
-
const shimPath =
|
|
670
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
671
671
|
const metadataPath = join(codexDir, '.omx', 'notify-dispatch.json');
|
|
672
672
|
const hooks = `${JSON.stringify(buildManagedCodexHooksConfig(packageRoot(), {
|
|
673
673
|
platform: 'win32',
|
|
@@ -697,6 +697,7 @@ describe('omx uninstall', () => {
|
|
|
697
697
|
const metadata = Buffer.from('{"managedBy":"foreign"}\n', 'utf-8');
|
|
698
698
|
const shim = Buffer.from(buildManagedCodexNativeHookWindowsShimContent(packageRoot()), 'utf-8');
|
|
699
699
|
await mkdir(dirname(metadataPath), { recursive: true });
|
|
700
|
+
await mkdir(dirname(shimPath), { recursive: true });
|
|
700
701
|
await writeFile(configPath, config);
|
|
701
702
|
await writeFile(hooksPath, hooks);
|
|
702
703
|
await writeFile(shimPath, shim);
|
|
@@ -737,12 +738,13 @@ describe('omx uninstall', () => {
|
|
|
737
738
|
const codexDir = join(wd, '.codex');
|
|
738
739
|
const configPath = join(codexDir, 'config.toml');
|
|
739
740
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
740
|
-
const shimPath =
|
|
741
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
741
742
|
const metadataPath = join(codexDir, '.omx', 'notify-dispatch.json');
|
|
742
743
|
const config = buildOmxConfig().replace('# End oh-my-codex', '[hooks.state."foreign-key"]\ntrusted_hash = "sha256:foreign"\n\n# End oh-my-codex');
|
|
743
744
|
const shim = Buffer.from(buildManagedCodexNativeHookWindowsShimContent(packageRoot()), 'utf-8');
|
|
744
745
|
const metadata = Buffer.from('{"managedBy":"foreign"}\n', 'utf-8');
|
|
745
746
|
await mkdir(dirname(metadataPath), { recursive: true });
|
|
747
|
+
await mkdir(dirname(shimPath), { recursive: true });
|
|
746
748
|
await writeFile(configPath, config);
|
|
747
749
|
if (fixture.hooks !== null)
|
|
748
750
|
await writeFile(hooksPath, fixture.hooks);
|
|
@@ -777,7 +779,7 @@ describe('omx uninstall', () => {
|
|
|
777
779
|
const codexDir = join(wd, '.codex');
|
|
778
780
|
const configPath = join(codexDir, 'config.toml');
|
|
779
781
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
780
|
-
const shimPath =
|
|
782
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
781
783
|
const managed = buildManagedCodexHooksConfig(packageRoot(), {
|
|
782
784
|
platform: 'win32',
|
|
783
785
|
codexHomeDir: codexDir,
|
|
@@ -791,6 +793,7 @@ describe('omx uninstall', () => {
|
|
|
791
793
|
},
|
|
792
794
|
}, null, 2).replace(JSON.stringify(sentinel), JSON.stringify(`& 'C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe' -NoProfile -ExecutionPolicy Bypass -File '${shimPath}'`).replace(/\\\\/g, '\\u005c')) + '\n';
|
|
793
795
|
await mkdir(codexDir, { recursive: true });
|
|
796
|
+
await mkdir(dirname(shimPath), { recursive: true });
|
|
794
797
|
await writeFile(configPath, buildOmxConfig());
|
|
795
798
|
await writeFile(hooksPath, hooks);
|
|
796
799
|
await writeFile(shimPath, buildManagedCodexNativeHookWindowsShimContent(packageRoot()));
|
|
@@ -812,7 +815,7 @@ describe('omx uninstall', () => {
|
|
|
812
815
|
await withDriveQualifiedWindowsCodexHome(wd, async (codexHomeDir) => {
|
|
813
816
|
const configPath = join(codexHomeDir, 'config.toml');
|
|
814
817
|
const hooksPath = join(codexHomeDir, 'hooks.json');
|
|
815
|
-
const shimPath =
|
|
818
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexHomeDir);
|
|
816
819
|
const managed = buildManagedCodexHooksConfig(packageRoot(), {
|
|
817
820
|
platform: 'win32',
|
|
818
821
|
codexHomeDir,
|
|
@@ -830,8 +833,10 @@ describe('omx uninstall', () => {
|
|
|
830
833
|
}],
|
|
831
834
|
},
|
|
832
835
|
}, null, 2)}\n`;
|
|
836
|
+
await mkdir(dirname(shimPath), { recursive: true });
|
|
833
837
|
await writeFile(configPath, buildOmxConfig());
|
|
834
838
|
await writeFile(hooksPath, hooks);
|
|
839
|
+
await mkdir(dirname(shimPath), { recursive: true });
|
|
835
840
|
await writeFile(shimPath, buildManagedCodexNativeHookWindowsShimContent(packageRoot()));
|
|
836
841
|
await uninstall({ scope: 'user', transactionPlatform: 'win32' });
|
|
837
842
|
assert.equal(existsSync(shimPath), true);
|
|
@@ -851,11 +856,12 @@ describe('omx uninstall', () => {
|
|
|
851
856
|
const codexDir = join(wd, '.codex');
|
|
852
857
|
const configPath = join(codexDir, 'config.toml');
|
|
853
858
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
854
|
-
const shimPath =
|
|
855
|
-
const
|
|
859
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
860
|
+
const shimPathWindows = buildManagedCodexNativeHookWindowsShimPath(codexDir);
|
|
861
|
+
const shimAlias = shimPathWindows
|
|
856
862
|
.replace(/[\\/]+hooks[\\/]+/i, '\\hooks\\\\.\\')
|
|
857
863
|
.replace(/omx-native-hook-windows-shim\.ps1$/i, 'OMX-NATIVE-HOOK-WINDOWS-SHIM.PS1')
|
|
858
|
-
.replace(
|
|
864
|
+
.replace(/\\\\/g, '/');
|
|
859
865
|
const managed = buildManagedCodexHooksConfig(packageRoot(), {
|
|
860
866
|
platform: 'win32',
|
|
861
867
|
codexHomeDir: codexDir,
|
|
@@ -873,8 +879,10 @@ describe('omx uninstall', () => {
|
|
|
873
879
|
},
|
|
874
880
|
}, null, 2)}\n`;
|
|
875
881
|
await mkdir(codexDir, { recursive: true });
|
|
882
|
+
await mkdir(dirname(shimPath), { recursive: true });
|
|
876
883
|
await writeFile(configPath, buildOmxConfig());
|
|
877
884
|
await writeFile(hooksPath, hooks);
|
|
885
|
+
await mkdir(dirname(shimPath), { recursive: true });
|
|
878
886
|
await writeFile(shimPath, buildManagedCodexNativeHookWindowsShimContent(packageRoot()));
|
|
879
887
|
await uninstall({ scope: 'project', transactionPlatform: 'win32' });
|
|
880
888
|
assert.equal(existsSync(shimPath), true);
|
|
@@ -892,7 +900,7 @@ describe('omx uninstall', () => {
|
|
|
892
900
|
const codexDir = join(wd, '.codex');
|
|
893
901
|
const configPath = join(codexDir, 'config.toml');
|
|
894
902
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
895
|
-
const shimPath =
|
|
903
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
896
904
|
const managed = buildManagedCodexHooksConfig(packageRoot(), {
|
|
897
905
|
platform: 'win32',
|
|
898
906
|
codexHomeDir: codexDir,
|
|
@@ -940,7 +948,7 @@ describe('omx uninstall', () => {
|
|
|
940
948
|
const codexDir = join(wd, '.codex');
|
|
941
949
|
const configPath = join(codexDir, 'config.toml');
|
|
942
950
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
943
|
-
const shimPath =
|
|
951
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
944
952
|
const shimAlias = shimPath
|
|
945
953
|
.replace(/[\\/]+hooks[\\/]+/i, '\\hooks\\\\.\\')
|
|
946
954
|
.replace(/omx-native-hook-windows-shim\.ps1$/i, 'OMX-NATIVE-HOOK-WINDOWS-SHIM.PS1')
|
|
@@ -973,6 +981,7 @@ describe('omx uninstall', () => {
|
|
|
973
981
|
const shim = Buffer.from(buildManagedCodexNativeHookWindowsShimContent(packageRoot()), 'utf-8');
|
|
974
982
|
const replacement = Buffer.from('concurrent shim replacement\n', 'utf-8');
|
|
975
983
|
await mkdir(codexDir, { recursive: true });
|
|
984
|
+
await mkdir(dirname(shimPath), { recursive: true });
|
|
976
985
|
await writeFile(configPath, config);
|
|
977
986
|
await writeFile(hooksPath, hooks);
|
|
978
987
|
await writeFile(shimPath, shim);
|
|
@@ -1012,7 +1021,7 @@ describe('omx uninstall', () => {
|
|
|
1012
1021
|
const codexDir = join(wd, '.codex');
|
|
1013
1022
|
const configPath = join(codexDir, 'config.toml');
|
|
1014
1023
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
1015
|
-
const shimPath =
|
|
1024
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
1016
1025
|
const managed = buildManagedCodexHooksConfig(packageRoot(), {
|
|
1017
1026
|
platform: 'win32',
|
|
1018
1027
|
codexHomeDir: codexDir,
|
|
@@ -1027,6 +1036,7 @@ describe('omx uninstall', () => {
|
|
|
1027
1036
|
const config = buildOmxConfig();
|
|
1028
1037
|
const replacement = Buffer.from('concurrent preserved shim replacement\n', 'utf-8');
|
|
1029
1038
|
await mkdir(codexDir, { recursive: true });
|
|
1039
|
+
await mkdir(dirname(shimPath), { recursive: true });
|
|
1030
1040
|
await writeFile(configPath, config);
|
|
1031
1041
|
await writeFile(hooksPath, hooks);
|
|
1032
1042
|
await writeFile(shimPath, buildManagedCodexNativeHookWindowsShimContent(packageRoot()));
|
|
@@ -1059,7 +1069,7 @@ describe('omx uninstall', () => {
|
|
|
1059
1069
|
const codexDir = join(wd, '.codex');
|
|
1060
1070
|
const configPath = join(codexDir, 'config.toml');
|
|
1061
1071
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
1062
|
-
const shimPath =
|
|
1072
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
1063
1073
|
const managed = buildManagedCodexHooksConfig(packageRoot(), {
|
|
1064
1074
|
platform: 'win32',
|
|
1065
1075
|
codexHomeDir: codexDir,
|
|
@@ -1074,6 +1084,7 @@ describe('omx uninstall', () => {
|
|
|
1074
1084
|
const config = buildOmxConfig();
|
|
1075
1085
|
const replacement = Buffer.from('concurrent finalization shim replacement\n', 'utf-8');
|
|
1076
1086
|
await mkdir(codexDir, { recursive: true });
|
|
1087
|
+
await mkdir(dirname(shimPath), { recursive: true });
|
|
1077
1088
|
await writeFile(configPath, config);
|
|
1078
1089
|
await writeFile(hooksPath, hooks);
|
|
1079
1090
|
await writeFile(shimPath, buildManagedCodexNativeHookWindowsShimContent(packageRoot()));
|
|
@@ -1105,7 +1116,7 @@ describe('omx uninstall', () => {
|
|
|
1105
1116
|
const codexDir = join(wd, '.codex');
|
|
1106
1117
|
const configPath = join(codexDir, 'config.toml');
|
|
1107
1118
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
1108
|
-
const shimPath =
|
|
1119
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
1109
1120
|
const config = buildOmxConfig();
|
|
1110
1121
|
const hooks = `${JSON.stringify(buildManagedCodexHooksConfig(packageRoot(), {
|
|
1111
1122
|
platform: 'win32',
|
|
@@ -1144,7 +1155,7 @@ describe('omx uninstall', () => {
|
|
|
1144
1155
|
const codexDir = join(wd, '.codex');
|
|
1145
1156
|
const configPath = join(codexDir, 'config.toml');
|
|
1146
1157
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
1147
|
-
const shimPath =
|
|
1158
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
1148
1159
|
const config = buildOmxConfig();
|
|
1149
1160
|
const hooks = `${JSON.stringify(buildManagedCodexHooksConfig(packageRoot(), {
|
|
1150
1161
|
platform: 'win32',
|
|
@@ -1173,7 +1184,7 @@ describe('omx uninstall', () => {
|
|
|
1173
1184
|
const codexDir = join(wd, '.codex');
|
|
1174
1185
|
const configPath = join(codexDir, 'config.toml');
|
|
1175
1186
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
1176
|
-
const shimPath =
|
|
1187
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
1177
1188
|
const config = buildOmxConfig();
|
|
1178
1189
|
const hooks = `${JSON.stringify(buildManagedCodexHooksConfig(packageRoot(), {
|
|
1179
1190
|
platform: 'win32',
|
|
@@ -1298,7 +1309,7 @@ describe('omx uninstall', () => {
|
|
|
1298
1309
|
const codexDir = join(wd, '.codex');
|
|
1299
1310
|
const configPath = join(codexDir, 'config.toml');
|
|
1300
1311
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
1301
|
-
const shimPath =
|
|
1312
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
1302
1313
|
const replacementPath = join(wd, 'concurrent-user-hooks.json');
|
|
1303
1314
|
const config = buildOmxConfig();
|
|
1304
1315
|
const hooks = `${JSON.stringify(buildManagedCodexHooksConfig(packageRoot(), {
|
|
@@ -1627,7 +1638,7 @@ describe('omx uninstall', () => {
|
|
|
1627
1638
|
const codexDir = join(wd, '.codex');
|
|
1628
1639
|
const configPath = join(codexDir, 'config.toml');
|
|
1629
1640
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
1630
|
-
const shimPath =
|
|
1641
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
1631
1642
|
const metadataPath = join(codexDir, '.omx', 'notify-dispatch.json');
|
|
1632
1643
|
const dispatcherPath = join(packageRoot(), 'dist', 'scripts', 'notify-dispatcher.js');
|
|
1633
1644
|
const hooks = `${JSON.stringify(buildManagedCodexHooksConfig(packageRoot(), {
|
|
@@ -1689,7 +1700,7 @@ describe('omx uninstall', () => {
|
|
|
1689
1700
|
const codexDir = join(wd, '.codex');
|
|
1690
1701
|
const configPath = join(codexDir, 'config.toml');
|
|
1691
1702
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
1692
|
-
const shimPath =
|
|
1703
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
1693
1704
|
const config = Buffer.from(buildOmxConfig(), 'utf-8');
|
|
1694
1705
|
const hooks = Buffer.from(`${JSON.stringify(buildManagedCodexHooksConfig(packageRoot(), {
|
|
1695
1706
|
platform: 'win32',
|
|
@@ -2699,7 +2710,7 @@ describe('omx uninstall', () => {
|
|
|
2699
2710
|
const codexDir = join(wd, '.codex');
|
|
2700
2711
|
const configPath = join(codexDir, 'config.toml');
|
|
2701
2712
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
2702
|
-
const shimPath =
|
|
2713
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
2703
2714
|
const stagedShimPath = join(dirname(shimPath), '.shim-preflight-recovery');
|
|
2704
2715
|
const config = Buffer.from(buildOmxConfig(), 'utf-8');
|
|
2705
2716
|
const hooks = Buffer.from(`${JSON.stringify(buildManagedCodexHooksConfig(packageRoot(), {
|
|
@@ -2741,7 +2752,7 @@ describe('omx uninstall', () => {
|
|
|
2741
2752
|
const codexDir = join(wd, '.codex');
|
|
2742
2753
|
const configPath = join(codexDir, 'config.toml');
|
|
2743
2754
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
2744
|
-
const shimPath =
|
|
2755
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
2745
2756
|
const foreignConfigPath = join(codexDir, '.foreign-restored-config');
|
|
2746
2757
|
const config = Buffer.from(buildOmxConfig(), 'utf-8');
|
|
2747
2758
|
const hooks = Buffer.from(`${JSON.stringify(buildManagedCodexHooksConfig(packageRoot(), {
|
|
@@ -2900,7 +2911,7 @@ describe('omx uninstall', () => {
|
|
|
2900
2911
|
const codexDir = join(wd, '.codex');
|
|
2901
2912
|
const configPath = join(codexDir, 'config.toml');
|
|
2902
2913
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
2903
|
-
const shimPath =
|
|
2914
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
2904
2915
|
await mkdir(codexDir, { recursive: true });
|
|
2905
2916
|
await mkdir(dirname(shimPath), { recursive: true });
|
|
2906
2917
|
await writeFile(configPath, buildOmxConfig());
|
|
@@ -2951,7 +2962,7 @@ describe('omx uninstall', () => {
|
|
|
2951
2962
|
const codexDir = join(wd, '.codex');
|
|
2952
2963
|
const configPath = join(codexDir, 'config.toml');
|
|
2953
2964
|
const hooksPath = join(codexDir, 'hooks.json');
|
|
2954
|
-
const shimPath =
|
|
2965
|
+
const shimPath = buildManagedCodexNativeHookWindowsShimPathForFilesystem(codexDir);
|
|
2955
2966
|
await mkdir(codexDir, { recursive: true });
|
|
2956
2967
|
await mkdir(dirname(shimPath), { recursive: true });
|
|
2957
2968
|
await writeFile(configPath, buildOmxConfig());
|