lazycodex-ai 5.1.6 → 5.1.7

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 (60) hide show
  1. package/dist/cli/index.js +40 -16
  2. package/dist/cli/run/runnable-agent-resolver.d.ts +3 -0
  3. package/dist/cli-node/index.js +40 -16
  4. package/package.json +1 -1
  5. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
  6. package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +7 -0
  7. package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
  8. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  9. package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
  10. package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
  11. package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
  12. package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
  13. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
  14. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
  15. package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +2 -2
  16. package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
  17. package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
  18. package/packages/omo-codex/plugin/components/rules/README.md +0 -1
  19. package/packages/omo-codex/plugin/components/rules/bundled-rules/hephaestus/gpt-5.5.md +1 -1
  20. package/packages/omo-codex/plugin/components/rules/bundled-rules/hephaestus/gpt-5.6.md +1 -1
  21. package/packages/omo-codex/plugin/components/rules/bundled-rules/hephaestus/gpt-6.md +1 -1
  22. package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
  23. package/packages/omo-codex/plugin/components/rules/package.json +1 -1
  24. package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
  25. package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
  26. package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
  27. package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
  28. package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
  29. package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
  30. package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +1 -1
  31. package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
  32. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +5 -5
  33. package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
  34. package/packages/omo-codex/plugin/components/ulw-loop/test/spawn-role-matrix.test.ts +16 -0
  35. package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
  36. package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
  37. package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
  38. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
  39. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
  40. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
  41. package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
  42. package/packages/omo-codex/plugin/hooks/post-tool-use-recording-spawn-admission.json +1 -1
  43. package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
  44. package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
  45. package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
  46. package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
  47. package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
  48. package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
  49. package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
  50. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +1 -1
  51. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
  52. package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
  53. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
  54. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
  55. package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
  56. package/packages/omo-codex/plugin/package-lock.json +12 -12
  57. package/packages/omo-codex/plugin/package.json +1 -1
  58. package/packages/omo-codex/plugin/skills/browser/runtime/omowright/manifest.json +1 -1
  59. package/packages/omo-codex/scripts/install-dist/install-local.mjs +9 -2
  60. package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +1 -1
