oh-my-opencode 5.0.0-beta.11 → 5.0.0-beta.13

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 (98) hide show
  1. package/.agents/skills/senpi-qa/SKILL.md +80 -0
  2. package/.agents/skills/senpi-qa/scripts/resolve-evidence-dir.mjs +65 -0
  3. package/.agents/skills/senpi-qa/scripts/resolve-evidence-dir.test.mjs +171 -0
  4. package/dist/cli/index.js +6784 -4321
  5. package/dist/cli-node/index.js +6784 -4321
  6. package/dist/create-hooks.d.ts +1 -0
  7. package/dist/features/btw-side/btw-command-draft.d.ts +7 -0
  8. package/dist/features/btw-side/context-injector.d.ts +15 -0
  9. package/dist/features/btw-side/index.d.ts +8 -0
  10. package/dist/features/btw-side/metadata.d.ts +15 -0
  11. package/dist/features/btw-side/parent-context-budget.d.ts +9 -0
  12. package/dist/features/btw-side/server-session-registry.d.ts +8 -0
  13. package/dist/features/btw-side/tui-adoption-cache.d.ts +13 -0
  14. package/dist/features/btw-side/tui-adoption-guard.d.ts +5 -0
  15. package/dist/features/btw-side/tui-controller-types.d.ts +63 -0
  16. package/dist/features/btw-side/tui-controller.d.ts +14 -0
  17. package/dist/features/btw-side/tui-keymap.d.ts +10 -0
  18. package/dist/features/btw-side/tui-parent-validator.d.ts +6 -0
  19. package/dist/features/btw-side/tui-prompt-queue.d.ts +8 -0
  20. package/dist/features/btw-side/tui-session-bridge.d.ts +11 -0
  21. package/dist/features/btw-side/tui-side-removal.d.ts +11 -0
  22. package/dist/features/btw-side/tui-side-start.d.ts +9 -0
  23. package/dist/features/btw-side/tui-wiring.d.ts +8 -0
  24. package/dist/hooks/runtime-fallback/chat-message-handler.d.ts +2 -0
  25. package/dist/hooks/runtime-fallback/retry-model-payload.d.ts +1 -0
  26. package/dist/hooks/runtime-fallback/runtime-model-settings.d.ts +6 -0
  27. package/dist/hooks/runtime-fallback/session-status-handler.d.ts +1 -1
  28. package/dist/hooks/runtime-fallback/types.d.ts +3 -1
  29. package/dist/index.js +6512 -3851
  30. package/dist/plugin/event-session-lifecycle.d.ts +1 -0
  31. package/dist/plugin/hooks/create-core-hooks.d.ts +1 -0
  32. package/dist/plugin/hooks/create-transform-hooks.d.ts +2 -0
  33. package/dist/plugin/messages-transform.d.ts +1 -0
  34. package/dist/shared/index.d.ts +1 -0
  35. package/dist/shared/runtime-fallback-retry-marker.d.ts +16 -0
  36. package/dist/tui.js +8102 -6793
  37. package/package.json +24 -23
  38. package/packages/git-bash-mcp/dist/cli.js +5 -1
  39. package/packages/lsp-daemon/dist/cli.js +5 -1
  40. package/packages/lsp-daemon/dist/client.js +5 -1
  41. package/packages/lsp-daemon/dist/index.js +5 -1
  42. package/packages/lsp-tools-mcp/dist/cli.js +5 -1
  43. package/packages/lsp-tools-mcp/dist/mcp.js +5 -1
  44. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
  45. package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
  46. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  47. package/packages/omo-codex/plugin/components/codegraph/dist/cli.js +14 -1
  48. package/packages/omo-codex/plugin/components/codegraph/dist/serve.js +14 -1
  49. package/packages/omo-codex/plugin/components/codegraph/package.json +1 -1
  50. package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
  51. package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
  52. package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
  53. package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
  54. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
  55. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
  56. package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +2 -2
  57. package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
  58. package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
  59. package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
  60. package/packages/omo-codex/plugin/components/rules/package.json +1 -1
  61. package/packages/omo-codex/plugin/components/start-work-continuation/hooks/hooks.json +2 -2
  62. package/packages/omo-codex/plugin/components/start-work-continuation/package.json +1 -1
  63. package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
  64. package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
  65. package/packages/omo-codex/plugin/components/telemetry/dist/cli.js +2242 -381
  66. package/packages/omo-codex/plugin/components/telemetry/dist/posthog.js +2247 -386
  67. package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
  68. package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
  69. package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
  70. package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
  71. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +4 -4
  72. package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
  73. package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
  74. package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
  75. package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
  76. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-codegraph-init-guidance.json +1 -1
  77. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
  78. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
  79. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
  80. package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
  81. package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
  82. package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
  83. package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
  84. package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
  85. package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
  86. package/packages/omo-codex/plugin/hooks/session-start-checking-codegraph-bootstrap.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-start-work-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-start-work-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 +13 -13
  97. package/packages/omo-codex/plugin/package.json +1 -1
  98. package/packages/omo-codex/scripts/install-dist/install-local.mjs +2307 -401
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-opencode",
3
- "version": "5.0.0-beta.11",
3
+ "version": "5.0.0-beta.13",
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",
@@ -137,7 +137,7 @@
137
137
  "test": "bun test",
