oh-my-opencode 5.1.57 → 5.1.59

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 (83) hide show
  1. package/dist/cli/index.js +49 -45
  2. package/dist/cli-node/index.js +49 -45
  3. package/dist/index.js +364 -282
  4. package/dist/skills/browser/runtime/omowright/index.js +20 -19
  5. package/dist/skills/browser/runtime/omowright/manifest.json +3 -3
  6. package/dist/skills/eval-integrity/SKILL.md +107 -0
  7. package/dist/skills/ultimate-browsing/engine/executor.py +56 -5
  8. package/dist/skills/ultimate-browsing/engine/tests/test_executor_timeout.py +144 -0
  9. package/dist/skills/ulw-research/scripts/fidelity-values.mjs +5 -2
  10. package/dist/skills/ulw-research/scripts/fidelity-values.test.ts +26 -0
  11. package/dist/skills/ulw-research/scripts/html-foreign-object.mjs +61 -0
  12. package/dist/skills/ulw-research/scripts/html-lite.mjs +7 -3
  13. package/dist/skills/ulw-research/scripts/html-lite.test.ts +19 -0
  14. package/dist/tui.js +44 -40
  15. package/package.json +15 -15
  16. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
  17. package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +5 -1
  18. package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
  19. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  20. package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
  21. package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
  22. package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
  23. package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
  24. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
  25. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
  26. package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +2 -2
  27. package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
  28. package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
  29. package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
  30. package/packages/omo-codex/plugin/components/rules/package.json +1 -1
  31. package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
  32. package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
  33. package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
  34. package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
  35. package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
  36. package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
  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/index.js +20 -19
  65. package/packages/omo-codex/plugin/skills/browser/runtime/omowright/manifest.json +3 -3
  66. package/packages/omo-codex/plugin/skills/eval-integrity/SKILL.md +107 -0
  67. package/packages/omo-codex/plugin/skills/eval-integrity/agents/openai.yaml +2 -0
  68. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/executor.py +56 -5
  69. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fidelity-values.mjs +5 -2
  70. package/packages/omo-codex/plugin/skills/ulw-research/scripts/html-foreign-object.mjs +61 -0
  71. package/packages/omo-codex/plugin/skills/ulw-research/scripts/html-lite.mjs +7 -3
  72. package/packages/omo-codex/plugin/test/sync-skills-test-support.mjs +1 -0
  73. package/packages/omo-codex/scripts/install-dist/install-local.mjs +7 -3
  74. package/packages/shared-skills/skills/browser/runtime/omowright/index.js +20 -19
  75. package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +3 -3
  76. package/packages/shared-skills/skills/eval-integrity/SKILL.md +107 -0
  77. package/packages/shared-skills/skills/ultimate-browsing/engine/executor.py +56 -5
  78. package/packages/shared-skills/skills/ultimate-browsing/engine/tests/test_executor_timeout.py +144 -0
  79. package/packages/shared-skills/skills/ulw-research/scripts/fidelity-values.mjs +5 -2
  80. package/packages/shared-skills/skills/ulw-research/scripts/fidelity-values.test.ts +26 -0
  81. package/packages/shared-skills/skills/ulw-research/scripts/html-foreign-object.mjs +61 -0
  82. package/packages/shared-skills/skills/ulw-research/scripts/html-lite.mjs +7 -3
  83. package/packages/shared-skills/skills/ulw-research/scripts/html-lite.test.ts +19 -0
