oh-my-opencode 5.1.0 → 5.1.2

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 (72) hide show
  1. package/README.ja.md +3 -3
  2. package/README.ko.md +3 -3
  3. package/README.md +6 -4
  4. package/README.ru.md +3 -3
  5. package/README.zh-cn.md +3 -3
  6. package/dist/cli/index.js +685 -482
  7. package/dist/cli-node/index.js +685 -482
  8. package/dist/index.js +74 -38
  9. package/dist/skills/browser/runtime/omowright/manifest.json +1 -1
  10. package/dist/skills/refactor/SKILL.md +1 -0
  11. package/dist/skills/remove-ai-slops/SKILL.md +1 -0
  12. package/dist/skills/ulw-execute/SKILL.md +1 -0
  13. package/dist/tui.js +68 -35
  14. package/package.json +27 -31
  15. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
  16. package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +315 -154
  17. package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
  18. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  19. package/packages/omo-codex/plugin/components/bootstrap/src/setup.ts +7 -4
  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/manifest.json +1 -1
  65. package/packages/omo-codex/plugin/skills/refactor/SKILL.md +1 -0
  66. package/packages/omo-codex/plugin/skills/remove-ai-slops/SKILL.md +1 -0
  67. package/packages/omo-codex/plugin/skills/ulw-execute/SKILL.md +1 -0
  68. package/packages/omo-codex/scripts/install-dist/install-local.mjs +10441 -10269
  69. package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +1 -1
  70. package/packages/shared-skills/skills/refactor/SKILL.md +1 -0
  71. package/packages/shared-skills/skills/remove-ai-slops/SKILL.md +1 -0
  72. package/packages/shared-skills/skills/ulw-execute/SKILL.md +1 -0
package/dist/index.js CHANGED
@@ -20292,12 +20292,12 @@ var CATEGORY_MODEL_REQUIREMENTS = {
20292
20292
  },
20293
20293
  "deep-low": {
20294
20294
  fallbackChain: [
20295
- { providers: ["openai", "chatgpt-subscription"], model: "gpt-5.6-sol-fast", variant: "medium" },
20296
20295
  {
20297
20296
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
20298
20297
  model: "gpt-5.6-sol",
20299
20298
  variant: "medium"
20300
- }
20299
+ },
20300
+ { providers: ["openai", "chatgpt-subscription"], model: "gpt-5.6-sol-fast", variant: "medium" }
20301
20301
  ]
20302
20302
  },