138
138
  "test:codex": "bun run build:codex-install && bun run build:git-bash-mcp && bun run build:lsp-tools-mcp && bun run build:lsp-daemon && npm --prefix packages/lsp-tools-mcp test && npm --prefix packages/omo-codex/plugin ci && npm --prefix packages/omo-codex/plugin/components/ulw-loop test && bun run --cwd packages/omo-codex/plugin build && npm --prefix packages/omo-codex/plugin/components/codegraph run typecheck && npm --prefix packages/omo-codex/plugin/components/codegraph test && node scripts/check-third-party-notices.mjs --ship && bun test packages/omo-opencode/src/cli/cli-installer.platform.test.ts packages/omo-codex/src/install/codex-cache.test.ts packages/omo-codex/src/install/codex-cleanup.test.ts packages/omo-codex/src/install/codex-config-agent-cleanup.test.ts packages/omo-codex/src/install/codex-config-autonomous-features.test.ts packages/omo-codex/src/install/codex-config-reasoning.test.ts packages/omo-codex/src/install/codex-config-toml.test.ts packages/omo-codex/src/install/codex-project-local-cleanup.test.ts packages/omo-codex/src/install/install-codex-project-local-cleanup.test.ts packages/omo-codex/src/install/install-codex.test.ts packages/omo-codex/src/install/install-codex-packaged.test.ts packages/omo-codex/src/install/link-cached-plugin-agents.test.ts packages/omo-codex/src/**/*.test.ts packages/utils/src/jsonc-parser.test.ts packages/utils/src/frontmatter.test.ts packages/hashline-core/src/hash-computation.test.ts packages/hashline-core/src/smoke-untested-modules.test.ts packages/rules-engine/src/index.test.ts packages/rules-engine/src/security-boundary.test.ts packages/agents-md-core/src/injector.test.ts packages/omo-codex/plugin/components/lsp/test/package-smoke.test.ts && node --test packages/omo-codex/plugin/test/*.test.mjs packages/omo-codex/scripts/install-cache-copy.test.mjs packages/omo-codex/scripts/install-cli-args.test.mjs packages/omo-codex/scripts/install-delegated-command.test.mjs packages/omo-codex/scripts/install-config-autonomous-features.test.mjs packages/omo-codex/scripts/install-config-autonomous.test.mjs packages/omo-codex/scripts/install-config-reasoning.test.mjs packages/omo-codex/scripts/install-config.test.mjs packages/omo-codex/scripts/install-hook-targets.test.mjs packages/omo-codex/scripts/install-project-local-cleanup.test.mjs packages/omo-codex/scripts/install-lazycodex-version-stamp.test.mjs packages/omo-codex/scripts/install-local-entrypoint.test.mjs packages/omo-codex/scripts/install-local-git-bash-preflight.test.mjs packages/omo-codex/scripts/install-local.test.mjs packages/omo-codex/scripts/install-marketplace-cache.test.mjs packages/omo-codex/scripts/install-mcp-context7-runtime.test.mjs packages/omo-codex/scripts/install-mcp-runtime.test.mjs packages/omo-codex/scripts/install-packaged-local.test.mjs packages/omo-codex/scripts/install-generated-bundle.test.mjs packages/omo-codex/scripts/install-agent-links.test.mjs packages/omo-codex/scripts/install-bin-links.test.mjs",
