oh-my-opencode 5.1.59 → 5.1.61

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/dist/cli/index.js +70 -48
  2. package/dist/cli-node/index.js +70 -48
  3. package/dist/index.js +1603 -1436
  4. package/dist/skills/browser/runtime/omowright/manifest.json +1 -1
  5. package/dist/tui.js +64 -43
  6. package/package.json +14 -14
  7. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
  8. package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +13 -0
  9. package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
  10. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  11. package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
  12. package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
  13. package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
  14. package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
  15. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
  16. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
  17. package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +2 -2
  18. package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
  19. package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
  20. package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
  21. package/packages/omo-codex/plugin/components/rules/package.json +1 -1
  22. package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
  23. package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
  24. package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
  25. package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
  26. package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
  27. package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
  28. package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +1 -1
  29. package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
  30. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +5 -5
  31. package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
  32. package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
  33. package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
  34. package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
  35. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
  36. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
  37. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
  38. package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
  39. package/packages/omo-codex/plugin/hooks/post-tool-use-recording-spawn-admission.json +1 -1
  40. package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
  41. package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
  42. package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
  43. package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
  44. package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
  45. package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
  46. package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
  47. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +1 -1
  48. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
  49. package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
  50. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
  51. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
  52. package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
  53. package/packages/omo-codex/plugin/package-lock.json +12 -12
  54. package/packages/omo-codex/plugin/package.json +1 -1
  55. package/packages/omo-codex/plugin/skills/browser/runtime/omowright/manifest.json +1 -1
  56. package/packages/omo-codex/scripts/install-dist/install-local.mjs +15 -2
  57. package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +1 -1
