lazycodex-ai 5.1.60 → 5.1.61

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 (54) hide show
  1. package/dist/cli/index.js +44 -22
  2. package/dist/cli-node/index.js +44 -22
  3. package/package.json +1 -1
  4. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
  5. package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +13 -0
  6. package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
  7. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  8. package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
  9. package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
  10. package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
  11. package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
  12. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
  13. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
  14. package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +2 -2
  15. package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
  16. package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
  17. package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
  18. package/packages/omo-codex/plugin/components/rules/package.json +1 -1
  19. package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
  20. package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
  21. package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
  22. package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
  23. package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
  24. package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
  25. package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +1 -1
  26. package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
  27. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +5 -5
  28. package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
  29. package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
  30. package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
  31. package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
  32. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
  33. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
  34. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
  35. package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
  36. package/packages/omo-codex/plugin/hooks/post-tool-use-recording-spawn-admission.json +1 -1
  37. package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
  38. package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
  39. package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
  40. package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
  41. package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
  42. package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
  43. package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
  44. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +1 -1
  45. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
  46. package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
  47. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
  48. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
  49. package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
  50. package/packages/omo-codex/plugin/package-lock.json +12 -12
  51. package/packages/omo-codex/plugin/package.json +1 -1
  52. package/packages/omo-codex/plugin/skills/browser/runtime/omowright/manifest.json +1 -1
  53. package/packages/omo-codex/scripts/install-dist/install-local.mjs +15 -2
  54. package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +1 -1