package/dist/cli/index.js CHANGED
@@ -64,7 +64,7 @@ var package_default;
64
64
  var init_package = __esm(() => {
65
65
  package_default = {
66
66
  name: "oh-my-opencode",
67
- version: "5.1.6",
67
+ version: "5.1.7",
68
68
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
69
69
  main: "./dist/index.js",
70
70
  types: "dist/index.d.ts",
@@ -299,18 +299,18 @@ var init_package = __esm(() => {
299
299
  typescript: "^7.0.2"
300
300
  },
301
301
  optionalDependencies: {
302
- "oh-my-opencode-darwin-arm64": "5.1.6",
303
- "oh-my-opencode-darwin-x64": "5.1.6",
304
- "oh-my-opencode-darwin-x64-baseline": "5.1.6",
305
- "oh-my-opencode-linux-arm64": "5.1.6",
306
- "oh-my-opencode-linux-arm64-musl": "5.1.6",
307
- "oh-my-opencode-linux-x64": "5.1.6",
308
- "oh-my-opencode-linux-x64-baseline": "5.1.6",
309
- "oh-my-opencode-linux-x64-musl": "5.1.6",
310
- "oh-my-opencode-linux-x64-musl-baseline": "5.1.6",
311
- "oh-my-opencode-windows-arm64": "5.1.6",
312
- "oh-my-opencode-windows-x64": "5.1.6",
313
- "oh-my-opencode-windows-x64-baseline": "5.1.6"
302
+ "oh-my-opencode-darwin-arm64": "5.1.7",
303
+ "oh-my-opencode-darwin-x64": "5.1.7",
304
+ "oh-my-opencode-darwin-x64-baseline": "5.1.7",
305
+ "oh-my-opencode-linux-arm64": "5.1.7",
306
+ "oh-my-opencode-linux-arm64-musl": "5.1.7",
307
+ "oh-my-opencode-linux-x64": "5.1.7",
308
+ "oh-my-opencode-linux-x64-baseline": "5.1.7",
309
+ "oh-my-opencode-linux-x64-musl": "5.1.7",
310
+ "oh-my-opencode-linux-x64-musl-baseline": "5.1.7",
311
+ "oh-my-opencode-windows-arm64": "5.1.7",
312
+ "oh-my-opencode-windows-x64": "5.1.7",
313
+ "oh-my-opencode-windows-x64-baseline": "5.1.7"
314
314
  },
315
315
  overrides: {
316
316
  hono: "^4.13.8",
@@ -89377,7 +89377,7 @@ var package_default2;
89377
89377
  var init_package2 = __esm(() => {
89378
89378
  package_default2 = {
89379
89379
  name: "@oh-my-opencode/omo-codex",
89380
- version: "5.1.6",
89380
+ version: "5.1.7",
89381
89381
  type: "module",
89382
89382
  private: true,
89383
89383
  description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
@@ -95097,6 +95097,12 @@ ${featureName} = true
95097
95097
  }
95098
95098
  return replaceOrInsertSetting(config, section, featureName, "true");
95099
95099
  }
95100
+ function removeFeature(config, featureName) {
95101
+ const section = findTomlSection(config, "features");
95102
+ if (section !== null)
95103
+ return removeSetting(config, section, featureName);
95104
+ return removeRootSetting(config, `features.${featureName}`);
95105
+ }
95100
95106
 
95101
95107
  // packages/omo-codex/src/install/codex-config-marketplaces.ts
95102
95108
  var SISYPHUS_LEGACY_MARKETPLACES = ["lazycodex", "code-yeongyu-codex-plugins"];
@@ -95689,6 +95695,7 @@ async function updateCodexConfig(input) {
95689
95695
  config = ensureFeatureEnabled(config, "plugins");
95690
95696
  config = ensureFeatureEnabled(config, "plugin_hooks");
95691
95697
  config = ensureFeatureEnabled(config, "multi_agent");
95698
+ config = removeFeature(config, "child_agents_md");
95692
95699
  config = removeUnsupportedCodexMultiAgentModeConfig(config);
95693
95700
  config = ensureCodexReasoningConfig(config, applyReasoningOverride(await readCodexModelCatalog(input.repoRoot), input.reasoning));
95694
95701
  config = ensureCodexMultiAgentV2Config(config, {
@@ -105346,12 +105353,25 @@ async function resolveRunnableRunAgent(client, resolvedAgent, config = {}) {
105346
105353
  })?.name;
105347
105354
  if (configuredAgent)
105348
105355
  return configuredAgent;
105349
- return agents.find((agent) => {
105356
+ const matched = agents.find((agent) => {
105350
105357
  if (!agent.name)
105351
105358
  return false;
105352
105359
  return getAgentConfigKey(agent.name) === resolvedConfigKey;
105353
- })?.name ?? resolvedAgent;
105360
+ })?.name;
105361
+ if (matched)
105362
+ return matched;
105363
+ const registered = agents.map((agent) => agent.name).filter((name) => Boolean(name));
105364
+ const parsedCategory = BuiltinCategoryNameSchema.safeParse(resolvedConfigKey);
105365
+ if (parsedCategory.success) {
105366
+ throw new UnknownRunAgentError(`"${resolvedAgent}" is a task() category, not a CLI agent. Categories: ${BuiltinCategoryNameSchema.options.join(", ")}. Runnable agents: ${registered.join(", ") || "(none)"}.`);
105367
+ }
105368
+ if (registered.length > 0) {
105369
+ throw new UnknownRunAgentError(`Unknown agent "${resolvedAgent}". Runnable agents: ${registered.join(", ")}.`);
105370
+ }
105371
+ return resolvedAgent;
105354
105372
  } catch (error) {
105373
+ if (error instanceof UnknownRunAgentError)
105374
+ throw error;
105355
105375
  if (!(error instanceof Error)) {
105356
105376
  throw error;
105357
105377
  }
@@ -105359,6 +105379,10 @@ async function resolveRunnableRunAgent(client, resolvedAgent, config = {}) {
105359
105379
  }
105360
105380
  }
105361
105381
 
105382
+ class UnknownRunAgentError extends Error {
105383
+ name = "UnknownRunAgentError";
105384
+ }
105385
+
105362
105386
  // packages/omo-opencode/src/cli/run/runner.ts
105363
105387
  var EVENT_PROCESSOR_SHUTDOWN_TIMEOUT_MS = 2000;
105364
105388
  async function waitForEventProcessorShutdown(eventProcessor, timeoutMs = EVENT_PROCESSOR_SHUTDOWN_TIMEOUT_MS) {
@@ -9,3 +9,6 @@ export interface RunAgentDisplayNameConfig {
9
9
  } | undefined>>;
10
10
  }
11
11
  export declare function resolveRunnableRunAgent(client: RunAgentListClient, resolvedAgent: string, config?: RunAgentDisplayNameConfig): Promise<string>;
12
+ export declare class UnknownRunAgentError extends Error {
13
+ readonly name = "UnknownRunAgentError";
14
+ }
@@ -65,7 +65,7 @@ var package_default;
65
65
  var init_package = __esm(() => {
66
66
  package_default = {
67
67
  name: "oh-my-opencode",
68
- version: "5.1.6",
68
+ version: "5.1.7",
69
69
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
70
70
  main: "./dist/index.js",
71
71
  types: "dist/index.d.ts",
@@ -300,18 +300,18 @@ var init_package = __esm(() => {
300
300
  typescript: "^7.0.2"
301
301
  },
302
302
  optionalDependencies: {
303
- "oh-my-opencode-darwin-arm64": "5.1.6",
304
- "oh-my-opencode-darwin-x64": "5.1.6",
305
- "oh-my-opencode-darwin-x64-baseline": "5.1.6",
306
- "oh-my-opencode-linux-arm64": "5.1.6",
307
- "oh-my-opencode-linux-arm64-musl": "5.1.6",
308
- "oh-my-opencode-linux-x64": "5.1.6",
309
- "oh-my-opencode-linux-x64-baseline": "5.1.6",
310
- "oh-my-opencode-linux-x64-musl": "5.1.6",
311
- "oh-my-opencode-linux-x64-musl-baseline": "5.1.6",
312
- "oh-my-opencode-windows-arm64": "5.1.6",
313
- "oh-my-opencode-windows-x64": "5.1.6",
314
- "oh-my-opencode-windows-x64-baseline": "5.1.6"
303
+ "oh-my-opencode-darwin-arm64": "5.1.7",
304
+ "oh-my-opencode-darwin-x64": "5.1.7",
305
+ "oh-my-opencode-darwin-x64-baseline": "5.1.7",
306
+ "oh-my-opencode-linux-arm64": "5.1.7",
307
+ "oh-my-opencode-linux-arm64-musl": "5.1.7",
308
+ "oh-my-opencode-linux-x64": "5.1.7",
309
+ "oh-my-opencode-linux-x64-baseline": "5.1.7",
310
+ "oh-my-opencode-linux-x64-musl": "5.1.7",
311
+ "oh-my-opencode-linux-x64-musl-baseline": "5.1.7",
312
+ "oh-my-opencode-windows-arm64": "5.1.7",
313
+ "oh-my-opencode-windows-x64": "5.1.7",
314
+ "oh-my-opencode-windows-x64-baseline": "5.1.7"
315
315
  },
316
316
  overrides: {
317
317
  hono: "^4.13.8",
@@ -89456,7 +89456,7 @@ var package_default2;
89456
89456
  var init_package2 = __esm(() => {
89457
89457
  package_default2 = {
89458
89458
  name: "@oh-my-opencode/omo-codex",
89459
- version: "5.1.6",
89459
+ version: "5.1.7",
89460
89460
  type: "module",
89461
89461
  private: true,
89462
89462
  description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
@@ -95176,6 +95176,12 @@ ${featureName} = true
95176
95176
  }
95177
95177
  return replaceOrInsertSetting(config, section, featureName, "true");
95178
95178
  }
95179
+ function removeFeature(config, featureName) {
95180
+ const section = findTomlSection(config, "features");
95181
+ if (section !== null)
95182
+ return removeSetting(config, section, featureName);
95183
+ return removeRootSetting(config, `features.${featureName}`);
95184
+ }
95179
95185
 
95180
95186
  // packages/omo-codex/src/install/codex-config-marketplaces.ts
95181
95187
  var SISYPHUS_LEGACY_MARKETPLACES = ["lazycodex", "code-yeongyu-codex-plugins"];
@@ -95768,6 +95774,7 @@ async function updateCodexConfig(input) {
95768
95774
  config = ensureFeatureEnabled(config, "plugins");
95769
95775
  config = ensureFeatureEnabled(config, "plugin_hooks");
95770
95776
  config = ensureFeatureEnabled(config, "multi_agent");
95777
+ config = removeFeature(config, "child_agents_md");
95771
95778
  config = removeUnsupportedCodexMultiAgentModeConfig(config);
95772
95779
  config = ensureCodexReasoningConfig(config, applyReasoningOverride(await readCodexModelCatalog(input.repoRoot), input.reasoning));
95773
95780
  config = ensureCodexMultiAgentV2Config(config, {
@@ -105425,12 +105432,25 @@ async function resolveRunnableRunAgent(client, resolvedAgent, config = {}) {
105425
105432
  })?.name;
105426
105433
  if (configuredAgent)
105427
105434
  return configuredAgent;
105428
- return agents.find((agent) => {
105435
+ const matched = agents.find((agent) => {
105429
105436
  if (!agent.name)
105430
105437
  return false;
105431
105438
  return getAgentConfigKey(agent.name) === resolvedConfigKey;
105432
- })?.name ?? resolvedAgent;
105439
+ })?.name;
105440
+ if (matched)
105441
+ return matched;
105442
+ const registered = agents.map((agent) => agent.name).filter((name) => Boolean(name));
105443
+ const parsedCategory = BuiltinCategoryNameSchema.safeParse(resolvedConfigKey);
105444
+ if (parsedCategory.success) {
105445
+ throw new UnknownRunAgentError(`"${resolvedAgent}" is a task() category, not a CLI agent. Categories: ${BuiltinCategoryNameSchema.options.join(", ")}. Runnable agents: ${registered.join(", ") || "(none)"}.`);
105446
+ }
105447
+ if (registered.length > 0) {
105448
+ throw new UnknownRunAgentError(`Unknown agent "${resolvedAgent}". Runnable agents: ${registered.join(", ")}.`);
105449
+ }
105450
+ return resolvedAgent;
105433
105451
  } catch (error) {
105452
+ if (error instanceof UnknownRunAgentError)
105453
+ throw error;
105434
105454
  if (!(error instanceof Error)) {
105435
105455
  throw error;
105436
105456
  }
@@ -105438,6 +105458,10 @@ async function resolveRunnableRunAgent(client, resolvedAgent, config = {}) {
105438
105458
  }
105439
105459
  }
105440
105460
 
105461
+ class UnknownRunAgentError extends Error {
105462
+ name = "UnknownRunAgentError";
105463
+ }
105464
+
105441
105465
  // packages/omo-opencode/src/cli/run/runner.ts
105442
105466
  var EVENT_PROCESSOR_SHUTDOWN_TIMEOUT_MS = 2000;
105443
105467
  async function waitForEventProcessorShutdown(eventProcessor, timeoutMs = EVENT_PROCESSOR_SHUTDOWN_TIMEOUT_MS) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lazycodex-ai",
3
- "version": "5.1.6",
3
+ "version": "5.1.7",
4
4
  "description": "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
5
5
  "main": "./dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omo",
3
- "version": "5.1.6",
3
+ "version": "5.1.7",
4
4
  "description": "One Codex plugin namespace for Yeongyu's local Codex components.",
5
5
  "author": {
6
6
  "name": "Yeongyu Kim",
@@ -11223,6 +11223,12 @@ ${featureName} = true
11223
11223
  }
11224
11224
  return replaceOrInsertSetting(config, section, featureName, "true");
11225
11225
  }
11226
+ function removeFeature(config, featureName) {
11227
+ const section = findTomlSection(config, "features");
11228
+ if (section !== null)
11229
+ return removeSetting(config, section, featureName);
11230
+ return removeRootSetting(config, `features.${featureName}`);
11231
+ }
11226
11232
 
11227
11233
  // ../src/install/codex-config-marketplaces.ts
11228
11234
  var SISYPHUS_LEGACY_MARKETPLACES = ["lazycodex", "code-yeongyu-codex-plugins"];
@@ -11815,6 +11821,7 @@ async function updateCodexConfig(input) {
11815
11821
  config = ensureFeatureEnabled(config, "plugins");
11816
11822
  config = ensureFeatureEnabled(config, "plugin_hooks");
11817
11823
  config = ensureFeatureEnabled(config, "multi_agent");
11824
+ config = removeFeature(config, "child_agents_md");
11818
11825
  config = removeUnsupportedCodexMultiAgentModeConfig(config);
11819
11826
  config = ensureCodexReasoningConfig(config, applyReasoningOverride(await readCodexModelCatalog(input.repoRoot), input.reasoning));
11820
11827
  config = ensureCodexMultiAgentV2Config(config, {
@@ -8,7 +8,7 @@
8
8
  "command": "node \"${PLUGIN_ROOT}/components/bootstrap/dist/cli.js\" hook session-start",
9
9
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\bootstrap.ps1\"",
10
10
  "timeout": 30,
11
- "statusMessage": "(OmO 5.1.6) Checking Bootstrap Provisioning"
11
+ "statusMessage": "(OmO 5.1.7) Checking Bootstrap Provisioning"
12
12
  }
13
13
  ]
14
14
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sisyphuslabs/codex-bootstrap",
3
- "version": "5.1.6",
3
+ "version": "5.1.7",
4
4
  "description": "Codex SessionStart bootstrap component that provisions LazyCodex runtime dependencies from a detached worker.",
5
5
  "type": "module",
6
6
  "private": true,
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
10
10
  "timeout": 30,
11
- "statusMessage": "(OmO 5.1.6) Checking Comments"
11
+ "statusMessage": "(OmO 5.1.7) Checking Comments"
12
12
  }
13
13
  ]
14
14
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-comment-checker",
3
- "version": "5.1.6",
3
+ "version": "5.1.7",
4
4
  "description": "Codex plugin that runs comment-checker after edit-like PostToolUse hooks.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook pre-tool-use",
10
10
  "timeout": 5,
11
- "statusMessage": "(OmO 5.1.6) Recommending Git Bash MCP"
11
+ "statusMessage": "(OmO 5.1.7) Recommending Git Bash MCP"
12
12
  }
13
13
  ]
14
14
  }
@@ -20,7 +20,7 @@
20
20
  "type": "command",
21
21
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
22
22
  "timeout": 5,
23
- "statusMessage": "(OmO 5.1.6) Resetting Git Bash MCP Reminder"
23
+ "statusMessage": "(OmO 5.1.7) Resetting Git Bash MCP Reminder"
24
24
  }
25
25
  ]
26
26
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sisyphuslabs/codex-git-bash-hook",
3
- "version": "5.1.6",
3
+ "version": "5.1.7",
4
4
  "description": "Codex hook component that reminds Windows sessions to prefer the OMO git_bash MCP.",
5
5
  "type": "module",
6
6
  "private": true,
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/components/lazycodex-executor-verify/dist/cli.js\" hook subagent-stop",
10
10
  "timeout": 10,
11
- "statusMessage": "(OmO 5.1.6) Verifying LazyCodex Executor Evidence"
11
+ "statusMessage": "(OmO 5.1.7) Verifying LazyCodex Executor Evidence"
12
12
  }
13
13
  ]
14
14
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-lazycodex-executor-verify",
3
- "version": "5.1.6",
3
+ "version": "5.1.7",
4
4
  "description": "Codex SubagentStop evidence verifier for LazyCodex executor completions.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "version": "5.1.6",
4
- "inputDigest": "sha256:5fed95326ac014f60c76d07d954ae544627555bd0fd71e5d7175ca389b1898fb",
3
+ "version": "5.1.7",
4
+ "inputDigest": "sha256:7628ae176ffa5fe1657de3e04fb8944d413281370d4c46b5df7085db4f1ec720",
5
5
  "outputs": [
6
6
  {
7
7
  "path": "cli.d.ts",
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
10
10
  "timeout": 60,
11
- "statusMessage": "(OmO 5.1.6) Checking LSP Diagnostics"
11
+ "statusMessage": "(OmO 5.1.7) Checking LSP Diagnostics"
12
12
  }
13
13
  ]
14
14
  }
@@ -21,7 +21,7 @@
21
21
  "type": "command",
22
22
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
23
23
  "timeout": 5,
24
- "statusMessage": "(OmO 5.1.6) Resetting LSP Diagnostics Cache"
24
+ "statusMessage": "(OmO 5.1.7) Resetting LSP Diagnostics Cache"
25
25
  }
26
26
  ]
27
27
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-lsp",
3
- "version": "5.1.6",
3
+ "version": "5.1.7",
4
4
  "description": "Codex plugin that exposes Language Server Protocol tools and post-edit diagnostics.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -59,7 +59,6 @@ It also enables:
59
59
  plugins = true
60
60
  plugin_hooks = true
61
61
  multi_agent = true
62
- child_agents_md = true
63
62
 
64
63
  [plugins."omo@sisyphuslabs"]
65
64
  enabled = true
@@ -41,7 +41,7 @@ omo-codex auto-runs LSP diagnostics after every edit and injects the result: any
41
41
 
42
42
  # Subagents
43
43
 
44
- Read-only Codex subagent roles live in `CODEX_HOME/agents/`. Spawn: `multi_agent_v1.spawn_agent({"message":"TASK: act as a <role>. ...","fork_context":false})`. If your tool list instead has a flat `spawn_agent` with a required `task_name` (`multi_agent_v2`): `spawn_agent({"task_name":"<lowercase_digits_underscores>","message":"TASK: act as a <role>. ...","fork_turns":"none"})` — finished agents end on their own; `wait_agent` takes only `timeout_ms`.
44
+ Read-only Codex subagent roles live in `CODEX_HOME/agents/`. Spawn: `multi_agent_v1.spawn_agent({"message":"TASK: act as a <role>. ...","agent_type":"<role>","fork_context":false})`. If your tool list instead has a flat `spawn_agent` with a required `task_name` (`multi_agent_v2`): `spawn_agent({"task_name":"<lowercase_digits_underscores>","message":"TASK: act as a <role>. ...","fork_turns":"none"})` — finished agents end on their own; `wait_agent` takes only `timeout_ms`.
45
45
 
46
46
  - `explorer` - codebase search
47
47
  - `librarian` - external docs, OSS code, API contracts
@@ -31,7 +31,7 @@ Waiting is not free: a status poll replays the whole accumulated context through
31
31
 
32
32
  # Subagents
33
33
 
34
- Read-only Codex subagent roles live in `CODEX_HOME/agents/`. Spawn: `multi_agent_v1.spawn_agent({"message":"TASK: act as a <role>. GOAL: ... STOP WHEN: ... EVIDENCE: ...","fork_context":false})`. If your tool list instead has a flat `spawn_agent` with a required `task_name` (`multi_agent_v2`): `spawn_agent({"task_name":"<lowercase_digits_underscores>","message":"TASK: act as a <role>. GOAL: ... STOP WHEN: ... EVIDENCE: ...","fork_turns":"none"})` - finished agents end on their own; `wait_agent` takes only `timeout_ms`.
34
+ Read-only Codex subagent roles live in `CODEX_HOME/agents/`. Spawn: `multi_agent_v1.spawn_agent({"message":"TASK: act as a <role>. GOAL: ... STOP WHEN: ... EVIDENCE: ...","agent_type":"<role>","fork_context":false})`. If your tool list instead has a flat `spawn_agent` with a required `task_name` (`multi_agent_v2`): `spawn_agent({"task_name":"<lowercase_digits_underscores>","message":"TASK: act as a <role>. GOAL: ... STOP WHEN: ... EVIDENCE: ...","fork_turns":"none"})` - finished agents end on their own; `wait_agent` takes only `timeout_ms`.
35
35
 
36
36
  - `explorer` - codebase search
37
37
  - `librarian` - external docs, OSS code, API contracts
@@ -78,7 +78,7 @@ When an approach fails, change something material - an algorithm, library, or pa
78
78
 
79
79
  ## Codex tool and skills notes
80
80
 
81
- The actual Codex tool list and schemas determine the route. Read-only subagent roles live in `CODEX_HOME/agents/`. For `multi_agent_v1`, use `multi_agent_v1.spawn_agent({"message":"TASK: act as a <role>. GOAL: ... STOP WHEN: ... EVIDENCE: ...","fork_context":false})`. If the tool list instead exposes a flat `spawn_agent` requiring `task_name` (`multi_agent_v2`), use `spawn_agent({"task_name":"<lowercase_digits_underscores>","message":"TASK: act as a <role>. GOAL: ... STOP WHEN: ... EVIDENCE: ...","fork_turns":"none"})`. Finished agents end on their own; `wait_agent` takes only `timeout_ms`. Keep the two payloads distinct and do not send v1 fields to v2 or vice versa.
81
+ The actual Codex tool list and schemas determine the route. Read-only subagent roles live in `CODEX_HOME/agents/`. For `multi_agent_v1`, use `multi_agent_v1.spawn_agent({"message":"TASK: act as a <role>. GOAL: ... STOP WHEN: ... EVIDENCE: ...","agent_type":"<role>","fork_context":false})`. If the tool list instead exposes a flat `spawn_agent` requiring `task_name` (`multi_agent_v2`), use `spawn_agent({"task_name":"<lowercase_digits_underscores>","message":"TASK: act as a <role>. GOAL: ... STOP WHEN: ... EVIDENCE: ...","fork_turns":"none"})`. Finished agents end on their own; `wait_agent` takes only `timeout_ms`. Keep the two payloads distinct and do not send v1 fields to v2 or vice versa.
82
82
 
83
83
  - `explorer`: codebase search.
84
84
  - `librarian`: external docs, OSS code, and API contracts.
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook session-start",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.1.6) Loading Project Rules"
10
+ "statusMessage": "(OmO 5.1.7) Loading Project Rules"
11
11
  }
12
12
  ]