package/dist/cli/index.js CHANGED
@@ -2132,7 +2132,7 @@ var package_default;
2132
2132
  var init_package = __esm(() => {
2133
2133
  package_default = {
2134
2134
  name: "oh-my-opencode",
2135
- version: "5.1.59",
2135
+ version: "5.1.61",
2136
2136
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
2137
2137
  main: "./dist/index.js",
2138
2138
  types: "dist/index.d.ts",
@@ -2319,7 +2319,7 @@ var init_package = __esm(() => {
2319
2319
  },
2320
2320
  devDependencies: {
2321
2321
  "@clack/prompts": "^1.8.1",
2322
- "@code-yeongyu/senpi": "2026.11.2-3",
2322
+ "@code-yeongyu/senpi": "2026.11.3-3",
2323
2323
  "@modelcontextprotocol/sdk": "^1.30.0",
2324
2324
  "@oh-my-opencode/agents-md-core": "workspace:*",
2325
2325
  "@oh-my-opencode/ast-grep-mcp": "workspace:*",
@@ -2384,18 +2384,18 @@ var init_package = __esm(() => {
2384
2384
  typescript: "^7.0.2"
2385
2385
  },
2386
2386
  optionalDependencies: {
2387
- "oh-my-opencode-darwin-arm64": "5.1.59",
2388
- "oh-my-opencode-darwin-x64": "5.1.59",
2389
- "oh-my-opencode-darwin-x64-baseline": "5.1.59",
2390
- "oh-my-opencode-linux-arm64": "5.1.59",
2391
- "oh-my-opencode-linux-arm64-musl": "5.1.59",
2392
- "oh-my-opencode-linux-x64": "5.1.59",
2393
- "oh-my-opencode-linux-x64-baseline": "5.1.59",
2394
- "oh-my-opencode-linux-x64-musl": "5.1.59",
2395
- "oh-my-opencode-linux-x64-musl-baseline": "5.1.59",
2396
- "oh-my-opencode-windows-arm64": "5.1.59",
2397
- "oh-my-opencode-windows-x64": "5.1.59",
2398
- "oh-my-opencode-windows-x64-baseline": "5.1.59"
2387
+ "oh-my-opencode-darwin-arm64": "5.1.61",
2388
+ "oh-my-opencode-darwin-x64": "5.1.61",
2389
+ "oh-my-opencode-darwin-x64-baseline": "5.1.61",
2390
+ "oh-my-opencode-linux-arm64": "5.1.61",
2391
+ "oh-my-opencode-linux-arm64-musl": "5.1.61",
2392
+ "oh-my-opencode-linux-x64": "5.1.61",
2393
+ "oh-my-opencode-linux-x64-baseline": "5.1.61",
2394
+ "oh-my-opencode-linux-x64-musl": "5.1.61",
2395
+ "oh-my-opencode-linux-x64-musl-baseline": "5.1.61",
2396
+ "oh-my-opencode-windows-arm64": "5.1.61",
2397
+ "oh-my-opencode-windows-x64": "5.1.61",
2398
+ "oh-my-opencode-windows-x64-baseline": "5.1.61"
2399
2399
  },
2400
2400
  overrides: {
2401
2401
  hono: "^4.13.8",
@@ -7490,7 +7490,7 @@ function createLogger(options) {
7490
7490
  function scheduleFlush() {
7491
7491
  if (flushTimer)
7492
7492
  return;
7493
- flushTimer = setTimeout(() => {
7493
+ flushTimer = scheduleTimeout(() => {
7494
7494
  flushTimer = null;
7495
7495
  flush();
7496
7496
  }, flushIntervalMs);
@@ -7517,7 +7517,7 @@ function createLogger(options) {
7517
7517
  function _setLoggerForTesting(overrides) {
7518
7518
  buffer = [];
7519
7519
  if (flushTimer) {
7520
- clearTimeout(flushTimer);
7520
+ cancelTimeout(flushTimer);
7521
7521
  flushTimer = null;
7522
7522
  }
7523
7523
  if (overrides.filePath !== undefined)
@@ -7533,13 +7533,13 @@ function createLogger(options) {
7533
7533
  maxLogFileBackups = maxLogFileBackupsDefault;
7534
7534
  buffer = [];
7535
7535
  if (flushTimer) {
7536
- clearTimeout(flushTimer);
7536
+ cancelTimeout(flushTimer);
7537
7537
  flushTimer = null;
7538
7538
  }
7539
7539
  }
7540
7540
  function _flushForTesting() {
7541
7541
  if (flushTimer) {
7542
- clearTimeout(flushTimer);
7542
+ cancelTimeout(flushTimer);
7543
7543
  flushTimer = null;
7544
7544
  }
7545
7545
  flush();
@@ -7552,8 +7552,10 @@ function createLogger(options) {
7552
7552
  _flushForTesting
7553
7553
  };
7554
7554
  }
7555
- var DEFAULT_MAX_LOG_FILE_SIZE_BYTES, DEFAULT_MAX_LOG_FILE_BACKUPS = 2, DEFAULT_LOG_FLUSH_INTERVAL_MS = 500, DEFAULT_LOG_BUFFER_SIZE_LIMIT = 50;
7555
+ var scheduleTimeout, cancelTimeout, DEFAULT_MAX_LOG_FILE_SIZE_BYTES, DEFAULT_MAX_LOG_FILE_BACKUPS = 2, DEFAULT_LOG_FLUSH_INTERVAL_MS = 500, DEFAULT_LOG_BUFFER_SIZE_LIMIT = 50;
7556
7556
  var init_logger = __esm(() => {
7557
+ scheduleTimeout = globalThis.setTimeout;
7558
+ cancelTimeout = globalThis.clearTimeout;
7557
7559
  DEFAULT_MAX_LOG_FILE_SIZE_BYTES = 50 * 1024 * 1024;
7558
7560
  });
7559
7561
 
@@ -9392,7 +9394,7 @@ var init_agent_model_requirements = __esm(() => {
9392
9394
  {
9393
9395
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
9394
9396
  model: "gpt-5.6-sol",
9395
- variant: "high"
9397
+ variant: "medium"
9396
9398
  },
9397
9399
  { providers: ["zai-coding-plan", "opencode", "bailian-coding-plan"], model: "glm-5.2" },
9398
9400
  { providers: ["opencode"], model: "big-pickle" }
@@ -9404,12 +9406,12 @@ var init_agent_model_requirements = __esm(() => {
9404
9406
  {
9405
9407
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
9406
9408
  model: "gpt-6-sol",
9407
- variant: "high"
9409
+ variant: "medium"
9408
9410
  },
9409
9411
  {
9410
9412
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
9411
9413
  model: "gpt-5.6-sol",
9412
- variant: "high"
9414
+ variant: "medium"
9413
9415
  }
9414
9416
  ],
9415
9417
  requiresProvider: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
@@ -9417,7 +9419,7 @@ var init_agent_model_requirements = __esm(() => {
9417
9419
  },
9418
9420
  oracle: {
9419
9421
  fallbackChain: [
9420
- { providers: ["openai", "chatgpt-subscription", "opencode"], model: "gpt-5.6-sol", variant: "high" },
9422
+ { providers: ["openai", "chatgpt-subscription", "opencode"], model: "gpt-5.6-sol", variant: "xhigh" },
9421
9423
  { providers: ["github-copilot"], model: "gpt-5.6-sol", variant: "high" },
9422
9424
  {
9423
9425
  providers: ["google", "google-vertex", "opencode"],
@@ -9441,7 +9443,7 @@ var init_agent_model_requirements = __esm(() => {
9441
9443
  fallbackChain: [
9442
9444
  { providers: ["kimi-for-coding"], model: "kimi-for-coding-highspeed", variant: "off" },
9443
9445
  { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptLunaFast, variant: "low" },
9444
- { providers: ["anthropic", "github-copilot"], model: LATEST_MODEL_BY_FAMILY.claudeHaiku, variant: "high" },
9446
+ { providers: ["anthropic", "github-copilot"], model: LATEST_MODEL_BY_FAMILY.claudeHaiku, variant: "medium" },
9445
9447
  { providers: ["deepseek"], model: "deepseek-flash", variant: "max" },
9446
9448
  { providers: ["opencode-go", "bailian-coding-plan"], model: "qwen3.7-plus" },
9447
9449
  { providers: ["opencode-go"], model: "minimax-m2.7" }
@@ -9451,7 +9453,7 @@ var init_agent_model_requirements = __esm(() => {
9451
9453
  fallbackChain: [
9452
9454
  { providers: ["kimi-for-coding"], model: "kimi-for-coding-highspeed", variant: "off" },
9453
9455
  { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptLunaFast, variant: "low" },
9454
- { providers: ["anthropic", "github-copilot"], model: LATEST_MODEL_BY_FAMILY.claudeHaiku, variant: "high" },
9456
+ { providers: ["anthropic", "github-copilot"], model: LATEST_MODEL_BY_FAMILY.claudeHaiku, variant: "medium" },
9455
9457
  { providers: ["deepseek"], model: "deepseek-flash", variant: "max" },
9456
9458
  { providers: ["opencode-go", "bailian-coding-plan"], model: "qwen3.7-plus" },
9457
9459
  { providers: ["opencode-go"], model: "minimax-m2.7" }
@@ -9470,12 +9472,12 @@ var init_agent_model_requirements = __esm(() => {
9470
9472
  {
9471
9473
  providers: ["anthropic", "github-copilot", "opencode"],
9472
9474
  model: FABLE_55_LAUNCH.id,
9473
- variant: "high"
9475
+ variant: "xhigh"
9474
9476
  },
9475
9477
  {
9476
9478
  providers: ["anthropic", "github-copilot", "opencode"],
9477
9479
  model: LATEST_MODEL_BY_FAMILY.claudeFable,
9478
- variant: "high"
9480
+ variant: "xhigh"
9479
9481
  },
9480
9482
  {
9481
9483
  providers: ["anthropic", "github-copilot", "opencode"],
@@ -9517,7 +9519,7 @@ var init_agent_model_requirements = __esm(() => {
9517
9519
  },
9518
9520
  momus: {
9519
9521
  fallbackChain: [
9520
- { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptAstra, variant: "high" },
9522
+ { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptAstra, variant: "xhigh" },
9521
9523
  { providers: ["github-copilot"], model: LATEST_MODEL_BY_FAMILY.gptAstra, variant: "high" },
9522
9524
  { providers: ["openai", "chatgpt-subscription", "opencode"], model: LATEST_MODEL_BY_FAMILY.gptAstra, variant: "high" },
9523
9525
  {
@@ -9545,7 +9547,7 @@ var init_agent_model_requirements = __esm(() => {
9545
9547
  {
9546
9548
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
9547
9549
  model: "gpt-5.6-sol",
9548
- variant: "high"
9550
+ variant: "medium"
9549
9551
  },
9550
9552
  { providers: ["opencode-go"], model: "minimax-m3" },
9551
9553
  { providers: ["minimax-coding-plan", "minimax-cn-coding-plan"], model: "MiniMax-M3" },
@@ -9559,7 +9561,7 @@ var init_agent_model_requirements = __esm(() => {
9559
9561
  {
9560
9562
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
9561
9563
  model: "gpt-5.6-sol",
9562
- variant: "high"
9564
+ variant: "medium"
9563
9565
  },
9564
9566
  { providers: ["opencode-go"], model: "minimax-m3" },
9565
9567
  { providers: ["minimax-coding-plan", "minimax-cn-coding-plan"], model: "MiniMax-M3" },
@@ -9614,14 +9616,14 @@ var init_category_model_requirements = __esm(() => {
9614
9616
  },
9615
9617
  "deep-low": {
9616
9618
  fallbackChain: [
9617
- { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptSol, variant: "high" },
9618
- { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptSolFast, variant: "high" },
9619
+ { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptSol, variant: "medium" },
9620
+ { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptSolFast, variant: "medium" },
9619
9621
  {
9620
9622
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
9621
9623
  model: "gpt-5.6-sol",
9622
- variant: "high"
9624
+ variant: "medium"
9623
9625
  },
9624
- { providers: ["openai", "chatgpt-subscription"], model: "gpt-5.6-sol-fast", variant: "high" }
9626
+ { providers: ["openai", "chatgpt-subscription"], model: "gpt-5.6-sol-fast", variant: "medium" }
9625
9627
  ]
9626
9628
  },
9627
9629
  "deep-high": {
@@ -9664,7 +9666,7 @@ var init_category_model_requirements = __esm(() => {
9664
9666
  {
9665
9667
  providers: ["anthropic", "anthropic-api", "github-copilot"],
9666
9668
  model: LATEST_MODEL_BY_FAMILY.claudeHaiku,
9667
- variant: "high"
9669
+ variant: "medium"
9668
9670
  },
9669
9671
  { providers: ["deepseek"], model: "deepseek-flash", variant: "off" },
9670
9672
  {
@@ -9684,16 +9686,16 @@ var init_category_model_requirements = __esm(() => {
9684
9686
  {
9685
9687
  providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
9686
9688
  model: LATEST_MODEL_BY_FAMILY.claudeSonnet,
9687
- variant: "high"
9689
+ variant: "medium"
9688
9690
  },
9689
9691
  { providers: ["xiaomi", "opencode-go"], model: "mimo-v2.6-pro", variant: "max" },
9690
- { providers: ["xai", "github-copilot", "opencode-go"], model: "grok-4.7", variant: "high" },
9692
+ { providers: ["xai", "github-copilot", "opencode-go"], model: "grok-4.7", variant: "xhigh" },
9691
9693
  { providers: ["zai-coding-plan", "opencode-go"], model: LATEST_MODEL_BY_FAMILY.glm, variant: "high" },
9692
- { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptSol, variant: "high" },
9694
+ { providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptSol, variant: "medium" },
9693
9695
  {
9694
9696
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
9695
9697
  model: "gpt-5.6-sol",
9696
- variant: "high"
9698
+ variant: "medium"
9697
9699
  },
9698
9700
  {
9699
9701
  providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
@@ -9714,7 +9716,7 @@ var init_category_model_requirements = __esm(() => {
9714
9716
  {
9715
9717
  providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
9716
9718
  model: LATEST_MODEL_BY_FAMILY.claudeOpus,
9717
- variant: "high"
9719
+ variant: "medium"
9718
9720
  },
9719
9721
  { providers: ["zai-coding-plan", "opencode-go"], model: LATEST_MODEL_BY_FAMILY.glm, variant: "max" },
9720
9722
  {
@@ -11791,7 +11793,7 @@ var init_openai_categories = __esm(() => {
11791
11793
  },
11792
11794
  {
11793
11795
  name: "deep-low",
11794
- config: { model: `openai/${LATEST_MODEL_BY_FAMILY.gptSol}`, variant: "high" },
11796
+ config: { model: `openai/${LATEST_MODEL_BY_FAMILY.gptSol}`, variant: "medium" },
11795
11797
  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.",
11796
11798
  callerGuidance: DEEP_LOW_CATEGORY_CALLER_GUIDANCE,
11797
11799
  promptAppend: DEEP_LOW_CATEGORY_PROMPT_APPEND,
@@ -11816,14 +11818,14 @@ var init_openai_categories = __esm(() => {
11816
11818
  },
11817
11819
  {
11818
11820
  name: "unspecified-low",
11819
- config: { model: `anthropic/${LATEST_MODEL_BY_FAMILY.claudeSonnet}`, variant: "high" },
11821
+ config: { model: `anthropic/${LATEST_MODEL_BY_FAMILY.claudeSonnet}`, variant: "medium" },
11820
11822
  description: "Tasks that don't fit other categories, low effort required",
11821
11823
  callerGuidance: UNSPECIFIED_LOW_CATEGORY_CALLER_GUIDANCE,
11822
11824
  promptAppend: UNSPECIFIED_LOW_CATEGORY_PROMPT_APPEND
11823
11825
  },
11824
11826
  {
11825
11827
  name: "unspecified-high",
11826
- config: { model: `anthropic/${LATEST_MODEL_BY_FAMILY.claudeOpus}`, variant: "high" },
11828
+ config: { model: `anthropic/${LATEST_MODEL_BY_FAMILY.claudeOpus}`, variant: "medium" },
11827
11829
  description: "Tasks that don't fit other categories, high effort required",
11828
11830
  callerGuidance: UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE,
11829
11831
  promptAppend: UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND,
@@ -77637,6 +77639,19 @@ var init_telemetry = __esm(() => {
77637
77639
  }).strict();
77638
77640
  });
77639
77641
 
77642
+ // packages/omo-config-core/src/schema/device-service.ts
77643
+ var OmoDeviceServiceSettingsShape, OmoDeviceServiceSettingsLayerSchema, OmoDeviceServiceSettingsSchema;
77644
+ var init_device_service = __esm(() => {
77645
+ init_zod();
77646
+ OmoDeviceServiceSettingsShape = {
77647
+ enabled: boolean2()
77648
+ };
77649
+ OmoDeviceServiceSettingsLayerSchema = object(OmoDeviceServiceSettingsShape).partial().strict();
77650
+ OmoDeviceServiceSettingsSchema = OmoDeviceServiceSettingsLayerSchema.extend({
77651
+ enabled: boolean2().default(true)
77652
+ }).strict();
77653
+ });
77654
+
77640
77655
  // packages/omo-config-core/src/schema/format-on-mutation.ts
77641
77656
  var mode, languages, OmoFormatOnMutationLayerSchema, OmoFormatOnMutationSchema;
77642
77657
  var init_format_on_mutation = __esm(() => {
@@ -77685,6 +77700,7 @@ var init_config = __esm(() => {
77685
77700
  init_task();
77686
77701
  init_team();
77687
77702
  init_telemetry();
77703
+ init_device_service();
77688
77704
  init_format_on_mutation();
77689
77705
  init_provenance();
77690
77706
  OmoOpenCodeHarnessConfigSchema = record(string2(), unknown());
@@ -77704,6 +77720,7 @@ var init_config = __esm(() => {
77704
77720
  model_pad: OmoModelPadSchema.optional(),
77705
77721
  memory: OmoMemorySettingsLayerSchema.optional(),
77706
77722
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
77723
+ device_service: OmoDeviceServiceSettingsLayerSchema.optional(),
77707
77724
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
77708
77725
  computer: OmoComputerSettingsLayerSchema.optional(),
77709
77726
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -77723,6 +77740,7 @@ var init_config = __esm(() => {
77723
77740
  model_pad: OmoModelPadSchema.optional(),
77724
77741
  memory: OmoMemorySettingsLayerSchema.optional(),
77725
77742
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
77743
+ device_service: OmoDeviceServiceSettingsLayerSchema.optional(),
77726
77744
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
77727
77745
  computer: OmoComputerSettingsLayerSchema.optional(),
77728
77746
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -77747,6 +77765,7 @@ var init_config = __esm(() => {
77747
77765
  model_pad: OmoModelPadSchema.optional(),
77748
77766
  memory: OmoMemorySettingsSchema.optional(),
77749
77767
  telemetry: OmoTelemetrySettingsSchema.optional(),
77768
+ device_service: OmoDeviceServiceSettingsSchema.optional(),
77750
77769
  side_panel: OmoSidePanelSettingsSchema.optional(),
77751
77770
  computer: OmoComputerSettingsSchema.optional(),
77752
77771
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -77774,6 +77793,7 @@ var init_config = __esm(() => {
77774
77793
  model_pad: OmoModelPadSchema.optional(),
77775
77794
  memory: OmoMemorySettingsLayerSchema.optional(),
77776
77795
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
77796
+ device_service: OmoDeviceServiceSettingsLayerSchema.optional(),
77777
77797
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
77778
77798
  computer: OmoComputerSettingsLayerSchema.optional(),
77779
77799
  disabled_skills: OmoDisabledSkillsSchema.optional(),
@@ -77925,6 +77945,7 @@ var init_schema = __esm(() => {
77925
77945
  init_task();
77926
77946
  init_team();
77927
77947
  init_telemetry();
77948
+ init_device_service();
77928
77949
  init_computer();
77929
77950
  });
77930
77951
 
@@ -80742,7 +80763,7 @@ var init_openai_only_model_catalog = __esm(() => {
80742
80763
  librarian: { model: `openai/${LATEST_MODEL_BY_FAMILY.gptLunaFast}`, variant: "low" }
80743
80764
  };
80744
80765
  OPENAI_ONLY_CATEGORY_OVERRIDES = {
80745
- artistry: { model: "openai/gpt-5.6-sol", variant: "high" },
80766
+ artistry: { model: "openai/gpt-5.6-sol", variant: "xhigh" },
80746
80767
  quick: { model: `openai/${LATEST_MODEL_BY_FAMILY.gptLunaFast}` },
80747
80768
  "visual-engineering": { model: "openai/gpt-5.6-sol", variant: "high" }
80748
80769
  };
@@ -80954,7 +80975,7 @@ function generateModelConfig(config) {
80954
80975
  if (avail.native.openai) {
80955
80976
  agentConfig = { model: `openai/${LATEST_MODEL_BY_FAMILY.gptLunaFast}`, variant: "low" };
80956
80977
  } else if (avail.native.claude) {
80957
- agentConfig = { model: `anthropic/${LATEST_MODEL_BY_FAMILY.claudeHaiku}`, variant: "high" };
80978
+ agentConfig = { model: `anthropic/${LATEST_MODEL_BY_FAMILY.claudeHaiku}`, variant: "medium" };
80958
80979
  } else if (avail.opencodeZen) {
80959
80980
  agentConfig = { model: "opencode/gpt-5-nano" };
80960
80981
  } else if (avail.opencodeGo) {
@@ -92689,7 +92710,7 @@ var package_default2;
92689
92710
  var init_package2 = __esm(() => {
92690
92711
  package_default2 = {
92691
92712
  name: "@oh-my-opencode/omo-codex",
92692
- version: "5.1.59",
92713
+ version: "5.1.61",
92693
92714
  type: "module",
92694
92715
  private: true,
92695
92716
  description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
@@ -100065,6 +100086,7 @@ var REQUIRED_PLUGIN_ARTIFACTS = [
100065
100086
  join66("extensions", "omo-memory-commands.js"),
100066
100087
  join66("extensions", "omo-session-history.js"),
100067
100088
  join66("extensions", "omo-recall-store.js"),
100089
+ join66("extensions", "omo-device-service.js"),
100068
100090
  join66("extensions", "omo-telemetry-posthog.js"),
100069
100091
  join66("extensions", "omo-telemetry-otlp.js"),
100070
100092
  join66("extensions", "omo-memory-sync.js"),
@@ -109449,8 +109471,8 @@ var package_default3 = {
109449
109471
  },
109450
109472
  dependencies: {
109451
109473
  "@clack/prompts": "^1.8.1",
109452
- "@code-yeongyu/senpi": "2026.11.2-3",
109453
- "@earendil-works/pi-ai": "npm:@code-yeongyu/senpi-ai@2026.11.2-3",
109474
+ "@code-yeongyu/senpi": "2026.11.3-3",
109475
+ "@earendil-works/pi-ai": "npm:@code-yeongyu/senpi-ai@2026.11.3-3",
109454
109476
  "@modelcontextprotocol/sdk": "^1.30.0",
109455
109477
  "@oh-my-opencode/agents-md-core": "workspace:*",
109456
109478
  "@oh-my-opencode/boulder-state": "workspace:*",