lazycodex-ai 5.1.38 → 5.1.41

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 (117) hide show
  1. package/dist/cli/index.js +229 -187
  2. package/dist/cli-node/index.js +229 -187
  3. package/package.json +1 -1
  4. package/packages/lsp-daemon/dist/cli.js +10 -0
  5. package/packages/lsp-daemon/dist/client.js +10 -0
  6. package/packages/lsp-daemon/dist/index.js +10 -0
  7. package/packages/lsp-tools-mcp/dist/cli.js +10 -0
  8. package/packages/lsp-tools-mcp/dist/lsp/manager.js +10 -0
  9. package/packages/lsp-tools-mcp/dist/mcp.js +10 -0
  10. package/packages/lsp-tools-mcp/dist/tools.js +10 -0
  11. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
  12. package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +24 -2
  13. package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
  14. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  15. package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
  16. package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
  17. package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
  18. package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
  19. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
  20. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
  21. package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +3 -3
  22. package/packages/omo-codex/plugin/components/lsp/dist/cli.js +10 -0
  23. package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
  24. package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
  25. package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
  26. package/packages/omo-codex/plugin/components/rules/package.json +1 -1
  27. package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
  28. package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
  29. package/packages/omo-codex/plugin/components/telemetry/dist/cli.js +157 -151
  30. package/packages/omo-codex/plugin/components/telemetry/dist/posthog.js +157 -151
  31. package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
  32. package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
  33. package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
  34. package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
  35. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/SKILL.md +1 -1
  36. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/full-workflow.md +5 -4
  37. package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +1 -1
  38. package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
  39. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +5 -5
  40. package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
  41. package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
  42. package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
  43. package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
  44. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
  45. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
  46. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
  47. package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
  48. package/packages/omo-codex/plugin/hooks/post-tool-use-recording-spawn-admission.json +1 -1
  49. package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
  50. package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
  51. package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
  52. package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
  53. package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
  54. package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
  55. package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
  56. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +1 -1
  57. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
  58. package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
  59. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
  60. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
  61. package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
  62. package/packages/omo-codex/plugin/package-lock.json +12 -12
  63. package/packages/omo-codex/plugin/package.json +1 -1
  64. package/packages/omo-codex/plugin/skills/browser/runtime/omowright/manifest.json +1 -1
  65. package/packages/omo-codex/plugin/skills/frontend/SKILL.md +6 -6
  66. package/packages/omo-codex/plugin/skills/frontend/references/design/README.md +2 -2
  67. package/packages/omo-codex/plugin/skills/frontend/references/perfection/README.md +2 -2
  68. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/declarations.ts +22 -13
  69. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/findings.ts +7 -6
  70. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/lint.ts +18 -24
  71. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/markup.ts +14 -7
  72. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/selector.ts +5 -1
  73. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/tailwind.ts +32 -14
  74. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/check-accent-stripes.ts +1 -1
  75. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/inline-ok.tsx +1 -0
  76. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/neutral-and-flat.css +1 -1
  77. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/tailwind-ok.tsx +5 -2
  78. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/uniform-and-rings.css +2 -2
  79. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.css +4 -0
  80. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.tsx +8 -0
  81. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/{negative → positive}/flat-stripe-side.tsx +3 -1
  82. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/report-callouts.html +8 -0
  83. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/square-surfaces.css +8 -0
  84. package/packages/omo-codex/plugin/skills/git-master/SKILL.md +1 -1
  85. package/packages/omo-codex/plugin/skills/ulw-plan/SKILL.md +1 -1
  86. package/packages/omo-codex/plugin/skills/ulw-plan/references/full-workflow.md +5 -4
  87. package/packages/omo-codex/plugin/skills/ulw-research/SKILL.md +10 -2
  88. package/packages/omo-codex/plugin/skills/ulw-research/references/deliverable-phase.md +10 -0
  89. package/packages/omo-codex/plugin/skills/ulw-research/references/report-visualization.md +23 -0
  90. package/packages/omo-codex/scripts/install-dist/install-local.mjs +195 -168
  91. package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +1 -1
  92. package/packages/shared-skills/skills/frontend/SKILL.md +6 -6
  93. package/packages/shared-skills/skills/frontend/references/design/README.md +2 -2
  94. package/packages/shared-skills/skills/frontend/references/perfection/README.md +2 -2
  95. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/declarations.ts +22 -13
  96. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/findings.ts +7 -6
  97. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/lint.ts +18 -24
  98. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/markup.ts +14 -7
  99. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/selector.ts +5 -1
  100. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/tailwind.ts +32 -14
  101. package/packages/shared-skills/skills/frontend/scripts/perfection/check-accent-stripes.test.ts +15 -6
  102. package/packages/shared-skills/skills/frontend/scripts/perfection/check-accent-stripes.ts +1 -1
  103. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/inline-ok.tsx +1 -0
  104. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/neutral-and-flat.css +1 -1
  105. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/tailwind-ok.tsx +5 -2
  106. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/uniform-and-rings.css +2 -2
  107. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.css +4 -0
  108. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.tsx +8 -0
  109. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/{negative → positive}/flat-stripe-side.tsx +3 -1
  110. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/report-callouts.html +8 -0
  111. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/square-surfaces.css +8 -0
  112. package/packages/shared-skills/skills/git-master/SKILL.md +1 -1
  113. package/packages/shared-skills/skills/ulw-plan/SKILL.md +1 -1
  114. package/packages/shared-skills/skills/ulw-plan/references/full-workflow.md +5 -4
  115. package/packages/shared-skills/skills/ulw-research/SKILL.md +10 -2
  116. package/packages/shared-skills/skills/ulw-research/references/deliverable-phase.md +10 -0
  117. package/packages/shared-skills/skills/ulw-research/references/report-visualization.md +23 -0