13
13
  }
@@ -19,7 +19,7 @@
19
19
  "type": "command",
20
20
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook user-prompt-submit",
21
21
  "timeout": 10,
22
- "statusMessage": "(OmO 5.1.6) Loading Project Rules"
22
+ "statusMessage": "(OmO 5.1.7) Loading Project Rules"
23
23
  }
24
24
  ]
25
25
  }
@@ -32,7 +32,7 @@
32
32
  "type": "command",
33
33
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
34
34
  "timeout": 10,
35
- "statusMessage": "(OmO 5.1.6) Matching Project Rules"
35
+ "statusMessage": "(OmO 5.1.7) Matching Project Rules"
36
36
  }
37
37
  ]
38
38
  }
@@ -45,7 +45,7 @@
45
45
  "type": "command",
46
46
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
47
47
  "timeout": 10,
48
- "statusMessage": "(OmO 5.1.6) Resetting Project Rule Cache"
48
+ "statusMessage": "(OmO 5.1.7) Resetting Project Rule Cache"
49
49
  }
50
50
  ]
51
51
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-rules",
3
- "version": "5.1.6",
3
+ "version": "5.1.7",
4
4
  "description": "Codex plugin that injects project rule files into model context through lifecycle hooks.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
10
10
  "timeout": 10,