package/dist/tui.js CHANGED
@@ -3461,7 +3461,7 @@ var init_agent_model_requirements = __esm(() => {
3461
3461
  {
3462
3462
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
3463
3463
  model: "gpt-5.6-sol",
3464
- variant: "medium"
3464
+ variant: "high"
3465
3465
  },
3466
3466
  { providers: ["zai-coding-plan", "opencode", "bailian-coding-plan"], model: "glm-5.2" },
3467
3467
  { providers: ["opencode"], model: "big-pickle" }
@@ -3473,12 +3473,12 @@ var init_agent_model_requirements = __esm(() => {
3473
3473
  {
3474
3474
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
3475
3475
  model: "gpt-6-sol",
3476
- variant: "medium"
3476
+ variant: "high"
3477
3477
  },
3478
3478
  {
3479
3479
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
3480
3480
  model: "gpt-5.6-sol",
3481
- variant: "medium"
3481
+ variant: "high"
3482
3482
  }
3483
3483
  ],
3484
3484
  requiresProvider: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
@@ -3486,7 +3486,7 @@ var init_agent_model_requirements = __esm(() => {
3486
3486
  },
3487
3487
  oracle: {
3488
3488
  fallbackChain: [
3489
- { providers: ["openai", "chatgpt-subscription", "opencode"], model: "gpt-5.6-sol", variant: "xhigh" },
3489
+ { providers: ["openai", "chatgpt-subscription", "opencode"], model: "gpt-5.6-sol", variant: "high" },
3490
3490
  { providers: ["github-copilot"], model: "gpt-5.6-sol", variant: "high" },
3491
3491
  {
3492
3492
  providers: ["google", "google-vertex", "opencode"],
@@ -3510,7 +3510,7 @@ var init_agent_model_requirements = __esm(() => {
3510
3510
  fallbackChain: [
3511
3511
  { providers: ["kimi-for-coding"], model: "kimi-for-coding-highspeed", variant: "off" },
3512
3512
  { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptLunaFast, variant: "low" },
3513
- { providers: ["anthropic", "github-copilot"], model: LATEST_MODEL_BY_FAMILY.claudeHaiku, variant: "medium" },
3513
+ { providers: ["anthropic", "github-copilot"], model: LATEST_MODEL_BY_FAMILY.claudeHaiku, variant: "high" },
3514
3514
  { providers: ["deepseek"], model: "deepseek-flash", variant: "max" },
3515
3515
  { providers: ["opencode-go", "bailian-coding-plan"], model: "qwen3.7-plus" },
3516
3516
  { providers: ["opencode-go"], model: "minimax-m2.7" }
@@ -3520,7 +3520,7 @@ var init_agent_model_requirements = __esm(() => {
3520
3520
  fallbackChain: [
3521
3521
  { providers: ["kimi-for-coding"], model: "kimi-for-coding-highspeed", variant: "off" },
3522
3522
  { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptLunaFast, variant: "low" },
3523
- { providers: ["anthropic", "github-copilot"], model: LATEST_MODEL_BY_FAMILY.claudeHaiku, variant: "medium" },
3523
+ { providers: ["anthropic", "github-copilot"], model: LATEST_MODEL_BY_FAMILY.claudeHaiku, variant: "high" },
3524
3524
  { providers: ["deepseek"], model: "deepseek-flash", variant: "max" },
3525
3525
  { providers: ["opencode-go", "bailian-coding-plan"], model: "qwen3.7-plus" },
3526
3526
  { providers: ["opencode-go"], model: "minimax-m2.7" }
@@ -3539,12 +3539,12 @@ var init_agent_model_requirements = __esm(() => {
3539
3539
  {
3540
3540
  providers: ["anthropic", "github-copilot", "opencode"],
3541
3541
  model: FABLE_55_LAUNCH.id,
3542
- variant: "xhigh"
3542
+ variant: "high"
3543
3543
  },
3544
3544
  {
3545
3545
  providers: ["anthropic", "github-copilot", "opencode"],
3546
3546
  model: LATEST_MODEL_BY_FAMILY.claudeFable,
3547
- variant: "xhigh"
3547
+ variant: "high"
3548
3548
  },
3549
3549
  {
3550
3550
  providers: ["anthropic", "github-copilot", "opencode"],
@@ -3586,7 +3586,7 @@ var init_agent_model_requirements = __esm(() => {
3586
3586
  },
3587
3587
  momus: {
3588
3588
  fallbackChain: [
3589
- { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptAstra, variant: "xhigh" },
3589
+ { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptAstra, variant: "high" },
3590
3590
  { providers: ["github-copilot"], model: LATEST_MODEL_BY_FAMILY.gptAstra, variant: "high" },
3591
3591
  { providers: ["openai", "chatgpt-subscription", "opencode"], model: LATEST_MODEL_BY_FAMILY.gptAstra, variant: "high" },
3592
3592
  {
@@ -3614,7 +3614,7 @@ var init_agent_model_requirements = __esm(() => {
3614
3614
  {
3615
3615
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
3616
3616
  model: "gpt-5.6-sol",
3617
- variant: "medium"
3617
+ variant: "high"
3618
3618
  },
3619
3619
  { providers: ["opencode-go"], model: "minimax-m3" },
3620
3620
  { providers: ["minimax-coding-plan", "minimax-cn-coding-plan"], model: "MiniMax-M3" },
@@ -3628,7 +3628,7 @@ var init_agent_model_requirements = __esm(() => {
3628
3628
  {
3629
3629
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
3630
3630
  model: "gpt-5.6-sol",
3631
- variant: "medium"
3631
+ variant: "high"
3632
3632
  },
3633
3633
  { providers: ["opencode-go"], model: "minimax-m3" },
3634
3634
  { providers: ["minimax-coding-plan", "minimax-cn-coding-plan"], model: "MiniMax-M3" },
@@ -3683,14 +3683,14 @@ var init_category_model_requirements = __esm(() => {
3683
3683
  },
3684
3684
  "deep-low": {
3685
3685
  fallbackChain: [
3686
- { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptSol, variant: "medium" },
3687
- { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptSolFast, variant: "medium" },
3686
+ { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptSol, variant: "high" },
3687
+ { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptSolFast, variant: "high" },
3688
3688
  {
3689
3689
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
3690
3690
  model: "gpt-5.6-sol",
3691
- variant: "medium"
3691
+ variant: "high"
3692
3692
  },
3693
- { providers: ["openai", "chatgpt-subscription"], model: "gpt-5.6-sol-fast", variant: "medium" }
3693
+ { providers: ["openai", "chatgpt-subscription"], model: "gpt-5.6-sol-fast", variant: "high" }
3694
3694
  ]
3695
3695
  },
3696
3696
  "deep-high": {
@@ -3733,7 +3733,7 @@ var init_category_model_requirements = __esm(() => {
3733
3733
  {
3734
3734
  providers: ["anthropic", "anthropic-api", "github-copilot"],
3735
3735
  model: LATEST_MODEL_BY_FAMILY.claudeHaiku,
3736
- variant: "medium"
3736
+ variant: "high"
3737
3737
  },
3738
3738
  { providers: ["deepseek"], model: "deepseek-flash", variant: "off" },
3739
3739
  {
@@ -3753,16 +3753,16 @@ var init_category_model_requirements = __esm(() => {
3753
3753
  {
3754
3754
  providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
3755
3755
  model: LATEST_MODEL_BY_FAMILY.claudeSonnet,
3756
- variant: "medium"
3756
+ variant: "high"
3757
3757
  },
3758
3758
  { providers: ["xiaomi", "opencode-go"], model: "mimo-v2.6-pro", variant: "max" },
3759
- { providers: ["xai", "github-copilot", "opencode-go"], model: "grok-4.7", variant: "xhigh" },
3759
+ { providers: ["xai", "github-copilot", "opencode-go"], model: "grok-4.7", variant: "high" },
3760
3760
  { providers: ["zai-coding-plan", "opencode-go"], model: LATEST_MODEL_BY_FAMILY.glm, variant: "high" },
3761
- { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptSol, variant: "medium" },
3761
+ { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptSol, variant: "high" },
3762
3762
  {
3763
3763
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
3764
3764
  model: "gpt-5.6-sol",
3765
- variant: "medium"
3765
+ variant: "high"
3766
3766
  },
3767
3767
  {
3768
3768
  providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
@@ -3783,7 +3783,7 @@ var init_category_model_requirements = __esm(() => {
3783
3783
  {
3784
3784
  providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
3785
3785
  model: LATEST_MODEL_BY_FAMILY.claudeOpus,
3786
- variant: "medium"
3786
+ variant: "high"
3787
3787
  },
3788
3788
  { providers: ["zai-coding-plan", "opencode-go"], model: LATEST_MODEL_BY_FAMILY.glm, variant: "max" },
3789
3789
  {
@@ -5549,7 +5549,7 @@ var init_openai_categories = __esm(() => {
5549
5549
  },
5550
5550
  {
5551
5551
  name: "deep-low",
5552
- config: { model: `openai/${LATEST_MODEL_BY_FAMILY.gptSol}`, variant: "medium" },
5552
+ config: { model: `openai/${LATEST_MODEL_BY_FAMILY.gptSol}`, variant: "high" },
5553
5553
  description: "Default deep lane: one goal, one deliverable, decisions the child can settle from what it reads; preferred over deep-high for 3D graphics, computer/browser use, CAPTCHA, multimodal, backend, logic, and algorithm work. Multiple goals fan out as parallel calls.",
5554
5554
  callerGuidance: DEEP_LOW_CATEGORY_CALLER_GUIDANCE,
5555
5555
  promptAppend: DEEP_LOW_CATEGORY_PROMPT_APPEND,
@@ -5574,14 +5574,14 @@ var init_openai_categories = __esm(() => {
5574
5574
  },
5575
5575
  {
5576
5576
  name: "unspecified-low",
5577
- config: { model: `anthropic/${LATEST_MODEL_BY_FAMILY.claudeSonnet}`, variant: "medium" },
5577
+ config: { model: `anthropic/${LATEST_MODEL_BY_FAMILY.claudeSonnet}`, variant: "high" },
5578
5578
  description: "Tasks that don't fit other categories, low effort required",
5579
5579
  callerGuidance: UNSPECIFIED_LOW_CATEGORY_CALLER_GUIDANCE,
5580
5580
  promptAppend: UNSPECIFIED_LOW_CATEGORY_PROMPT_APPEND
5581
5581
  },
5582
5582
  {
5583
5583
  name: "unspecified-high",
5584
- config: { model: `anthropic/${LATEST_MODEL_BY_FAMILY.claudeOpus}`, variant: "medium" },
5584
+ config: { model: `anthropic/${LATEST_MODEL_BY_FAMILY.claudeOpus}`, variant: "high" },
5585
5585
  description: "Tasks that don't fit other categories, high effort required",
5586
5586
  callerGuidance: UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE,
5587
5587
  promptAppend: UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND,
@@ -70233,6 +70233,10 @@ var init_agent = __esm(() => {
70233
70233
  function isRecord6(value) {
70234
70234
  return typeof value === "object" && value !== null && !Array.isArray(value);
70235
70235
  }
70236
+ function withoutRetiredCategoryKeys(entry) {
70237
+ const { provider_lock: _retired, ...rest } = entry;
70238
+ return rest;
70239
+ }
70236
70240
  var OmoCategoryConfigObjectSchema, OmoCategoryConfigSchema, OmoCategoriesConfigSchema;
70237
70241
  var init_category = __esm(() => {
70238
70242
  init_zod();
@@ -70261,7 +70265,7 @@ var init_category = __esm(() => {
70261
70265
  disable: boolean2().optional(),
70262
70266
  warn_unavailable: boolean2().optional()
70263
70267
  }).strict();
70264
- OmoCategoryConfigSchema = preprocess((value) => isRecord6(value) ? normalizeLegacyModelFields(value) : value, OmoCategoryConfigObjectSchema);
70268
+ OmoCategoryConfigSchema = preprocess((value) => isRecord6(value) ? withoutRetiredCategoryKeys(normalizeLegacyModelFields(value)) : value, OmoCategoryConfigObjectSchema);
70265
70269
  OmoCategoriesConfigSchema = record(string2(), OmoCategoryConfigSchema);
70266
70270
  });
70267
70271
 
@@ -75715,7 +75719,7 @@ init_shared();
75715
75719
  // package.json
75716
75720
  var package_default = {
75717
75721
  name: "oh-my-opencode",
75718
- version: "5.1.57",
75722
+ version: "5.1.59",
75719
75723
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
75720
75724
  main: "./dist/index.js",
75721
75725
  types: "dist/index.d.ts",
@@ -75902,7 +75906,7 @@ var package_default = {
75902
75906
  },
75903
75907
  devDependencies: {
75904
75908
  "@clack/prompts": "^1.8.1",
75905
- "@code-yeongyu/senpi": "2026.10.31-2",
75909
+ "@code-yeongyu/senpi": "2026.11.2-3",
75906
75910
  "@modelcontextprotocol/sdk": "^1.30.0",
75907
75911
  "@oh-my-opencode/agents-md-core": "workspace:*",
75908
75912
  "@oh-my-opencode/ast-grep-mcp": "workspace:*",
@@ -75957,7 +75961,7 @@ var package_default = {
75957
75961
  "jsonc-parser": "^3.3.1",
75958
75962
  knip: "6.43.0",
75959
75963
  "node-pty": "^1.1.0",
75960
- omowright: "github:code-yeongyu/omowright#c06d20337ad942b09dea8757a45f6c848008a68d",
75964
+ omowright: "github:code-yeongyu/omowright#73c4898ca492e6e12e3f13948be7151806457a43",
75961
75965
  "oxc-parser": "0.148.0",
75962
75966
  oxlint: "1.89.0",
75963
75967
  picocolors: "^1.1.1",
@@ -75967,18 +75971,18 @@ var package_default = {
75967
75971
  typescript: "^7.0.2"
75968
75972
  },
75969
75973
  optionalDependencies: {
75970
- "oh-my-opencode-darwin-arm64": "5.1.57",
75971
- "oh-my-opencode-darwin-x64": "5.1.57",
75972
- "oh-my-opencode-darwin-x64-baseline": "5.1.57",
75973
- "oh-my-opencode-linux-arm64": "5.1.57",
75974
- "oh-my-opencode-linux-arm64-musl": "5.1.57",
75975
- "oh-my-opencode-linux-x64": "5.1.57",
75976
- "oh-my-opencode-linux-x64-baseline": "5.1.57",
75977
- "oh-my-opencode-linux-x64-musl": "5.1.57",
75978
- "oh-my-opencode-linux-x64-musl-baseline": "5.1.57",
75979
- "oh-my-opencode-windows-arm64": "5.1.57",
75980
- "oh-my-opencode-windows-x64": "5.1.57",
75981
- "oh-my-opencode-windows-x64-baseline": "5.1.57"
75974
+ "oh-my-opencode-darwin-arm64": "5.1.59",
75975
+ "oh-my-opencode-darwin-x64": "5.1.59",
75976
+ "oh-my-opencode-darwin-x64-baseline": "5.1.59",
75977
+ "oh-my-opencode-linux-arm64": "5.1.59",
75978
+ "oh-my-opencode-linux-arm64-musl": "5.1.59",
75979
+ "oh-my-opencode-linux-x64": "5.1.59",
75980
+ "oh-my-opencode-linux-x64-baseline": "5.1.59",
75981
+ "oh-my-opencode-linux-x64-musl": "5.1.59",
75982
+ "oh-my-opencode-linux-x64-musl-baseline": "5.1.59",
75983
+ "oh-my-opencode-windows-arm64": "5.1.59",
75984
+ "oh-my-opencode-windows-x64": "5.1.59",
75985
+ "oh-my-opencode-windows-x64-baseline": "5.1.59"
75982
75986
  },
75983
75987
  overrides: {
75984
75988
  hono: "^4.13.8",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-opencode",
3
- "version": "5.1.57",
3
+ "version": "5.1.59",
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",
@@ -187,7 +187,7 @@
187
187
  },
188
188
  "devDependencies": {
189
189
  "@clack/prompts": "^1.8.1",
190
- "@code-yeongyu/senpi": "2026.10.31-2",
190
+ "@code-yeongyu/senpi": "2026.11.2-3",
191
191
  "@modelcontextprotocol/sdk": "^1.30.0",
192
192
  "@oh-my-opencode/agents-md-core": "workspace:*",
193
193
  "@oh-my-opencode/ast-grep-mcp": "workspace:*",
@@ -242,7 +242,7 @@
242
242
  "jsonc-parser": "^3.3.1",
243
243
  "knip": "6.43.0",
244
244
  "node-pty": "^1.1.0",
245
- "omowright": "github:code-yeongyu/omowright#c06d20337ad942b09dea8757a45f6c848008a68d",
245
+ "omowright": "github:code-yeongyu/omowright#73c4898ca492e6e12e3f13948be7151806457a43",
246
246
  "oxc-parser": "0.148.0",
247
247
  "oxlint": "1.89.0",
248
248
  "picocolors": "^1.1.1",
@@ -252,18 +252,18 @@
252
252
  "typescript": "^7.0.2"
253
253
  },
254
254
  "optionalDependencies": {
255
- "oh-my-opencode-darwin-arm64": "5.1.57",
256
- "oh-my-opencode-darwin-x64": "5.1.57",
257
- "oh-my-opencode-darwin-x64-baseline": "5.1.57",
258
- "oh-my-opencode-linux-arm64": "5.1.57",
259
- "oh-my-opencode-linux-arm64-musl": "5.1.57",
260
- "oh-my-opencode-linux-x64": "5.1.57",
261
- "oh-my-opencode-linux-x64-baseline": "5.1.57",
262
- "oh-my-opencode-linux-x64-musl": "5.1.57",
263
- "oh-my-opencode-linux-x64-musl-baseline": "5.1.57",
264
- "oh-my-opencode-windows-arm64": "5.1.57",
265
- "oh-my-opencode-windows-x64": "5.1.57",
266
- "oh-my-opencode-windows-x64-baseline": "5.1.57"
255
+ "oh-my-opencode-darwin-arm64": "5.1.59",
256
+ "oh-my-opencode-darwin-x64": "5.1.59",
257
+ "oh-my-opencode-darwin-x64-baseline": "5.1.59",
258
+ "oh-my-opencode-linux-arm64": "5.1.59",
259
+ "oh-my-opencode-linux-arm64-musl": "5.1.59",
260
+ "oh-my-opencode-linux-x64": "5.1.59",
261
+ "oh-my-opencode-linux-x64-baseline": "5.1.59",
262
+ "oh-my-opencode-linux-x64-musl": "5.1.59",
263
+ "oh-my-opencode-linux-x64-musl-baseline": "5.1.59",
264
+ "oh-my-opencode-windows-arm64": "5.1.59",
265
+ "oh-my-opencode-windows-x64": "5.1.59",
266
+ "oh-my-opencode-windows-x64-baseline": "5.1.59"
267
267
  },
268
268
  "overrides": {
269
269
  "hono": "^4.13.8",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omo",
3
- "version": "5.1.57",
3
+ "version": "5.1.59",
4
4
  "description": "One Codex plugin namespace for Yeongyu's local Codex components.",
5
5
  "author": {
6
6
  "name": "Yeongyu Kim",
@@ -7078,7 +7078,11 @@ var OmoCategoryConfigObjectSchema = object({
7078
7078
  disable: boolean2().optional(),
7079
7079
  warn_unavailable: boolean2().optional()
7080
7080
  }).strict();
7081
- var OmoCategoryConfigSchema = preprocess((value) => isRecord4(value) ? normalizeLegacyModelFields(value) : value, OmoCategoryConfigObjectSchema);
7081
+ function withoutRetiredCategoryKeys(entry) {
7082
+ const { provider_lock: _retired, ...rest } = entry;
7083
+ return rest;
7084
+ }
7085
+ var OmoCategoryConfigSchema = preprocess((value) => isRecord4(value) ? withoutRetiredCategoryKeys(normalizeLegacyModelFields(value)) : value, OmoCategoryConfigObjectSchema);
7082
7086
  var OmoCategoriesConfigSchema = record(string2(), OmoCategoryConfigSchema);
7083
7087
 
7084
7088
  // ../../omo-config-core/src/schema/computer.ts
@@ -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.57) Checking Bootstrap Provisioning"
11
+ "statusMessage": "(OmO 5.1.59) 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.57",
3
+ "version": "5.1.59",
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.57) Checking Comments"
11
+ "statusMessage": "(OmO 5.1.59) 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.57",
3
+ "version": "5.1.59",
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.57) Recommending Git Bash MCP"
11
+ "statusMessage": "(OmO 5.1.59) 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.57) Resetting Git Bash MCP Reminder"
23
+ "statusMessage": "(OmO 5.1.59) 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.57",
3
+ "version": "5.1.59",
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.57) Verifying LazyCodex Executor Evidence"
11
+ "statusMessage": "(OmO 5.1.59) 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.57",
3
+ "version": "5.1.59",
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.57",
4
- "inputDigest": "sha256:d4b26f102714c15c638015f2ea2f8bbe5d55949e5b1d6b2753d77d6268a5629f",
3
+ "version": "5.1.59",
4
+ "inputDigest": "sha256:b322cc009bf7f3305f80084864e23ad487dedc7434ad1710989a192b7b96b5bf",
5
5
  "outputs": [
6
6
  {
7
7
  "path": "cli.d.ts",
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
10
10
  "timeout": 60,
11
- "statusMessage": "(OmO 5.1.57) Checking LSP Diagnostics"
11
+ "statusMessage": "(OmO 5.1.59) 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.57) Resetting LSP Diagnostics Cache"
24
+ "statusMessage": "(OmO 5.1.59) 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.57",
3
+ "version": "5.1.59",
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.57) Loading Project Rules"
10
+ "statusMessage": "(OmO 5.1.59) 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.57) Loading Project Rules"
22
+ "statusMessage": "(OmO 5.1.59) 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.57) Matching Project Rules"
35
+ "statusMessage": "(OmO 5.1.59) 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.57) Resetting Project Rule Cache"
48
+ "statusMessage": "(OmO 5.1.59) 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.57",
3
+ "version": "5.1.59",
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.57) Checking Thread Title Hygiene"
11
+ "statusMessage": "(OmO 5.1.59) 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.57",
3
+ "version": "5.1.59",
4
4
  "description": "Codex team-mode hook component that keeps background thread titles descriptive after create_thread.",
5
5
  "type": "module",
6
6
  "private": true,
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook session-start",
9
9
  "timeout": 5,
10
- "statusMessage": "(OmO 5.1.57) Recording Session Telemetry"
10
+ "statusMessage": "(OmO 5.1.59) Recording Session Telemetry"
11
11
  }
12
12
  ]
13
13
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-telemetry",
3
- "version": "5.1.57",
3
+ "version": "5.1.59",
4
4
  "description": "Codex plugin component that emits omo-codex anonymous daily-active telemetry on SessionStart.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook user-prompt-submit",
9
9
  "timeout": 5,
10
- "statusMessage": "(OmO 5.1.57) Checking Ultrawork Trigger"
10
+ "statusMessage": "(OmO 5.1.59) Checking Ultrawork Trigger"
11
11
  }
12
12
  ]
13
13
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-ultrawork",
3
- "version": "5.1.57",
3
+ "version": "5.1.59",
4
4
  "description": "Codex plugin that injects the ultrawork orchestration directive and ships LazyCodex planning, review, QA, and gate agent roles.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/ulw-execute-continuation/dist/cli.js\" hook stop",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.1.57) Checking Ulw-Execute Continuation"
10
+ "statusMessage": "(OmO 5.1.59) Checking Ulw-Execute Continuation"
11
11
  }
12
12
  ]
13
13
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-ulw-execute-continuation",
3
- "version": "5.1.57",
3
+ "version": "5.1.59",
4
4
  "description": "Codex Stop hook continuation injector for omo-codex ulw-execute plans.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook user-prompt-submit --with-ultrawork",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.1.57) Checking Ulw-Loop Steering"
10
+ "statusMessage": "(OmO 5.1.59) Checking Ulw-Loop Steering"
11
11
  }
12
12
  ]
13
13
  }
@@ -20,7 +20,7 @@
20
20
  "type": "command",
21
21
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use-spawn",
22
22
  "timeout": 5,
23
- "statusMessage": "(OmO 5.1.57) Recording Spawn Admission"
23
+ "statusMessage": "(OmO 5.1.59) Recording Spawn Admission"
24
24
  }
25
25
  ]
26
26
  }
@@ -33,7 +33,7 @@
33
33
  "type": "command",
34
34
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook pre-tool-use",
35
35
  "timeout": 5,
36
- "statusMessage": "(OmO 5.1.57) Enforcing Unlimited Ulw-Loop Budget"
36
+ "statusMessage": "(OmO 5.1.59) Enforcing Unlimited Ulw-Loop Budget"
37
37
  }
38
38
  ]
39
39
  },
@@ -44,7 +44,7 @@
44
44
  "type": "command",
45
45
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook pre-tool-use-spawn",
46
46
  "timeout": 5,
47
- "statusMessage": "(OmO 5.1.57) Guarding Ulw-Loop Spawns"
47
+ "statusMessage": "(OmO 5.1.59) Guarding Ulw-Loop Spawns"
48
48
  }
49
49
  ]
50
50
  }
@@ -56,7 +56,7 @@
56
56
  "type": "command",
57
57
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook stop",
58
58
  "timeout": 10,
59
- "statusMessage": "(OmO 5.1.57) Checking Ulw-Loop Resume"
59
+ "statusMessage": "(OmO 5.1.59) Checking Ulw-Loop Resume"
60
60
  }
61
61
  ]
62
62
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-ulw-loop",
3
- "version": "5.1.57",
3
+ "version": "5.1.59",
4
4
  "description": "Codex plugin: durable repo-native multi-goal orchestration with embedded success criteria and observable evidence audit.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",