139
139
  "test:fast": "bun run script/test-fast.ts",
140
- "test:senpi": "bun run build:senpi-plugin && tsgo --noEmit -p packages/omo-senpi/tsconfig.json && bun test packages/omo-senpi",
140
+ "test:senpi": "bun run build:senpi-plugin && tsgo --noEmit -p packages/omo-senpi/tsconfig.json && bun test packages/omo-senpi && bun test ./.agents/skills/senpi-qa/scripts/resolve-evidence-dir.test.mjs",
141
141
  "test:windows-codex": "bun run test:codex",
142
142
  "build:git-bash-mcp": "bun run --cwd packages/git-bash-mcp build",
143
143
  "build:ast-grep-mcp": "bun run --cwd packages/ast-grep-mcp build"
@@ -162,9 +162,9 @@
162
162
  },
163
163
  "homepage": "https://github.com/code-yeongyu/oh-my-openagent#readme",
164
164
  "dependencies": {
165
- "@clack/prompts": "^1.4.0",
165
+ "@clack/prompts": "^1.7.0",
166
166
  "@code-yeongyu/comment-checker": "^0.8.0",
167
- "@modelcontextprotocol/sdk": "^1.29.0",
167
+ "@modelcontextprotocol/sdk": "^1.30.0",
168
168
  "@opencode-ai/plugin": "1.15.13",
169
169
  "@opencode-ai/sdk": "1.15.13",
170
170
  "@opentui/core": "^0.2.16",
@@ -173,15 +173,15 @@
173
173
  "commander": "^14.0.3",
174
174
  "detect-libc": "^2.1.2",
175
175
  "diff": "^9.0.0",
176
- "js-yaml": "^4.1.1",
176
+ "js-yaml": "^4.3.1",
177
177
  "jsonc-parser": "^3.3.1",
178
178
  "picocolors": "^1.1.1",
179
- "picomatch": "^4.0.4",
180
- "posthog-node": "^5.34.3",
179
+ "picomatch": "^4.0.5",
180
+ "posthog-node": "^5.49.2",
181
181
  "zod": "^4.4.3"
182
182
  },
183
183
  "devDependencies": {
184
- "@code-yeongyu/senpi": "2026.8.18-3",
184
+ "@code-yeongyu/senpi": "2026.8.20-2",
185
185
  "@oh-my-opencode/agents-md-core": "workspace:*",
186
186
  "@oh-my-opencode/ast-grep-mcp": "workspace:*",
187
187
  "@oh-my-opencode/boulder-state": "workspace:*",
@@ -216,24 +216,24 @@
216
216
  "@typescript/native-preview": "7.0.0-dev.20260707.2",
217
217
  "@xterm/addon-unicode11": "^0.9.0",
218
218
  "@xterm/xterm": "^6.0.0",
219
- "bun-types": "1.3.14",
219
+ "bun-types": "1.4.0",
220
220
  "node-pty": "^1.1.0",
221
- "puppeteer-core": "^25.3.0",
221
+ "puppeteer-core": "^25.8.0",
222
222
  "typescript": "^7.0.2"
223
223
  },