11
- "statusMessage": "(OmO 5.1.6) Checking Thread Title Hygiene"
11
+ "statusMessage": "(OmO 5.1.7) Checking Thread Title Hygiene"
12
12
  }
13
13
  ]
14
14
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sisyphuslabs/codex-teammode",
3
- "version": "5.1.6",
3
+ "version": "5.1.7",
4
4
  "description": "Codex team-mode hook component that keeps background thread titles descriptive after create_thread.",
5
5
  "type": "module",
6
6
  "private": true,
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook session-start",
9
9
  "timeout": 5,
10
- "statusMessage": "(OmO 5.1.6) Recording Session Telemetry"
10
+ "statusMessage": "(OmO 5.1.7) Recording Session Telemetry"
11
11
  }
12
12
  ]
13
13
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-telemetry",
3
- "version": "5.1.6",
3
+ "version": "5.1.7",
4
4
  "description": "Codex plugin component that emits omo-codex anonymous daily-active telemetry on SessionStart.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook user-prompt-submit",
9
9
  "timeout": 5,
10
- "statusMessage": "(OmO 5.1.6) Checking Ultrawork Trigger"
10
+ "statusMessage": "(OmO 5.1.7) Checking Ultrawork Trigger"
11
11
  }
12
12
  ]
13
13
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-ultrawork",
3
- "version": "5.1.6",
3
+ "version": "5.1.7",
4
4
  "description": "Codex plugin that injects the ultrawork orchestration directive and ships LazyCodex planning, review, QA, and gate agent roles.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/ulw-execute-continuation/dist/cli.js\" hook stop",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.1.6) Checking Ulw-Execute Continuation"
