oh-my-opencode 5.0.0-beta.84 → 5.0.0-beta.85

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 (56) hide show
  1. package/dist/agents/gpt-prompt-identity.d.ts +1 -1
  2. package/dist/cli/index.js +105 -33
  3. package/dist/cli-node/index.js +105 -33
  4. package/dist/index.js +103 -28
  5. package/dist/tui.js +86 -14
  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/hooks/hooks.json +1 -1
  9. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  10. package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
  11. package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
  12. package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
  13. package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
  14. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
  15. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
  16. package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +2 -2
  17. package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
  18. package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
  19. package/packages/omo-codex/plugin/components/rules/dist/cli.js +12 -0
  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/rules/src/post-compact-budget.ts +12 -0
  23. package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
  24. package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
  25. package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
  26. package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
  27. package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
  28. package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
  29. package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +1 -1
  30. package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
  31. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +5 -5
  32. package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
  33. package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
  34. package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
  35. package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
  36. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
  37. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
  38. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
  39. package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
  40. package/packages/omo-codex/plugin/hooks/post-tool-use-recording-spawn-admission.json +1 -1
  41. package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
  42. package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
  43. package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
  44. package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
  45. package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
  46. package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
  47. package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
  48. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +1 -1
  49. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
  50. package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
  51. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
  52. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
  53. package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
  54. package/packages/omo-codex/plugin/package-lock.json +12 -12
  55. package/packages/omo-codex/plugin/package.json +1 -1
  56. package/packages/omo-codex/scripts/install-dist/install-local.mjs +2 -2
package/dist/index.js CHANGED
@@ -20022,6 +20022,11 @@ var AGENT_MODEL_REQUIREMENTS = {
20022
20022
  },