224
224
  "optionalDependencies": {
225
- "oh-my-opencode-darwin-arm64": "5.0.0-beta.11",
226
- "oh-my-opencode-darwin-x64": "5.0.0-beta.11",
227
- "oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.11",
228
- "oh-my-opencode-linux-arm64": "5.0.0-beta.11",
229
- "oh-my-opencode-linux-arm64-musl": "5.0.0-beta.11",
230
- "oh-my-opencode-linux-x64": "5.0.0-beta.11",
231
- "oh-my-opencode-linux-x64-baseline": "5.0.0-beta.11",
232
- "oh-my-opencode-linux-x64-musl": "5.0.0-beta.11",
233
- "oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.11",
234
- "oh-my-opencode-windows-arm64": "5.0.0-beta.11",
235
- "oh-my-opencode-windows-x64": "5.0.0-beta.11",
236
- "oh-my-opencode-windows-x64-baseline": "5.0.0-beta.11"
225
+ "oh-my-opencode-darwin-arm64": "5.0.0-beta.13",
226
+ "oh-my-opencode-darwin-x64": "5.0.0-beta.13",
227
+ "oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.13",
228
+ "oh-my-opencode-linux-arm64": "5.0.0-beta.13",
229
+ "oh-my-opencode-linux-arm64-musl": "5.0.0-beta.13",
230
+ "oh-my-opencode-linux-x64": "5.0.0-beta.13",
231
+ "oh-my-opencode-linux-x64-baseline": "5.0.0-beta.13",
232
+ "oh-my-opencode-linux-x64-musl": "5.0.0-beta.13",
233
+ "oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.13",
234
+ "oh-my-opencode-windows-arm64": "5.0.0-beta.13",
235
+ "oh-my-opencode-windows-x64": "5.0.0-beta.13",
236
+ "oh-my-opencode-windows-x64-baseline": "5.0.0-beta.13"
237
237
  },
238
238
  "overrides": {
239
239
  "@earendil-works/pi-agent-core": "0.84.2",
@@ -244,7 +244,8 @@
244
244
  "@hono/node-server": "^1.19.13",
245
245
  "express-rate-limit": "^8.5.1",
246
246
  "fast-uri": "^3.1.2",
247
- "path-to-regexp": "^8.4.2"
247
+ "path-to-regexp": "^8.4.2",
248
+ "@types/node": "26.1.1"
248
249
  },