10
+ "statusMessage": "(OmO 5.1.7) Checking Ulw-Execute Continuation"
11
11
  }
12
12
  ]
13
13
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-ulw-execute-continuation",
3
- "version": "5.1.6",
3
+ "version": "5.1.7",
4
4
  "description": "Codex Stop hook continuation injector for omo-codex ulw-execute plans.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook user-prompt-submit --with-ultrawork",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.1.6) Checking Ulw-Loop Steering"
10
+ "statusMessage": "(OmO 5.1.7) Checking Ulw-Loop Steering"
11
11
  }
12
12
  ]
13
13
  }
@@ -20,7 +20,7 @@
20
20
  "type": "command",
21
21
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use-spawn",
22
22
  "timeout": 5,
23
- "statusMessage": "(OmO 5.1.6) Recording Spawn Admission"
23
+ "statusMessage": "(OmO 5.1.7) Recording Spawn Admission"
24
24
  }
25
25
  ]
26
26
  }
@@ -33,7 +33,7 @@
33
33
  "type": "command",
34
34
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook pre-tool-use",
35
35
  "timeout": 5,
36
- "statusMessage": "(OmO 5.1.6) Enforcing Unlimited Ulw-Loop Budget"
36
+ "statusMessage": "(OmO 5.1.7) Enforcing Unlimited Ulw-Loop Budget"
37
37
  }