@@ -969,6 +969,13 @@ function validateCwd(cwd) {
969
969
  };
970
970
  }
971
971
  }
972
+ function guardPipeErrors(stream, pipe) {
973
+ stream.on("error", (error) => {
974
+ if (stream.listenerCount("error") > 1)
975
+ return;
976
+ reportBestEffortCleanupError(`server ${pipe}`, error);
977
+ });
978
+ }
972
979
  function wrap(proc) {
973
980
  const exitedPromise = new Promise((resolve) => {
974
981
  proc.once("close", (code) => resolve(code ?? 0));
@@ -977,6 +984,9 @@ function wrap(proc) {
977
984
  if (!proc.stdin || !proc.stdout || !proc.stderr) {
978
985
  throw new LspProcessSpawnError("Spawned process is missing one of stdin/stdout/stderr pipes");
979
986
  }
987
+ guardPipeErrors(proc.stdin, "stdin");
988
+ guardPipeErrors(proc.stdout, "stdout");
989
+ guardPipeErrors(proc.stderr, "stderr");
980
990
  return {
981
991
  stdin: proc.stdin,
982
992
  stdout: proc.stdout,
@@ -657,6 +657,13 @@ function validateCwd(cwd) {
657
657
  };
658
658
  }
659
659
  }
660
+ function guardPipeErrors(stream, pipe) {
661
+ stream.on("error", (error) => {
662
+ if (stream.listenerCount("error") > 1)
663
+ return;
664
+ reportBestEffortCleanupError(`server ${pipe}`, error);
665
+ });
666
+ }
660
667
  function wrap(proc) {
661
668
  const exitedPromise = new Promise((resolve) => {
662
669
  proc.once("close", (code) => resolve(code ?? 0));
@@ -665,6 +672,9 @@ function wrap(proc) {
665
672
  if (!proc.stdin || !proc.stdout || !proc.stderr) {
666
673
  throw new LspProcessSpawnError("Spawned process is missing one of stdin/stdout/stderr pipes");
667
674
  }
675
+ guardPipeErrors(proc.stdin, "stdin");
676
+ guardPipeErrors(proc.stdout, "stdout");
677
+ guardPipeErrors(proc.stderr, "stderr");
668
678
  return {
669
679
  stdin: proc.stdin,
670
680
  stdout: proc.stdout,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omo",
3
- "version": "5.1.38",
3
+ "version": "5.1.41",
4
4
  "description": "One Codex plugin namespace for Yeongyu's local Codex components.",
5
5
  "author": {
6
6
  "name": "Yeongyu Kim",
@@ -7100,14 +7100,20 @@ var OmoComputerSettingsLayerSchema = object({
7100
7100
  var OmoComputerSettingsSchema = OmoComputerSettingsLayerSchema;
7101
7101
 
7102
7102
  // ../../omo-config-core/src/schema/git-master.ts
7103
+ var GIT_ENV_ASSIGNMENT_PATTERN = /^(?:[A-Za-z_][A-Za-z0-9_]*=[A-Za-z0-9_-]*)(?: [A-Za-z_][A-Za-z0-9_]*=[A-Za-z0-9_-]*)*$/;
7104
+ var GitEnvPrefixSchema = string2().refine((value) => value === "" || GIT_ENV_ASSIGNMENT_PATTERN.test(value), {
7105
+ message: 'git_env_prefix must be empty or use shell-safe env assignments like "GIT_MASTER=1"'
7106
+ });
7103
7107
  var OmoGitMasterSettingsShape = {
7104
7108
  commit_footer: union([boolean2(), string2()]),
7105
- include_co_authored_by: boolean2()
7109
+ include_co_authored_by: boolean2(),
7110
+ git_env_prefix: GitEnvPrefixSchema
7106
7111
  };
7107
7112
  var OmoGitMasterSettingsLayerSchema = object(OmoGitMasterSettingsShape).partial().strict();
7108
7113
  var OmoGitMasterSettingsSchema = OmoGitMasterSettingsLayerSchema.extend({
7109
7114
  commit_footer: union([boolean2(), string2()]).default(false),
7110
- include_co_authored_by: boolean2().default(false)
7115
+ include_co_authored_by: boolean2().default(false),
7116
+ git_env_prefix: GitEnvPrefixSchema.default("GIT_MASTER=1")
7111
7117
  }).strict();
7112
7118
 
7113
7119
  // ../../omo-config-core/src/schema/harness.ts
@@ -7117,6 +7123,19 @@ var OmoHarnessIdSchema = _enum(OMO_CONFIG_HARNESS_IDS);
7117
7123
  var OMO_CONFIG_LEGACY_HARNESS_ALIASES = { senpi: "native" };
7118
7124
  var OMO_CONFIG_LEGACY_HARNESS_IDS = Object.keys(OMO_CONFIG_LEGACY_HARNESS_ALIASES);
7119
7125
 
7126
+ // ../../omo-config-core/src/schema/memory-agreements.ts
7127
+ var OMO_MEMORY_AGREEMENTS_DEFAULTS = { enabled: true, needs_human_threshold: 3, max_items: 64 };
7128
+ var OmoMemoryAgreementsSchema = object({
7129
+ enabled: boolean2().default(OMO_MEMORY_AGREEMENTS_DEFAULTS.enabled),
7130
+ needs_human_threshold: number2().int().min(1).default(OMO_MEMORY_AGREEMENTS_DEFAULTS.needs_human_threshold),
7131
+ max_items: number2().int().min(8).max(256).default(OMO_MEMORY_AGREEMENTS_DEFAULTS.max_items)
7132
+ }).strict();
7133
+ var OmoMemoryAgreementsLayerSchema = object({
7134
+ enabled: boolean2().optional(),
7135
+ needs_human_threshold: number2().int().min(1).optional(),
7136
+ max_items: number2().int().min(8).max(256).optional()
7137
+ }).strict();
7138
+
7120
7139
  // ../../omo-config-core/src/schema/memory.ts
7121
7140
  var OmoMemoryReflectionTriggerSchema = object({
7122
7141
  step_count: number2().int().nonnegative().default(25),
@@ -7260,6 +7279,7 @@ var OmoMemoryAgentOverridesSchema = object({
7260
7279
  facts: OmoMemoryFactsLayerSchema.optional(),
7261
7280
  dream: OmoMemoryDreamLayerSchema.optional(),
7262
7281
  people: OmoMemoryPeopleLayerSchema.optional(),
7282
+ agreements: OmoMemoryAgreementsLayerSchema.optional(),
7263
7283
  soul: OmoMemorySoulLayerSchema.optional(),
7264
7284
  write_notice: OmoMemoryWriteNoticeLayerSchema.optional(),
7265
7285
  sync: OmoMemorySyncLayerSchema.optional(),
@@ -7290,6 +7310,7 @@ var OmoMemorySettingsSchema = object({
7290
7310
  auto_select_max_chars: 150000
7291
7311
  }),
7292
7312
  people: OmoMemoryPeopleSchema.default({ enabled: true, max_entries: 40, max_entry_chars: 200 }),
7313
+ agreements: OmoMemoryAgreementsSchema.default(OMO_MEMORY_AGREEMENTS_DEFAULTS),
7293
7314
  soul: OmoMemorySoulSchema.default({ edit_notice: true }),
7294
7315
  write_notice: OmoMemoryWriteNoticeSchema.default({ enabled: true }),
7295
7316
  sync: OmoMemorySyncSchema.default({ enabled: true }),
@@ -7316,6 +7337,7 @@ var OmoMemorySettingsLayerSchema = object({
7316
7337
  facts: OmoMemoryFactsLayerSchema.optional(),
7317
7338
  dream: OmoMemoryDreamLayerSchema.optional(),
7318
7339
  people: OmoMemoryPeopleLayerSchema.optional(),
7340
+ agreements: OmoMemoryAgreementsLayerSchema.optional(),
7319
7341
  soul: OmoMemorySoulLayerSchema.optional(),
7320
7342
  write_notice: OmoMemoryWriteNoticeLayerSchema.optional(),
7321
7343
  sync: OmoMemorySyncLayerSchema.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.38) Checking Bootstrap Provisioning"
11
+ "statusMessage": "(OmO 5.1.41) 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.38",
3
+ "version": "5.1.41",
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.38) Checking Comments"
11
+ "statusMessage": "(OmO 5.1.41) 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.38",
3
+ "version": "5.1.41",
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.38) Recommending Git Bash MCP"
11
+ "statusMessage": "(OmO 5.1.41) 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.38) Resetting Git Bash MCP Reminder"
23
+ "statusMessage": "(OmO 5.1.41) 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.38",
3
+ "version": "5.1.41",
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.38) Verifying LazyCodex Executor Evidence"
11
+ "statusMessage": "(OmO 5.1.41) 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.38",
3
+ "version": "5.1.41",
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.38",
4
- "inputDigest": "sha256:243e2955ac73aa061ab27152dc6f31cf118025bce72b0f52537519d2f687a54e",
3
+ "version": "5.1.41",
4
+ "inputDigest": "sha256:ad15254c56422d6b36ee8b483fb554748ed5358e03e99bbf8588449fb83e9ee6",
5
5
  "outputs": [
6
6
  {
7
7
  "path": "cli.d.ts",
@@ -9,7 +9,7 @@
9
9
  },
10
10
  {
11
11
  "path": "cli.js",
12
- "sha256": "e4d7664d4b1a19eb00e68e5a0f42ceae1195188a26e59217522c1d0de3854f54"
12
+ "sha256": "0775d5a52628cc6aeed25d5ff10fdf42f236b8058428d5120f278ce5157ad76a"
13
13
  },
14
14
  {
15
15
  "path": "codex-hook-cli.d.ts",
@@ -1146,6 +1146,13 @@ function validateCwd(cwd) {
1146
1146
  };
1147
1147
  }
1148
1148
  }
1149
+ function guardPipeErrors(stream, pipe) {
1150
+ stream.on("error", (error) => {
1151
+ if (stream.listenerCount("error") > 1)
1152
+ return;
1153
+ reportBestEffortCleanupError(`server ${pipe}`, error);
1154
+ });
1155
+ }
1149
1156
  function wrap(proc) {
1150
1157
  const exitedPromise = new Promise((resolve) => {
1151
1158
  proc.once("close", (code) => resolve(code ?? 0));
@@ -1154,6 +1161,9 @@ function wrap(proc) {
1154
1161
  if (!proc.stdin || !proc.stdout || !proc.stderr) {
1155
1162
  throw new LspProcessSpawnError("Spawned process is missing one of stdin/stdout/stderr pipes");
1156
1163
  }
1164
+ guardPipeErrors(proc.stdin, "stdin");
1165
+ guardPipeErrors(proc.stdout, "stdout");
1166
+ guardPipeErrors(proc.stderr, "stderr");
1157
1167
  return {
1158
1168
  stdin: proc.stdin,
1159
1169
  stdout: proc.stdout,
@@ -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.38) Checking LSP Diagnostics"
11
+ "statusMessage": "(OmO 5.1.41) 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.38) Resetting LSP Diagnostics Cache"
24
+ "statusMessage": "(OmO 5.1.41) 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.38",
3
+ "version": "5.1.41",
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.38) Loading Project Rules"
10
+ "statusMessage": "(OmO 5.1.41) 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.38) Loading Project Rules"
22
+ "statusMessage": "(OmO 5.1.41) 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.38) Matching Project Rules"
35
+ "statusMessage": "(OmO 5.1.41) 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.38) Resetting Project Rule Cache"
48
+ "statusMessage": "(OmO 5.1.41) 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.38",
3
+ "version": "5.1.41",
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.38) Checking Thread Title Hygiene"
11
+ "statusMessage": "(OmO 5.1.41) 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.38",
3
+ "version": "5.1.41",
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,