oh-my-codex 0.18.2 → 0.18.4
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 +6 -6
- package/Cargo.toml +1 -1
- package/README.md +1 -0
- package/dist/agents/__tests__/definitions.test.js +9 -0
- package/dist/agents/__tests__/definitions.test.js.map +1 -1
- package/dist/agents/__tests__/native-config.test.js +1 -0
- package/dist/agents/__tests__/native-config.test.js.map +1 -1
- package/dist/agents/definitions.d.ts.map +1 -1
- package/dist/agents/definitions.js +10 -0
- package/dist/agents/definitions.js.map +1 -1
- package/dist/auth/__tests__/config-sessions.test.d.ts +2 -0
- package/dist/auth/__tests__/config-sessions.test.d.ts.map +1 -0
- package/dist/auth/__tests__/config-sessions.test.js +48 -0
- package/dist/auth/__tests__/config-sessions.test.js.map +1 -0
- package/dist/auth/__tests__/quota-rotation.test.d.ts +2 -0
- package/dist/auth/__tests__/quota-rotation.test.d.ts.map +1 -0
- package/dist/auth/__tests__/quota-rotation.test.js +33 -0
- package/dist/auth/__tests__/quota-rotation.test.js.map +1 -0
- package/dist/auth/__tests__/redact.test.d.ts +2 -0
- package/dist/auth/__tests__/redact.test.d.ts.map +1 -0
- package/dist/auth/__tests__/redact.test.js +20 -0
- package/dist/auth/__tests__/redact.test.js.map +1 -0
- package/dist/auth/__tests__/storage.test.d.ts +2 -0
- package/dist/auth/__tests__/storage.test.d.ts.map +1 -0
- package/dist/auth/__tests__/storage.test.js +108 -0
- package/dist/auth/__tests__/storage.test.js.map +1 -0
- package/dist/auth/config.d.ts +9 -0
- package/dist/auth/config.d.ts.map +1 -0
- package/dist/auth/config.js +77 -0
- package/dist/auth/config.js.map +1 -0
- package/dist/auth/hotswap.d.ts +36 -0
- package/dist/auth/hotswap.d.ts.map +1 -0
- package/dist/auth/hotswap.js +159 -0
- package/dist/auth/hotswap.js.map +1 -0
- package/dist/auth/index.d.ts +8 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +8 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/paths.d.ts +12 -0
- package/dist/auth/paths.d.ts.map +1 -0
- package/dist/auth/paths.js +78 -0
- package/dist/auth/paths.js.map +1 -0
- package/dist/auth/quota-detector.d.ts +10 -0
- package/dist/auth/quota-detector.d.ts.map +1 -0
- package/dist/auth/quota-detector.js +40 -0
- package/dist/auth/quota-detector.js.map +1 -0
- package/dist/auth/redact.d.ts +2 -0
- package/dist/auth/redact.d.ts.map +1 -0
- package/dist/auth/redact.js +26 -0
- package/dist/auth/redact.js.map +1 -0
- package/dist/auth/rotation.d.ts +9 -0
- package/dist/auth/rotation.d.ts.map +1 -0
- package/dist/auth/rotation.js +26 -0
- package/dist/auth/rotation.js.map +1 -0
- package/dist/auth/sessions.d.ts +15 -0
- package/dist/auth/sessions.d.ts.map +1 -0
- package/dist/auth/sessions.js +62 -0
- package/dist/auth/sessions.js.map +1 -0
- package/dist/auth/storage.d.ts +27 -0
- package/dist/auth/storage.d.ts.map +1 -0
- package/dist/auth/storage.js +111 -0
- package/dist/auth/storage.js.map +1 -0
- package/dist/cli/__tests__/auth.test.d.ts +2 -0
- package/dist/cli/__tests__/auth.test.d.ts.map +1 -0
- package/dist/cli/__tests__/auth.test.js +168 -0
- package/dist/cli/__tests__/auth.test.js.map +1 -0
- package/dist/cli/__tests__/doctor-warning-copy.test.js +88 -3
- package/dist/cli/__tests__/doctor-warning-copy.test.js.map +1 -1
- package/dist/cli/__tests__/explore.test.js +28 -7
- package/dist/cli/__tests__/explore.test.js.map +1 -1
- package/dist/cli/__tests__/index.test.js +70 -2
- package/dist/cli/__tests__/index.test.js.map +1 -1
- package/dist/cli/__tests__/nested-help-routing.test.js +1 -0
- package/dist/cli/__tests__/nested-help-routing.test.js.map +1 -1
- package/dist/cli/__tests__/setup-agents-overwrite.test.js +30 -1
- package/dist/cli/__tests__/setup-agents-overwrite.test.js.map +1 -1
- package/dist/cli/__tests__/setup-install-mode.test.js +103 -17
- package/dist/cli/__tests__/setup-install-mode.test.js.map +1 -1
- package/dist/cli/__tests__/setup-scope.test.js +1 -1
- package/dist/cli/__tests__/sparkshell-cli.test.js +2 -2
- package/dist/cli/__tests__/sparkshell-cli.test.js.map +1 -1
- package/dist/cli/auth.d.ts +4 -0
- package/dist/cli/auth.d.ts.map +1 -0
- package/dist/cli/auth.js +89 -0
- package/dist/cli/auth.js.map +1 -0
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +128 -19
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/explore.d.ts +1 -0
- package/dist/cli/explore.d.ts.map +1 -1
- package/dist/cli/explore.js +18 -0
- package/dist/cli/explore.js.map +1 -1
- package/dist/cli/index.d.ts +20 -2
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +114 -10
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/question.d.ts.map +1 -1
- package/dist/cli/question.js +5 -1
- package/dist/cli/question.js.map +1 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +29 -57
- package/dist/cli/setup.js.map +1 -1
- package/dist/config/__tests__/deep-interview.test.d.ts +2 -0
- package/dist/config/__tests__/deep-interview.test.d.ts.map +1 -0
- package/dist/config/__tests__/deep-interview.test.js +239 -0
- package/dist/config/__tests__/deep-interview.test.js.map +1 -0
- package/dist/config/__tests__/generator-idempotent.test.js +128 -5
- package/dist/config/__tests__/generator-idempotent.test.js.map +1 -1
- package/dist/config/deep-interview.d.ts +22 -0
- package/dist/config/deep-interview.d.ts.map +1 -0
- package/dist/config/deep-interview.js +151 -0
- package/dist/config/deep-interview.js.map +1 -0
- package/dist/config/generator.d.ts +13 -4
- package/dist/config/generator.d.ts.map +1 -1
- package/dist/config/generator.js +154 -40
- package/dist/config/generator.js.map +1 -1
- package/dist/hooks/__tests__/agents-overlay.test.js +9 -7
- package/dist/hooks/__tests__/agents-overlay.test.js.map +1 -1
- package/dist/hooks/__tests__/autopilot-skill-contract.test.js +10 -1
- package/dist/hooks/__tests__/autopilot-skill-contract.test.js.map +1 -1
- package/dist/hooks/__tests__/consensus-execution-handoff.test.js +13 -0
- package/dist/hooks/__tests__/consensus-execution-handoff.test.js.map +1 -1
- package/dist/hooks/__tests__/explore-routing.test.js +10 -12
- package/dist/hooks/__tests__/explore-routing.test.js.map +1 -1
- package/dist/hooks/__tests__/explore-sparkshell-guidance-contract.test.js +13 -15
- package/dist/hooks/__tests__/explore-sparkshell-guidance-contract.test.js.map +1 -1
- package/dist/hooks/__tests__/keyword-detector.test.js +301 -0
- package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-fallback-watcher.test.js +33 -0
- package/dist/hooks/__tests__/notify-fallback-watcher.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-ralph-resume.test.js +60 -0
- package/dist/hooks/__tests__/notify-hook-ralph-resume.test.js.map +1 -1
- package/dist/hooks/deep-interview-config-instruction.d.ts +3 -0
- package/dist/hooks/deep-interview-config-instruction.d.ts.map +1 -0
- package/dist/hooks/deep-interview-config-instruction.js +47 -0
- package/dist/hooks/deep-interview-config-instruction.js.map +1 -0
- package/dist/hooks/explore-routing.d.ts.map +1 -1
- package/dist/hooks/explore-routing.js +8 -13
- package/dist/hooks/explore-routing.js.map +1 -1
- package/dist/hooks/keyword-detector.d.ts +5 -0
- package/dist/hooks/keyword-detector.d.ts.map +1 -1
- package/dist/hooks/keyword-detector.js +52 -8
- package/dist/hooks/keyword-detector.js.map +1 -1
- package/dist/hud/__tests__/hud-tmux-injection.test.js +19 -14
- package/dist/hud/__tests__/hud-tmux-injection.test.js.map +1 -1
- package/dist/hud/__tests__/reconcile.test.js +117 -9
- package/dist/hud/__tests__/reconcile.test.js.map +1 -1
- package/dist/hud/__tests__/tmux.test.js +103 -1
- package/dist/hud/__tests__/tmux.test.js.map +1 -1
- package/dist/hud/index.d.ts +1 -1
- package/dist/hud/index.d.ts.map +1 -1
- package/dist/hud/index.js +24 -2
- package/dist/hud/index.js.map +1 -1
- package/dist/hud/reconcile.d.ts +1 -1
- package/dist/hud/reconcile.d.ts.map +1 -1
- package/dist/hud/reconcile.js +23 -0
- package/dist/hud/reconcile.js.map +1 -1
- package/dist/hud/tmux.d.ts +7 -0
- package/dist/hud/tmux.d.ts.map +1 -1
- package/dist/hud/tmux.js +46 -9
- package/dist/hud/tmux.js.map +1 -1
- package/dist/question/__tests__/deep-interview.test.js +80 -7
- package/dist/question/__tests__/deep-interview.test.js.map +1 -1
- package/dist/question/__tests__/policy.test.js +83 -9
- package/dist/question/__tests__/policy.test.js.map +1 -1
- package/dist/question/autopilot-wait.d.ts +10 -0
- package/dist/question/autopilot-wait.d.ts.map +1 -0
- package/dist/question/autopilot-wait.js +134 -0
- package/dist/question/autopilot-wait.js.map +1 -0
- package/dist/question/deep-interview.d.ts +2 -0
- package/dist/question/deep-interview.d.ts.map +1 -1
- package/dist/question/deep-interview.js +4 -0
- package/dist/question/deep-interview.js.map +1 -1
- package/dist/question/policy.d.ts +1 -0
- package/dist/question/policy.d.ts.map +1 -1
- package/dist/question/policy.js +19 -0
- package/dist/question/policy.js.map +1 -1
- package/dist/scripts/__tests__/codex-native-hook.test.js +718 -0
- package/dist/scripts/__tests__/codex-native-hook.test.js.map +1 -1
- package/dist/scripts/codex-native-hook.d.ts.map +1 -1
- package/dist/scripts/codex-native-hook.js +69 -5
- package/dist/scripts/codex-native-hook.js.map +1 -1
- package/dist/scripts/notify-hook.js +13 -0
- package/dist/scripts/notify-hook.js.map +1 -1
- package/dist/state/__tests__/planning-gate.test.d.ts +2 -0
- package/dist/state/__tests__/planning-gate.test.d.ts.map +1 -0
- package/dist/state/__tests__/planning-gate.test.js +219 -0
- package/dist/state/__tests__/planning-gate.test.js.map +1 -0
- package/dist/state/workflow-transition.d.ts +23 -0
- package/dist/state/workflow-transition.d.ts.map +1 -1
- package/dist/state/workflow-transition.js +63 -0
- package/dist/state/workflow-transition.js.map +1 -1
- package/dist/subagents/__tests__/tracker.test.js +69 -0
- package/dist/subagents/__tests__/tracker.test.js.map +1 -1
- package/dist/subagents/tracker.d.ts +5 -0
- package/dist/subagents/tracker.d.ts.map +1 -1
- package/dist/subagents/tracker.js +16 -0
- package/dist/subagents/tracker.js.map +1 -1
- package/dist/team/__tests__/tmux-session.test.js +86 -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 +7 -0
- package/dist/team/tmux-session.js.map +1 -1
- package/dist/ultragoal/__tests__/artifacts.test.js +126 -0
- package/dist/ultragoal/__tests__/artifacts.test.js.map +1 -1
- package/dist/ultragoal/artifacts.d.ts.map +1 -1
- package/dist/ultragoal/artifacts.js +126 -8
- package/dist/ultragoal/artifacts.js.map +1 -1
- package/package.json +1 -1
- package/plugins/oh-my-codex/.codex-plugin/plugin.json +1 -1
- package/plugins/oh-my-codex/skills/autopilot/SKILL.md +2 -2
- package/plugins/oh-my-codex/skills/deep-interview/SKILL.md +11 -1
- package/plugins/oh-my-codex/skills/omx-setup/SKILL.md +4 -4
- package/plugins/oh-my-codex/skills/plan/SKILL.md +5 -5
- package/plugins/oh-my-codex/skills/ralph/SKILL.md +1 -1
- package/plugins/oh-my-codex/skills/ralplan/SKILL.md +10 -6
- package/prompts/executor.md +1 -1
- package/prompts/explore-harness.md +2 -2
- package/prompts/explore.md +1 -1
- package/prompts/planner.md +1 -1
- package/prompts/scholastic.md +11 -0
- package/prompts/sisyphus-lite.md +1 -1
- package/skills/autopilot/SKILL.md +2 -2
- package/skills/deep-interview/SKILL.md +11 -1
- package/skills/omx-setup/SKILL.md +4 -4
- package/skills/plan/SKILL.md +5 -5
- package/skills/ralph/SKILL.md +1 -1
- package/skills/ralplan/SKILL.md +10 -6
- package/src/scripts/__tests__/codex-native-hook.test.ts +853 -0
- package/src/scripts/codex-native-hook.ts +73 -3
- package/src/scripts/notify-hook.ts +15 -0
- package/templates/AGENTS.md +3 -3
- package/templates/catalog-manifest.json +5 -0
|
@@ -26,6 +26,7 @@ describe('nested help routing', () => {
|
|
|
26
26
|
[['ask', '--help'], /Usage:\s*omx ask <claude\|gemini> <question or task>/i],
|
|
27
27
|
[['question', '--help'], /omx question - OMX-owned blocking user question entrypoint/i],
|
|
28
28
|
[['autoresearch', '--help'], /hard-deprecated legacy command surface[\s\S]*\$autoresearch/i],
|
|
29
|
+
[['explore', '--help'], /Usage:\s*omx explore --prompt "<prompt>"/i],
|
|
29
30
|
[['hud', '--help'], /Usage:\s*\n\s*omx hud\s+Show current HUD state/i],
|
|
30
31
|
[['hooks', '--help'], /Usage:\s*\n\s*omx hooks init/i],
|
|
31
32
|
[['state', '--help'], /Usage:\s*omx state <read\|write\|clear\|list-active\|get-status>/i],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nested-help-routing.test.js","sourceRoot":"","sources":["../../../src/cli/__tests__/nested-help-routing.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"nested-help-routing.test.js","sourceRoot":"","sources":["../../../src/cli/__tests__/nested-help-routing.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { describe, it } from 'node:test';
|
|
2
2
|
import assert from 'node:assert/strict';
|
|
3
|
-
import { mkdtemp, mkdir, readFile, rm, writeFile } from 'node:fs/promises';
|
|
3
|
+
import { mkdtemp, mkdir, readFile, readlink, rm, symlink, writeFile } from 'node:fs/promises';
|
|
4
4
|
import { existsSync, readFileSync } from 'node:fs';
|
|
5
5
|
import { join } from 'node:path';
|
|
6
6
|
import { tmpdir } from 'node:os';
|
|
@@ -262,6 +262,35 @@ describe('omx setup AGENTS refresh behavior', () => {
|
|
|
262
262
|
await rm(wd, { recursive: true, force: true });
|
|
263
263
|
}
|
|
264
264
|
});
|
|
265
|
+
it('preserves symlinked user-scope AGENTS.md during plugin-mode cleanup', async () => {
|
|
266
|
+
const wd = await mkdtemp(join(tmpdir(), 'omx-setup-plugin-agents-symlink-'));
|
|
267
|
+
const restoreTty = setMockTty(false);
|
|
268
|
+
const home = join(wd, 'home');
|
|
269
|
+
const restoreHome = setMockHome(home);
|
|
270
|
+
const dotfilesAgentsPath = join(wd, 'dotfiles', '.codex', 'AGENTS.md');
|
|
271
|
+
const codexAgentsPath = join(home, '.codex', 'AGENTS.md');
|
|
272
|
+
try {
|
|
273
|
+
await mkdir(join(wd, '.omx', 'state'), { recursive: true });
|
|
274
|
+
await mkdir(join(wd, 'dotfiles', '.codex'), { recursive: true });
|
|
275
|
+
await mkdir(join(home, '.codex'), { recursive: true });
|
|
276
|
+
await writeFile(dotfilesAgentsPath, addGeneratedAgentsMarker('# oh-my-codex - Intelligent Multi-Agent Orchestration\n\nDotfiles-owned guidance.\n'));
|
|
277
|
+
await symlink(dotfilesAgentsPath, codexAgentsPath);
|
|
278
|
+
const output = await runSetupWithCapturedLogs(wd, {
|
|
279
|
+
scope: 'user',
|
|
280
|
+
installMode: 'plugin',
|
|
281
|
+
force: true,
|
|
282
|
+
});
|
|
283
|
+
assert.match(output, /AGENTS\.md generation skipped; no legacy OMX-generated AGENTS\.md found and defaults not selected\./);
|
|
284
|
+
assert.equal(await readlink(codexAgentsPath), dotfilesAgentsPath);
|
|
285
|
+
assert.match(await readFile(codexAgentsPath, 'utf-8'), /Dotfiles-owned guidance\./);
|
|
286
|
+
assert.match(output, /agents_md: updated=0, unchanged=0, backed_up=0, skipped=1, removed=0/);
|
|
287
|
+
}
|
|
288
|
+
finally {
|
|
289
|
+
restoreHome();
|
|
290
|
+
restoreTty();
|
|
291
|
+
await rm(wd, { recursive: true, force: true });
|
|
292
|
+
}
|
|
293
|
+
});
|
|
265
294
|
it('merges OMX-managed sections into an unmarked user-authored AGENTS.md when explicitly requested', async () => {
|
|
266
295
|
const wd = await mkdtemp(join(tmpdir(), 'omx-setup-agents-'));
|
|
267
296
|
const restoreTty = setMockTty(false);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-agents-overwrite.test.js","sourceRoot":"","sources":["../../../src/cli/__tests__/setup-agents-overwrite.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setup-agents-overwrite.test.js","sourceRoot":"","sources":["../../../src/cli/__tests__/setup-agents-overwrite.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -367,7 +367,7 @@ async function assertProjectPluginModeArtifacts(wd) {
|
|
|
367
367
|
assert.match(config, /^goals = true$/m);
|
|
368
368
|
assert.doesNotMatch(config, /developer_instructions|notify-hook/g);
|
|
369
369
|
assert.equal(existsSync(join(wd, ".codex", "skills", "ask", "SKILL.md")), false);
|
|
370
|
-
assert.equal(existsSync(join(wd, ".codex", "agents", "planner.toml")),
|
|
370
|
+
assert.equal(existsSync(join(wd, ".codex", "agents", "planner.toml")), true);
|
|
371
371
|
assert.equal(existsSync(join(wd, ".codex", "prompts", "executor.md")), false);
|
|
372
372
|
assert.equal(existsSync(join(wd, "AGENTS.md")), false);
|
|
373
373
|
const persisted = JSON.parse(await readFile(join(wd, ".omx", "setup-scope.json"), "utf-8"));
|
|
@@ -604,17 +604,23 @@ describe("omx setup install mode behavior", () => {
|
|
|
604
604
|
await rm(wd, { recursive: true, force: true });
|
|
605
605
|
}
|
|
606
606
|
});
|
|
607
|
-
it("
|
|
607
|
+
it("installs native agent TOML files in plugin mode so agent_type roles are available", async () => {
|
|
608
608
|
const wd = await mkdtemp(join(tmpdir(), "omx-setup-install-mode-"));
|
|
609
609
|
try {
|
|
610
|
-
await withIsolatedUserHome(wd, async () => {
|
|
610
|
+
await withIsolatedUserHome(wd, async (codexHomeDir) => {
|
|
611
611
|
const output = await runSetupWithCapturedLogs(wd, {
|
|
612
612
|
scope: "user",
|
|
613
613
|
installMode: "plugin",
|
|
614
614
|
});
|
|
615
615
|
assert.match(output, /Next steps:/);
|
|
616
616
|
assert.match(output, /Registered Codex marketplace oh-my-codex-local supplies OMX skills and workflow surfaces/);
|
|
617
|
-
assert.
|
|
617
|
+
assert.match(output, /Native agent role TOML files written to \.codex\/agents\//);
|
|
618
|
+
for (const role of ["architect", "critic", "scholastic"]) {
|
|
619
|
+
const tomlPath = join(codexHomeDir, "agents", `${role}.toml`);
|
|
620
|
+
assert.equal(existsSync(tomlPath), true, `${role}.toml should exist`);
|
|
621
|
+
const toml = await readFile(tomlPath, "utf-8");
|
|
622
|
+
assert.match(toml, new RegExp(`^name = "${role}"$`, "m"));
|
|
623
|
+
}
|
|
618
624
|
});
|
|
619
625
|
}
|
|
620
626
|
finally {
|
|
@@ -959,7 +965,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
959
965
|
assert.doesNotMatch(config, /^codex_hooks = true$/m);
|
|
960
966
|
assert.doesNotMatch(config, /\[mcp_servers\./);
|
|
961
967
|
assert.equal(existsSync(join(codexHomeDir, "skills", "ask", "SKILL.md")), false);
|
|
962
|
-
assert.equal(existsSync(join(codexHomeDir, "agents", "planner.toml")),
|
|
968
|
+
assert.equal(existsSync(join(codexHomeDir, "agents", "planner.toml")), true);
|
|
963
969
|
assert.equal(existsSync(join(codexHomeDir, "prompts", "executor.md")), false);
|
|
964
970
|
});
|
|
965
971
|
});
|
|
@@ -1131,7 +1137,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
1131
1137
|
assert.doesNotMatch(config, /\[hooks\.state\./);
|
|
1132
1138
|
assert.doesNotMatch(config, /developer_instructions|notify-hook/g);
|
|
1133
1139
|
assert.equal(existsSync(join(codexHomeDir, "skills", "ask", "SKILL.md")), false);
|
|
1134
|
-
assert.equal(existsSync(join(codexHomeDir, "agents", "planner.toml")),
|
|
1140
|
+
assert.equal(existsSync(join(codexHomeDir, "agents", "planner.toml")), true);
|
|
1135
1141
|
assert.equal(existsSync(join(codexHomeDir, "prompts", "executor.md")), false);
|
|
1136
1142
|
assert.equal(existsSync(join(codexHomeDir, "AGENTS.md")), false);
|
|
1137
1143
|
});
|
|
@@ -1154,13 +1160,13 @@ describe("omx setup install mode behavior", () => {
|
|
|
1154
1160
|
});
|
|
1155
1161
|
assert.equal(existsSync(join(codexHomeDir, "hooks.json")), false);
|
|
1156
1162
|
assert.equal(existsSync(join(codexHomeDir, "skills", "ask", "SKILL.md")), false);
|
|
1157
|
-
assert.equal(existsSync(join(codexHomeDir, "agents", "planner.toml")),
|
|
1163
|
+
assert.equal(existsSync(join(codexHomeDir, "agents", "planner.toml")), true);
|
|
1158
1164
|
assert.equal(existsSync(join(codexHomeDir, "prompts", "executor.md")), false);
|
|
1159
1165
|
const config = await readFile(join(codexHomeDir, "config.toml"), "utf-8");
|
|
1160
1166
|
assert.match(config, /developer_instructions\s*=/);
|
|
1161
|
-
assert.match(config, /Registered Codex plugin marketplace surfaces supply OMX workflows
|
|
1167
|
+
assert.match(config, /Registered Codex plugin marketplace surfaces supply OMX workflows and plugin-scoped companion resources/);
|
|
1162
1168
|
assert.match(config, /User-installed skills may still live under ~\/.codex\/skills/);
|
|
1163
|
-
assert.match(config, /
|
|
1169
|
+
assert.match(config, /native agent roles are installed as setup-owned Codex agent TOML files in plugin mode so agent_type routing works/i);
|
|
1164
1170
|
assert.doesNotMatch(config, /Native subagents live in \.codex\/agents/);
|
|
1165
1171
|
assert.doesNotMatch(config, /Treat installed prompts as narrower execution surfaces/);
|
|
1166
1172
|
assert.match(config, /^plugin_hooks = true$/m);
|
|
@@ -1175,9 +1181,9 @@ describe("omx setup install mode behavior", () => {
|
|
|
1175
1181
|
assert.match(agentsMd, /<guidance_schema_contract>/);
|
|
1176
1182
|
assert.match(agentsMd, /<execution_protocols>/);
|
|
1177
1183
|
assert.match(agentsMd, /AGENTS\.md is the top-level operating contract/);
|
|
1178
|
-
assert.match(agentsMd, /Registered Codex plugin marketplace surfaces supply OMX workflows
|
|
1184
|
+
assert.match(agentsMd, /Registered Codex plugin marketplace surfaces supply OMX workflows and plugin-scoped companion resources/);
|
|
1179
1185
|
assert.match(agentsMd, /User-installed skills may still live under `~\/.codex\/skills`/);
|
|
1180
|
-
assert.match(agentsMd, /
|
|
1186
|
+
assert.match(agentsMd, /native agent roles are installed as setup-owned Codex agent TOML files in plugin mode so agent_type routing works/i);
|
|
1181
1187
|
assert.doesNotMatch(agentsMd, /Role prompts under `prompts\/\*\.md`/);
|
|
1182
1188
|
assert.doesNotMatch(agentsMd, /load the installed prompt\/skill\/agent surfaces from/);
|
|
1183
1189
|
});
|
|
@@ -1199,7 +1205,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
1199
1205
|
pluginDeveloperInstructionsPrompt: async () => false,
|
|
1200
1206
|
});
|
|
1201
1207
|
const agentsMd = await readFile(join(wd, "AGENTS.md"), "utf-8");
|
|
1202
|
-
assert.match(agentsMd, /Registered Codex plugin marketplace surfaces supply OMX workflows
|
|
1208
|
+
assert.match(agentsMd, /Registered Codex plugin marketplace surfaces supply OMX workflows and plugin-scoped companion resources/);
|
|
1203
1209
|
assert.match(agentsMd, /User-installed skills may still live under `\.\/.codex\/skills` for project scope, or `~\/.codex\/skills` for user-installed skills/);
|
|
1204
1210
|
assert.doesNotMatch(agentsMd, /`~\/.codex\/prompts`/);
|
|
1205
1211
|
assert.doesNotMatch(agentsMd, /`~\/.codex\/agents`/);
|
|
@@ -1336,6 +1342,53 @@ describe("omx setup install mode behavior", () => {
|
|
|
1336
1342
|
await rm(wd, { recursive: true, force: true });
|
|
1337
1343
|
}
|
|
1338
1344
|
});
|
|
1345
|
+
it("preserves same-key user hook trust state in plugin-scoped setup", async () => {
|
|
1346
|
+
const wd = await mkdtemp(join(tmpdir(), "omx-setup-install-mode-"));
|
|
1347
|
+
try {
|
|
1348
|
+
await withIsolatedUserHome(wd, async (codexHomeDir) => {
|
|
1349
|
+
await withTempCwd(wd, async () => {
|
|
1350
|
+
const hooksPath = join(codexHomeDir, "hooks.json");
|
|
1351
|
+
const configPath = join(codexHomeDir, "config.toml");
|
|
1352
|
+
await writeFile(hooksPath, JSON.stringify({
|
|
1353
|
+
hooks: {
|
|
1354
|
+
PostCompact: [
|
|
1355
|
+
{
|
|
1356
|
+
hooks: [
|
|
1357
|
+
{
|
|
1358
|
+
type: "command",
|
|
1359
|
+
command: "/usr/bin/python3 /tmp/user-hook.py",
|
|
1360
|
+
timeout: 5,
|
|
1361
|
+
},
|
|
1362
|
+
],
|
|
1363
|
+
},
|
|
1364
|
+
],
|
|
1365
|
+
},
|
|
1366
|
+
}, null, 2) + "\n");
|
|
1367
|
+
await writeFile(configPath, [
|
|
1368
|
+
'model = "gpt-5.5"',
|
|
1369
|
+
"",
|
|
1370
|
+
`[hooks.state."${hooksPath}:post_compact:0:0"]`,
|
|
1371
|
+
'trusted_hash = "sha256:user"',
|
|
1372
|
+
"enabled = false",
|
|
1373
|
+
"",
|
|
1374
|
+
].join("\n"));
|
|
1375
|
+
await setup({ scope: "user", installMode: "plugin" });
|
|
1376
|
+
const config = await readFile(configPath, "utf-8");
|
|
1377
|
+
assert.match(config, /^plugin_hooks = true$/m);
|
|
1378
|
+
assert.match(config, /^trusted_hash = "sha256:user"$/m);
|
|
1379
|
+
assert.match(config, /^enabled = false$/m);
|
|
1380
|
+
assert.equal(config
|
|
1381
|
+
.split(/\r?\n/)
|
|
1382
|
+
.filter((line) => line.trim() ===
|
|
1383
|
+
`[hooks.state."${hooksPath}:post_compact:0:0"]`).length, 1, "plugin setup must not duplicate preserved user hook trust state");
|
|
1384
|
+
assert.doesNotThrow(() => parseToml(config));
|
|
1385
|
+
});
|
|
1386
|
+
});
|
|
1387
|
+
}
|
|
1388
|
+
finally {
|
|
1389
|
+
await rm(wd, { recursive: true, force: true });
|
|
1390
|
+
}
|
|
1391
|
+
});
|
|
1339
1392
|
it("honors persisted project-scoped plugin mode on repeat setup", async () => {
|
|
1340
1393
|
const wd = await mkdtemp(join(tmpdir(), "omx-setup-install-mode-"));
|
|
1341
1394
|
try {
|
|
@@ -1349,7 +1402,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
1349
1402
|
});
|
|
1350
1403
|
await setup({ scope: "project" });
|
|
1351
1404
|
assert.equal(existsSync(join(wd, ".codex", "skills", "ask", "SKILL.md")), false);
|
|
1352
|
-
assert.equal(existsSync(join(wd, ".codex", "agents", "planner.toml")),
|
|
1405
|
+
assert.equal(existsSync(join(wd, ".codex", "agents", "planner.toml")), true);
|
|
1353
1406
|
assert.equal(existsSync(join(wd, ".codex", "prompts", "executor.md")), false);
|
|
1354
1407
|
assert.equal(existsSync(join(wd, ".codex", "hooks.json")), false);
|
|
1355
1408
|
});
|
|
@@ -1520,7 +1573,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
1520
1573
|
await setup({ scope: "user", installMode: "plugin" });
|
|
1521
1574
|
assert.equal(existsSync(askSkillPath), false);
|
|
1522
1575
|
assert.equal(existsSync(promptPath), false);
|
|
1523
|
-
assert.equal(existsSync(agentPath),
|
|
1576
|
+
assert.equal(existsSync(agentPath), true);
|
|
1524
1577
|
assert.equal(existsSync(hooksPath), false);
|
|
1525
1578
|
assert.equal(existsSync(agentsMdPath), false);
|
|
1526
1579
|
const config = await readFile(configPath, "utf-8");
|
|
@@ -1533,7 +1586,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
1533
1586
|
await rm(wd, { recursive: true, force: true });
|
|
1534
1587
|
}
|
|
1535
1588
|
});
|
|
1536
|
-
it("archives stale legacy prompts and generated native agents when plugin mode refreshes", async () => {
|
|
1589
|
+
it("archives stale legacy prompts and refreshes generated native agents when plugin mode refreshes", async () => {
|
|
1537
1590
|
const wd = await mkdtemp(join(tmpdir(), "omx-setup-install-mode-"));
|
|
1538
1591
|
try {
|
|
1539
1592
|
await withIsolatedUserHome(wd, async (codexHomeDir) => {
|
|
@@ -1553,9 +1606,10 @@ describe("omx setup install mode behavior", () => {
|
|
|
1553
1606
|
await setup({ scope: "user", installMode: "plugin" });
|
|
1554
1607
|
});
|
|
1555
1608
|
assert.equal(existsSync(promptPath), false);
|
|
1556
|
-
assert.equal(existsSync(agentPath),
|
|
1609
|
+
assert.equal(existsSync(agentPath), true);
|
|
1610
|
+
assert.match(await readFile(agentPath, "utf-8"), /^name = "planner"$/m);
|
|
1557
1611
|
assert.match(output, /Archived and removed .* legacy OMX-managed prompt file/);
|
|
1558
|
-
assert.match(output, /
|
|
1612
|
+
assert.match(output, /Native agent role refresh complete/);
|
|
1559
1613
|
const backupRoot = join(wd, "home", ".omx", "backups", "setup");
|
|
1560
1614
|
const backupRuns = await readdir(backupRoot);
|
|
1561
1615
|
assert.ok(backupRuns.length > 0);
|
|
@@ -1568,6 +1622,38 @@ describe("omx setup install mode behavior", () => {
|
|
|
1568
1622
|
await rm(wd, { recursive: true, force: true });
|
|
1569
1623
|
}
|
|
1570
1624
|
});
|
|
1625
|
+
it("preserves unmanaged native agent TOMLs with obsolete skill_ref during plugin refresh", async () => {
|
|
1626
|
+
const wd = await mkdtemp(join(tmpdir(), "omx-setup-install-mode-"));
|
|
1627
|
+
try {
|
|
1628
|
+
await withIsolatedUserHome(wd, async (codexHomeDir) => {
|
|
1629
|
+
await withTempCwd(wd, async () => {
|
|
1630
|
+
await setup({ scope: "user", installMode: "legacy" });
|
|
1631
|
+
const customAgentPath = join(codexHomeDir, "agents", "custom-reviewer.toml");
|
|
1632
|
+
const generatedAgentPath = join(codexHomeDir, "agents", "ghost.toml");
|
|
1633
|
+
const customAgentToml = [
|
|
1634
|
+
'name = "custom-reviewer"',
|
|
1635
|
+
'description = "user-managed reviewer"',
|
|
1636
|
+
'skill_ref = "custom-reviewer"',
|
|
1637
|
+
"",
|
|
1638
|
+
].join("\n");
|
|
1639
|
+
await writeFile(customAgentPath, customAgentToml);
|
|
1640
|
+
await writeFile(generatedAgentPath, [
|
|
1641
|
+
"# oh-my-codex agent: ghost",
|
|
1642
|
+
'name = "ghost"',
|
|
1643
|
+
'description = "obsolete generated reviewer"',
|
|
1644
|
+
'skill_ref = "ghost"',
|
|
1645
|
+
"",
|
|
1646
|
+
].join("\n"));
|
|
1647
|
+
await setup({ scope: "user", installMode: "plugin" });
|
|
1648
|
+
assert.equal(await readFile(customAgentPath, "utf-8"), customAgentToml);
|
|
1649
|
+
assert.equal(existsSync(generatedAgentPath), false);
|
|
1650
|
+
});
|
|
1651
|
+
});
|
|
1652
|
+
}
|
|
1653
|
+
finally {
|
|
1654
|
+
await rm(wd, { recursive: true, force: true });
|
|
1655
|
+
}
|
|
1656
|
+
});
|
|
1571
1657
|
it("counts plugin cleanup skill directory backups in the setup summary", async () => {
|
|
1572
1658
|
const wd = await mkdtemp(join(tmpdir(), "omx-setup-install-mode-"));
|
|
1573
1659
|
try {
|