38
38
  ]
39
39
  },
@@ -44,7 +44,7 @@
44
44
  "type": "command",
45
45
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook pre-tool-use-spawn",
46
46
  "timeout": 5,
47
- "statusMessage": "(OmO 5.1.6) Guarding Ulw-Loop Spawns"
47
+ "statusMessage": "(OmO 5.1.7) Guarding Ulw-Loop Spawns"
48
48
  }
49
49
  ]
50
50
  }
@@ -56,7 +56,7 @@
56
56
  "type": "command",
57
57
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook stop",
58
58
  "timeout": 10,
59
- "statusMessage": "(OmO 5.1.6) Checking Ulw-Loop Resume"
59
+ "statusMessage": "(OmO 5.1.7) Checking Ulw-Loop Resume"
60
60
  }
61
61
  ]
62
62
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-ulw-loop",
3
- "version": "5.1.6",
3
+ "version": "5.1.7",
4
4
  "description": "Codex plugin: durable repo-native multi-goal orchestration with embedded success criteria and observable evidence audit.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -87,6 +87,22 @@ describe("#given no active plan #when native spawns cross the role boundary", ()
87
87
  );
88
88
  expect([...LAZYCODEX_SPAWN_ROLES].sort()).toEqual(names.sort());
89
89
  });
90
+ it("admits every multi_agent_v1 spawn example the bundled Hephaestus rules teach", async () => {
91
+ const root = new URL("../../rules/bundled-rules/hephaestus/", import.meta.url);
92
+ const variants = (await readdir(root)).filter((file) => file.endsWith(".md")).sort();
93
+ expect(variants.length, "no bundled Hephaestus variant to check").toBeGreaterThan(0);
94
+ for (const variant of variants) {
95
+ const content = await readFile(new URL(variant, root), "utf8");
96
+ const examples = [...content.matchAll(/multi_agent_v1[.]spawn_agent[(]([{][^)]*[}])[)]/g)].map((match) =>
97
+ String(match[1]).replaceAll("<role>", "explorer"),
98
+ );
99
+ expect(examples.length, `${variant} has no multi_agent_v1 spawn example`).toBeGreaterThan(0);
100
+ for (const example of examples) {
101
+ const input = JSON.parse(example) as Record<string, unknown>;
102
+ expect(guard("multi_agent_v1.spawn_agent", input), `${variant}: ${example}`).toBe("");
103
+ }
104
+ }
105
+ });
90
106
  it("still enforces admission breakers after role validation", async () => {
91
107
  await mkdir(join(cwd, "data", "spawn-breaker"), { recursive: true });
92
108
  await writeFile(join(cwd, "data", "spawn-breaker", "matrix.json"), JSON.stringify({ reason: "capacity" }));
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/git-bash/dist/cli.js\" hook post-compact",
9
9
  "timeout": 5,
10
- "statusMessage": "(OmO 5.1.6) Resetting Git Bash MCP Reminder",
10
+ "statusMessage": "(OmO 5.1.7) Resetting Git Bash MCP Reminder",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\git-bash\\dist\\cli.js\" hook post-compact"
12
12
  }
13
13
  ],
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/lsp/dist/cli.js\" hook post-compact",
9
9
  "timeout": 5,
10
- "statusMessage": "(OmO 5.1.6) Resetting LSP Diagnostics Cache",
10
+ "statusMessage": "(OmO 5.1.7) Resetting LSP Diagnostics Cache",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\lsp\\dist\\cli.js\" hook post-compact"
12
12
  }
13
13
  ],
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/rules/dist/cli.js\" hook post-compact",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.1.6) Resetting Project Rule Cache",
10
+ "statusMessage": "(OmO 5.1.7) Resetting Project Rule Cache",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\rules\\dist\\cli.js\" hook post-compact"
12
12
  }
13
13
  ],
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/comment-checker/dist/cli.js\" hook post-tool-use",
9
9
  "timeout": 30,
10
- "statusMessage": "(OmO 5.1.6) Checking Comments",
10
+ "statusMessage": "(OmO 5.1.7) Checking Comments",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\comment-checker\\dist\\cli.js\" hook post-tool-use"
12
12
  }
13
13
  ],
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/lsp/dist/cli.js\" hook post-tool-use",
9
9
  "timeout": 60,
10
- "statusMessage": "(OmO 5.1.6) Checking LSP Diagnostics",
10
+ "statusMessage": "(OmO 5.1.7) Checking LSP Diagnostics",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\lsp\\dist\\cli.js\" hook post-tool-use"
12
12
  }
13
13
  ],
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/components/teammode/dist/cli.js\" hook post-tool-use",
10
10
  "timeout": 10,
11
- "statusMessage": "(OmO 5.1.6) Checking Thread Title Hygiene",
11
+ "statusMessage": "(OmO 5.1.7) Checking Thread Title Hygiene",
12
12
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\teammode\\dist\\cli.js\" hook post-tool-use"
13
13
  }
14
14
  ]
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/rules/dist/cli.js\" hook post-tool-use",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.1.6) Matching Project Rules",
10
+ "statusMessage": "(OmO 5.1.7) Matching Project Rules",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\rules\\dist\\cli.js\" hook post-tool-use"
12
12
  }
13
13
  ],
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/components/ulw-loop/dist/cli.js\" hook post-tool-use-spawn",
10
10
  "timeout": 5,
11
- "statusMessage": "(OmO 5.1.6) Recording Spawn Admission",
11
+ "statusMessage": "(OmO 5.1.7) Recording Spawn Admission",
12
12
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\ulw-loop\\dist\\cli.js\" hook post-tool-use-spawn"
13
13
  }
14
14
  ]
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/ulw-loop/dist/cli.js\" hook pre-tool-use",
9
9
  "timeout": 5,