package/dist/cli/index.js CHANGED
@@ -2132,7 +2132,7 @@ var package_default;
2132
2132
  var init_package = __esm(() => {
2133
2133
  package_default = {
2134
2134
  name: "oh-my-opencode",
2135
- version: "5.1.60",
2135
+ version: "5.1.61",
2136
2136
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
2137
2137
  main: "./dist/index.js",
2138
2138
  types: "dist/index.d.ts",
@@ -2319,7 +2319,7 @@ var init_package = __esm(() => {
2319
2319
  },
2320
2320
  devDependencies: {
2321
2321
  "@clack/prompts": "^1.8.1",
2322
- "@code-yeongyu/senpi": "2026.11.2-3",
2322
+ "@code-yeongyu/senpi": "2026.11.3-3",
2323
2323
  "@modelcontextprotocol/sdk": "^1.30.0",
2324
2324
  "@oh-my-opencode/agents-md-core": "workspace:*",
2325
2325
  "@oh-my-opencode/ast-grep-mcp": "workspace:*",
@@ -2384,18 +2384,18 @@ var init_package = __esm(() => {
2384
2384
  typescript: "^7.0.2"
2385
2385
  },
2386
2386
  optionalDependencies: {
2387
- "oh-my-opencode-darwin-arm64": "5.1.60",
2388
- "oh-my-opencode-darwin-x64": "5.1.60",
2389
- "oh-my-opencode-darwin-x64-baseline": "5.1.60",
2390
- "oh-my-opencode-linux-arm64": "5.1.60",
2391
- "oh-my-opencode-linux-arm64-musl": "5.1.60",
2392
- "oh-my-opencode-linux-x64": "5.1.60",
2393
- "oh-my-opencode-linux-x64-baseline": "5.1.60",
2394
- "oh-my-opencode-linux-x64-musl": "5.1.60",
2395
- "oh-my-opencode-linux-x64-musl-baseline": "5.1.60",
2396
- "oh-my-opencode-windows-arm64": "5.1.60",
2397
- "oh-my-opencode-windows-x64": "5.1.60",
2398
- "oh-my-opencode-windows-x64-baseline": "5.1.60"
2387
+ "oh-my-opencode-darwin-arm64": "5.1.61",
2388
+ "oh-my-opencode-darwin-x64": "5.1.61",
2389
+ "oh-my-opencode-darwin-x64-baseline": "5.1.61",
2390
+ "oh-my-opencode-linux-arm64": "5.1.61",
2391
+ "oh-my-opencode-linux-arm64-musl": "5.1.61",
2392
+ "oh-my-opencode-linux-x64": "5.1.61",
2393
+ "oh-my-opencode-linux-x64-baseline": "5.1.61",
2394
+ "oh-my-opencode-linux-x64-musl": "5.1.61",
2395
+ "oh-my-opencode-linux-x64-musl-baseline": "5.1.61",
2396
+ "oh-my-opencode-windows-arm64": "5.1.61",
2397
+ "oh-my-opencode-windows-x64": "5.1.61",
2398
+ "oh-my-opencode-windows-x64-baseline": "5.1.61"
2399
2399
  },
2400
2400
  overrides: {
2401
2401
  hono: "^4.13.8",
@@ -7490,7 +7490,7 @@ function createLogger(options) {
7490
7490
  function scheduleFlush() {
7491
7491
  if (flushTimer)
7492
7492
  return;
7493
- flushTimer = setTimeout(() => {
7493
+ flushTimer = scheduleTimeout(() => {
7494
7494
  flushTimer = null;
7495
7495
  flush();
7496
7496
  }, flushIntervalMs);
@@ -7517,7 +7517,7 @@ function createLogger(options) {
7517
7517
  function _setLoggerForTesting(overrides) {
7518
7518
  buffer = [];
7519
7519
  if (flushTimer) {
7520
- clearTimeout(flushTimer);
7520
+ cancelTimeout(flushTimer);
7521
7521
  flushTimer = null;
7522
7522
  }
7523
7523
  if (overrides.filePath !== undefined)
@@ -7533,13 +7533,13 @@ function createLogger(options) {
7533
7533
  maxLogFileBackups = maxLogFileBackupsDefault;
7534
7534
  buffer = [];
7535
7535
  if (flushTimer) {
7536
- clearTimeout(flushTimer);
7536
+ cancelTimeout(flushTimer);
7537
7537
  flushTimer = null;
7538
7538
  }
7539
7539
  }
7540
7540
  function _flushForTesting() {
7541
7541
  if (flushTimer) {
7542
- clearTimeout(flushTimer);
7542
+ cancelTimeout(flushTimer);
7543
7543
  flushTimer = null;
7544
7544
  }
7545
7545
  flush();
@@ -7552,8 +7552,10 @@ function createLogger(options) {
7552
7552
  _flushForTesting
7553
7553
  };
7554
7554
  }
7555
- var DEFAULT_MAX_LOG_FILE_SIZE_BYTES, DEFAULT_MAX_LOG_FILE_BACKUPS = 2, DEFAULT_LOG_FLUSH_INTERVAL_MS = 500, DEFAULT_LOG_BUFFER_SIZE_LIMIT = 50;
7555
+ var scheduleTimeout, cancelTimeout, DEFAULT_MAX_LOG_FILE_SIZE_BYTES, DEFAULT_MAX_LOG_FILE_BACKUPS = 2, DEFAULT_LOG_FLUSH_INTERVAL_MS = 500, DEFAULT_LOG_BUFFER_SIZE_LIMIT = 50;
7556
7556
  var init_logger = __esm(() => {
7557
+ scheduleTimeout = globalThis.setTimeout;
7558
+ cancelTimeout = globalThis.clearTimeout;
7557
7559
  DEFAULT_MAX_LOG_FILE_SIZE_BYTES = 50 * 1024 * 1024;
7558
7560
  });
7559
7561
 
@@ -77637,6 +77639,19 @@ var init_telemetry = __esm(() => {
77637
77639
  }).strict();
77638
77640
  });
77639
77641
 
77642
+ // packages/omo-config-core/src/schema/device-service.ts
77643
+ var OmoDeviceServiceSettingsShape, OmoDeviceServiceSettingsLayerSchema, OmoDeviceServiceSettingsSchema;
77644
+ var init_device_service = __esm(() => {
77645
+ init_zod();
77646
+ OmoDeviceServiceSettingsShape = {
77647
+ enabled: boolean2()
77648
+ };
77649
+ OmoDeviceServiceSettingsLayerSchema = object(OmoDeviceServiceSettingsShape).partial().strict();
77650
+ OmoDeviceServiceSettingsSchema = OmoDeviceServiceSettingsLayerSchema.extend({
77651
+ enabled: boolean2().default(true)
77652
+ }).strict();
77653
+ });
77654
+
77640
77655
  // packages/omo-config-core/src/schema/format-on-mutation.ts
77641
77656
  var mode, languages, OmoFormatOnMutationLayerSchema, OmoFormatOnMutationSchema;
77642
77657
  var init_format_on_mutation = __esm(() => {
@@ -77685,6 +77700,7 @@ var init_config = __esm(() => {
77685
77700
  init_task();
77686
77701
  init_team();
77687
77702
  init_telemetry();
77703
+ init_device_service();
77688
77704
  init_format_on_mutation();
77689
77705
  init_provenance();
77690
77706
  OmoOpenCodeHarnessConfigSchema = record(string2(), unknown());
@@ -77704,6 +77720,7 @@ var init_config = __esm(() => {
77704
77720
  model_pad: OmoModelPadSchema.optional(),
77705
77721
  memory: OmoMemorySettingsLayerSchema.optional(),
77706
77722
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
77723
+ device_service: OmoDeviceServiceSettingsLayerSchema.optional(),
77707
77724
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
77708
77725
  computer: OmoComputerSettingsLayerSchema.optional(),
77709
77726
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -77723,6 +77740,7 @@ var init_config = __esm(() => {
77723
77740
  model_pad: OmoModelPadSchema.optional(),
77724
77741
  memory: OmoMemorySettingsLayerSchema.optional(),
77725
77742
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
77743
+ device_service: OmoDeviceServiceSettingsLayerSchema.optional(),
77726
77744
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
77727
77745
  computer: OmoComputerSettingsLayerSchema.optional(),
77728
77746
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -77747,6 +77765,7 @@ var init_config = __esm(() => {
77747
77765
  model_pad: OmoModelPadSchema.optional(),
77748
77766
  memory: OmoMemorySettingsSchema.optional(),
77749
77767
  telemetry: OmoTelemetrySettingsSchema.optional(),
77768
+ device_service: OmoDeviceServiceSettingsSchema.optional(),
77750
77769
  side_panel: OmoSidePanelSettingsSchema.optional(),
77751
77770
  computer: OmoComputerSettingsSchema.optional(),
77752
77771
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -77774,6 +77793,7 @@ var init_config = __esm(() => {
77774
77793
  model_pad: OmoModelPadSchema.optional(),
77775
77794
  memory: OmoMemorySettingsLayerSchema.optional(),
77776
77795
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
77796
+ device_service: OmoDeviceServiceSettingsLayerSchema.optional(),
77777
77797
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
77778
77798
  computer: OmoComputerSettingsLayerSchema.optional(),
77779
77799
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -77925,6 +77945,7 @@ var init_schema = __esm(() => {
77925
77945
  init_task();
77926
77946
  init_team();
77927
77947
  init_telemetry();
77948
+ init_device_service();
77928
77949
  init_computer();
77929
77950
  });
77930
77951
 
@@ -92689,7 +92710,7 @@ var package_default2;
92689
92710
  var init_package2 = __esm(() => {
92690
92711
  package_default2 = {
92691
92712
  name: "@oh-my-opencode/omo-codex",
92692
- version: "5.1.60",
92713
+ version: "5.1.61",
92693
92714
  type: "module",
92694
92715
  private: true,
92695
92716
  description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
@@ -100065,6 +100086,7 @@ var REQUIRED_PLUGIN_ARTIFACTS = [
100065
100086
  join66("extensions", "omo-memory-commands.js"),
100066
100087
  join66("extensions", "omo-session-history.js"),
100067
100088
  join66("extensions", "omo-recall-store.js"),
100089
+ join66("extensions", "omo-device-service.js"),
100068
100090
  join66("extensions", "omo-telemetry-posthog.js"),
100069
100091
  join66("extensions", "omo-telemetry-otlp.js"),
100070
100092
  join66("extensions", "omo-memory-sync.js"),
@@ -109449,8 +109471,8 @@ var package_default3 = {
109449
109471
  },
109450
109472
  dependencies: {
109451
109473
  "@clack/prompts": "^1.8.1",
109452
- "@code-yeongyu/senpi": "2026.11.2-3",
109453
- "@earendil-works/pi-ai": "npm:@code-yeongyu/senpi-ai@2026.11.2-3",
109474
+ "@code-yeongyu/senpi": "2026.11.3-3",
109475
+ "@earendil-works/pi-ai": "npm:@code-yeongyu/senpi-ai@2026.11.3-3",
109454
109476
  "@modelcontextprotocol/sdk": "^1.30.0",
109455
109477
  "@oh-my-opencode/agents-md-core": "workspace:*",
109456
109478
  "@oh-my-opencode/boulder-state": "workspace:*",
@@ -2133,7 +2133,7 @@ var package_default;
2133
2133
  var init_package = __esm(() => {
2134
2134
  package_default = {
2135
2135
  name: "oh-my-opencode",
2136
- version: "5.1.60",
2136
+ version: "5.1.61",
2137
2137
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
2138
2138
  main: "./dist/index.js",
2139
2139
  types: "dist/index.d.ts",
@@ -2320,7 +2320,7 @@ var init_package = __esm(() => {
2320
2320
  },
2321
2321
  devDependencies: {
2322
2322
  "@clack/prompts": "^1.8.1",
2323
- "@code-yeongyu/senpi": "2026.11.2-3",
2323
+ "@code-yeongyu/senpi": "2026.11.3-3",
2324
2324
  "@modelcontextprotocol/sdk": "^1.30.0",
2325
2325
  "@oh-my-opencode/agents-md-core": "workspace:*",
2326
2326
  "@oh-my-opencode/ast-grep-mcp": "workspace:*",
@@ -2385,18 +2385,18 @@ var init_package = __esm(() => {
2385
2385
  typescript: "^7.0.2"
2386
2386
  },
2387
2387
  optionalDependencies: {
2388
- "oh-my-opencode-darwin-arm64": "5.1.60",
2389
- "oh-my-opencode-darwin-x64": "5.1.60",
2390
- "oh-my-opencode-darwin-x64-baseline": "5.1.60",
2391
- "oh-my-opencode-linux-arm64": "5.1.60",
2392
- "oh-my-opencode-linux-arm64-musl": "5.1.60",
2393
- "oh-my-opencode-linux-x64": "5.1.60",
2394
- "oh-my-opencode-linux-x64-baseline": "5.1.60",
2395
- "oh-my-opencode-linux-x64-musl": "5.1.60",
2396
- "oh-my-opencode-linux-x64-musl-baseline": "5.1.60",
2397
- "oh-my-opencode-windows-arm64": "5.1.60",
2398
- "oh-my-opencode-windows-x64": "5.1.60",
2399
- "oh-my-opencode-windows-x64-baseline": "5.1.60"
2388
+ "oh-my-opencode-darwin-arm64": "5.1.61",
2389
+ "oh-my-opencode-darwin-x64": "5.1.61",
2390
+ "oh-my-opencode-darwin-x64-baseline": "5.1.61",
2391
+ "oh-my-opencode-linux-arm64": "5.1.61",
2392
+ "oh-my-opencode-linux-arm64-musl": "5.1.61",
2393
+ "oh-my-opencode-linux-x64": "5.1.61",
2394
+ "oh-my-opencode-linux-x64-baseline": "5.1.61",
2395
+ "oh-my-opencode-linux-x64-musl": "5.1.61",
2396
+ "oh-my-opencode-linux-x64-musl-baseline": "5.1.61",
2397
+ "oh-my-opencode-windows-arm64": "5.1.61",
2398
+ "oh-my-opencode-windows-x64": "5.1.61",
2399
+ "oh-my-opencode-windows-x64-baseline": "5.1.61"
2400
2400
  },
2401
2401
  overrides: {
2402
2402
  hono: "^4.13.8",
@@ -7491,7 +7491,7 @@ function createLogger(options) {
7491
7491
  function scheduleFlush() {
7492
7492
  if (flushTimer)
7493
7493
  return;
7494
- flushTimer = setTimeout(() => {
7494
+ flushTimer = scheduleTimeout(() => {
7495
7495
  flushTimer = null;
7496
7496
  flush();
7497
7497
  }, flushIntervalMs);
@@ -7518,7 +7518,7 @@ function createLogger(options) {
7518
7518
  function _setLoggerForTesting(overrides) {
7519
7519
  buffer = [];
7520
7520
  if (flushTimer) {
7521
- clearTimeout(flushTimer);
7521
+ cancelTimeout(flushTimer);
7522
7522
  flushTimer = null;
7523
7523
  }
7524
7524
  if (overrides.filePath !== undefined)
@@ -7534,13 +7534,13 @@ function createLogger(options) {
7534
7534
  maxLogFileBackups = maxLogFileBackupsDefault;
7535
7535
  buffer = [];
7536
7536
  if (flushTimer) {
7537
- clearTimeout(flushTimer);
7537
+ cancelTimeout(flushTimer);
7538
7538
  flushTimer = null;
7539
7539
  }
7540
7540
  }
7541
7541
  function _flushForTesting() {
7542
7542
  if (flushTimer) {
7543
- clearTimeout(flushTimer);
7543
+ cancelTimeout(flushTimer);
7544
7544
  flushTimer = null;
7545
7545
  }
7546
7546
  flush();
@@ -7553,8 +7553,10 @@ function createLogger(options) {
7553
7553
  _flushForTesting
7554
7554
  };
7555
7555
  }
7556
- var DEFAULT_MAX_LOG_FILE_SIZE_BYTES, DEFAULT_MAX_LOG_FILE_BACKUPS = 2, DEFAULT_LOG_FLUSH_INTERVAL_MS = 500, DEFAULT_LOG_BUFFER_SIZE_LIMIT = 50;
7556
+ var scheduleTimeout, cancelTimeout, DEFAULT_MAX_LOG_FILE_SIZE_BYTES, DEFAULT_MAX_LOG_FILE_BACKUPS = 2, DEFAULT_LOG_FLUSH_INTERVAL_MS = 500, DEFAULT_LOG_BUFFER_SIZE_LIMIT = 50;
7557
7557
  var init_logger = __esm(() => {
7558
+ scheduleTimeout = globalThis.setTimeout;
7559
+ cancelTimeout = globalThis.clearTimeout;
7558
7560
  DEFAULT_MAX_LOG_FILE_SIZE_BYTES = 50 * 1024 * 1024;
7559
7561
  });
7560
7562
 
@@ -77716,6 +77718,19 @@ var init_telemetry = __esm(() => {
77716
77718
  }).strict();
77717
77719
  });
77718
77720
 
77721
+ // packages/omo-config-core/src/schema/device-service.ts
77722
+ var OmoDeviceServiceSettingsShape, OmoDeviceServiceSettingsLayerSchema, OmoDeviceServiceSettingsSchema;
77723
+ var init_device_service = __esm(() => {
77724
+ init_zod();
77725
+ OmoDeviceServiceSettingsShape = {
77726
+ enabled: boolean2()
77727
+ };
77728
+ OmoDeviceServiceSettingsLayerSchema = object(OmoDeviceServiceSettingsShape).partial().strict();
77729
+ OmoDeviceServiceSettingsSchema = OmoDeviceServiceSettingsLayerSchema.extend({
77730
+ enabled: boolean2().default(true)
77731
+ }).strict();
77732
+ });
77733
+
77719
77734
  // packages/omo-config-core/src/schema/format-on-mutation.ts
77720
77735
  var mode, languages, OmoFormatOnMutationLayerSchema, OmoFormatOnMutationSchema;
77721
77736
  var init_format_on_mutation = __esm(() => {
@@ -77764,6 +77779,7 @@ var init_config = __esm(() => {
77764
77779
  init_task();
77765
77780
  init_team();
77766
77781
  init_telemetry();
77782
+ init_device_service();
77767
77783
  init_format_on_mutation();
77768
77784
  init_provenance();
77769
77785
  OmoOpenCodeHarnessConfigSchema = record(string2(), unknown());
@@ -77783,6 +77799,7 @@ var init_config = __esm(() => {
77783
77799
  model_pad: OmoModelPadSchema.optional(),
77784
77800
  memory: OmoMemorySettingsLayerSchema.optional(),
77785
77801
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
77802
+ device_service: OmoDeviceServiceSettingsLayerSchema.optional(),
77786
77803
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
77787
77804
  computer: OmoComputerSettingsLayerSchema.optional(),
77788
77805
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -77802,6 +77819,7 @@ var init_config = __esm(() => {
77802
77819
  model_pad: OmoModelPadSchema.optional(),
77803
77820
  memory: OmoMemorySettingsLayerSchema.optional(),
77804
77821
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
77822
+ device_service: OmoDeviceServiceSettingsLayerSchema.optional(),
77805
77823
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
77806
77824
  computer: OmoComputerSettingsLayerSchema.optional(),
77807
77825
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -77826,6 +77844,7 @@ var init_config = __esm(() => {
77826
77844
  model_pad: OmoModelPadSchema.optional(),
77827
77845
  memory: OmoMemorySettingsSchema.optional(),
77828
77846
  telemetry: OmoTelemetrySettingsSchema.optional(),
77847
+ device_service: OmoDeviceServiceSettingsSchema.optional(),
77829
77848
  side_panel: OmoSidePanelSettingsSchema.optional(),
77830
77849
  computer: OmoComputerSettingsSchema.optional(),
77831
77850
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -77853,6 +77872,7 @@ var init_config = __esm(() => {
77853
77872
  model_pad: OmoModelPadSchema.optional(),
77854
77873
  memory: OmoMemorySettingsLayerSchema.optional(),
77855
77874
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
77875
+ device_service: OmoDeviceServiceSettingsLayerSchema.optional(),
77856
77876
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
77857
77877
  computer: OmoComputerSettingsLayerSchema.optional(),
77858
77878
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -78004,6 +78024,7 @@ var init_schema = __esm(() => {
78004
78024
  init_task();
78005
78025
  init_team();
78006
78026
  init_telemetry();
78027
+ init_device_service();
78007
78028
  init_computer();
78008
78029
  });
78009
78030
 
@@ -92768,7 +92789,7 @@ var package_default2;
92768
92789
  var init_package2 = __esm(() => {
92769
92790
  package_default2 = {
92770
92791
  name: "@oh-my-opencode/omo-codex",
92771
- version: "5.1.60",
92792
+ version: "5.1.61",
92772
92793
  type: "module",
92773
92794
  private: true,
92774
92795
  description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
@@ -100144,6 +100165,7 @@ var REQUIRED_PLUGIN_ARTIFACTS = [
100144
100165
  join66("extensions", "omo-memory-commands.js"),
100145
100166
  join66("extensions", "omo-session-history.js"),
100146
100167
  join66("extensions", "omo-recall-store.js"),
100168
+ join66("extensions", "omo-device-service.js"),
100147
100169
  join66("extensions", "omo-telemetry-posthog.js"),
100148
100170
  join66("extensions", "omo-telemetry-otlp.js"),
100149
100171
  join66("extensions", "omo-memory-sync.js"),
@@ -109528,8 +109550,8 @@ var package_default3 = {
109528
109550
  },
109529
109551
  dependencies: {
109530
109552
  "@clack/prompts": "^1.8.1",
109531
- "@code-yeongyu/senpi": "2026.11.2-3",
109532
- "@earendil-works/pi-ai": "npm:@code-yeongyu/senpi-ai@2026.11.2-3",
109553
+ "@code-yeongyu/senpi": "2026.11.3-3",
109554
+ "@earendil-works/pi-ai": "npm:@code-yeongyu/senpi-ai@2026.11.3-3",
109533
109555
  "@modelcontextprotocol/sdk": "^1.30.0",
109534
109556
  "@oh-my-opencode/agents-md-core": "workspace:*",
109535
109557
  "@oh-my-opencode/boulder-state": "workspace:*",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lazycodex-ai",
3
- "version": "5.1.60",
3
+ "version": "5.1.61",
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.60",
3
+ "version": "5.1.61",
4
4
  "description": "One Codex plugin namespace for Yeongyu's local Codex components.",
5
5
  "author": {
6
6
  "name": "Yeongyu Kim",
@@ -7655,6 +7655,15 @@ var OmoTelemetrySettingsSchema = OmoTelemetrySettingsLayerSchema.extend({
7655
7655
  enabled: boolean2().default(true)
7656
7656
  }).strict();
7657
7657
 
7658
+ // ../../omo-config-core/src/schema/device-service.ts
7659
+ var OmoDeviceServiceSettingsShape = {
7660
+ enabled: boolean2()
7661
+ };
7662
+ var OmoDeviceServiceSettingsLayerSchema = object(OmoDeviceServiceSettingsShape).partial().strict();
7663
+ var OmoDeviceServiceSettingsSchema = OmoDeviceServiceSettingsLayerSchema.extend({
7664
+ enabled: boolean2().default(true)
7665
+ }).strict();
7666
+
7658
7667
  // ../../omo-config-core/src/schema/format-on-mutation.ts
7659
7668
  var mode = _enum(["off", "best-effort", "required"]);
7660
7669
  var languages = record(string2(), boolean2()).optional();
@@ -7697,6 +7706,7 @@ var OmoTypedHarnessConfigSchema = object({
7697
7706
  model_pad: OmoModelPadSchema.optional(),
7698
7707
  memory: OmoMemorySettingsLayerSchema.optional(),
7699
7708
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
7709
+ device_service: OmoDeviceServiceSettingsLayerSchema.optional(),
7700
7710
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
7701
7711
  computer: OmoComputerSettingsLayerSchema.optional(),
7702
7712
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -7716,6 +7726,7 @@ var OmoConfigProfileSchema = object({
7716
7726
  model_pad: OmoModelPadSchema.optional(),
7717
7727
  memory: OmoMemorySettingsLayerSchema.optional(),
7718
7728
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
7729
+ device_service: OmoDeviceServiceSettingsLayerSchema.optional(),
7719
7730
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
7720
7731
  computer: OmoComputerSettingsLayerSchema.optional(),
7721
7732
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -7740,6 +7751,7 @@ var OmoConfigSchema = object({
7740
7751
  model_pad: OmoModelPadSchema.optional(),
7741
7752
  memory: OmoMemorySettingsSchema.optional(),
7742
7753
  telemetry: OmoTelemetrySettingsSchema.optional(),
7754
+ device_service: OmoDeviceServiceSettingsSchema.optional(),
7743
7755
  side_panel: OmoSidePanelSettingsSchema.optional(),
7744
7756
  computer: OmoComputerSettingsSchema.optional(),
7745
7757
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -7767,6 +7779,7 @@ var OmoConfigLayerSchema = object({
7767
7779
  model_pad: OmoModelPadSchema.optional(),
7768
7780
  memory: OmoMemorySettingsLayerSchema.optional(),
7769
7781
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
7782
+ device_service: OmoDeviceServiceSettingsLayerSchema.optional(),
7770
7783
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
7771
7784
  computer: OmoComputerSettingsLayerSchema.optional(),
7772
7785
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -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.60) Checking Bootstrap Provisioning"
11
+ "statusMessage": "(OmO 5.1.61) 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.60",
3
+ "version": "5.1.61",
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.60) Checking Comments"
11
+ "statusMessage": "(OmO 5.1.61) 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.60",
3
+ "version": "5.1.61",
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.60) Recommending Git Bash MCP"
11
+ "statusMessage": "(OmO 5.1.61) 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.60) Resetting Git Bash MCP Reminder"
23
+ "statusMessage": "(OmO 5.1.61) 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.60",
3
+ "version": "5.1.61",
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.60) Verifying LazyCodex Executor Evidence"
11
+ "statusMessage": "(OmO 5.1.61) 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.60",
3
+ "version": "5.1.61",
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.60",
4
- "inputDigest": "sha256:43dbd0f204db3974c99bd8b447a794d85ef00184cbcbf9674d18388811bb8715",
3
+ "version": "5.1.61",
4
+ "inputDigest": "sha256:ce96c61ce069cbd3ce8e6a5675d4198dac742909bd8f3b91b2b9713ee68411a6",
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.60) Checking LSP Diagnostics"
11
+ "statusMessage": "(OmO 5.1.61) 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.60) Resetting LSP Diagnostics Cache"
24
+ "statusMessage": "(OmO 5.1.61) 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.60",
3
+ "version": "5.1.61",
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",
@@ -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.60) Loading Project Rules"
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Loading Project Rules"
22
+ "statusMessage": "(OmO 5.1.61) 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.60) Matching Project Rules"
35
+ "statusMessage": "(OmO 5.1.61) 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.60) Resetting Project Rule Cache"
48
+ "statusMessage": "(OmO 5.1.61) 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.60",
3
+ "version": "5.1.61",
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.60) Checking Thread Title Hygiene"
11
+ "statusMessage": "(OmO 5.1.61) 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.60",
3
+ "version": "5.1.61",
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.60) Recording Session Telemetry"
10
+ "statusMessage": "(OmO 5.1.61) 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.60",
3
+ "version": "5.1.61",
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.60) Checking Ultrawork Trigger"
10
+ "statusMessage": "(OmO 5.1.61) 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.60",
3
+ "version": "5.1.61",
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.60) Checking Ulw-Execute Continuation"
10
+ "statusMessage": "(OmO 5.1.61) 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.60",
3
+ "version": "5.1.61",
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.60) Checking Ulw-Loop Steering"
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Recording Spawn Admission"
23
+ "statusMessage": "(OmO 5.1.61) 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.60) Enforcing Unlimited Ulw-Loop Budget"
36
+ "statusMessage": "(OmO 5.1.61) 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.60) Guarding Ulw-Loop Spawns"
47
+ "statusMessage": "(OmO 5.1.61) 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.60) Checking Ulw-Loop Resume"
59
+ "statusMessage": "(OmO 5.1.61) 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.60",
3
+ "version": "5.1.61",
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",
@@ -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.60) Resetting Git Bash MCP Reminder",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Resetting LSP Diagnostics Cache",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Resetting Project Rule Cache",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Checking Comments",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Checking LSP Diagnostics",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Checking Thread Title Hygiene",
11
+ "statusMessage": "(OmO 5.1.61) 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.60) Matching Project Rules",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Recording Spawn Admission",
11
+ "statusMessage": "(OmO 5.1.61) 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.60) Enforcing Unlimited Goal Budget",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Guarding Ulw-Loop Spawns",
11
+ "statusMessage": "(OmO 5.1.61) 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.60) Recommending Git Bash MCP",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Checking Auto Update",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Checking Bootstrap Provisioning"
11
+ "statusMessage": "(OmO 5.1.61) 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.60) Loading Project Rules",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Recording Session Telemetry",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Checking Ulw-Execute Continuation",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Checking Ulw-Loop Resume",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Verifying LazyCodex Executor Evidence",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Checking Ultrawork Trigger",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Checking Ulw-Loop Steering",
10
+ "statusMessage": "(OmO 5.1.61) 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.60) Loading Project Rules",
10
+ "statusMessage": "(OmO 5.1.61) 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.60",
3
+ "version": "5.1.61",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@sisyphuslabs/omo-codex-plugin",
9
- "version": "5.1.60",
9
+ "version": "5.1.61",
10
10
  "workspaces": [
11
11
  "components/comment-checker",
12
12
  "components/git-bash",
@@ -100,7 +100,7 @@
100
100
  },
101
101
  "components/comment-checker": {
102
102
  "name": "@code-yeongyu/codex-comment-checker",
103
- "version": "5.1.60",
103
+ "version": "5.1.61",
104
104
  "license": "MIT",
105
105
  "bin": {
106
106
  "omo-comment-checker": "dist/cli.js"
@@ -122,7 +122,7 @@
122
122
  },
123
123
  "components/git-bash": {
124
124
  "name": "@sisyphuslabs/codex-git-bash-hook",
125
- "version": "5.1.60",
125
+ "version": "5.1.61",
126
126
  "bin": {
127
127
  "omo-git-bash-hook": "dist/cli.js"
128
128
  },
@@ -136,7 +136,7 @@
136
136
  },
137
137
  "components/lazycodex-executor-verify": {
138
138
  "name": "@code-yeongyu/codex-lazycodex-executor-verify",
139
- "version": "5.1.60",
139
+ "version": "5.1.61",
140
140
  "license": "MIT",
141
141
  "bin": {
142
142
  "lazycodex-executor-verify": "dist/cli.js"
@@ -154,7 +154,7 @@
154
154
  },
155
155
  "components/lsp": {
156
156
  "name": "@code-yeongyu/codex-lsp",
157
- "version": "5.1.60",
157
+ "version": "5.1.61",
158
158
  "license": "MIT",
159
159
  "dependencies": {
160
160
  "@code-yeongyu/lsp-daemon": "file:../../../../lsp-daemon",
@@ -176,7 +176,7 @@
176
176
  },
177
177
  "components/rules": {
178
178
  "name": "@code-yeongyu/codex-rules",
179
- "version": "5.1.60",
179
+ "version": "5.1.61",
180
180
  "license": "MIT",
181
181
  "dependencies": {
182
182
  "picomatch": "^4.0.7"
@@ -199,7 +199,7 @@
199
199
  },
200
200
  "components/teammode": {
201
201
  "name": "@sisyphuslabs/codex-teammode",
202
- "version": "5.1.60",
202
+ "version": "5.1.61",
203
203
  "devDependencies": {
204
204
  "@types/node": "^26.6.2",
205
205
  "@vitest/coverage-v8": "5.0.1",
@@ -213,7 +213,7 @@
213
213
  },
214
214
  "components/telemetry": {
215
215
  "name": "@code-yeongyu/codex-telemetry",
216
- "version": "5.1.60",
216
+ "version": "5.1.61",
217
217
  "license": "MIT",
218
218
  "bin": {
219
219
  "omo-telemetry": "dist/cli.js"
@@ -232,7 +232,7 @@
232
232
  },
233
233
  "components/ultrawork": {
234
234
  "name": "@code-yeongyu/codex-ultrawork",
235
- "version": "5.1.60",
235
+ "version": "5.1.61",
236
236
  "license": "MIT",
237
237
  "bin": {
238
238
  "omo-ultrawork": "dist/cli.js"
@@ -251,7 +251,7 @@
251
251
  },
252
252
  "components/ulw-execute-continuation": {
253
253
  "name": "@code-yeongyu/codex-ulw-execute-continuation",
254
- "version": "5.1.60",
254
+ "version": "5.1.61",
255
255
  "license": "MIT",
256
256
  "bin": {
257
257
  "omo-ulw-execute-continuation": "dist/cli.js"
@@ -269,7 +269,7 @@
269
269
  },
270
270
  "components/ulw-loop": {
271
271
  "name": "@code-yeongyu/codex-ulw-loop",
272
- "version": "5.1.60",
272
+ "version": "5.1.61",
273
273
  "license": "MIT",
274
274
  "bin": {
275
275
  "omo-ulw-loop": "dist/cli.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sisyphuslabs/omo-codex-plugin",
3
- "version": "5.1.60",
3
+ "version": "5.1.61",
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": "3a2e4f2575bdfc15448f13768cd8113f8493bf04611c9fefb09b13430d6520de",
6
6
  "page-bundle.js": "bfd51e8383cf47200d57387bbbed258bce5a3a3d00c38fc108034d2888e23f0c"
7
7
  },
8
- "stagedAtUtc": "2026-11-03T17:35:41.946Z"
8
+ "stagedAtUtc": "2026-11-05T18:57:47.833Z"
9
9
  }
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- // omo-codex-install:f2ad355eec078382167caa8ee2c25b6393ad79be1c47f6266dec84e796d2adbf:1939d3601687ca5dd10ae18034a4ff0d7e131a7c7b99e64019cdd034d81fbd5e
2
+ // omo-codex-install:2fb5e009f6ecfcdc765948177a6d21c4b1aff0ecdec9e7338a3b96e6a7781bfd:a95bd4f3fc7c135903d16ccd74b4c1314232f90370da05dea22e7871b1fbcf47
3
3
  var __esm = (fn, res, err) => () => {
4
4
  if (fn)
5
5
  try {
@@ -10205,7 +10205,7 @@ var package_default;
10205
10205
  var init_package = __esm(() => {
10206
10206
  package_default = {
10207
10207
  name: "@oh-my-opencode/omo-codex",
10208
- version: "5.1.60",
10208
+ version: "5.1.61",
10209
10209
  type: "module",
10210
10210
  private: true,
10211
10211
  description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
@@ -20270,6 +20270,15 @@ var OmoTelemetrySettingsSchema = OmoTelemetrySettingsLayerSchema.extend({
20270
20270
  enabled: boolean2().default(true)
20271
20271
  }).strict();
20272
20272
 
20273
+ // packages/omo-config-core/src/schema/device-service.ts
20274
+ var OmoDeviceServiceSettingsShape = {
20275
+ enabled: boolean2()
20276
+ };
20277
+ var OmoDeviceServiceSettingsLayerSchema = object(OmoDeviceServiceSettingsShape).partial().strict();
20278
+ var OmoDeviceServiceSettingsSchema = OmoDeviceServiceSettingsLayerSchema.extend({
20279
+ enabled: boolean2().default(true)
20280
+ }).strict();
20281
+
20273
20282
  // packages/omo-config-core/src/schema/format-on-mutation.ts
20274
20283
  var mode = _enum(["off", "best-effort", "required"]);
20275
20284
  var languages = record(string2(), boolean2()).optional();
@@ -20312,6 +20321,7 @@ var OmoTypedHarnessConfigSchema = object({
20312
20321
  model_pad: OmoModelPadSchema.optional(),
20313
20322
  memory: OmoMemorySettingsLayerSchema.optional(),
20314
20323
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
20324
+ device_service: OmoDeviceServiceSettingsLayerSchema.optional(),
20315
20325
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
20316
20326
  computer: OmoComputerSettingsLayerSchema.optional(),
20317
20327
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -20331,6 +20341,7 @@ var OmoConfigProfileSchema = object({
20331
20341
  model_pad: OmoModelPadSchema.optional(),
20332
20342
  memory: OmoMemorySettingsLayerSchema.optional(),
20333
20343
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
20344
+ device_service: OmoDeviceServiceSettingsLayerSchema.optional(),
20334
20345
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
20335
20346
  computer: OmoComputerSettingsLayerSchema.optional(),
20336
20347
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -20355,6 +20366,7 @@ var OmoConfigSchema = object({
20355
20366
  model_pad: OmoModelPadSchema.optional(),
20356
20367
  memory: OmoMemorySettingsSchema.optional(),
20357
20368
  telemetry: OmoTelemetrySettingsSchema.optional(),
20369
+ device_service: OmoDeviceServiceSettingsSchema.optional(),
20358
20370
  side_panel: OmoSidePanelSettingsSchema.optional(),
20359
20371
  computer: OmoComputerSettingsSchema.optional(),
20360
20372
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -20382,6 +20394,7 @@ var OmoConfigLayerSchema = object({
20382
20394
  model_pad: OmoModelPadSchema.optional(),
20383
20395
  memory: OmoMemorySettingsLayerSchema.optional(),
20384
20396
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
20397
+ device_service: OmoDeviceServiceSettingsLayerSchema.optional(),
20385
20398
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
20386
20399
  computer: OmoComputerSettingsLayerSchema.optional(),
20387
20400
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -5,5 +5,5 @@
5
5
  "index.js": "3a2e4f2575bdfc15448f13768cd8113f8493bf04611c9fefb09b13430d6520de",
6
6
  "page-bundle.js": "bfd51e8383cf47200d57387bbbed258bce5a3a3d00c38fc108034d2888e23f0c"
7
7
  },
8
- "stagedAtUtc": "2026-11-03T17:35:41.946Z"
8
+ "stagedAtUtc": "2026-11-05T18:57:47.833Z"
9
9
  }