oh-my-opencode 5.0.0-beta.46 → 5.0.0-beta.47

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 (100) hide show
  1. package/dist/cli/index.js +14 -14
  2. package/dist/cli-node/index.js +14 -14
  3. package/dist/index.js +71 -51
  4. package/package.json +13 -13
  5. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
  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 +2 -2
  26. package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
  27. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-commands.js +15 -7
  28. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-output.d.ts +1 -1
  29. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-output.js +1 -1
  30. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli.js +294 -96
  31. package/packages/omo-codex/plugin/components/ulw-loop/dist/constants.d.ts +1 -0
  32. package/packages/omo-codex/plugin/components/ulw-loop/dist/constants.js +1 -0
  33. package/packages/omo-codex/plugin/components/ulw-loop/dist/paths.d.ts +1 -0
  34. package/packages/omo-codex/plugin/components/ulw-loop/dist/paths.js +12 -3
  35. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-io.d.ts +1 -0
  36. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-io.js +21 -6
  37. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-missing-recovery.d.ts +1 -0
  38. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-missing-recovery.js +10 -0
  39. package/packages/omo-codex/plugin/components/ulw-loop/dist/spawn-guard.d.ts +4 -1
  40. package/packages/omo-codex/plugin/components/ulw-loop/dist/spawn-guard.js +25 -57
  41. package/packages/omo-codex/plugin/components/ulw-loop/dist/state-lock.d.ts +9 -0
  42. package/packages/omo-codex/plugin/components/ulw-loop/dist/state-lock.js +227 -0
  43. package/packages/omo-codex/plugin/components/ulw-loop/dist/stop-resume-hook.js +17 -3
  44. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +4 -4
  45. package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
  46. package/packages/omo-codex/plugin/components/ulw-loop/skills/ulw-loop/SKILL.md +2 -1
  47. package/packages/omo-codex/plugin/components/ulw-loop/skills/ulw-loop/references/full-workflow.md +10 -7
  48. package/packages/omo-codex/plugin/components/ulw-loop/src/cli-commands.ts +18 -7
  49. package/packages/omo-codex/plugin/components/ulw-loop/src/cli-output.ts +1 -1
  50. package/packages/omo-codex/plugin/components/ulw-loop/src/constants.ts +1 -0
  51. package/packages/omo-codex/plugin/components/ulw-loop/src/paths.ts +24 -3
  52. package/packages/omo-codex/plugin/components/ulw-loop/src/plan-io.ts +25 -5
  53. package/packages/omo-codex/plugin/components/ulw-loop/src/plan-missing-recovery.ts +11 -0
  54. package/packages/omo-codex/plugin/components/ulw-loop/src/spawn-guard.ts +34 -64
  55. package/packages/omo-codex/plugin/components/ulw-loop/src/state-lock.ts +239 -0
  56. package/packages/omo-codex/plugin/components/ulw-loop/src/stop-resume-hook.ts +16 -3
  57. package/packages/omo-codex/plugin/components/ulw-loop/test/checkpoint-template.test.ts +14 -4
  58. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-checkpoint-continuation.test.ts +4 -2
  59. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-checkpoint.test.ts +4 -2
  60. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-commands.test.ts +2 -0
  61. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-complete-goals.test.ts +3 -1
  62. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-create-goals.test.ts +10 -8
  63. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-entrypoint.test.ts +12 -2
  64. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-json-errors.test.ts +2 -0
  65. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-scope-required.test.ts +144 -0
  66. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-status-next-actions.test.ts +7 -5
  67. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-steering-batch.test.ts +8 -3
  68. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-validation-batch.test.ts +6 -0
  69. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/cli-session.ts +4 -0
  70. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/quality-gate-builder.ts +2 -1
  71. package/packages/omo-codex/plugin/components/ulw-loop/test/plan-io-cross-process.test.ts +106 -0
  72. package/packages/omo-codex/plugin/components/ulw-loop/test/plan-io.test.ts +36 -2
  73. package/packages/omo-codex/plugin/components/ulw-loop/test/spawn-guard.test.ts +37 -0
  74. package/packages/omo-codex/plugin/components/ulw-loop/test/state-lock.test.ts +218 -0
  75. package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
  76. package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
  77. package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
  78. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
  79. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
  80. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
  81. package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
  82. package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
  83. package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
  84. package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
  85. package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
  86. package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
  87. package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
  88. package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
  89. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +1 -1
  90. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
  91. package/packages/omo-codex/plugin/hooks/subagent-stop-checking-ulw-execute-continuation.json +1 -1
  92. package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
  93. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
  94. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
  95. package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
  96. package/packages/omo-codex/plugin/package-lock.json +12 -12
  97. package/packages/omo-codex/plugin/package.json +1 -1
  98. package/packages/omo-codex/plugin/skills/ulw-loop/SKILL.md +2 -1
  99. package/packages/omo-codex/plugin/skills/ulw-loop/references/full-workflow.md +10 -7
  100. package/packages/omo-codex/scripts/install-dist/install-local.mjs +2 -2