10
- "statusMessage": "(OmO 5.1.6) Enforcing Unlimited Goal Budget",
10
+ "statusMessage": "(OmO 5.1.7) Enforcing Unlimited Goal Budget",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\ulw-loop\\dist\\cli.js\" hook pre-tool-use"
12
12
  }
13
13
  ],
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/components/ulw-loop/dist/cli.js\" hook pre-tool-use-spawn",
10
10
  "timeout": 5,
11
- "statusMessage": "(OmO 5.1.6) Guarding Ulw-Loop Spawns",
11
+ "statusMessage": "(OmO 5.1.7) Guarding Ulw-Loop Spawns",
12
12
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\ulw-loop\\dist\\cli.js\" hook pre-tool-use-spawn"
13
13
  }
14
14
  ]
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/git-bash/dist/cli.js\" hook pre-tool-use",
9
9
  "timeout": 5,
10
- "statusMessage": "(OmO 5.1.6) Recommending Git Bash MCP",
10
+ "statusMessage": "(OmO 5.1.7) Recommending Git Bash MCP",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\git-bash\\dist\\cli.js\" hook pre-tool-use"
12
12
  }
13
13
  ],
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/scripts/auto-update.mjs\" hook session-start",
9
9
  "timeout": 15,
10
- "statusMessage": "(OmO 5.1.6) Checking Auto Update",
10
+ "statusMessage": "(OmO 5.1.7) Checking Auto Update",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\scripts\\auto-update.mjs\" hook session-start"
12
12
  }
13
13
  ],
@@ -8,7 +8,7 @@
8
8
  "command": "node \"${PLUGIN_ROOT}/components/bootstrap/dist/cli.js\" hook session-start",
9
9
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\bootstrap.ps1\"",
10
10
  "timeout": 30,
11
- "statusMessage": "(OmO 5.1.6) Checking Bootstrap Provisioning"
11
+ "statusMessage": "(OmO 5.1.7) Checking Bootstrap Provisioning"
12
12
  }
13
13
  ]
14
14
  }
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/rules/dist/cli.js\" hook session-start",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.1.6) Loading Project Rules",
10
+ "statusMessage": "(OmO 5.1.7) Loading Project Rules",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\rules\\dist\\cli.js\" hook session-start"
12
12
  }
13
13
  ]
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/telemetry/dist/cli.js\" hook session-start",
9
9
  "timeout": 15,
10
- "statusMessage": "(OmO 5.1.6) Recording Session Telemetry",
10
+ "statusMessage": "(OmO 5.1.7) Recording Session Telemetry",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\telemetry\\dist\\cli.js\" hook session-start"
12
12
  }
13
13
  ]
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/ulw-execute-continuation/dist/cli.js\" hook stop",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.1.6) Checking Ulw-Execute Continuation",
10
+ "statusMessage": "(OmO 5.1.7) Checking Ulw-Execute Continuation",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\ulw-execute-continuation\\dist\\cli.js\" hook stop"
12
12
  }
13
13
  ]
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/ulw-loop/dist/cli.js\" hook stop",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.1.6) Checking Ulw-Loop Resume",
10
+ "statusMessage": "(OmO 5.1.7) Checking Ulw-Loop Resume",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\ulw-loop\\dist\\cli.js\" hook stop"
12
12
  }
13
13
  ]
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/lazycodex-executor-verify/dist/cli.js\" hook subagent-stop",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.1.6) Verifying LazyCodex Executor Evidence",
10
+ "statusMessage": "(OmO 5.1.7) Verifying LazyCodex Executor Evidence",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\lazycodex-executor-verify\\dist\\cli.js\" hook subagent-stop"
12
12
  }
13
13
  ],
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/ultrawork/dist/cli.js\" hook user-prompt-submit",
9
9
  "timeout": 5,
10
- "statusMessage": "(OmO 5.1.6) Checking Ultrawork Trigger",
10
+ "statusMessage": "(OmO 5.1.7) Checking Ultrawork Trigger",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\ultrawork\\dist\\cli.js\" hook user-prompt-submit"
12
12
  }
13
13
  ]
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/ulw-loop/dist/cli.js\" hook user-prompt-submit",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.1.6) Checking Ulw-Loop Steering",
10
+ "statusMessage": "(OmO 5.1.7) Checking Ulw-Loop Steering",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\ulw-loop\\dist\\cli.js\" hook user-prompt-submit"
12
12
  }
13
13
  ]
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/rules/dist/cli.js\" hook user-prompt-submit",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.1.6) Loading Project Rules",
10
+ "statusMessage": "(OmO 5.1.7) Loading Project Rules",
11
11
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\node-dispatch.ps1\" \"${PLUGIN_ROOT}\\components\\rules\\dist\\cli.js\" hook user-prompt-submit"
12
12
  }
13
13
  ]
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@sisyphuslabs/omo-codex-plugin",
3
- "version": "5.1.6",
3
+ "version": "5.1.7",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@sisyphuslabs/omo-codex-plugin",
9
- "version": "5.1.6",
9
+ "version": "5.1.7",
10
10
  "workspaces": [
11
11
  "components/comment-checker",
12
12
  "components/git-bash",
@@ -95,7 +95,7 @@
95
95
  },