20303
20303
  "deep-high": {
@@ -20349,6 +20349,11 @@ var CATEGORY_MODEL_REQUIREMENTS = {
20349
20349
  },
20350
20350
  "unspecified-low": {
20351
20351
  fallbackChain: [
20352
+ {
20353
+ providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
20354
+ model: "claude-sonnet-5-5",
20355
+ variant: "medium"
20356
+ },
20352
20357
  { providers: ["xiaomi", "opencode-go"], model: "mimo-v2.6-pro", variant: "max" },
20353
20358
  { providers: ["xai", "github-copilot", "opencode-go"], model: "grok-4.7", variant: "xhigh" },
20354
20359
  {
@@ -22175,6 +22180,36 @@ var SUPPLEMENTAL_MODEL_CAPABILITIES = {
22175
22180
  output: 32768
22176
22181
  }
22177
22182
  },
22183
+ "claude-sonnet-5-5": {
22184
+ id: "claude-sonnet-5-5",
22185
+ family: "claude-sonnet",
22186
+ reasoning: true,
22187
+ temperature: false,
22188
+ toolCall: true,
22189
+ modalities: {
22190
+ input: ["text", "image", "pdf"],
22191
+ output: ["text"]
22192
+ },
22193
+ limit: {
22194
+ context: 1e6,
22195
+ output: 128000
22196
+ }
22197
+ },
22198
+ "anthropic/claude-sonnet-5-5": {
22199
+ id: "anthropic/claude-sonnet-5-5",
22200
+ family: "claude-sonnet",
22201
+ reasoning: true,
22202
+ temperature: false,
22203
+ toolCall: true,
22204
+ modalities: {
22205
+ input: ["text", "image", "pdf"],
22206
+ output: ["text"]
22207
+ },
22208
+ limit: {
22209
+ context: 1e6,
22210
+ output: 128000
22211
+ }
22212
+ },
22178
22213
  "grok-4.7": {
22179
22214
  id: "grok-4.7",
22180
22215
  family: "grok",
@@ -23702,6 +23737,7 @@ var OmoTaskSettingsSchema = z11.object({
23702
23737
  process_runner: z11.enum(["host", "child-process"]).default("host"),
23703
23738
  host_engine_policy: z11.enum(["upgrade", "fallback"]).default("upgrade"),
23704
23739
  host_idle_exit_ms: z11.number().int().positive().optional(),
23740
+ host_shard_prewarm: z11.enum(["off", "first-turn", "session-start"]).default("first-turn"),
23705
23741
  default_concurrency: z11.number().int().nonnegative().default(5),
23706
23742
  global_concurrency: z11.number().int().nonnegative().default(8),
23707
23743
  provider_concurrency: z11.record(z11.string(), z11.number().int().nonnegative()).optional(),
@@ -23751,6 +23787,7 @@ var OmoTaskSettingsLayerSchema = z11.object({
23751
23787
  process_runner: z11.enum(["host", "child-process"]).optional(),
23752
23788
  host_engine_policy: z11.enum(["upgrade", "fallback"]).optional(),
23753
23789
  host_idle_exit_ms: z11.number().int().positive().optional(),
23790
+ host_shard_prewarm: z11.enum(["off", "first-turn", "session-start"]).optional(),
23754
23791
  default_concurrency: z11.number().int().nonnegative().optional(),
23755
23792
  global_concurrency: z11.number().int().nonnegative().optional(),
23756
23793
  provider_concurrency: z11.record(z11.string(), z11.number().int().nonnegative()).optional(),
@@ -27452,7 +27489,7 @@ var OPENAI_CATEGORIES = [
27452
27489
  },
27453
27490
  {
27454
27491
  name: "deep-low",
27455
- config: { model: "openai/gpt-5.6-sol-fast", variant: "medium" },
27492
+ config: { model: "openai/gpt-5.6-sol", variant: "medium" },
27456
27493
  description: "Default deep lane: one goal, one deliverable, decisions the child can settle from what it reads. **3D graphics, computer/browser use, CAPTCHA, multimodal, backend, logic, and algorithm work is routed here.** Multiple goals fan out as parallel calls.",
27457
27494
  callerGuidance: DEEP_LOW_CATEGORY_CALLER_GUIDANCE,
27458
27495
  promptAppend: DEEP_LOW_CATEGORY_PROMPT_APPEND,
@@ -27477,7 +27514,7 @@ var OPENAI_CATEGORIES = [
27477
27514
  },
27478
27515
  {
27479
27516
  name: "unspecified-low",
27480
- config: { model: "xiaomi/mimo-v2.6-pro", variant: "max" },
27517
+ config: { model: "anthropic/claude-sonnet-5-5", variant: "medium" },
27481
27518
  description: "Tasks that don't fit other categories, low effort required",
27482
27519
  callerGuidance: UNSPECIFIED_LOW_CATEGORY_CALLER_GUIDANCE,
27483
27520
  promptAppend: UNSPECIFIED_LOW_CATEGORY_PROMPT_APPEND
@@ -98132,7 +98169,7 @@ function getCachedVersion(options = {}) {
98132
98169
  // package.json
98133
98170
  var package_default = {
98134
98171
  name: "oh-my-opencode",
98135
- version: "5.1.0",
98172
+ version: "5.1.2",
98136
98173
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
98137
98174
  main: "./dist/index.js",
98138
98175
  types: "dist/index.d.ts",
@@ -98303,25 +98340,14 @@ var package_default = {
98303
98340
  },
98304
98341
  homepage: "https://github.com/code-yeongyu/oh-my-openagent#readme",
98305
98342
  dependencies: {
98306
- "@clack/prompts": "^1.8.1",
98307
- "@modelcontextprotocol/sdk": "^1.30.0",
98308
- "@opencode-ai/plugin": "1.18.31",
98309
- "@opencode-ai/sdk": "1.18.31",
98310
- "@opentui/core": "^0.5.11",
98311
- "@opentui/keymap": "^0.5.11",
98312
98343
  "@opentui/solid": "^0.5.11",
98313
- commander: "^15.0.0",
98314
98344
  "detect-libc": "^2.1.2",
98315
- diff: "^9.0.0",
98316
- "js-yaml": "^5.4.2",
98317
- "jsonc-parser": "^3.3.1",
98318
- picocolors: "^1.1.1",
98319
- picomatch: "^4.0.7",
98320
- "posthog-node": "^5.52.4",
98321
98345
  zod: "^4.6.5"
98322
98346
  },
98323
98347
  devDependencies: {
98324
- "@code-yeongyu/senpi": "2026.9.28-7",
98348
+ "@clack/prompts": "^1.8.1",
98349
+ "@code-yeongyu/senpi": "2026.9.29-3",
98350
+ "@modelcontextprotocol/sdk": "^1.30.0",
98325
98351
  "@oh-my-opencode/agents-md-core": "workspace:*",
98326
98352
  "@oh-my-opencode/ast-grep-mcp": "workspace:*",
98327
98353
  "@oh-my-opencode/boulder-state": "workspace:*",
@@ -98355,36 +98381,43 @@ var package_default = {
98355
98381
  "@oh-my-opencode/telemetry-core": "workspace:*",
98356
98382
  "@oh-my-opencode/tmux-core": "workspace:*",
98357
98383
  "@oh-my-opencode/utils": "workspace:*",
98384
+ "@opencode-ai/plugin": "1.18.31",
98385
+ "@opencode-ai/sdk": "1.18.31",
98386
+ "@opentui/core": "^0.5.11",
98387
+ "@opentui/keymap": "^0.5.11",
98358
98388
  "@types/js-yaml": "^4.0.9",
98359
98389
  "@types/picomatch": "^4.0.3",
98360
98390
  "@typescript/native-preview": "7.0.0-dev.20260707.2",
98361
98391
  "@xterm/addon-unicode11": "^0.9.0",
98362
98392
  "@xterm/xterm": "^6.0.0",
98363
98393
  "bun-types": "1.4.2",
98394
+ commander: "^15.0.0",
98395
+ diff: "^9.0.0",
98396
+ "js-yaml": "^5.4.2",
98397
+ "jsonc-parser": "^3.3.1",
98364
98398
  "node-pty": "^1.1.0",
98365
98399
  omowright: "github:code-yeongyu/omowright#293ca5002cbd4c8b0c104c5934683385ef7e0d3a",
98400
+ picocolors: "^1.1.1",
98401
+ picomatch: "^4.0.7",
98402
+ "posthog-node": "^5.52.4",
98366
98403
  "puppeteer-core": "^25.11.0",
98367
98404
  typescript: "^7.0.2"
98368
98405
  },
98369
98406
  optionalDependencies: {
98370
- "oh-my-opencode-darwin-arm64": "5.1.0",
98371
- "oh-my-opencode-darwin-x64": "5.1.0",
98372
- "oh-my-opencode-darwin-x64-baseline": "5.1.0",
98373
- "oh-my-opencode-linux-arm64": "5.1.0",
98374
- "oh-my-opencode-linux-arm64-musl": "5.1.0",
98375
- "oh-my-opencode-linux-x64": "5.1.0",
98376
- "oh-my-opencode-linux-x64-baseline": "5.1.0",
98377
- "oh-my-opencode-linux-x64-musl": "5.1.0",
98378
- "oh-my-opencode-linux-x64-musl-baseline": "5.1.0",
98379
- "oh-my-opencode-windows-arm64": "5.1.0",
98380
- "oh-my-opencode-windows-x64": "5.1.0",
98381
- "oh-my-opencode-windows-x64-baseline": "5.1.0"
98407
+ "oh-my-opencode-darwin-arm64": "5.1.2",
98408
+ "oh-my-opencode-darwin-x64": "5.1.2",
98409
+ "oh-my-opencode-darwin-x64-baseline": "5.1.2",
98410
+ "oh-my-opencode-linux-arm64": "5.1.2",
98411
+ "oh-my-opencode-linux-arm64-musl": "5.1.2",
98412
+ "oh-my-opencode-linux-x64": "5.1.2",
98413
+ "oh-my-opencode-linux-x64-baseline": "5.1.2",
98414
+ "oh-my-opencode-linux-x64-musl": "5.1.2",
98415
+ "oh-my-opencode-linux-x64-musl-baseline": "5.1.2",
98416
+ "oh-my-opencode-windows-arm64": "5.1.2",
98417
+ "oh-my-opencode-windows-x64": "5.1.2",
98418
+ "oh-my-opencode-windows-x64-baseline": "5.1.2"
98382
98419
  },
98383
98420
  overrides: {
98384
- "@earendil-works/pi-agent-core": "0.84.2",
98385
- "@earendil-works/pi-ai": "0.84.2",
98386
- "@earendil-works/pi-coding-agent": "0.84.2",
98387
- "@earendil-works/pi-tui": "0.84.2",
98388
98421
  hono: "^4.13.8",
98389
98422
  "@hono/node-server": "2.1.1",
98390
98423
  "express-rate-limit": "^8.7.0",
@@ -117179,9 +117212,10 @@ function resolveModelForDelegateTask(input, deps) {
117179
117212
  } else {
117180
117213
  for (const [entryIndex, entry] of fallbackChain.entries()) {
117181
117214
  for (const provider of entry.providers) {
117182
- const transformedModelId = transformModelForProvider(provider, modelIDForProvider2(provider, entry.model));
117183
- const fullModel = `${provider}/${transformedModelId}`;
117184
- const match = fuzzyMatchModel(fullModel, new Set(input.availableModels), [provider]);
117215
+ const entryModelId = modelIDForProvider2(provider, entry.model);
117216
+ const transformedModelId = transformModelForProvider(provider, entryModelId);
117217
+ const candidateIds = transformedModelId === entryModelId ? [entryModelId] : [transformedModelId, entryModelId];
117218
+ const match = candidateIds.map((modelId) => fuzzyMatchModel(`${provider}/${modelId}`, new Set(input.availableModels), [provider])).find((candidate) => candidate !== null);
117185
117219
  if (match) {
117186
117220
  if (explicitHighModel && entry.variant === "high" && match === explicitHighBaseModel) {
117187
117221
  return { model: explicitHighModel, fallbackEntry: entry, matchedFallback: true };
@@ -117189,6 +117223,8 @@ function resolveModelForDelegateTask(input, deps) {
117189
117223
  return { model: match, variant: entry.variant, fallbackEntry: entry, matchedFallback: true };
117190
117224
  }
117191
117225
  }
117226
+ if (input.allowUnlistedProviders !== true)
117227
+ continue;
117192
117228
  const laterRungProviders = new Set(fallbackChain.slice(entryIndex + 1).filter((candidate) => candidate.model === entry.model).flatMap((candidate) => candidate.providers));
117193
117229
  const crossProviderCandidates = new Set([...input.availableModels].filter((model) => {
117194
117230
  const [provider] = model.split("/");
@@ -5,5 +5,5 @@
5
5
  "index.js": "b6b064fab277031c6c51f5a58b84b31040f9960bf767bf646adc0540c1d25c1b",
6
6
  "page-bundle.js": "bfd51e8383cf47200d57387bbbed258bce5a3a3d00c38fc108034d2888e23f0c"
7
7
  },
8
- "stagedAtUtc": "2026-09-28T19:16:58.447Z"
8
+ "stagedAtUtc": "2026-09-29T13:54:47.396Z"
9
9
  }
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: refactor
3
3
  description: "Guides a refactor, cleanup, or restructure with the right decomposition. Use when the user asks to refactor, simplify, extract, or modernize code."
4
+ argument-hint: "<refactoring-target> [--scope=<file|module|project>] [--strategy=<safe|aggressive>]"
4
5
  ---
5
6
 
6
7
  export const REFACTOR_TEMPLATE = `# Intelligent Refactor Command
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: remove-ai-slops
3
3
  description: "Removes AI-generated code smells from branch changes or an explicit file list behind regression tests. Use when the user asks to clean up, deslop, or remove AI-slop patterns from recent changes."
4
+ argument-hint: "[file ...]"
4
5
  ---
5
6
 
6
7
  # Remove AI Slops Skill
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: ulw-execute
3
3
  description: "Executes a written ulw-plan work plan with Boulder state, evidence ledger, worktree discipline, and parallel subagents. Use when the user says ulw-execute or asks to run a .omo/plans plan."
4
+ argument-hint: "[plan-name] [--worktree <absolute-path>] [--make-pr] [--ship]"
4
5
  ---
5
6
 
6
7
  ## ABSOLUTE RULE: YOU ARE AN ORCHESTRATOR — NEVER THE IMPLEMENTER
package/dist/tui.js CHANGED
@@ -3502,12 +3502,12 @@ var init_category_model_requirements = __esm(() => {
3502
3502
  },
3503
3503
  "deep-low": {
3504
3504
  fallbackChain: [
3505
- { providers: ["openai", "chatgpt-subscription"], model: "gpt-5.6-sol-fast", variant: "medium" },
3506
3505
  {
3507
3506
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
3508
3507
  model: "gpt-5.6-sol",
3509
3508
  variant: "medium"
3510
- }
3509
+ },
3510
+ { providers: ["openai", "chatgpt-subscription"], model: "gpt-5.6-sol-fast", variant: "medium" }
3511
3511
  ]
3512
3512
  },
3513
3513
  "deep-high": {
@@ -3559,6 +3559,11 @@ var init_category_model_requirements = __esm(() => {
3559
3559
  },
3560
3560
  "unspecified-low": {
3561
3561
  fallbackChain: [
3562
+ {
3563
+ providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
3564
+ model: "claude-sonnet-5-5",
3565
+ variant: "medium"
3566
+ },
3562
3567
  { providers: ["xiaomi", "opencode-go"], model: "mimo-v2.6-pro", variant: "max" },
3563
3568
  { providers: ["xai", "github-copilot", "opencode-go"], model: "grok-4.7", variant: "xhigh" },
3564
3569
  {
@@ -4273,6 +4278,36 @@ var init_supplemental_entries = __esm(() => {
4273
4278
  output: 32768
4274
4279
  }
4275
4280
  },
4281
+ "claude-sonnet-5-5": {
4282
+ id: "claude-sonnet-5-5",
4283
+ family: "claude-sonnet",
4284
+ reasoning: true,
4285
+ temperature: false,
4286
+ toolCall: true,
4287
+ modalities: {
4288
+ input: ["text", "image", "pdf"],
4289
+ output: ["text"]
4290
+ },
4291
+ limit: {
4292
+ context: 1e6,
4293
+ output: 128000
4294
+ }
4295
+ },
4296
+ "anthropic/claude-sonnet-5-5": {
4297
+ id: "anthropic/claude-sonnet-5-5",
4298
+ family: "claude-sonnet",
4299
+ reasoning: true,
4300
+ temperature: false,
4301
+ toolCall: true,
4302
+ modalities: {
4303
+ input: ["text", "image", "pdf"],
4304
+ output: ["text"]
4305
+ },
4306
+ limit: {
4307
+ context: 1e6,
4308
+ output: 128000
4309
+ }
4310
+ },
4276
4311
  "grok-4.7": {
4277
4312
  id: "grok-4.7",
4278
4313
  family: "grok",
@@ -5233,7 +5268,7 @@ var init_openai_categories = __esm(() => {
5233
5268
  },
5234
5269
  {
5235
5270
  name: "deep-low",
5236
- config: { model: "openai/gpt-5.6-sol-fast", variant: "medium" },
5271
+ config: { model: "openai/gpt-5.6-sol", variant: "medium" },
5237
5272
  description: "Default deep lane: one goal, one deliverable, decisions the child can settle from what it reads. **3D graphics, computer/browser use, CAPTCHA, multimodal, backend, logic, and algorithm work is routed here.** Multiple goals fan out as parallel calls.",
5238
5273
  callerGuidance: DEEP_LOW_CATEGORY_CALLER_GUIDANCE,
5239
5274
  promptAppend: DEEP_LOW_CATEGORY_PROMPT_APPEND,
@@ -5258,7 +5293,7 @@ var init_openai_categories = __esm(() => {
5258
5293
  },
5259
5294
  {
5260
5295
  name: "unspecified-low",
5261
- config: { model: "xiaomi/mimo-v2.6-pro", variant: "max" },
5296
+ config: { model: "anthropic/claude-sonnet-5-5", variant: "medium" },
5262
5297
  description: "Tasks that don't fit other categories, low effort required",
5263
5298
  callerGuidance: UNSPECIFIED_LOW_CATEGORY_CALLER_GUIDANCE,
5264
5299
  promptAppend: UNSPECIFIED_LOW_CATEGORY_PROMPT_APPEND
@@ -70109,6 +70144,7 @@ var init_task = __esm(() => {
70109
70144
  process_runner: _enum(["host", "child-process"]).default("host"),
70110
70145
  host_engine_policy: _enum(["upgrade", "fallback"]).default("upgrade"),
70111
70146
  host_idle_exit_ms: number2().int().positive().optional(),
70147
+ host_shard_prewarm: _enum(["off", "first-turn", "session-start"]).default("first-turn"),
70112
70148
  default_concurrency: number2().int().nonnegative().default(5),
70113
70149
  global_concurrency: number2().int().nonnegative().default(8),
70114
70150
  provider_concurrency: record(string2(), number2().int().nonnegative()).optional(),
@@ -70158,6 +70194,7 @@ var init_task = __esm(() => {
70158
70194
  process_runner: _enum(["host", "child-process"]).optional(),
70159
70195
  host_engine_policy: _enum(["upgrade", "fallback"]).optional(),
70160
70196
  host_idle_exit_ms: number2().int().positive().optional(),
70197
+ host_shard_prewarm: _enum(["off", "first-turn", "session-start"]).optional(),
70161
70198
  default_concurrency: number2().int().nonnegative().optional(),
70162
70199
  global_concurrency: number2().int().nonnegative().optional(),
70163
70200
  provider_concurrency: record(string2(), number2().int().nonnegative()).optional(),
@@ -74177,7 +74214,7 @@ init_shared();
74177
74214
  // package.json
74178
74215
  var package_default = {
74179
74216
  name: "oh-my-opencode",
74180
- version: "5.1.0",
74217
+ version: "5.1.2",
74181
74218
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
74182
74219
  main: "./dist/index.js",
74183
74220
  types: "dist/index.d.ts",
@@ -74348,25 +74385,14 @@ var package_default = {
74348
74385
  },
74349
74386
  homepage: "https://github.com/code-yeongyu/oh-my-openagent#readme",
74350
74387
  dependencies: {
74351
- "@clack/prompts": "^1.8.1",
74352
- "@modelcontextprotocol/sdk": "^1.30.0",
74353
- "@opencode-ai/plugin": "1.18.31",
74354
- "@opencode-ai/sdk": "1.18.31",
74355
- "@opentui/core": "^0.5.11",
74356
- "@opentui/keymap": "^0.5.11",
74357
74388
  "@opentui/solid": "^0.5.11",
74358
- commander: "^15.0.0",
74359
74389
  "detect-libc": "^2.1.2",
74360
- diff: "^9.0.0",
74361
- "js-yaml": "^5.4.2",
74362
- "jsonc-parser": "^3.3.1",
74363
- picocolors: "^1.1.1",
74364
- picomatch: "^4.0.7",
74365
- "posthog-node": "^5.52.4",
74366
74390
  zod: "^4.6.5"
74367
74391
  },
74368
74392
  devDependencies: {
74369
- "@code-yeongyu/senpi": "2026.9.28-7",
74393
+ "@clack/prompts": "^1.8.1",
74394
+ "@code-yeongyu/senpi": "2026.9.29-3",
74395
+ "@modelcontextprotocol/sdk": "^1.30.0",
74370
74396
  "@oh-my-opencode/agents-md-core": "workspace:*",
74371
74397
  "@oh-my-opencode/ast-grep-mcp": "workspace:*",
74372
74398
  "@oh-my-opencode/boulder-state": "workspace:*",
@@ -74400,36 +74426,43 @@ var package_default = {
74400
74426
  "@oh-my-opencode/telemetry-core": "workspace:*",
74401
74427
  "@oh-my-opencode/tmux-core": "workspace:*",
74402
74428
  "@oh-my-opencode/utils": "workspace:*",
74429
+ "@opencode-ai/plugin": "1.18.31",
74430
+ "@opencode-ai/sdk": "1.18.31",
74431
+ "@opentui/core": "^0.5.11",
74432
+ "@opentui/keymap": "^0.5.11",
74403
74433
  "@types/js-yaml": "^4.0.9",
74404
74434
  "@types/picomatch": "^4.0.3",
74405
74435
  "@typescript/native-preview": "7.0.0-dev.20260707.2",
74406
74436
  "@xterm/addon-unicode11": "^0.9.0",
74407
74437
  "@xterm/xterm": "^6.0.0",
74408
74438
  "bun-types": "1.4.2",
74439
+ commander: "^15.0.0",
74440
+ diff: "^9.0.0",
74441
+ "js-yaml": "^5.4.2",
74442
+ "jsonc-parser": "^3.3.1",
74409
74443
  "node-pty": "^1.1.0",
74410
74444
  omowright: "github:code-yeongyu/omowright#293ca5002cbd4c8b0c104c5934683385ef7e0d3a",
74445
+ picocolors: "^1.1.1",
74446
+ picomatch: "^4.0.7",
74447
+ "posthog-node": "^5.52.4",
74411
74448
  "puppeteer-core": "^25.11.0",
74412
74449
  typescript: "^7.0.2"
74413
74450
  },
74414
74451
  optionalDependencies: {
74415
- "oh-my-opencode-darwin-arm64": "5.1.0",
74416
- "oh-my-opencode-darwin-x64": "5.1.0",
74417
- "oh-my-opencode-darwin-x64-baseline": "5.1.0",
74418
- "oh-my-opencode-linux-arm64": "5.1.0",
74419
- "oh-my-opencode-linux-arm64-musl": "5.1.0",
74420
- "oh-my-opencode-linux-x64": "5.1.0",
74421
- "oh-my-opencode-linux-x64-baseline": "5.1.0",
74422
- "oh-my-opencode-linux-x64-musl": "5.1.0",
74423
- "oh-my-opencode-linux-x64-musl-baseline": "5.1.0",
74424
- "oh-my-opencode-windows-arm64": "5.1.0",
74425
- "oh-my-opencode-windows-x64": "5.1.0",
74426
- "oh-my-opencode-windows-x64-baseline": "5.1.0"
74452
+ "oh-my-opencode-darwin-arm64": "5.1.2",
74453
+ "oh-my-opencode-darwin-x64": "5.1.2",
74454
+ "oh-my-opencode-darwin-x64-baseline": "5.1.2",
74455
+ "oh-my-opencode-linux-arm64": "5.1.2",
74456
+ "oh-my-opencode-linux-arm64-musl": "5.1.2",
74457
+ "oh-my-opencode-linux-x64": "5.1.2",
74458
+ "oh-my-opencode-linux-x64-baseline": "5.1.2",
74459
+ "oh-my-opencode-linux-x64-musl": "5.1.2",
74460
+ "oh-my-opencode-linux-x64-musl-baseline": "5.1.2",
74461
+ "oh-my-opencode-windows-arm64": "5.1.2",
74462
+ "oh-my-opencode-windows-x64": "5.1.2",
74463
+ "oh-my-opencode-windows-x64-baseline": "5.1.2"
74427
74464
  },
74428
74465
  overrides: {
74429
- "@earendil-works/pi-agent-core": "0.84.2",
74430
- "@earendil-works/pi-ai": "0.84.2",
74431
- "@earendil-works/pi-coding-agent": "0.84.2",
74432
- "@earendil-works/pi-tui": "0.84.2",
74433
74466
  hono: "^4.13.8",
74434
74467
  "@hono/node-server": "2.1.1",
74435
74468
  "express-rate-limit": "^8.7.0",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-opencode",
3
- "version": "5.1.0",
3
+ "version": "5.1.2",
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",
@@ -171,25 +171,14 @@
171
171
  },
172
172
  "homepage": "https://github.com/code-yeongyu/oh-my-openagent#readme",
173
173
  "dependencies": {
174
- "@clack/prompts": "^1.8.1",
175
- "@modelcontextprotocol/sdk": "^1.30.0",
176
- "@opencode-ai/plugin": "1.18.31",
177
- "@opencode-ai/sdk": "1.18.31",
178
- "@opentui/core": "^0.5.11",
179
- "@opentui/keymap": "^0.5.11",
180
174
  "@opentui/solid": "^0.5.11",
181
- "commander": "^15.0.0",
182
175
  "detect-libc": "^2.1.2",
183
- "diff": "^9.0.0",
184
- "js-yaml": "^5.4.2",
185
- "jsonc-parser": "^3.3.1",
186
- "picocolors": "^1.1.1",
187
- "picomatch": "^4.0.7",
188
- "posthog-node": "^5.52.4",
189
176
  "zod": "^4.6.5"
190
177
  },
191
178
  "devDependencies": {
192
- "@code-yeongyu/senpi": "2026.9.28-7",
179
+ "@clack/prompts": "^1.8.1",
180
+ "@code-yeongyu/senpi": "2026.9.29-3",
181
+ "@modelcontextprotocol/sdk": "^1.30.0",
193
182
  "@oh-my-opencode/agents-md-core": "workspace:*",
194
183
  "@oh-my-opencode/ast-grep-mcp": "workspace:*",
195
184
  "@oh-my-opencode/boulder-state": "workspace:*",
@@ -223,36 +212,43 @@
223
212
  "@oh-my-opencode/telemetry-core": "workspace:*",
224
213
  "@oh-my-opencode/tmux-core": "workspace:*",
225
214
  "@oh-my-opencode/utils": "workspace:*",
215
+ "@opencode-ai/plugin": "1.18.31",
216
+ "@opencode-ai/sdk": "1.18.31",
217
+ "@opentui/core": "^0.5.11",
218
+ "@opentui/keymap": "^0.5.11",
226
219
  "@types/js-yaml": "^4.0.9",
227
220
  "@types/picomatch": "^4.0.3",
228
221
  "@typescript/native-preview": "7.0.0-dev.20260707.2",
229
222
  "@xterm/addon-unicode11": "^0.9.0",
230
223
  "@xterm/xterm": "^6.0.0",
231
224
  "bun-types": "1.4.2",
225
+ "commander": "^15.0.0",
226
+ "diff": "^9.0.0",
227
+ "js-yaml": "^5.4.2",
228
+ "jsonc-parser": "^3.3.1",
232
229
  "node-pty": "^1.1.0",
233
230
  "omowright": "github:code-yeongyu/omowright#293ca5002cbd4c8b0c104c5934683385ef7e0d3a",
231
+ "picocolors": "^1.1.1",
232
+ "picomatch": "^4.0.7",
233
+ "posthog-node": "^5.52.4",
234
234
  "puppeteer-core": "^25.11.0",
235
235
  "typescript": "^7.0.2"
236
236
  },
237
237
  "optionalDependencies": {
238
- "oh-my-opencode-darwin-arm64": "5.1.0",
239
- "oh-my-opencode-darwin-x64": "5.1.0",
240
- "oh-my-opencode-darwin-x64-baseline": "5.1.0",
241
- "oh-my-opencode-linux-arm64": "5.1.0",
242
- "oh-my-opencode-linux-arm64-musl": "5.1.0",
243
- "oh-my-opencode-linux-x64": "5.1.0",
244
- "oh-my-opencode-linux-x64-baseline": "5.1.0",
245
- "oh-my-opencode-linux-x64-musl": "5.1.0",
246
- "oh-my-opencode-linux-x64-musl-baseline": "5.1.0",
247
- "oh-my-opencode-windows-arm64": "5.1.0",
248
- "oh-my-opencode-windows-x64": "5.1.0",
249
- "oh-my-opencode-windows-x64-baseline": "5.1.0"
238
+ "oh-my-opencode-darwin-arm64": "5.1.2",
239
+ "oh-my-opencode-darwin-x64": "5.1.2",
240
+ "oh-my-opencode-darwin-x64-baseline": "5.1.2",
241
+ "oh-my-opencode-linux-arm64": "5.1.2",
242
+ "oh-my-opencode-linux-arm64-musl": "5.1.2",
243
+ "oh-my-opencode-linux-x64": "5.1.2",
244
+ "oh-my-opencode-linux-x64-baseline": "5.1.2",
245
+ "oh-my-opencode-linux-x64-musl": "5.1.2",
246
+ "oh-my-opencode-linux-x64-musl-baseline": "5.1.2",
247
+ "oh-my-opencode-windows-arm64": "5.1.2",
248
+ "oh-my-opencode-windows-x64": "5.1.2",
249
+ "oh-my-opencode-windows-x64-baseline": "5.1.2"
250
250
  },
251
251
  "overrides": {
252
- "@earendil-works/pi-agent-core": "0.84.2",
253
- "@earendil-works/pi-ai": "0.84.2",
254
- "@earendil-works/pi-coding-agent": "0.84.2",
255
- "@earendil-works/pi-tui": "0.84.2",
256
252
  "hono": "^4.13.8",
257
253
  "@hono/node-server": "2.1.1",
258
254
  "express-rate-limit": "^8.7.0",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omo",
3
- "version": "5.1.0",
3
+ "version": "5.1.2",
4
4
  "description": "One Codex plugin namespace for Yeongyu's local Codex components.",
5
5
  "author": {
6
6
  "name": "Yeongyu Kim",