package/dist/cli/index.js CHANGED
@@ -54,7 +54,7 @@ var package_default;
54
54
  var init_package = __esm(() => {
55
55
  package_default = {
56
56
  name: "oh-my-opencode",
57
- version: "5.0.0-beta.46",
57
+ version: "5.0.0-beta.47",
58
58
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
59
59
  main: "./dist/index.js",
60
60
  types: "dist/index.d.ts",
@@ -279,18 +279,18 @@ var init_package = __esm(() => {
279
279
  typescript: "^7.0.2"
280
280
  },
281
281
  optionalDependencies: {
282
- "oh-my-opencode-darwin-arm64": "5.0.0-beta.46",
283
- "oh-my-opencode-darwin-x64": "5.0.0-beta.46",
284
- "oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.46",
285
- "oh-my-opencode-linux-arm64": "5.0.0-beta.46",
286
- "oh-my-opencode-linux-arm64-musl": "5.0.0-beta.46",
287
- "oh-my-opencode-linux-x64": "5.0.0-beta.46",
288
- "oh-my-opencode-linux-x64-baseline": "5.0.0-beta.46",
289
- "oh-my-opencode-linux-x64-musl": "5.0.0-beta.46",
290
- "oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.46",
291
- "oh-my-opencode-windows-arm64": "5.0.0-beta.46",
292
- "oh-my-opencode-windows-x64": "5.0.0-beta.46",
293
- "oh-my-opencode-windows-x64-baseline": "5.0.0-beta.46"
282
+ "oh-my-opencode-darwin-arm64": "5.0.0-beta.47",
283
+ "oh-my-opencode-darwin-x64": "5.0.0-beta.47",
284
+ "oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.47",
285
+ "oh-my-opencode-linux-arm64": "5.0.0-beta.47",
286
+ "oh-my-opencode-linux-arm64-musl": "5.0.0-beta.47",
287
+ "oh-my-opencode-linux-x64": "5.0.0-beta.47",
288
+ "oh-my-opencode-linux-x64-baseline": "5.0.0-beta.47",
289
+ "oh-my-opencode-linux-x64-musl": "5.0.0-beta.47",
290
+ "oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.47",
291
+ "oh-my-opencode-windows-arm64": "5.0.0-beta.47",
292
+ "oh-my-opencode-windows-x64": "5.0.0-beta.47",
293
+ "oh-my-opencode-windows-x64-baseline": "5.0.0-beta.47"
294
294
  },
295
295
  overrides: {
296
296
  "@earendil-works/pi-agent-core": "0.84.2",
@@ -94447,7 +94447,7 @@ var package_default2;
94447
94447
  var init_package2 = __esm(() => {
94448
94448
  package_default2 = {
94449
94449
  name: "@oh-my-opencode/omo-codex",
94450
- version: "5.0.0-beta.46",
94450
+ version: "5.0.0-beta.47",
94451
94451
  type: "module",
94452
94452
  private: true,
94453
94453
  description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
@@ -55,7 +55,7 @@ var package_default;
55
55
  var init_package = __esm(() => {
56
56
  package_default = {
57
57
  name: "oh-my-opencode",
58
- version: "5.0.0-beta.46",
58
+ version: "5.0.0-beta.47",
59
59
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
60
60
  main: "./dist/index.js",
61
61
  types: "dist/index.d.ts",
@@ -280,18 +280,18 @@ var init_package = __esm(() => {
280
280
  typescript: "^7.0.2"
281
281
  },
282
282
  optionalDependencies: {
283
- "oh-my-opencode-darwin-arm64": "5.0.0-beta.46",
284
- "oh-my-opencode-darwin-x64": "5.0.0-beta.46",
285
- "oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.46",
286
- "oh-my-opencode-linux-arm64": "5.0.0-beta.46",
287
- "oh-my-opencode-linux-arm64-musl": "5.0.0-beta.46",
288
- "oh-my-opencode-linux-x64": "5.0.0-beta.46",
289
- "oh-my-opencode-linux-x64-baseline": "5.0.0-beta.46",
290
- "oh-my-opencode-linux-x64-musl": "5.0.0-beta.46",
291
- "oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.46",
292
- "oh-my-opencode-windows-arm64": "5.0.0-beta.46",
293
- "oh-my-opencode-windows-x64": "5.0.0-beta.46",
294
- "oh-my-opencode-windows-x64-baseline": "5.0.0-beta.46"
283
+ "oh-my-opencode-darwin-arm64": "5.0.0-beta.47",
284
+ "oh-my-opencode-darwin-x64": "5.0.0-beta.47",
285
+ "oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.47",
286
+ "oh-my-opencode-linux-arm64": "5.0.0-beta.47",
287
+ "oh-my-opencode-linux-arm64-musl": "5.0.0-beta.47",
288
+ "oh-my-opencode-linux-x64": "5.0.0-beta.47",
289
+ "oh-my-opencode-linux-x64-baseline": "5.0.0-beta.47",
290
+ "oh-my-opencode-linux-x64-musl": "5.0.0-beta.47",
291
+ "oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.47",
292
+ "oh-my-opencode-windows-arm64": "5.0.0-beta.47",
293
+ "oh-my-opencode-windows-x64": "5.0.0-beta.47",
294
+ "oh-my-opencode-windows-x64-baseline": "5.0.0-beta.47"
295
295
  },
296
296
  overrides: {
297
297
  "@earendil-works/pi-agent-core": "0.84.2",
@@ -94526,7 +94526,7 @@ var package_default2;
94526
94526
  var init_package2 = __esm(() => {
94527
94527
  package_default2 = {
94528
94528
  name: "@oh-my-opencode/omo-codex",
94529
- version: "5.0.0-beta.46",
94529
+ version: "5.0.0-beta.47",
94530
94530
  type: "module",
94531
94531
  private: true,
94532
94532
  description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
package/dist/index.js CHANGED
@@ -96714,7 +96714,7 @@ function getCachedVersion(options = {}) {
96714
96714
  // package.json
96715
96715
  var package_default = {
96716
96716
  name: "oh-my-opencode",
96717
- version: "5.0.0-beta.46",
96717
+ version: "5.0.0-beta.47",
96718
96718
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
96719
96719
  main: "./dist/index.js",
96720
96720
  types: "dist/index.d.ts",
@@ -96939,18 +96939,18 @@ var package_default = {
96939
96939
  typescript: "^7.0.2"
96940
96940
  },
96941
96941
  optionalDependencies: {
96942
- "oh-my-opencode-darwin-arm64": "5.0.0-beta.46",
96943
- "oh-my-opencode-darwin-x64": "5.0.0-beta.46",
96944
- "oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.46",
96945
- "oh-my-opencode-linux-arm64": "5.0.0-beta.46",
96946
- "oh-my-opencode-linux-arm64-musl": "5.0.0-beta.46",
96947
- "oh-my-opencode-linux-x64": "5.0.0-beta.46",
96948
- "oh-my-opencode-linux-x64-baseline": "5.0.0-beta.46",
96949
- "oh-my-opencode-linux-x64-musl": "5.0.0-beta.46",
96950
- "oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.46",
96951
- "oh-my-opencode-windows-arm64": "5.0.0-beta.46",
96952
- "oh-my-opencode-windows-x64": "5.0.0-beta.46",
96953
- "oh-my-opencode-windows-x64-baseline": "5.0.0-beta.46"
96942
+ "oh-my-opencode-darwin-arm64": "5.0.0-beta.47",
96943
+ "oh-my-opencode-darwin-x64": "5.0.0-beta.47",
96944
+ "oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.47",
96945
+ "oh-my-opencode-linux-arm64": "5.0.0-beta.47",
96946
+ "oh-my-opencode-linux-arm64-musl": "5.0.0-beta.47",
96947
+ "oh-my-opencode-linux-x64": "5.0.0-beta.47",
96948
+ "oh-my-opencode-linux-x64-baseline": "5.0.0-beta.47",
96949
+ "oh-my-opencode-linux-x64-musl": "5.0.0-beta.47",
96950
+ "oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.47",
96951
+ "oh-my-opencode-windows-arm64": "5.0.0-beta.47",
96952
+ "oh-my-opencode-windows-x64": "5.0.0-beta.47",
96953
+ "oh-my-opencode-windows-x64-baseline": "5.0.0-beta.47"
96954
96954
  },
96955
96955
  overrides: {
96956
96956
  "@earendil-works/pi-agent-core": "0.84.2",
@@ -150330,7 +150330,7 @@ function getReplyListenerRuntimeSignature(config2) {
150330
150330
  // packages/openclaw-core/src/reply-listener-poll-loop.ts
150331
150331
  var PRUNE_INTERVAL_MS = 60 * 60 * 1000;
150332
150332
  // packages/openclaw-core/src/reply-listener-start.ts
150333
- import { dirname as dirname46, join as join127 } from "path";
150333
+ import { dirname as dirname46, join as join128 } from "path";
150334
150334
  import { fileURLToPath as fileURLToPath7 } from "url";
150335
150335
 
150336
150336
  // packages/openclaw-core/src/reply-listener-spawn.ts
@@ -150339,6 +150339,7 @@ init_runtime();
150339
150339
  // packages/openclaw-core/src/reply-listener-process.ts
150340
150340
  init_runtime();
150341
150341
  import { readFileSync as readFileSync71 } from "fs";
150342
+ import { join as join127 } from "path";
150342
150343
  var REPLY_LISTENER_DAEMON_IDENTITY_MARKER = "--openclaw-reply-listener-daemon";
150343
150344
  var REPLY_LISTENER_DAEMON_ENV_ALLOWLIST = [
150344
150345
  "PATH",
@@ -150372,6 +150373,22 @@ var REPLY_LISTENER_DAEMON_ENV_ALLOWLIST = [
150372
150373
  "windir",
150373
150374
  "COMSPEC"
150374
150375
  ];
150376
+ async function windowsProcessCommandLineHasMarker(pid, deps) {
150377
+ const systemRoot = process.env.SystemRoot ?? process.env.SYSTEMROOT ?? "C:\\Windows";
150378
+ const powershell = join127(systemRoot, "System32", "WindowsPowerShell", "v1.0", "powershell.exe");
150379
+ const processInfo = deps.spawn([
150380
+ powershell,
150381
+ "-NoProfile",
150382
+ "-NonInteractive",
150383
+ "-Command",
150384
+ `Get-CimInstance Win32_Process -Filter "ProcessId=${pid}" | Select-Object -ExpandProperty CommandLine`
150385
+ ], { stdout: "pipe", stderr: "ignore" });
150386
+ const stdout = await new Response(processInfo.stdout).text();
150387
+ await processInfo.exited;
150388
+ if (processInfo.exitCode !== 0)
150389
+ return false;
150390
+ return stdout.includes(REPLY_LISTENER_DAEMON_IDENTITY_MARKER);
150391
+ }
150375
150392
  function ignoreReplyListenerProcessProbeError(error) {
150376
150393
  if (error instanceof Error)
150377
150394
  return;
@@ -150407,6 +150424,9 @@ async function isReplyListenerDaemonProcessWithDeps(pid, deps) {
150407
150424
  const cmdline = readProcCmdline(pid);
150408
150425
  return cmdline.includes(REPLY_LISTENER_DAEMON_IDENTITY_MARKER);
150409
150426
  }
150427
+ if (platform2 === "win32") {
150428
+ return await windowsProcessCommandLineHasMarker(pid, deps);
150429
+ }
150410
150430
  const processInfo = deps.spawn(["ps", "-p", String(pid), "-o", "args="], {
150411
150431
  stdout: "pipe",
150412
150432
  stderr: "ignore"
@@ -150572,7 +150592,7 @@ function createStartFailureResult(message, state3) {
150572
150592
  }
150573
150593
  function resolveReplyListenerDaemonScript(currentFileUrl) {
150574
150594
  const currentFilePath = fileURLToPath7(currentFileUrl);
150575
- return currentFilePath.endsWith(".ts") ? join127(dirname46(currentFilePath), "daemon.ts") : join127(dirname46(currentFilePath), "daemon.js");
150595
+ return currentFilePath.endsWith(".ts") ? join128(dirname46(currentFilePath), "daemon.ts") : join128(dirname46(currentFilePath), "daemon.js");
150576
150596
  }
150577
150597
  async function startReplyListener(config2) {
150578
150598
  const normalizedConfig = getNormalizedReplyListenerConfig(config2);
@@ -150996,12 +151016,12 @@ async function createRuntimeSkillSourceServer(options, runtimeEnv = runtime6) {
150996
151016
  }
150997
151017
  // packages/claude-code-compat-core/src/features/claude-code-mcp-loader/loader.ts
150998
151018
  import { existsSync as existsSync104, readFileSync as readFileSync72 } from "fs";
150999
- import { join as join128 } from "path";
151019
+ import { join as join129 } from "path";
151000
151020
  import { homedir as homedir26 } from "os";
151001
151021
  function resolveMcpLoaderContext(options = {}) {
151002
151022
  const cwd = options.cwd ?? process.cwd();
151003
151023
  const homeDir = options.homeDir ?? getHomeDir();
151004
- const claudeConfigDir = options.claudeConfigDir ?? (options.homeDir === undefined ? getClaudeConfigDir3() : join128(homeDir, ".claude"));
151024
+ const claudeConfigDir = options.claudeConfigDir ?? (options.homeDir === undefined ? getClaudeConfigDir3() : join129(homeDir, ".claude"));
151005
151025
  return { cwd, homeDir, claudeConfigDir };
151006
151026
  }
151007
151027
  var mcpLoaderInternals = {
@@ -151010,10 +151030,10 @@ var mcpLoaderInternals = {
151010
151030
  function getMcpConfigPaths(context) {
151011
151031
  const { claudeConfigDir, homeDir, cwd } = context;
151012
151032
  return [
151013
- { path: join128(homeDir, ".claude.json"), scope: "user" },
151014
- { path: join128(claudeConfigDir, ".mcp.json"), scope: "user" },
151015
- { path: join128(cwd, ".mcp.json"), scope: "project" },
151016
- { path: join128(cwd, ".claude", ".mcp.json"), scope: "local" }
151033
+ { path: join129(homeDir, ".claude.json"), scope: "user" },
151034
+ { path: join129(claudeConfigDir, ".mcp.json"), scope: "user" },
151035
+ { path: join129(cwd, ".mcp.json"), scope: "project" },
151036
+ { path: join129(cwd, ".claude", ".mcp.json"), scope: "local" }
151017
151037
  ];
151018
151038
  }
151019
151039
  function getHomeDir() {
@@ -160532,13 +160552,13 @@ createHephaestusAgent.mode = MODE9;
160532
160552
  // packages/omo-opencode/src/agents/builtin-agents/resolve-file-uri.ts
160533
160553
  import { existsSync as existsSync105, readFileSync as readFileSync73 } from "fs";
160534
160554
  import { homedir as homedir27 } from "os";
160535
- import { isAbsolute as isAbsolute18, join as join129, resolve as resolve33 } from "path";
160555
+ import { isAbsolute as isAbsolute18, join as join130, resolve as resolve33 } from "path";
160536
160556
  init_logger2();
160537
160557
  var ALLOWED_HOME_SUBDIRS = [
160538
- join129(homedir27(), ".config", "opencode"),
160539
- join129(homedir27(), ".config", "oh-my-openagent"),
160540
- join129(homedir27(), ".omo"),
160541
- join129(homedir27(), ".opencode")
160558
+ join130(homedir27(), ".config", "opencode"),
160559
+ join130(homedir27(), ".config", "oh-my-openagent"),
160560
+ join130(homedir27(), ".omo"),
160561
+ join130(homedir27(), ".opencode")
160542
160562
  ];
160543
160563
  function isWithinAllowedPaths(filePath, projectRoot) {
160544
160564
  if (isWithinProject(filePath, projectRoot))
@@ -163296,7 +163316,7 @@ async function applyAgentConfig(params) {
163296
163316
  }
163297
163317
  // packages/claude-code-compat-core/src/features/claude-code-command-loader/loader.ts
163298
163318
  import { promises as fs21 } from "fs";
163299
- import { join as join130, basename as basename21 } from "path";
163319
+ import { join as join131, basename as basename21 } from "path";
163300
163320
 
163301
163321
  // packages/claude-code-compat-core/src/features/claude-code-command-loader/loader-cache.ts
163302
163322
  var commandLoaderCache = new Map;
@@ -163344,7 +163364,7 @@ async function loadCommandsFromDir(commandsDir, scope, visited = new Set, prefix
163344
163364
  continue;
163345
163365
  if (entry.name.startsWith("."))
163346
163366
  continue;
163347
- const subDirPath = join130(commandsDir, entry.name);
163367
+ const subDirPath = join131(commandsDir, entry.name);
163348
163368
  const subPrefix = prefix ? `${prefix}/${entry.name}` : entry.name;
163349
163369
  const subCommands = await loadCommandsFromDir(subDirPath, scope, visited, subPrefix);
163350
163370
  commands2.push(...subCommands);
@@ -163352,7 +163372,7 @@ async function loadCommandsFromDir(commandsDir, scope, visited = new Set, prefix
163352
163372
  }
163353
163373
  if (!isMarkdownFile(entry))
163354
163374
  continue;
163355
- const commandPath = join130(commandsDir, entry.name);
163375
+ const commandPath = join131(commandsDir, entry.name);
163356
163376
  const baseCommandName = basename21(entry.name, ".md");
163357
163377
  const commandName = prefix ? `${prefix}/${baseCommandName}` : baseCommandName;
163358
163378
  try {
@@ -163415,12 +163435,12 @@ function commandsToRecord(commands2) {
163415
163435
  return result;
163416
163436
  }
163417
163437
  async function loadUserCommands() {
163418
- const userCommandsDir = join130(getClaudeConfigDir3(), "commands");
163438
+ const userCommandsDir = join131(getClaudeConfigDir3(), "commands");
163419
163439
  const commands2 = await loadCommandsFromDir(userCommandsDir, "user");
163420
163440
  return commandsToRecord(commands2);
163421
163441
  }
163422
163442
  async function loadProjectCommands(directory) {
163423
- const projectCommandsDir = join130(directory ?? process.cwd(), ".claude", "commands");
163443
+ const projectCommandsDir = join131(directory ?? process.cwd(), ".claude", "commands");
163424
163444
  const commands2 = await loadCommandsFromDir(projectCommandsDir, "project");
163425
163445
  return commandsToRecord(commands2);
163426
163446
  }
@@ -171361,7 +171381,7 @@ function createChatHeadersHandler(args) {
171361
171381
  }
171362
171382
 
171363
171383
  // packages/omo-opencode/src/plugin/ultrawork-db-model-override.ts
171364
- import { join as join131 } from "path";
171384
+ import { join as join132 } from "path";
171365
171385
  import { existsSync as existsSync107 } from "fs";
171366
171386
  async function importBunSqlite() {
171367
171387
  if (typeof globalThis.Bun === "undefined") {
@@ -171378,7 +171398,7 @@ async function importBunSqlite() {
171378
171398
  }
171379
171399
  }
171380
171400
  function getDbPath() {
171381
- return join131(getDataDir(), "opencode", "opencode.db");
171401
+ return join132(getDataDir(), "opencode", "opencode.db");
171382
171402
  }
171383
171403
  var MAX_MICROTASK_RETRIES = 10;
171384
171404
  function logCaughtDbError(message, metadata, error) {
@@ -174070,7 +174090,7 @@ init_logger2();
174070
174090
  // packages/omo-opencode/src/shared/omo-process-sweep.ts
174071
174091
  import { fileURLToPath as fileURLToPath9 } from "url";
174072
174092
  // packages/utils/src/process-sweep/sweeper.ts
174073
- import { join as join134 } from "path";
174093
+ import { join as join135 } from "path";
174074
174094
 
174075
174095
  // packages/utils/src/process-sweep/family-sweeper.ts
174076
174096
  import { existsSync as existsSync108, mkdirSync as mkdirSync25, statSync as statSync16, utimesSync, writeFileSync as writeFileSync27 } from "fs";
@@ -174324,7 +174344,7 @@ function delay6(ms) {
174324
174344
  // packages/utils/src/process-sweep/lsp-daemon-family.ts
174325
174345
  import { readFileSync as readFileSync75, readdirSync as readdirSync30 } from "fs";
174326
174346
  import { homedir as homedir28 } from "os";
174327
- import { basename as basename23, join as join132, resolve as resolve36 } from "path";
174347
+ import { basename as basename23, join as join133, resolve as resolve36 } from "path";
174328
174348
 
174329
174349
  // packages/utils/src/process-sweep/lsp-daemon-owner-attestation.ts
174330
174350
  import { readFile as readFile13 } from "fs/promises";
@@ -174441,7 +174461,7 @@ function resolveLspDaemonBaseDir(options = {}) {
174441
174461
  if (override !== undefined && override.trim().length > 0)
174442
174462
  return resolve36(override);
174443
174463
  const homeDir = options.homeDir ?? env["HOME"] ?? env["USERPROFILE"] ?? homedir28();
174444
- return join132(homeDir, ".omo", "lsp-daemon");
174464
+ return join133(homeDir, ".omo", "lsp-daemon");
174445
174465
  }
174446
174466
  var VERSION_ENTRY_PATTERN = /^v([A-Za-z0-9][A-Za-z0-9._+-]{0,127})$/;
174447
174467
  function listLspDaemonVersionDirs(baseDir) {
@@ -174460,12 +174480,12 @@ function listLspDaemonVersionDirs(baseDir) {
174460
174480
  const version = VERSION_ENTRY_PATTERN.exec(entry.name)?.[1];
174461
174481
  if (version === undefined)
174462
174482
  continue;
174463
- versions.push({ dir: join132(baseDir, entry.name), version });
174483
+ versions.push({ dir: join133(baseDir, entry.name), version });
174464
174484
  }
174465
174485
  return versions.sort((left, right) => left.version.localeCompare(right.version));
174466
174486
  }
174467
174487
  function readLspDaemonOwnerTarget(versionDir) {
174468
- const ownerPath = join132(versionDir, "daemon.owner");
174488
+ const ownerPath = join133(versionDir, "daemon.owner");
174469
174489
  let raw;
174470
174490
  try {
174471
174491
  raw = requireOwnerText(ownerPath);
@@ -174476,7 +174496,7 @@ function readLspDaemonOwnerTarget(versionDir) {
174476
174496
  const owner = parseLspDaemonOwner(JSON.parse(raw));
174477
174497
  if (owner === null)
174478
174498
  return null;
174479
- return { authPath: join132(versionDir, "daemon.auth"), owner, ownerPath, pid: owner.pid };
174499
+ return { authPath: join133(versionDir, "daemon.auth"), owner, ownerPath, pid: owner.pid };
174480
174500
  } catch {
174481
174501
  return null;
174482
174502
  }
@@ -174648,33 +174668,33 @@ function matchLspDaemonProxyCommand(command, roots, platform2) {
174648
174668
  // packages/utils/src/process-sweep/roots.ts
174649
174669
  import { existsSync as existsSync109, readdirSync as readdirSync31, realpathSync as realpathSync20 } from "fs";
174650
174670
  import { homedir as homedir29 } from "os";
174651
- import { join as join133, resolve as resolve37 } from "path";
174671
+ import { join as join134, resolve as resolve37 } from "path";
174652
174672
  function discoverOmoOwnedRoots(options = {}) {
174653
174673
  const env = options.env ?? process.env;
174654
174674
  const homeDir = options.homeDir ?? env["HOME"] ?? env["USERPROFILE"] ?? homedir29();
174655
174675
  const roots = new Set;
174656
- addRoot(roots, join133(homeDir, ".claude", "omo"));
174676
+ addRoot(roots, join134(homeDir, ".claude", "omo"));
174657
174677
  addRoot(roots, options.pluginRoot);
174658
174678
  for (const root of options.extraRoots ?? [])
174659
174679
  addRoot(roots, root);
174660
- for (const root of readCodexPluginCacheRoots(options.codexHome ?? env["CODEX_HOME"] ?? join133(homeDir, ".codex"))) {
174680
+ for (const root of readCodexPluginCacheRoots(options.codexHome ?? env["CODEX_HOME"] ?? join134(homeDir, ".codex"))) {
174661
174681
  addRoot(roots, root);
174662
174682
  }
174663
174683
  return [...roots];
174664
174684
  }
174665
174685
  function readCodexPluginCacheRoots(codexHome) {
174666
- const cacheRoot = join133(codexHome, "plugins", "cache");
174686
+ const cacheRoot = join134(codexHome, "plugins", "cache");
174667
174687
  if (!existsSync109(cacheRoot))
174668
174688
  return [];
174669
174689
  const roots = [];
174670
174690
  for (const publisher of safeReadDir(cacheRoot)) {
174671
174691
  if (!OMO_CODEX_PLUGIN_CACHE_PUBLISHERS.has(publisher))
174672
174692
  continue;
174673
- const omoRoot = join133(cacheRoot, publisher, "omo");
174693
+ const omoRoot = join134(cacheRoot, publisher, "omo");
174674
174694
  if (!existsSync109(omoRoot))
174675
174695
  continue;
174676
174696
  for (const version of safeReadDir(omoRoot))
174677
- roots.push(join133(omoRoot, version));
174697
+ roots.push(join134(omoRoot, version));
174678
174698
  }
174679
174699
  return roots;
174680
174700
  }
@@ -174714,7 +174734,7 @@ var OMO_CODEX_PLUGIN_CACHE_PUBLISHERS = new Set(["sisyphuslabs"]);
174714
174734
  // packages/utils/src/process-sweep/sweeper.ts
174715
174735
  var LSP_PROXY_SWEEP_STAMP_FILE = "lsp-proxy-sweep.stamp";
174716
174736
  async function sweepOrphanedLspDaemonProxies(options = {}) {
174717
- const stampFile = join134(resolveLspDaemonBaseDir(options), LSP_PROXY_SWEEP_STAMP_FILE);
174737
+ const stampFile = join135(resolveLspDaemonBaseDir(options), LSP_PROXY_SWEEP_STAMP_FILE);
174718
174738
  const ownedRoots = options.ownedRoots ?? discoverOmoOwnedRoots(options);
174719
174739
  const result = await runProcessFamilySweep({
174720
174740
  familyLabel: "lsp-daemon proxy sweep",
@@ -174733,7 +174753,7 @@ async function sweepOrphanedLspDaemonProxies(options = {}) {
174733
174753
  var LSP_DAEMON_SWEEP_STAMP_FILE = "lsp-daemon-sweep.stamp";
174734
174754
  async function sweepStaleLspDaemonVersions(options = {}) {
174735
174755
  const baseDir = resolveLspDaemonBaseDir(options);
174736
- const stampFile = join134(baseDir, LSP_DAEMON_SWEEP_STAMP_FILE);
174756
+ const stampFile = join135(baseDir, LSP_DAEMON_SWEEP_STAMP_FILE);
174737
174757
  const currentVersion = resolveCurrentLspDaemonVersion(options);
174738
174758
  const dryRun = options.dryRun === true;
174739
174759
  if (currentVersion === undefined) {
@@ -174806,21 +174826,21 @@ function defaultPluginRoot() {
174806
174826
  init_atomic_write();
174807
174827
  init_xdg_data_dir();
174808
174828
  import { existsSync as existsSync110, mkdirSync as mkdirSync26, readFileSync as readFileSync76 } from "fs";
174809
- import { basename as basename24, join as join135 } from "path";
174829
+ import { basename as basename24, join as join136 } from "path";
174810
174830
  var POSTHOG_ACTIVITY_STATE_FILE = "posthog-activity.json";
174811
174831
  function resolveTelemetryStateDir(product, options = {}) {
174812
174832
  const dataDir = resolveXdgDataDir(product.cacheDirName, {
174813
174833
  env: options.env,
174814
174834
  osProvider: options.osProvider
174815
174835
  });
174816
- const xdgStateDir = options.env?.XDG_DATA_HOME === undefined ? undefined : join135(options.env.XDG_DATA_HOME, product.cacheDirName);
174836
+ const xdgStateDir = options.env?.XDG_DATA_HOME === undefined ? undefined : join136(options.env.XDG_DATA_HOME, product.cacheDirName);
174817
174837
  if (dataDir === xdgStateDir || xdgStateDir === undefined && basename24(dataDir) === product.cacheDirName) {
174818
174838
  return dataDir;
174819
174839
  }
174820
- return join135(dataDir, product.cacheDirName);
174840
+ return join136(dataDir, product.cacheDirName);
174821
174841
  }
174822
174842
  function getTelemetryActivityStateFilePath(stateDir) {
174823
- return join135(stateDir, POSTHOG_ACTIVITY_STATE_FILE);
174843
+ return join136(stateDir, POSTHOG_ACTIVITY_STATE_FILE);
174824
174844
  }
174825
174845
  function getDailyActiveCaptureState(input) {
174826
174846
  const state3 = readPostHogActivityState(input.stateDir, input.diagnostics);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-opencode",
3
- "version": "5.0.0-beta.46",
3
+ "version": "5.0.0-beta.47",
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",
@@ -225,18 +225,18 @@
225
225
  "typescript": "^7.0.2"
226
226
  },
227
227
  "optionalDependencies": {
228
- "oh-my-opencode-darwin-arm64": "5.0.0-beta.46",
229
- "oh-my-opencode-darwin-x64": "5.0.0-beta.46",
230
- "oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.46",
231
- "oh-my-opencode-linux-arm64": "5.0.0-beta.46",
232
- "oh-my-opencode-linux-arm64-musl": "5.0.0-beta.46",
233
- "oh-my-opencode-linux-x64": "5.0.0-beta.46",
234
- "oh-my-opencode-linux-x64-baseline": "5.0.0-beta.46",
235
- "oh-my-opencode-linux-x64-musl": "5.0.0-beta.46",
236
- "oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.46",
237
- "oh-my-opencode-windows-arm64": "5.0.0-beta.46",
238
- "oh-my-opencode-windows-x64": "5.0.0-beta.46",
239
- "oh-my-opencode-windows-x64-baseline": "5.0.0-beta.46"
228
+ "oh-my-opencode-darwin-arm64": "5.0.0-beta.47",
229
+ "oh-my-opencode-darwin-x64": "5.0.0-beta.47",
230
+ "oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.47",
231
+ "oh-my-opencode-linux-arm64": "5.0.0-beta.47",
232
+ "oh-my-opencode-linux-arm64-musl": "5.0.0-beta.47",
233
+ "oh-my-opencode-linux-x64": "5.0.0-beta.47",
234
+ "oh-my-opencode-linux-x64-baseline": "5.0.0-beta.47",
235
+ "oh-my-opencode-linux-x64-musl": "5.0.0-beta.47",
236
+ "oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.47",
237
+ "oh-my-opencode-windows-arm64": "5.0.0-beta.47",
238
+ "oh-my-opencode-windows-x64": "5.0.0-beta.47",
239
+ "oh-my-opencode-windows-x64-baseline": "5.0.0-beta.47"
240
240
  },
241
241
  "overrides": {
242
242
  "@earendil-works/pi-agent-core": "0.84.2",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omo",
3
- "version": "5.0.0-beta.46",
3
+ "version": "5.0.0-beta.47",
4
4
  "description": "One Codex plugin namespace for Yeongyu's local Codex components.",
5
5
  "author": {
6
6
  "name": "Yeongyu Kim",
@@ -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.0.0-beta.46) Checking Bootstrap Provisioning"
11
+ "statusMessage": "(OmO 5.0.0-beta.47) Checking Bootstrap Provisioning"
12
12
  }
13
13
  ]
14
14
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sisyphuslabs/codex-bootstrap",
3
- "version": "5.0.0-beta.46",
3
+ "version": "5.0.0-beta.47",
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.0.0-beta.46) Checking Comments"
11
+ "statusMessage": "(OmO 5.0.0-beta.47) 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.0.0-beta.46",
3
+ "version": "5.0.0-beta.47",
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.0.0-beta.46) Recommending Git Bash MCP"
11
+ "statusMessage": "(OmO 5.0.0-beta.47) 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.0.0-beta.46) Resetting Git Bash MCP Reminder"
23
+ "statusMessage": "(OmO 5.0.0-beta.47) 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.0.0-beta.46",
3
+ "version": "5.0.0-beta.47",
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.0.0-beta.46) Verifying LazyCodex Executor Evidence"
11
+ "statusMessage": "(OmO 5.0.0-beta.47) 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.0.0-beta.46",
3
+ "version": "5.0.0-beta.47",
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.0.0-beta.46",
4
- "inputDigest": "sha256:13716a88e0e51dce96ef8d1176d14d542e981cb8e06b4dbd8736f1b62e62978f",
3
+ "version": "5.0.0-beta.47",
4
+ "inputDigest": "sha256:94520f713de8b6ee4d0cdfc7bf4d42221ae6f23e646b8cfed12bd55fa6f298b7",
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.0.0-beta.46) Checking LSP Diagnostics"
11
+ "statusMessage": "(OmO 5.0.0-beta.47) 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.0.0-beta.46) Resetting LSP Diagnostics Cache"
24
+ "statusMessage": "(OmO 5.0.0-beta.47) 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.0.0-beta.46",
3
+ "version": "5.0.0-beta.47",
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",