96
96
  "components/comment-checker": {
97
97
  "name": "@code-yeongyu/codex-comment-checker",
98
- "version": "5.1.6",
98
+ "version": "5.1.7",
99
99
  "license": "MIT",
100
100
  "bin": {
101
101
  "omo-comment-checker": "dist/cli.js"
@@ -117,7 +117,7 @@
117
117
  },
118
118
  "components/git-bash": {
119
119
  "name": "@sisyphuslabs/codex-git-bash-hook",
120
- "version": "5.1.6",
120
+ "version": "5.1.7",
121
121
  "bin": {
122
122
  "omo-git-bash-hook": "dist/cli.js"
123
123
  },
@@ -131,7 +131,7 @@
131
131
  },
132
132
  "components/lazycodex-executor-verify": {
133
133
  "name": "@code-yeongyu/codex-lazycodex-executor-verify",
134
- "version": "5.1.6",
134
+ "version": "5.1.7",
135
135
  "license": "MIT",
136
136
  "bin": {
137
137
  "lazycodex-executor-verify": "dist/cli.js"
@@ -149,7 +149,7 @@
149
149
  },
150
150
  "components/lsp": {
151
151
  "name": "@code-yeongyu/codex-lsp",
152
- "version": "5.1.6",
152
+ "version": "5.1.7",
153
153
  "license": "MIT",
154
154
  "dependencies": {
155
155
  "@code-yeongyu/lsp-daemon": "file:../../../../lsp-daemon",
@@ -171,7 +171,7 @@
171
171
  },
172
172
  "components/rules": {
173
173
  "name": "@code-yeongyu/codex-rules",
174
- "version": "5.1.6",
174
+ "version": "5.1.7",
175
175
  "license": "MIT",
176
176
  "dependencies": {
177
177
  "picomatch": "^4.0.7"
@@ -194,7 +194,7 @@
194
194
  },
195
195
  "components/teammode": {
196
196
  "name": "@sisyphuslabs/codex-teammode",
197
- "version": "5.1.6",
197
+ "version": "5.1.7",
198
198
  "devDependencies": {
199
199
  "@types/node": "^26.6.2",
200
200
  "@vitest/coverage-v8": "5.0.1",
@@ -208,7 +208,7 @@
208
208
  },
209
209
  "components/telemetry": {
210
210
  "name": "@code-yeongyu/codex-telemetry",
211
- "version": "5.1.6",
211
+ "version": "5.1.7",
212
212
  "license": "MIT",
213
213
  "bin": {
214
214
  "omo-telemetry": "dist/cli.js"
@@ -227,7 +227,7 @@
227
227
  },
228
228
  "components/ultrawork": {
229
229
  "name": "@code-yeongyu/codex-ultrawork",
230
- "version": "5.1.6",
230
+ "version": "5.1.7",
231
231
  "license": "MIT",
232
232
  "bin": {
233
233
  "omo-ultrawork": "dist/cli.js"
@@ -246,7 +246,7 @@
246
246
  },
247
247
  "components/ulw-execute-continuation": {
248
248
  "name": "@code-yeongyu/codex-ulw-execute-continuation",
249
- "version": "5.1.6",
249
+ "version": "5.1.7",
250
250
  "license": "MIT",
251
251
  "bin": {
252
252
  "omo-ulw-execute-continuation": "dist/cli.js"
@@ -264,7 +264,7 @@
264
264
  },
265
265
  "components/ulw-loop": {
266
266
  "name": "@code-yeongyu/codex-ulw-loop",
267
- "version": "5.1.6",
267
+ "version": "5.1.7",
268
268
  "license": "MIT",
269
269
  "bin": {
270
270
  "omo-ulw-loop": "dist/cli.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sisyphuslabs/omo-codex-plugin",
3
- "version": "5.1.6",
3
+ "version": "5.1.7",
4
4
  "description": "Aggregate Codex plugin root for OMO components.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -5,5 +5,5 @@
5
5
  "index.js": "b6b064fab277031c6c51f5a58b84b31040f9960bf767bf646adc0540c1d25c1b",
6
6
  "page-bundle.js": "bfd51e8383cf47200d57387bbbed258bce5a3a3d00c38fc108034d2888e23f0c"
7
7
  },
8
- "stagedAtUtc": "2026-09-30T18:48:33.732Z"
8
+ "stagedAtUtc": "2026-09-30T23:56:44.170Z"
9
9
  }
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- // omo-codex-install:926babe1233096485f8e4db8e616e5deaa07ce9e732fdb0477b03390f4f15efa:4d5d406ea49f40877a220f86f4699fafaf2529a5afcea4e30abccfe48760df2c
2
+ // omo-codex-install:36a2cdbddec650930467b3965504e73ddeb3d82f229071008f1296a9498fe265:249413365bf0de355352ccfffc9c04669f220c439ce18a287a5bf27105c0f72d
3
3
  var __esm = (fn, res, err) => () => {
4
4
  if (fn)
5
5
  try {
@@ -9984,7 +9984,7 @@ var package_default;
9984
9984
  var init_package = __esm(() => {
9985
9985
  package_default = {
9986
9986
  name: "@oh-my-opencode/omo-codex",
9987
- version: "5.1.6",
9987
+ version: "5.1.7",
9988
9988
  type: "module",
9989
9989
  private: true,
9990
9990
  description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
@@ -12529,6 +12529,12 @@ ${featureName} = true
12529
12529
  }
12530
12530
  return replaceOrInsertSetting(config, section, featureName, "true");
12531
12531
  }
12532
+ function removeFeature(config, featureName) {
12533
+ const section = findTomlSection(config, "features");
12534
+ if (section !== null)
12535
+ return removeSetting(config, section, featureName);
12536
+ return removeRootSetting(config, `features.${featureName}`);
12537
+ }
12532
12538
 
12533
12539
  // packages/omo-codex/src/install/codex-config-marketplaces.ts
12534
12540
  var SISYPHUS_LEGACY_MARKETPLACES = ["lazycodex", "code-yeongyu-codex-plugins"];
@@ -13121,6 +13127,7 @@ async function updateCodexConfig(input) {
13121
13127
  config = ensureFeatureEnabled(config, "plugins");
13122
13128
  config = ensureFeatureEnabled(config, "plugin_hooks");
13123
13129
  config = ensureFeatureEnabled(config, "multi_agent");
13130
+ config = removeFeature(config, "child_agents_md");
13124
13131
  config = removeUnsupportedCodexMultiAgentModeConfig(config);
13125
13132
  config = ensureCodexReasoningConfig(config, applyReasoningOverride(await readCodexModelCatalog(input.repoRoot), input.reasoning));
13126
13133
  config = ensureCodexMultiAgentV2Config(config, {
@@ -5,5 +5,5 @@
5
5
  "index.js": "b6b064fab277031c6c51f5a58b84b31040f9960bf767bf646adc0540c1d25c1b",
6
6
  "page-bundle.js": "bfd51e8383cf47200d57387bbbed258bce5a3a3d00c38fc108034d2888e23f0c"
7
7
  },
8
- "stagedAtUtc": "2026-09-30T18:48:33.732Z"
8
+ "stagedAtUtc": "2026-09-30T23:56:44.170Z"
9
9
  }