20023
20023
  hephaestus: {
20024
20024
  fallbackChain: [
20025
+ {
20026
+ providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
20027
+ model: "gpt-6-sol",
20028
+ variant: "medium"
20029
+ },
20025
20030
  {
20026
20031
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
20027
20032
  model: "gpt-5.6-sol",
@@ -20051,7 +20056,7 @@ var AGENT_MODEL_REQUIREMENTS = {
20051
20056
  librarian: {
20052
20057
  fallbackChain: [
20053
20058
  { providers: ["kimi-for-coding"], model: "kimi-for-coding-highspeed", variant: "off" },
20054
- { providers: ["openai", "chatgpt-subscription"], model: "gpt-5.6-luna-fast", variant: "low" },
20059
+ { providers: ["openai", "chatgpt-subscription"], model: "gpt-6-luna-fast", variant: "low" },
20055
20060
  { providers: ["deepseek"], model: "deepseek-v4-flash", variant: "max" },
20056
20061
  { providers: ["opencode-go", "bailian-coding-plan"], model: "qwen3.7-plus" },
20057
20062
  { providers: ["opencode-go"], model: "minimax-m3" },
@@ -20064,7 +20069,7 @@ var AGENT_MODEL_REQUIREMENTS = {
20064
20069
  explore: {
20065
20070
  fallbackChain: [
20066
20071
  { providers: ["kimi-for-coding"], model: "kimi-for-coding-highspeed", variant: "off" },
20067
- { providers: ["openai", "chatgpt-subscription"], model: "gpt-5.6-luna-fast", variant: "low" },
20072
+ { providers: ["openai", "chatgpt-subscription"], model: "gpt-6-luna-fast", variant: "low" },
20068
20073
  { providers: ["deepseek"], model: "deepseek-v4-flash", variant: "max" },
20069
20074
  { providers: ["opencode-go", "bailian-coding-plan"], model: "qwen3.7-plus" },
20070
20075
  { providers: ["opencode-go"], model: "minimax-m3" },
@@ -20089,6 +20094,11 @@ var AGENT_MODEL_REQUIREMENTS = {
20089
20094
  model: "claude-fable-5-1",
20090
20095
  variant: "xhigh"
20091
20096
  },
20097
+ {
20098
+ providers: ["anthropic", "github-copilot", "opencode"],
20099
+ model: "claude-opus-5-5",
20100
+ variant: "max"
20101
+ },
20092
20102
  {
20093
20103
  providers: ["opencode-go", "kimi-for-coding", "moonshotai", "opencode"],
20094
20104
  model: "kimi-k3",
@@ -20196,6 +20206,11 @@ var CATEGORY_MODEL_REQUIREMENTS = {
20196
20206
  },
20197
20207
  "deep-low": {
20198
20208
  fallbackChain: [
20209
+ {
20210
+ providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
20211
+ model: "gpt-6-sol",
20212
+ variant: "medium"
20213
+ },
20199
20214
  {
20200
20215
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
20201
20216
  model: "gpt-5.6-sol",
@@ -20220,20 +20235,20 @@ var CATEGORY_MODEL_REQUIREMENTS = {
20220
20235
  variant: "max"
20221
20236
  },
20222
20237
  {
20223
- providers: ["kimi-for-coding", "moonshotai", "opencode-go", "opencode"],
20224
- model: "kimi-k3",
20238
+ providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
20239
+ model: "claude-opus-5-5",
20225
20240
  variant: "max"
20226
20241
  },
20227
20242
  {
20228
- providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
20229
- model: "claude-opus-5-5",
20243
+ providers: ["kimi-for-coding", "moonshotai", "opencode-go", "opencode"],
20244
+ model: "kimi-k3",
20230
20245
  variant: "max"
20231
20246
  }
20232
20247
  ]
20233
20248
  },
20234
20249
  quick: {
20235
20250
  fallbackChain: [
20236
- { providers: ["chatgpt-subscription"], model: "gpt-5.6-luna-fast", variant: "low" },
20251
+ { providers: ["chatgpt-subscription"], model: "gpt-6-luna-fast", variant: "low" },
20237
20252
  { providers: ["deepseek"], model: "deepseek-v4-flash", variant: "off" },
20238
20253
  {
20239
20254
  providers: ["qwen-token-plan", "alibaba-token-plan", "bailian-coding-plan"],
@@ -20445,7 +20460,7 @@ var PATTERN_ALIAS_RULES = [
20445
20460
  description: "Normalizes OpenCode's OpenAI GPT fast service-tier IDs to canonical snapshot IDs.",
20446
20461
  providerIDs: ["openai"],
20447
20462
  allowedSubproviderHosts: ["vercel"],
20448
- match: (normalizedModelID) => /^(?:gpt-5\.6-(?:sol|terra|luna)|gpt-6-astra)-fast$/.test(normalizedModelID),
20463
+ match: (normalizedModelID) => /^(?:gpt-5\.6-(?:sol|terra|luna)|gpt-6-(?:astra|sol|luna))-fast$/.test(normalizedModelID),
20449
20464
  canonicalize: (normalizedModelID) => normalizedModelID.slice(0, -"-fast".length)
20450
20465
  },
20451
20466
  {
@@ -20652,13 +20667,21 @@ var HEURISTIC_MODEL_FAMILY_REGISTRY = [
20652
20667
  supportsTemperature: false
20653
20668
  },
20654
20669
  {
20655
- family: "gpt-6",
20656
- includes: ["gpt-6"],
20670
+ family: "gpt-6-astra",
20671
+ pattern: /gpt-6-astra/,
20657
20672
  variants: ["low", "medium", "high", "xhigh", "max"],
20658
20673
  reasoningEfforts: ["low", "medium", "high", "xhigh", "max"],
20659
20674
  reasoningEffortAliases: { none: "low", minimal: "low" },
20660
20675
  supportsTemperature: false
20661
20676
  },
20677
+ {
20678
+ family: "gpt-6",
20679
+ includes: ["gpt-6"],
20680
+ variants: ["low", "medium", "high", "xhigh", "max"],
20681
+ reasoningEfforts: ["none", "low", "medium", "high", "xhigh", "max"],
20682
+ reasoningEffortAliases: { minimal: "low" },
20683
+ supportsTemperature: false
20684
+ },
20662
20685
  {
20663
20686
  family: "gpt-5",
20664
20687
  includes: ["gpt-5"],
@@ -21876,6 +21899,38 @@ var SUPPLEMENTAL_MODEL_CAPABILITIES = {
21876
21899
  output: 128000
21877
21900
  }
21878
21901
  },
21902
+ "gpt-6-sol": {
21903
+ id: "gpt-6-sol",
21904
+ family: "gpt",
21905
+ reasoning: true,
21906
+ temperature: false,
21907
+ toolCall: true,
21908
+ modalities: {
21909
+ input: ["text", "image"],
21910
+ output: ["text"]
21911
+ },
21912
+ limit: {
21913
+ context: 1050000,
21914
+ input: 922000,
21915
+ output: 128000
21916
+ }
21917
+ },
21918
+ "gpt-6-luna": {
21919
+ id: "gpt-6-luna",
21920
+ family: "gpt-nano",
21921
+ reasoning: true,
21922
+ temperature: false,
21923
+ toolCall: true,
21924
+ modalities: {
21925
+ input: ["text", "image"],
21926
+ output: ["text"]
21927
+ },
21928
+ limit: {
21929
+ context: 1050000,
21930
+ input: 922000,
21931
+ output: 128000
21932
+ }
21933
+ },
21879
21934
  "gpt-5.6-sol": {
21880
21935
  id: "gpt-5.6-sol",
21881
21936
  family: "gpt",
@@ -21940,6 +21995,22 @@ var SUPPLEMENTAL_MODEL_CAPABILITIES = {
21940
21995
  output: 128000
21941
21996
  }
21942
21997
  },
21998
+ "gpt-6-luna-fast": {
21999
+ id: "gpt-6-luna-fast",
22000
+ family: "gpt-nano",
22001
+ reasoning: true,
22002
+ temperature: false,
22003
+ toolCall: true,
22004
+ modalities: {
22005
+ input: ["text", "image"],
22006
+ output: ["text"]
22007
+ },
22008
+ limit: {
22009
+ context: 1050000,
22010
+ input: 922000,
22011
+ output: 128000
22012
+ }
22013
+ },
21943
22014
  "gpt-5.6-luna-fast": {
21944
22015
  id: "gpt-5.6-luna-fast",
21945
22016
  family: "gpt-mini",
@@ -27221,7 +27292,7 @@ You are working on tasks that don't fit specific categories but require substant
27221
27292
  var UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Use only when no specialist category fits and substantial effort spans systems/modules with broad impact. Use unspecified-low for contained moderate work.</Selection_Gate>`;
27222
27293
  var DEEP_LOW_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Route here when one subsystem plus its callers holds the mechanism and the evidence, once read, leaves one right answer. Wide but mechanical work belongs here or in a quick batch. When unsure, choose deep-low: a misrouted child returns \`ESCALATE: deep-high\` after one cheap attempt; re-spawn the same brief as deep-high with its findings.</Selection_Gate>`;
27223
27294
  var DEEP_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Route here only when you can name the decision evidence cannot settle: a trade-off with no single right answer, a contract change crossing a package or process boundary, a mechanism with no in-repo pattern to copy, or correctness argued from invariants rather than observed in a test. Wide scope with easy decisions is deep-low or unspecified-high; reasoning as the deliverable is ultrabrain.</Selection_Gate>`;
27224
- var DEEP_LOW_GATE_MODEL = "gpt-5.6-sol";
27295
+ var DEEP_LOW_GATE_MODELS = ["gpt-6-sol", "gpt-5.6-sol"];
27225
27296
  var DEEP_HIGH_GATE_MODEL = "gpt-6-astra";
27226
27297
  var OPENAI_CATEGORIES = [
27227
27298
  {
@@ -27233,12 +27304,12 @@ var OPENAI_CATEGORIES = [
27233
27304
  },
27234
27305
  {
27235
27306
  name: "deep-low",
27236
- config: { model: "openai/gpt-5.6-sol", variant: "medium" },
27307
+ config: { model: "openai/gpt-6-sol", variant: "medium" },
27237
27308
  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.",
27238
27309
  callerGuidance: DEEP_LOW_CATEGORY_CALLER_GUIDANCE,
27239
27310
  promptAppend: DEEP_LOW_CATEGORY_PROMPT_APPEND,
27240
27311
  resolvePromptAppend: resolveDeepLowCategoryPromptAppend,
27241
- requiresModel: DEEP_LOW_GATE_MODEL
27312
+ requiresModel: DEEP_LOW_GATE_MODELS
27242
27313
  },
27243
27314
  {
27244
27315
  name: "deep-high",
@@ -27251,7 +27322,7 @@ var OPENAI_CATEGORIES = [
27251
27322
  },
27252
27323
  {
27253
27324
  name: "quick",
27254
- config: { model: "openai/gpt-5.6-luna-fast", variant: "low" },
27325
+ config: { model: "openai/gpt-6-luna-fast", variant: "low" },
27255
27326
  description: "Trivial tasks - single file changes, typo fixes, simple modifications",
27256
27327
  callerGuidance: QUICK_CATEGORY_CALLER_GUIDANCE,
27257
27328
  promptAppend: QUICK_CATEGORY_PROMPT_APPEND
@@ -97620,7 +97691,7 @@ function getCachedVersion(options = {}) {
97620
97691
  // package.json
97621
97692
  var package_default = {
97622
97693
  name: "oh-my-opencode",
97623
- version: "5.0.0-beta.84",
97694
+ version: "5.0.0-beta.85",
97624
97695
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
97625
97696
  main: "./dist/index.js",
97626
97697
  types: "dist/index.d.ts",
@@ -97803,7 +97874,7 @@ var package_default = {
97803
97874
  zod: "^4.6.5"
97804
97875
  },
97805
97876
  devDependencies: {
97806
- "@code-yeongyu/senpi": "2026.9.22-4",
97877
+ "@code-yeongyu/senpi": "2026.9.23",
97807
97878
  "@oh-my-opencode/agents-md-core": "workspace:*",
97808
97879
  "@oh-my-opencode/ast-grep-mcp": "workspace:*",
97809
97880
  "@oh-my-opencode/boulder-state": "workspace:*",
@@ -97843,18 +97914,18 @@ var package_default = {
97843
97914
  typescript: "^7.0.2"
97844
97915
  },
97845
97916
  optionalDependencies: {
97846
- "oh-my-opencode-darwin-arm64": "5.0.0-beta.84",
97847
- "oh-my-opencode-darwin-x64": "5.0.0-beta.84",
97848
- "oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.84",
97849
- "oh-my-opencode-linux-arm64": "5.0.0-beta.84",
97850
- "oh-my-opencode-linux-arm64-musl": "5.0.0-beta.84",
97851
- "oh-my-opencode-linux-x64": "5.0.0-beta.84",
97852
- "oh-my-opencode-linux-x64-baseline": "5.0.0-beta.84",
97853
- "oh-my-opencode-linux-x64-musl": "5.0.0-beta.84",
97854
- "oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.84",
97855
- "oh-my-opencode-windows-arm64": "5.0.0-beta.84",
97856
- "oh-my-opencode-windows-x64": "5.0.0-beta.84",
97857
- "oh-my-opencode-windows-x64-baseline": "5.0.0-beta.84"
97917
+ "oh-my-opencode-darwin-arm64": "5.0.0-beta.85",
97918
+ "oh-my-opencode-darwin-x64": "5.0.0-beta.85",
97919
+ "oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.85",
97920
+ "oh-my-opencode-linux-arm64": "5.0.0-beta.85",
97921
+ "oh-my-opencode-linux-arm64-musl": "5.0.0-beta.85",
97922
+ "oh-my-opencode-linux-x64": "5.0.0-beta.85",
97923
+ "oh-my-opencode-linux-x64-baseline": "5.0.0-beta.85",
97924
+ "oh-my-opencode-linux-x64-musl": "5.0.0-beta.85",
97925
+ "oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.85",
97926
+ "oh-my-opencode-windows-arm64": "5.0.0-beta.85",
97927
+ "oh-my-opencode-windows-x64": "5.0.0-beta.85",
97928
+ "oh-my-opencode-windows-x64-baseline": "5.0.0-beta.85"
97858
97929
  },
97859
97930
  overrides: {
97860
97931
  "@earendil-works/pi-agent-core": "0.84.2",
@@ -157188,6 +157259,7 @@ var GPT_PROMPT_IDENTITIES = {
157188
157259
  "gpt-5.5": "GPT-5.5",
157189
157260
  "gpt-5.6-sol": "GPT-5.6 Sol",
157190
157261
  "gpt-6-astra": "GPT-6 Astra",
157262
+ "gpt-6-sol": "GPT-6 Sol",
157191
157263
  "gpt-family": "a GPT-family model"
157192
157264
  };
157193
157265
  function getGptPromptIdentityKey(model) {
@@ -157195,6 +157267,9 @@ function getGptPromptIdentityKey(model) {
157195
157267
  if (modelID?.includes("gpt-6-astra")) {
157196
157268
  return "gpt-6-astra";
157197
157269
  }
157270
+ if (modelID?.includes("gpt-6-sol")) {
157271
+ return "gpt-6-sol";
157272
+ }
157198
157273
  if (modelID?.includes("gpt-5.6-sol") || modelID?.includes("gpt-5-6-sol")) {
157199
157274
  return "gpt-5.6-sol";
157200
157275
  }
package/dist/tui.js CHANGED
@@ -3317,6 +3317,11 @@ var init_agent_model_requirements = __esm(() => {
3317
3317
  },
3318
3318
  hephaestus: {
3319
3319
  fallbackChain: [
3320
+ {
3321
+ providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
3322
+ model: "gpt-6-sol",
3323
+ variant: "medium"
3324
+ },
3320
3325
  {
3321
3326
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
3322
3327
  model: "gpt-5.6-sol",
@@ -3346,7 +3351,7 @@ var init_agent_model_requirements = __esm(() => {
3346
3351
  librarian: {
3347
3352
  fallbackChain: [
3348
3353
  { providers: ["kimi-for-coding"], model: "kimi-for-coding-highspeed", variant: "off" },
3349
- { providers: ["openai", "chatgpt-subscription"], model: "gpt-5.6-luna-fast", variant: "low" },
3354
+ { providers: ["openai", "chatgpt-subscription"], model: "gpt-6-luna-fast", variant: "low" },
3350
3355
  { providers: ["deepseek"], model: "deepseek-v4-flash", variant: "max" },
3351
3356
  { providers: ["opencode-go", "bailian-coding-plan"], model: "qwen3.7-plus" },
3352
3357
  { providers: ["opencode-go"], model: "minimax-m3" },
@@ -3359,7 +3364,7 @@ var init_agent_model_requirements = __esm(() => {
3359
3364
  explore: {
3360
3365
  fallbackChain: [
3361
3366
  { providers: ["kimi-for-coding"], model: "kimi-for-coding-highspeed", variant: "off" },
3362
- { providers: ["openai", "chatgpt-subscription"], model: "gpt-5.6-luna-fast", variant: "low" },
3367
+ { providers: ["openai", "chatgpt-subscription"], model: "gpt-6-luna-fast", variant: "low" },
3363
3368
  { providers: ["deepseek"], model: "deepseek-v4-flash", variant: "max" },
3364
3369
  { providers: ["opencode-go", "bailian-coding-plan"], model: "qwen3.7-plus" },
3365
3370
  { providers: ["opencode-go"], model: "minimax-m3" },
@@ -3384,6 +3389,11 @@ var init_agent_model_requirements = __esm(() => {
3384
3389
  model: "claude-fable-5-1",
3385
3390
  variant: "xhigh"
3386
3391
  },
3392
+ {
3393
+ providers: ["anthropic", "github-copilot", "opencode"],
3394
+ model: "claude-opus-5-5",
3395
+ variant: "max"
3396
+ },
3387
3397
  {
3388
3398
  providers: ["opencode-go", "kimi-for-coding", "moonshotai", "opencode"],
3389
3399
  model: "kimi-k3",
@@ -3495,6 +3505,11 @@ var init_category_model_requirements = __esm(() => {
3495
3505
  },
3496
3506
  "deep-low": {
3497
3507
  fallbackChain: [
3508
+ {
3509
+ providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
3510
+ model: "gpt-6-sol",
3511
+ variant: "medium"
3512
+ },
3498
3513
  {
3499
3514
  providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
3500
3515
  model: "gpt-5.6-sol",
@@ -3519,20 +3534,20 @@ var init_category_model_requirements = __esm(() => {
3519
3534
  variant: "max"
3520
3535
  },
3521
3536
  {
3522
- providers: ["kimi-for-coding", "moonshotai", "opencode-go", "opencode"],
3523
- model: "kimi-k3",
3537
+ providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
3538
+ model: "claude-opus-5-5",
3524
3539
  variant: "max"
3525
3540
  },
3526
3541
  {
3527
- providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
3528
- model: "claude-opus-5-5",
3542
+ providers: ["kimi-for-coding", "moonshotai", "opencode-go", "opencode"],
3543
+ model: "kimi-k3",
3529
3544
  variant: "max"
3530
3545
  }
3531
3546
  ]
3532
3547
  },
3533
3548
  quick: {
3534
3549
  fallbackChain: [
3535
- { providers: ["chatgpt-subscription"], model: "gpt-5.6-luna-fast", variant: "low" },
3550
+ { providers: ["chatgpt-subscription"], model: "gpt-6-luna-fast", variant: "low" },
3536
3551
  { providers: ["deepseek"], model: "deepseek-v4-flash", variant: "off" },
3537
3552
  {
3538
3553
  providers: ["qwen-token-plan", "alibaba-token-plan", "bailian-coding-plan"],
@@ -3691,7 +3706,7 @@ var init_model_capability_aliases = __esm(() => {
3691
3706
  description: "Normalizes OpenCode's OpenAI GPT fast service-tier IDs to canonical snapshot IDs.",
3692
3707
  providerIDs: ["openai"],
3693
3708
  allowedSubproviderHosts: ["vercel"],
3694
- match: (normalizedModelID) => /^(?:gpt-5\.6-(?:sol|terra|luna)|gpt-6-astra)-fast$/.test(normalizedModelID),
3709
+ match: (normalizedModelID) => /^(?:gpt-5\.6-(?:sol|terra|luna)|gpt-6-(?:astra|sol|luna))-fast$/.test(normalizedModelID),
3695
3710
  canonicalize: (normalizedModelID) => normalizedModelID.slice(0, -"-fast".length)
3696
3711
  },
3697
3712
  {
@@ -3820,13 +3835,21 @@ var init_model_capability_heuristics = __esm(() => {
3820
3835
  supportsTemperature: false
3821
3836
  },
3822
3837
  {
3823
- family: "gpt-6",
3824
- includes: ["gpt-6"],
3838
+ family: "gpt-6-astra",
3839
+ pattern: /gpt-6-astra/,
3825
3840
  variants: ["low", "medium", "high", "xhigh", "max"],
3826
3841
  reasoningEfforts: ["low", "medium", "high", "xhigh", "max"],
3827
3842
  reasoningEffortAliases: { none: "low", minimal: "low" },
3828
3843
  supportsTemperature: false
3829
3844
  },
3845
+ {
3846
+ family: "gpt-6",
3847
+ includes: ["gpt-6"],
3848
+ variants: ["low", "medium", "high", "xhigh", "max"],
3849
+ reasoningEfforts: ["none", "low", "medium", "high", "xhigh", "max"],
3850
+ reasoningEffortAliases: { minimal: "low" },
3851
+ supportsTemperature: false
3852
+ },
3830
3853
  {
3831
3854
  family: "gpt-5",
3832
3855
  includes: ["gpt-5"],
@@ -4032,6 +4055,38 @@ var init_supplemental_entries = __esm(() => {
4032
4055
  output: 128000
4033
4056
  }
4034
4057
  },
4058
+ "gpt-6-sol": {
4059
+ id: "gpt-6-sol",
4060
+ family: "gpt",
4061
+ reasoning: true,
4062
+ temperature: false,
4063
+ toolCall: true,
4064
+ modalities: {
4065
+ input: ["text", "image"],
4066
+ output: ["text"]
4067
+ },
4068
+ limit: {
4069
+ context: 1050000,
4070
+ input: 922000,
4071
+ output: 128000
4072
+ }
4073
+ },
4074
+ "gpt-6-luna": {
4075
+ id: "gpt-6-luna",
4076
+ family: "gpt-nano",
4077
+ reasoning: true,
4078
+ temperature: false,
4079
+ toolCall: true,
4080
+ modalities: {
4081
+ input: ["text", "image"],
4082
+ output: ["text"]
4083
+ },
4084
+ limit: {
4085
+ context: 1050000,
4086
+ input: 922000,
4087
+ output: 128000
4088
+ }
4089
+ },
4035
4090
  "gpt-5.6-sol": {
4036
4091
  id: "gpt-5.6-sol",
4037
4092
  family: "gpt",
@@ -4096,6 +4151,22 @@ var init_supplemental_entries = __esm(() => {
4096
4151
  output: 128000
4097
4152
  }
4098
4153
  },
4154
+ "gpt-6-luna-fast": {
4155
+ id: "gpt-6-luna-fast",
4156
+ family: "gpt-nano",
4157
+ reasoning: true,
4158
+ temperature: false,
4159
+ toolCall: true,
4160
+ modalities: {
4161
+ input: ["text", "image"],
4162
+ output: ["text"]
4163
+ },
4164
+ limit: {
4165
+ context: 1050000,
4166
+ input: 922000,
4167
+ output: 128000
4168
+ }
4169
+ },
4099
4170
  "gpt-5.6-luna-fast": {
4100
4171
  id: "gpt-5.6-luna-fast",
4101
4172
  family: "gpt-mini",
@@ -5133,9 +5204,10 @@ You are working on tasks that don't fit specific categories but require moderate
5133
5204
  </Category_Context>`, UNSPECIFIED_LOW_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Use only when no specialist category fits, effort is moderate, and scope stays within a few files/modules. Prefer any matching specialist category.</Selection_Gate>
5134
5205
  <Caller_Warning>Provide explicit must-do steps, forbidden scope, and concrete success criteria.</Caller_Warning>`, UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND = `<Category_Context>
5135
5206
  You are working on tasks that don't fit specific categories but require substantial effort.
5136
- </Category_Context>`, UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Use only when no specialist category fits and substantial effort spans systems/modules with broad impact. Use unspecified-low for contained moderate work.</Selection_Gate>`, DEEP_LOW_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Route here when one subsystem plus its callers holds the mechanism and the evidence, once read, leaves one right answer. Wide but mechanical work belongs here or in a quick batch. When unsure, choose deep-low: a misrouted child returns \`ESCALATE: deep-high\` after one cheap attempt; re-spawn the same brief as deep-high with its findings.</Selection_Gate>`, DEEP_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Route here only when you can name the decision evidence cannot settle: a trade-off with no single right answer, a contract change crossing a package or process boundary, a mechanism with no in-repo pattern to copy, or correctness argued from invariants rather than observed in a test. Wide scope with easy decisions is deep-low or unspecified-high; reasoning as the deliverable is ultrabrain.</Selection_Gate>`, DEEP_LOW_GATE_MODEL = "gpt-5.6-sol", DEEP_HIGH_GATE_MODEL = "gpt-6-astra", OPENAI_CATEGORIES;
5207
+ </Category_Context>`, UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Use only when no specialist category fits and substantial effort spans systems/modules with broad impact. Use unspecified-low for contained moderate work.</Selection_Gate>`, DEEP_LOW_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Route here when one subsystem plus its callers holds the mechanism and the evidence, once read, leaves one right answer. Wide but mechanical work belongs here or in a quick batch. When unsure, choose deep-low: a misrouted child returns \`ESCALATE: deep-high\` after one cheap attempt; re-spawn the same brief as deep-high with its findings.</Selection_Gate>`, DEEP_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Route here only when you can name the decision evidence cannot settle: a trade-off with no single right answer, a contract change crossing a package or process boundary, a mechanism with no in-repo pattern to copy, or correctness argued from invariants rather than observed in a test. Wide scope with easy decisions is deep-low or unspecified-high; reasoning as the deliverable is ultrabrain.</Selection_Gate>`, DEEP_LOW_GATE_MODELS, DEEP_HIGH_GATE_MODEL = "gpt-6-astra", OPENAI_CATEGORIES;
5137
5208
  var init_openai_categories = __esm(() => {
5138
5209
  init_types();
5210
+ DEEP_LOW_GATE_MODELS = ["gpt-6-sol", "gpt-5.6-sol"];
5139
5211
  OPENAI_CATEGORIES = [
5140
5212
  {
5141
5213
  name: "ultrabrain",
@@ -5146,12 +5218,12 @@ var init_openai_categories = __esm(() => {
5146
5218
  },
5147
5219
  {
5148
5220
  name: "deep-low",
5149
- config: { model: "openai/gpt-5.6-sol", variant: "medium" },
5221
+ config: { model: "openai/gpt-6-sol", variant: "medium" },
5150
5222
  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.",
5151
5223
  callerGuidance: DEEP_LOW_CATEGORY_CALLER_GUIDANCE,
5152
5224
  promptAppend: DEEP_LOW_CATEGORY_PROMPT_APPEND,
5153
5225
  resolvePromptAppend: resolveDeepLowCategoryPromptAppend,
5154
- requiresModel: DEEP_LOW_GATE_MODEL
5226
+ requiresModel: DEEP_LOW_GATE_MODELS
5155
5227
  },
5156
5228
  {
5157
5229
  name: "deep-high",
@@ -5164,7 +5236,7 @@ var init_openai_categories = __esm(() => {
5164
5236
  },
5165
5237
  {
5166
5238
  name: "quick",
5167
- config: { model: "openai/gpt-5.6-luna-fast", variant: "low" },
5239
+ config: { model: "openai/gpt-6-luna-fast", variant: "low" },
5168
5240
  description: "Trivial tasks - single file changes, typo fixes, simple modifications",
5169
5241
  callerGuidance: QUICK_CATEGORY_CALLER_GUIDANCE,
5170
5242
  promptAppend: QUICK_CATEGORY_PROMPT_APPEND
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-opencode",
3
- "version": "5.0.0-beta.84",
3
+ "version": "5.0.0-beta.85",
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",
@@ -183,7 +183,7 @@
183
183
  "zod": "^4.6.5"
184
184
  },
185
185
  "devDependencies": {
186
- "@code-yeongyu/senpi": "2026.9.22-4",
186
+ "@code-yeongyu/senpi": "2026.9.23",
187
187
  "@oh-my-opencode/agents-md-core": "workspace:*",
188
188
  "@oh-my-opencode/ast-grep-mcp": "workspace:*",
189
189
  "@oh-my-opencode/boulder-state": "workspace:*",
@@ -223,18 +223,18 @@
223
223
  "typescript": "^7.0.2"
224
224
  },
225
225
  "optionalDependencies": {
226
- "oh-my-opencode-darwin-arm64": "5.0.0-beta.84",
227
- "oh-my-opencode-darwin-x64": "5.0.0-beta.84",
228
- "oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.84",
229
- "oh-my-opencode-linux-arm64": "5.0.0-beta.84",
230
- "oh-my-opencode-linux-arm64-musl": "5.0.0-beta.84",
231
- "oh-my-opencode-linux-x64": "5.0.0-beta.84",
232
- "oh-my-opencode-linux-x64-baseline": "5.0.0-beta.84",
233
- "oh-my-opencode-linux-x64-musl": "5.0.0-beta.84",
234
- "oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.84",
235
- "oh-my-opencode-windows-arm64": "5.0.0-beta.84",
236
- "oh-my-opencode-windows-x64": "5.0.0-beta.84",
237
- "oh-my-opencode-windows-x64-baseline": "5.0.0-beta.84"
226
+ "oh-my-opencode-darwin-arm64": "5.0.0-beta.85",
227
+ "oh-my-opencode-darwin-x64": "5.0.0-beta.85",
228
+ "oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.85",
229
+ "oh-my-opencode-linux-arm64": "5.0.0-beta.85",
230
+ "oh-my-opencode-linux-arm64-musl": "5.0.0-beta.85",
231
+ "oh-my-opencode-linux-x64": "5.0.0-beta.85",
232
+ "oh-my-opencode-linux-x64-baseline": "5.0.0-beta.85",
233
+ "oh-my-opencode-linux-x64-musl": "5.0.0-beta.85",
234
+ "oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.85",
235
+ "oh-my-opencode-windows-arm64": "5.0.0-beta.85",
236
+ "oh-my-opencode-windows-x64": "5.0.0-beta.85",
237
+ "oh-my-opencode-windows-x64-baseline": "5.0.0-beta.85"
238
238
  },
239
239
  "overrides": {
240
240
  "@earendil-works/pi-agent-core": "0.84.2",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omo",
3
- "version": "5.0.0-beta.84",
3
+ "version": "5.0.0-beta.85",
4
4
  "description": "One Codex plugin namespace for Yeongyu's local Codex components.",
5
5
  "author": {
6
6
  "name": "Yeongyu Kim",
@@ -8,7 +8,7 @@
8
8
  "command": "node \"${PLUGIN_ROOT}/components/bootstrap/dist/cli.js\" hook session-start",
9
9
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\bootstrap.ps1\"",
10
10
  "timeout": 30,
11
- "statusMessage": "(OmO 5.0.0-beta.84) Checking Bootstrap Provisioning"
11
+ "statusMessage": "(OmO 5.0.0-beta.85) Checking Bootstrap Provisioning"
12
12
  }
13
13
  ]
14
14
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sisyphuslabs/codex-bootstrap",
3
- "version": "5.0.0-beta.84",
3
+ "version": "5.0.0-beta.85",
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.0.0-beta.84) Checking Comments"
11
+ "statusMessage": "(OmO 5.0.0-beta.85) Checking Comments"
12
12
  }
13
13
  ]
14
14
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-comment-checker",
3
- "version": "5.0.0-beta.84",
3
+ "version": "5.0.0-beta.85",
4
4
  "description": "Codex plugin that runs comment-checker after edit-like PostToolUse hooks.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook pre-tool-use",
10
10
  "timeout": 5,
11
- "statusMessage": "(OmO 5.0.0-beta.84) Recommending Git Bash MCP"
11
+ "statusMessage": "(OmO 5.0.0-beta.85) Recommending Git Bash MCP"
12
12
  }
13
13
  ]
14
14
  }
@@ -20,7 +20,7 @@
20
20
  "type": "command",
21
21
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
22
22
  "timeout": 5,
23
- "statusMessage": "(OmO 5.0.0-beta.84) Resetting Git Bash MCP Reminder"
23
+ "statusMessage": "(OmO 5.0.0-beta.85) Resetting Git Bash MCP Reminder"
24
24
  }
25
25
  ]
26
26
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sisyphuslabs/codex-git-bash-hook",
3
- "version": "5.0.0-beta.84",
3
+ "version": "5.0.0-beta.85",
4
4
  "description": "Codex hook component that reminds Windows sessions to prefer the OMO git_bash MCP.",
5
5
  "type": "module",
6
6
  "private": true,
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/components/lazycodex-executor-verify/dist/cli.js\" hook subagent-stop",
10
10
  "timeout": 10,
11
- "statusMessage": "(OmO 5.0.0-beta.84) Verifying LazyCodex Executor Evidence"
11
+ "statusMessage": "(OmO 5.0.0-beta.85) Verifying LazyCodex Executor Evidence"
12
12
  }
13
13
  ]
14
14
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-lazycodex-executor-verify",
3
- "version": "5.0.0-beta.84",
3
+ "version": "5.0.0-beta.85",
4
4
  "description": "Codex SubagentStop evidence verifier for LazyCodex executor completions.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "version": "5.0.0-beta.84",
4
- "inputDigest": "sha256:2352c5de469837fdff11b099d62ed46ad84c9bceacdee57fff7434cd5fe8731b",
3
+ "version": "5.0.0-beta.85",
4
+ "inputDigest": "sha256:3352272e820508dc21e74177e5d02ebfc11124033064d69fad605c073f6c2283",
5
5
  "outputs": [
6
6
  {
7
7
  "path": "cli.d.ts",
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
10
10
  "timeout": 60,
11
- "statusMessage": "(OmO 5.0.0-beta.84) Checking LSP Diagnostics"
11
+ "statusMessage": "(OmO 5.0.0-beta.85) Checking LSP Diagnostics"
12
12
  }
13
13
  ]
14
14
  }
@@ -21,7 +21,7 @@
21
21
  "type": "command",
22
22
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
23
23
  "timeout": 5,
24
- "statusMessage": "(OmO 5.0.0-beta.84) Resetting LSP Diagnostics Cache"
24
+ "statusMessage": "(OmO 5.0.0-beta.85) Resetting LSP Diagnostics Cache"
25
25
  }
26
26
  ]
27
27
  }