249
250
  "trustedDependencies": [
250
251
  "@code-yeongyu/comment-checker"
@@ -276,7 +276,11 @@ function createParentWatchdog(config, onDeadParent) {
276
276
  const probeAlive = config.probeAlive ?? isProcessAlive;
277
277
  let fired = false;
278
278
  const timer = setInterval(() => {
279
- if (fired || probeAlive(parentPid))
279
+ if (fired)
280
+ return;
281
+ const alive = probeAlive(parentPid);
282
+ config.onPoll?.(alive);
283
+ if (alive)
280
284
  return;
281
285
  fired = true;
282
286
  onDeadParent(parentPid, pollIntervalMs);
@@ -280,7 +280,11 @@ function createParentWatchdog(config, onDeadParent) {
280
280
  const probeAlive = config.probeAlive ?? isProcessAlive;
281
281
  let fired = false;
282
282
  const timer = setInterval(() => {
283
- if (fired || probeAlive(parentPid))
283
+ if (fired)
284
+ return;
285
+ const alive = probeAlive(parentPid);
286
+ config.onPoll?.(alive);
287
+ if (alive)
284
288
  return;
285
289
  fired = true;
286
290
  onDeadParent(parentPid, pollIntervalMs);
@@ -1106,7 +1106,11 @@ function createParentWatchdog(config, onDeadParent) {
1106
1106
  const probeAlive = config.probeAlive ?? isProcessAlive;
1107
1107
  let fired = false;
1108
1108
  const timer = setInterval(() => {
1109
- if (fired || probeAlive(parentPid))
1109
+ if (fired)
1110
+ return;
1111
+ const alive = probeAlive(parentPid);
1112
+ config.onPoll?.(alive);
1113
+ if (alive)
1110
1114
  return;
1111
1115
  fired = true;
1112
1116
  onDeadParent(parentPid, pollIntervalMs);
@@ -4118,7 +4118,11 @@ function createParentWatchdog(config, onDeadParent) {
4118
4118
  const probeAlive = config.probeAlive ?? isProcessAlive;
4119
4119
  let fired = false;
4120
4120
  const timer = setInterval(() => {
4121
- if (fired || probeAlive(parentPid))
4121
+ if (fired)
4122
+ return;
4123
+ const alive = probeAlive(parentPid);
4124
+ config.onPoll?.(alive);
4125
+ if (alive)
4122
4126
  return;
4123
4127
  fired = true;
4124
4128
  onDeadParent(parentPid, pollIntervalMs);
@@ -3285,7 +3285,11 @@ function createParentWatchdog(config, onDeadParent) {
3285
3285
  const probeAlive = config.probeAlive ?? isProcessAlive;
3286
3286
  let fired = false;
3287
3287
  const timer = setInterval(() => {
3288
- if (fired || probeAlive(parentPid))
3288
+ if (fired)
3289
+ return;
3290
+ const alive = probeAlive(parentPid);
3291
+ config.onPoll?.(alive);
3292
+ if (alive)
3289
3293
  return;
3290
3294
  fired = true;
3291
3295
  onDeadParent(parentPid, pollIntervalMs);
@@ -271,7 +271,11 @@ function createParentWatchdog(config, onDeadParent) {
271
271
  const probeAlive = config.probeAlive ?? isProcessAlive;
272
272
  let fired = false;
273
273
  const timer = setInterval(() => {
274
- if (fired || probeAlive(parentPid))
274
+ if (fired)
275
+ return;
276
+ const alive = probeAlive(parentPid);
277
+ config.onPoll?.(alive);
278
+ if (alive)
275
279
  return;
276
280
  fired = true;
277
281
  onDeadParent(parentPid, pollIntervalMs);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omo",
3
- "version": "5.0.0-beta.11",
3
+ "version": "5.0.0-beta.13",
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.11) Checking Bootstrap Provisioning"
11
+ "statusMessage": "(OmO 5.0.0-beta.13) 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.11",
3
+ "version": "5.0.0-beta.13",
4
4
  "description": "Codex SessionStart bootstrap component that provisions LazyCodex runtime dependencies from a detached worker.",
5
5
  "type": "module",
6
6
  "private": true,
@@ -5593,6 +5593,9 @@ var OmoMemoryPeopleSchema = object({
5593
5593
  var OmoMemorySoulSchema = object({
5594
5594
  edit_notice: boolean2().default(true)
5595
5595
  }).strict();
5596
+ var OmoMemoryWriteNoticeSchema = object({
5597
+ enabled: boolean2().default(true)
5598
+ }).strict();
5596
5599
  var OmoMemoryReflectionTriggerLayerSchema = object({
5597
5600
  step_count: number2().int().nonnegative().optional(),
5598
5601
  on_compaction: boolean2().optional()
@@ -5636,6 +5639,9 @@ var OmoMemoryPeopleLayerSchema = object({
5636
5639
  var OmoMemorySoulLayerSchema = object({
5637
5640
  edit_notice: boolean2().optional()
5638
5641
  }).strict();
5642
+ var OmoMemoryWriteNoticeLayerSchema = object({
5643
+ enabled: boolean2().optional()
5644
+ }).strict();
5639
5645
  var OmoMemoryAgentOverridesSchema = object({
5640
5646
  enabled: boolean2().optional(),
5641
5647
  agent: string2().min(1).optional(),
@@ -5645,6 +5651,7 @@ var OmoMemoryAgentOverridesSchema = object({
5645
5651
  dream: OmoMemoryDreamLayerSchema.optional(),
5646
5652
  people: OmoMemoryPeopleLayerSchema.optional(),
5647
5653
  soul: OmoMemorySoulLayerSchema.optional(),
5654
+ write_notice: OmoMemoryWriteNoticeLayerSchema.optional(),
5648
5655
  sync: OmoMemorySyncLayerSchema.optional(),
5649
5656
  search: OmoMemorySearchLayerSchema.optional(),
5650
5657
  compile_warn_tokens: number2().int().positive().optional()
@@ -5673,6 +5680,7 @@ var OmoMemorySettingsSchema = object({
5673
5680
  }),
5674
5681
  people: OmoMemoryPeopleSchema.default({ enabled: true, max_entries: 40, max_entry_chars: 200 }),
5675
5682
  soul: OmoMemorySoulSchema.default({ edit_notice: true }),
5683
+ write_notice: OmoMemoryWriteNoticeSchema.default({ enabled: true }),
5676
5684
  sync: OmoMemorySyncSchema.default({ enabled: true }),
5677
5685
  search: OmoMemorySearchSchema.default({ enabled: true }),
5678
5686
  compile_warn_tokens: number2().int().positive().default(30000),
@@ -5688,6 +5696,7 @@ var OmoMemorySettingsLayerSchema = object({
5688
5696
  dream: OmoMemoryDreamLayerSchema.optional(),
5689
5697
  people: OmoMemoryPeopleLayerSchema.optional(),
5690
5698
  soul: OmoMemorySoulLayerSchema.optional(),
5699
+ write_notice: OmoMemoryWriteNoticeLayerSchema.optional(),
5691
5700
  sync: OmoMemorySyncLayerSchema.optional(),
5692
5701
  search: OmoMemorySearchLayerSchema.optional(),
5693
5702
  compile_warn_tokens: number2().int().positive().optional(),
@@ -11642,7 +11651,11 @@ function createParentWatchdog(config2, onDeadParent) {
11642
11651
  const probeAlive = config2.probeAlive ?? isProcessAlive2;
11643
11652
  let fired = false;
11644
11653
  const timer = setInterval(() => {
11645
- if (fired || probeAlive(parentPid))
11654
+ if (fired)
11655
+ return;
11656
+ const alive = probeAlive(parentPid);
11657
+ config2.onPoll?.(alive);
11658
+ if (alive)
11646
11659
  return;
11647
11660
  fired = true;
11648
11661
  onDeadParent(parentPid, pollIntervalMs);
@@ -5859,6 +5859,9 @@ var OmoMemoryPeopleSchema = object({
5859
5859
  var OmoMemorySoulSchema = object({
5860
5860
  edit_notice: boolean2().default(true)
5861
5861
  }).strict();
5862
+ var OmoMemoryWriteNoticeSchema = object({
5863
+ enabled: boolean2().default(true)
5864
+ }).strict();
5862
5865
  var OmoMemoryReflectionTriggerLayerSchema = object({
5863
5866
  step_count: number2().int().nonnegative().optional(),
5864
5867
  on_compaction: boolean2().optional()
@@ -5902,6 +5905,9 @@ var OmoMemoryPeopleLayerSchema = object({
5902
5905
  var OmoMemorySoulLayerSchema = object({
5903
5906
  edit_notice: boolean2().optional()
5904
5907
  }).strict();
5908
+ var OmoMemoryWriteNoticeLayerSchema = object({
5909
+ enabled: boolean2().optional()
5910
+ }).strict();
5905
5911
  var OmoMemoryAgentOverridesSchema = object({
5906
5912
  enabled: boolean2().optional(),
5907
5913
  agent: string2().min(1).optional(),
@@ -5911,6 +5917,7 @@ var OmoMemoryAgentOverridesSchema = object({
5911
5917
  dream: OmoMemoryDreamLayerSchema.optional(),
5912
5918
  people: OmoMemoryPeopleLayerSchema.optional(),
5913
5919
  soul: OmoMemorySoulLayerSchema.optional(),
5920
+ write_notice: OmoMemoryWriteNoticeLayerSchema.optional(),
5914
5921
  sync: OmoMemorySyncLayerSchema.optional(),
5915
5922
  search: OmoMemorySearchLayerSchema.optional(),
5916
5923
  compile_warn_tokens: number2().int().positive().optional()
@@ -5939,6 +5946,7 @@ var OmoMemorySettingsSchema = object({
5939
5946
  }),
5940
5947
  people: OmoMemoryPeopleSchema.default({ enabled: true, max_entries: 40, max_entry_chars: 200 }),
5941
5948
  soul: OmoMemorySoulSchema.default({ edit_notice: true }),
5949
+ write_notice: OmoMemoryWriteNoticeSchema.default({ enabled: true }),
5942
5950
  sync: OmoMemorySyncSchema.default({ enabled: true }),
5943
5951
  search: OmoMemorySearchSchema.default({ enabled: true }),
5944
5952
  compile_warn_tokens: number2().int().positive().default(30000),
@@ -5954,6 +5962,7 @@ var OmoMemorySettingsLayerSchema = object({
5954
5962
  dream: OmoMemoryDreamLayerSchema.optional(),
5955
5963
  people: OmoMemoryPeopleLayerSchema.optional(),
5956
5964
  soul: OmoMemorySoulLayerSchema.optional(),
5965
+ write_notice: OmoMemoryWriteNoticeLayerSchema.optional(),
5957
5966
  sync: OmoMemorySyncLayerSchema.optional(),
5958
5967
  search: OmoMemorySearchLayerSchema.optional(),
5959
5968
  compile_warn_tokens: number2().int().positive().optional(),
@@ -9324,7 +9333,11 @@ function createParentWatchdog(config2, onDeadParent) {
9324
9333
  const probeAlive = config2.probeAlive ?? isProcessAlive;
9325
9334
  let fired = false;
9326
9335
  const timer = setInterval(() => {
9327
- if (fired || probeAlive(parentPid))
9336
+ if (fired)
9337
+ return;
9338
+ const alive = probeAlive(parentPid);
9339
+ config2.onPoll?.(alive);
9340
+ if (alive)
9328
9341
  return;
9329
9342
  fired = true;
9330
9343
  onDeadParent(parentPid, pollIntervalMs);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sisyphuslabs/codex-codegraph",
3
- "version": "5.0.0-beta.11",
3
+ "version": "5.0.0-beta.13",
4
4
  "description": "Codex plugin MCP wrapper for CodeGraph.",
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.11) Checking Comments"
11
+ "statusMessage": "(OmO 5.0.0-beta.13) 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.11",
3
+ "version": "5.0.0-beta.13",
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.11) Recommending Git Bash MCP"
11
+ "statusMessage": "(OmO 5.0.0-beta.13) 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.11) Resetting Git Bash MCP Reminder"
23
+ "statusMessage": "(OmO 5.0.0-beta.13) 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.11",
3
+ "version": "5.0.0-beta.13",
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.11) Verifying LazyCodex Executor Evidence"
11
+ "statusMessage": "(OmO 5.0.0-beta.13) 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.11",
3
+ "version": "5.0.0-beta.13",
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.11",
4
- "inputDigest": "sha256:869482aa584cd81bc6d87d4814c6795016bcc23b2a83b9ea3564036569c70889",
3
+ "version": "5.0.0-beta.13",
4
+ "inputDigest": "sha256:66217ff918035848a1f63a558563d53b2f1f25b7f64a4d19f4e571dc2309dbaf",
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.11) Checking LSP Diagnostics"
11
+ "statusMessage": "(OmO 5.0.0-beta.13) 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.11) Resetting LSP Diagnostics Cache"
24
+ "statusMessage": "(OmO 5.0.0-beta.13) 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.11",
3
+ "version": "5.0.0-beta.13",
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.0.0-beta.11) Loading Project Rules"
10
+ "statusMessage": "(OmO 5.0.0-beta.13) 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.0.0-beta.11) Loading Project Rules"
22
+ "statusMessage": "(OmO 5.0.0-beta.13) 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.0.0-beta.11) Matching Project Rules"
35
+ "statusMessage": "(OmO 5.0.0-beta.13) 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.0.0-beta.11) Resetting Project Rule Cache"
48
+ "statusMessage": "(OmO 5.0.0-beta.13) 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.0.0-beta.11",
3
+ "version": "5.0.0-beta.13",
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",
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/start-work-continuation/dist/cli.js\" hook stop",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.0.0-beta.11) Checking Start-Work Continuation"
10
+ "statusMessage": "(OmO 5.0.0-beta.13) Checking Start-Work Continuation"
11
11
  }
12
12
  ]
13
13
  }
@@ -19,7 +19,7 @@
19
19
  "type": "command",
20
20
  "command": "node \"${PLUGIN_ROOT}/components/start-work-continuation/dist/cli.js\" hook subagent-stop",
21
21
  "timeout": 10,
22
- "statusMessage": "(OmO 5.0.0-beta.11) Checking Start-Work Continuation"
22
+ "statusMessage": "(OmO 5.0.0-beta.13) Checking Start-Work Continuation"
23
23
  }
24
24
  ]
25
25
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-start-work-continuation",
3
- "version": "5.0.0-beta.11",
3
+ "version": "5.0.0-beta.13",
4
4
  "description": "Codex Stop hook continuation injector for omo-codex start-work plans.",
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.0.0-beta.11) Checking Thread Title Hygiene"
11
+ "statusMessage": "(OmO 5.0.0-beta.13) 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.0.0-beta.11",
3
+ "version": "5.0.0-beta.13",
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,