lazycodex-ai 5.0.0-beta.42 → 5.0.0-beta.43
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.
- package/README.ja.md +2 -2
- package/README.ko.md +4 -4
- package/README.md +4 -4
- package/README.ru.md +2 -2
- package/README.zh-cn.md +2 -2
- package/dist/cli/index.js +168 -78
- package/dist/cli-node/index.js +168 -78
- package/package.json +1 -1
- package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
- package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
- package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
- package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +2 -2
- package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
- package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
- package/packages/omo-codex/plugin/components/rules/package.json +1 -1
- package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
- package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +4 -4
- package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
- package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +1 -1
- package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
- package/packages/omo-codex/plugin/hooks/subagent-stop-checking-ulw-execute-continuation.json +1 -1
- package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
- package/packages/omo-codex/plugin/package-lock.json +12 -12
- package/packages/omo-codex/plugin/package.json +1 -1
- package/packages/omo-codex/scripts/install-dist/install-local.mjs +2 -2
package/README.ja.md
CHANGED
|
@@ -195,7 +195,7 @@ Read this and tell me why it's not just another boilerplate: https://raw.githubu
|
|
|
195
195
|
|
|
196
196
|
**Sisyphus** (`claude-opus-5` / **`kimi-k3`** / **`gpt-5.6-sol`** / **`glm-5.2`**) はあなたのメインオーケストレーターです。計画を立て、専門家に委任し、攻撃的な並列実行でタスクを完了まで推進します。途中で投げ出すことはありません。Claude Opus 5 と Kimi K3 が推奨デフォルトです。
|
|
197
197
|
|
|
198
|
-
**Hephaestus** (OpenAI、GitHub Copilot
|
|
198
|
+
**Hephaestus** (OpenAI、OpenAI Codex、GitHub Copilot、または OpenCode 経由で medium effort の `gpt-5.6-sol` のみを使う) はあなたの自律的なディープワーカーです。レシピではなく、目標を与えてください。手取り足取り教えなくても、コードベースを探索し、パターンを調査し、エンドツーエンドで実行します。最強の GPT を使いたいなら、OpenAI の最上位モデル `gpt-6-astra` を指定してください。*正当なる職人 (The Legitimate Craftsman).*
|
|
199
199
|
|
|
200
200
|
**Prometheus** (`claude-fable-5` / **`kimi-k3`**) はあなたの戦略プランナーです。インタビューモードで質問を投げ、スコープを特定し、コードに一行触れる前に詳細な計画を構築します。
|
|
201
201
|
|
|
@@ -240,7 +240,7 @@ Sisyphus がサブエージェントにタスクを委任する際、モデル
|
|
|
240
240
|
| `quick` | 単一ファイルの変更、タイポの修正 |
|
|
241
241
|
| `ultrabrain` | ハードロジック、アーキテクチャの決定 |
|
|
242
242
|
|
|
243
|
-
エージェントは作業の種類を伝えるだけで、ハーネスが適切なモデルを選びます。`ultrabrain` は GPT-
|
|
243
|
+
エージェントは作業の種類を伝えるだけで、ハーネスが適切なモデルを選びます。`ultrabrain` は GPT-6 Astra max に、`deep` は GPT-6 Astra high にルーティングされ (OpenAI / OpenAI Codex、次に GitHub Copilot、次に OpenCode)、使えなければ GPT-5.6 Sol にフォールバックします。あなたが触るものは何もありません。
|
|
244
244
|
|
|
245
245
|
### Claude Code 互換性
|
|
246
246
|
|
package/README.ko.md
CHANGED
|
@@ -196,7 +196,7 @@ Read this and tell me why it's not just another boilerplate: https://raw.githubu
|
|
|
196
196
|
|
|
197
197
|
**Sisyphus** (`claude-opus-5` / **`kimi-k3`** / **`gpt-5.6-sol`** / **`glm-5.2`**)는 메인 오케스트레이터입니다. 계획을 세우고, 전문가에게 위임하고, 공격적인 병렬 실행으로 작업을 끝까지 밀어붙입니다. 중간에 멈추지 않습니다. Claude Opus 5와 Kimi K3가 권장 기본값입니다.
|
|
198
198
|
|
|
199
|
-
**Hephaestus** (OpenAI, GitHub Copilot
|
|
199
|
+
**Hephaestus** (OpenAI, OpenAI Codex, GitHub Copilot 또는 OpenCode에서 medium effort의 `gpt-5.6-sol`만 사용하는)는 자율적으로 깊게 파는 작업자입니다. 레시피가 아니라 목표를 주세요. 코드베이스를 탐색하고, 패턴을 조사하고, 손을 잡아주지 않아도 엔드투엔드로 실행합니다. 가장 강력한 GPT를 쓰고 싶다면 OpenAI의 최상위 모델인 `gpt-6-astra`를 지정하세요. *The Legitimate Craftsman.*
|
|
200
200
|
|
|
201
201
|
**Prometheus** (`claude-fable-5` / **`kimi-k3`**)는 전략 플래너입니다. 인터뷰 모드: 질문으로 스코프를 파악하고, 코드에 손대기 전에 상세한 계획을 만듭니다.
|
|
202
202
|
|
|
@@ -236,12 +236,12 @@ Sisyphus가 서브에이전트에 위임할 때는 모델을 직접 고르지
|
|
|
236
236
|
|
|
237
237
|
| 카테고리 | 용도 |
|
|
238
238
|
| :------------------- | :--------------------------------- |
|
|
239
|
-
| `visual-engineering` |
|
|
240
|
-
| `deep` |
|
|
239
|
+
| `visual-engineering` | 비주얼 디자인, UI/UX, 프론트엔드 |
|
|
240
|
+
| `deep` | 시각·기술 전반의 심층 작업 |
|
|
241
241
|
| `quick` | 단일 파일 변경, 오타 수정 |
|
|
242
242
|
| `ultrabrain` | 어려운 로직, 아키텍처 결정 |
|
|
243
243
|
|
|
244
|
-
에이전트는 필요한 작업 종류만 말하고, 하네스가 적합한 모델을 고릅니다. `ultrabrain`은 GPT-
|
|
244
|
+
에이전트는 필요한 작업 종류만 말하고, 하네스가 적합한 모델을 고릅니다. `ultrabrain`은 GPT-6 Astra max로, `deep`은 GPT-6 Astra high로 라우팅되고(OpenAI / OpenAI Codex, 그다음 GitHub Copilot, 그다음 OpenCode), 없으면 GPT-5.6 Sol로 넘어갑니다. 당신이 건드릴 건 없습니다.
|
|
245
245
|
|
|
246
246
|
### Claude Code 호환성
|
|
247
247
|
|
package/README.md
CHANGED
|
@@ -255,7 +255,7 @@ Even with only the following subscriptions, `ultrawork` works well (this project
|
|
|
255
255
|
|
|
256
256
|
**Sisyphus** (`claude-opus-5` / **`kimi-k3`** / **`gpt-5.6-sol`** / **`glm-5.2`** ) is your main orchestrator. He plans, delegates to specialists, and drives tasks to completion with aggressive parallel execution. He does not stop halfway. Claude Opus 5 and Kimi K3 are the recommended defaults.
|
|
257
257
|
|
|
258
|
-
**Hephaestus** (`gpt-5.6-sol` through OpenAI, GitHub Copilot,
|
|
258
|
+
**Hephaestus** (`gpt-5.6-sol` through OpenAI, OpenAI Codex, GitHub Copilot, or OpenCode at medium effort) is your autonomous deep worker. Give him a goal, not a recipe. He explores the codebase, researches patterns, and executes end-to-end without hand-holding. Point him at `gpt-6-astra`, OpenAI's most capable model, when you want the strongest GPT available. *The Legitimate Craftsman.*
|
|
259
259
|
|
|
260
260
|
**Prometheus** (`claude-fable-5` / **`kimi-k3`**) is your strategic planner. Interview mode: he asks questions, identifies scope, and builds a detailed plan before a single line of code is touched.
|
|
261
261
|
|
|
@@ -295,12 +295,12 @@ When Sisyphus delegates to a subagent, it doesn't pick a model. It picks a **cat
|
|
|
295
295
|
|
|
296
296
|
| Category | What it's for |
|
|
297
297
|
| :------------------- | :--------------------------------- |
|
|
298
|
-
| `visual-engineering` |
|
|
299
|
-
| `deep` |
|
|
298
|
+
| `visual-engineering` | Visual design, UI/UX, frontend |
|
|
299
|
+
| `deep` | Deep work across visual and technical domains |
|
|
300
300
|
| `quick` | Single-file changes, typos |
|
|
301
301
|
| `ultrabrain` | Hard logic, architecture decisions |
|
|
302
302
|
|
|
303
|
-
The agent says what kind of work it needs; the harness picks the right model. `ultrabrain` routes to GPT-
|
|
303
|
+
The agent says what kind of work it needs; the harness picks the right model. `ultrabrain` routes to GPT-6 Astra max and `deep` to GPT-6 Astra high (OpenAI / OpenAI Codex, then GitHub Copilot, then OpenCode); both fall back to GPT-5.6 Sol. You touch nothing.
|
|
304
304
|
|
|
305
305
|
### Claude Code Compatibility
|
|
306
306
|
|
package/README.ru.md
CHANGED
|
@@ -194,7 +194,7 @@ Read this and tell me why it's not just another boilerplate: https://raw.githubu
|
|
|
194
194
|
|
|
195
195
|
**Sisyphus** (`claude-opus-5` / **`kimi-k3`** / **`gpt-5.6-sol`** / **`glm-5.2`**) — главный оркестратор. Он планирует, делегирует задачи специалистам и доводит их до завершения с агрессивным параллельным выполнением. Он не останавливается на полпути. Claude Opus 5 и Kimi K3 — рекомендуемые значения по умолчанию.
|
|
196
196
|
|
|
197
|
-
**Hephaestus** (использует только `gpt-5.6-sol` с medium effort через OpenAI, GitHub Copilot
|
|
197
|
+
**Hephaestus** (использует только `gpt-5.6-sol` с medium effort через OpenAI, OpenAI Codex, GitHub Copilot или OpenCode) — автономный глубокий исполнитель. Дайте ему цель, а не рецепт. Он исследует кодовую базу, изучает паттерны и выполняет задачи сквозным образом без лишних подсказок. Если нужен самый сильный GPT, укажите ему `gpt-6-astra`, самую мощную модель OpenAI. *Законный Мастер.*
|
|
198
198
|
|
|
199
199
|
**Prometheus** (`claude-fable-5` / **`kimi-k3`**) — стратегический планировщик. Режим интервью: он задаёт вопросы, определяет объём работ и формирует детальный план до того, как написана хотя бы одна строка кода.
|
|
200
200
|
|
|
@@ -239,7 +239,7 @@ Read this and tell me why it's not just another boilerplate: https://raw.githubu
|
|
|
239
239
|
| `quick` | Изменения в одном файле, опечатки |
|
|
240
240
|
| `ultrabrain` | Сложная логика, архитектурные решения |
|
|
241
241
|
|
|
242
|
-
Агент сообщает тип задачи, а обвязка подбирает нужную модель. `ultrabrain` направляется в GPT-
|
|
242
|
+
Агент сообщает тип задачи, а обвязка подбирает нужную модель. `ultrabrain` направляется в GPT-6 Astra max, а `deep` в GPT-6 Astra high (OpenAI / OpenAI Codex, затем GitHub Copilot, затем OpenCode), а при недоступности откатываются к GPT-5.6 Sol. Вы ни к чему не прикасаетесь.
|
|
243
243
|
|
|
244
244
|
### Совместимость с Claude Code
|
|
245
245
|
|
package/README.zh-cn.md
CHANGED
|
@@ -201,7 +201,7 @@ Read this and tell me why it's not just another boilerplate: https://raw.githubu
|
|
|
201
201
|
|
|
202
202
|
**Sisyphus** (`claude-opus-5` / **`kimi-k3`** / **`gpt-5.6-sol`** / **`glm-5.2`**) 是你的主指挥官。他负责制定计划、分配任务给专家团队,并以极其激进的并行策略推动任务直至完成。他从不半途而废。Claude Opus 5 和 Kimi K3 是推荐默认值。
|
|
203
203
|
|
|
204
|
-
**Hephaestus** (仅通过 OpenAI、GitHub Copilot
|
|
204
|
+
**Hephaestus** (仅通过 OpenAI、OpenAI Codex、GitHub Copilot 或 OpenCode 使用 medium effort 的 `gpt-5.6-sol`) 是你的自主深度工作者。你只需要给他目标,不要给他具体做法。他会自动探索代码库模式,从头到尾独立执行任务,绝不会中途要你当保姆。想用最强的 GPT,就把他指向 OpenAI 最顶级的模型 `gpt-6-astra`。*名副其实的正牌工匠。*
|
|
205
205
|
|
|
206
206
|
**Prometheus** (`claude-fable-5` / **`kimi-k3`**) 是你的战略规划师。他通过访谈模式,在动一行代码之前,先通过提问确定范围并构建详尽的执行计划。
|
|
207
207
|
|
|
@@ -246,7 +246,7 @@ Read this and tell me why it's not just another boilerplate: https://raw.githubu
|
|
|
246
246
|
| `quick` | 单文件修改、修错字 |
|
|
247
247
|
| `ultrabrain` | 复杂硬核逻辑、架构决策 |
|
|
248
248
|
|
|
249
|
-
智能体只需要说明要做什么类型的工作,框架就会挑选出最合适的模型去干。`ultrabrain` 路由到 GPT-
|
|
249
|
+
智能体只需要说明要做什么类型的工作,框架就会挑选出最合适的模型去干。`ultrabrain` 路由到 GPT-6 Astra max,`deep` 路由到 GPT-6 Astra high(OpenAI / OpenAI Codex,其次 GitHub Copilot,再其次 OpenCode),不可用时回退到 GPT-5.6 Sol。你完全不需要操心。
|
|
250
250
|
|
|
251
251
|
### 完全兼容 Claude Code
|
|
252
252
|
|
package/dist/cli/index.js
CHANGED
|
@@ -54,7 +54,7 @@ var package_default;
|
|
|
54
54
|
var init_package = __esm(() => {
|
|
55
55
|
package_default = {
|
|
56
56
|
name: "oh-my-opencode",
|
|
57
|
-
version: "5.0.0-beta.
|
|
57
|
+
version: "5.0.0-beta.43",
|
|
58
58
|
description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
|
|
59
59
|
main: "./dist/index.js",
|
|
60
60
|
types: "dist/index.d.ts",
|
|
@@ -186,14 +186,14 @@ var init_package = __esm(() => {
|
|
|
186
186
|
prepare: "bun run build",
|
|
187
187
|
postinstall: "node postinstall.mjs",
|
|
188
188
|
prepublishOnly: "bun run clean && bun run build:lsp-tools-mcp && bun run build:lsp-daemon && bun run build",
|
|
189
|
-
"test:model-capabilities": "bun test packages/model-core/src/model-capability-aliases.test.ts packages/model-core/src/model-capability-guardrails.test.ts packages/model-core/src/model-capabilities.test.ts packages/omo-opencode/src/cli/doctor/checks/model-resolution.test.ts --bail",
|
|
189
|
+
"test:model-capabilities": "bun test --timeout 20000 packages/model-core/src/model-capability-aliases.test.ts packages/model-core/src/model-capability-guardrails.test.ts packages/model-core/src/model-capabilities.test.ts packages/omo-opencode/src/cli/doctor/checks/model-resolution.test.ts --bail",
|
|
190
190
|
typecheck: "tsgo --noEmit && bun run typecheck:script && bun run typecheck:packages",
|
|
191
191
|
"typecheck:packages": "tsgo --noEmit -p packages/rules-engine/tsconfig.json && tsgo --noEmit -p packages/delegate-core/tsconfig.json && tsgo --noEmit -p packages/mcp-stdio-core/tsconfig.json && tsgo --noEmit -p packages/mcp-client-core/tsconfig.json && tsgo --noEmit -p packages/git-bash-mcp/tsconfig.json && tsgo --noEmit -p packages/ast-grep-mcp/tsconfig.json && tsgo --noEmit -p packages/lsp-core/tsconfig.json && tsgo --noEmit -p packages/utils/tsconfig.json && tsgo --noEmit -p packages/model-core/tsconfig.json && tsgo --noEmit -p packages/omo-config-core/tsconfig.json && tsgo --noEmit -p packages/prompts-core/tsconfig.json && tsgo --noEmit -p packages/comment-checker-core/tsconfig.json && tsgo --noEmit -p packages/hashline-core/tsconfig.json && tsgo --noEmit -p packages/tmux-core/tsconfig.json && tsgo --noEmit -p packages/team-core/tsconfig.json && tsgo --noEmit -p packages/openclaw-core/tsconfig.json && tsgo --noEmit -p packages/boulder-state/tsconfig.json && tsgo --noEmit -p packages/memory-core/tsconfig.json && tsgo --noEmit -p packages/telemetry-core/tsconfig.json && tsgo --noEmit -p packages/claude-code-compat-core/tsconfig.json && tsgo --noEmit -p packages/skills-loader-core/tsconfig.json && tsgo --noEmit -p packages/agents-md-core/tsconfig.json && tsgo --noEmit -p packages/omo-codex/plugin/shared/tsconfig.json && tsgo --noEmit -p packages/omo-codex/tsconfig.json && tsgo --noEmit -p packages/omo-senpi/tsconfig.json && tsgo --noEmit -p packages/senpi-task/tsconfig.json && tsgo --noEmit -p packages/pi-goal/tsconfig.json && tsgo --noEmit -p packages/pi-webfetch/tsconfig.json && tsgo --noEmit -p packages/omo-opencode/tsconfig.json && tsgo --noEmit -p packages/omo-native/tsconfig.json",
|
|
192
192
|
"typecheck:script": "tsgo --noEmit -p script/tsconfig.json",
|
|
193
|
-
test: "bun test",
|
|
194
|
-
"test:codex": "bun run build:codex-install && bun run build:git-bash-mcp && bun run build:lsp-tools-mcp && bun run build:lsp-daemon && npm --prefix packages/lsp-tools-mcp test && npm --prefix packages/omo-codex/plugin ci && npm --prefix packages/omo-codex/plugin/components/ulw-loop test && bun run --cwd packages/omo-codex/plugin build && node scripts/check-third-party-notices.mjs --ship && bun test packages/omo-opencode/src/cli/cli-installer.platform.test.ts packages/omo-codex/src/install/codex-cache.test.ts packages/omo-codex/src/install/codex-cleanup.test.ts packages/omo-codex/src/install/codex-config-agent-cleanup.test.ts packages/omo-codex/src/install/codex-config-autonomous-features.test.ts packages/omo-codex/src/install/codex-config-reasoning.test.ts packages/omo-codex/src/install/codex-config-toml.test.ts packages/omo-codex/src/install/codex-project-local-cleanup.test.ts packages/omo-codex/src/install/install-codex-project-local-cleanup.test.ts packages/omo-codex/src/install/install-codex.test.ts packages/omo-codex/src/install/install-codex-packaged.test.ts packages/omo-codex/src/install/link-cached-plugin-agents.test.ts packages/omo-codex/src/**/*.test.ts packages/utils/src/jsonc-parser.test.ts packages/utils/src/frontmatter.test.ts packages/hashline-core/src/hash-computation.test.ts packages/hashline-core/src/smoke-untested-modules.test.ts packages/rules-engine/src/index.test.ts packages/rules-engine/src/security-boundary.test.ts packages/agents-md-core/src/injector.test.ts packages/omo-codex/plugin/components/lsp/test/package-smoke.test.ts && node --test packages/omo-codex/plugin/test/*.test.mjs packages/omo-codex/scripts/install-cache-copy.test.mjs packages/omo-codex/scripts/install-cli-args.test.mjs packages/omo-codex/scripts/install-delegated-command.test.mjs packages/omo-codex/scripts/install-config-autonomous-features.test.mjs packages/omo-codex/scripts/install-config-autonomous.test.mjs packages/omo-codex/scripts/install-config-reasoning.test.mjs packages/omo-codex/scripts/install-config.test.mjs packages/omo-codex/scripts/install-hook-targets.test.mjs packages/omo-codex/scripts/install-project-local-cleanup.test.mjs packages/omo-codex/scripts/install-lazycodex-version-stamp.test.mjs packages/omo-codex/scripts/install-local-entrypoint.test.mjs packages/omo-codex/scripts/install-local-git-bash-preflight.test.mjs packages/omo-codex/scripts/install-local.test.mjs packages/omo-codex/scripts/install-marketplace-cache.test.mjs packages/omo-codex/scripts/install-mcp-context7-runtime.test.mjs packages/omo-codex/scripts/install-mcp-runtime.test.mjs packages/omo-codex/scripts/install-packaged-local.test.mjs packages/omo-codex/scripts/install-generated-bundle.test.mjs packages/omo-codex/scripts/install-agent-links.test.mjs packages/omo-codex/scripts/install-bin-links.test.mjs",
|
|
193
|
+
test: "bun test --timeout 20000",
|
|
194
|
+
"test:codex": "bun run build:codex-install && bun run build:git-bash-mcp && bun run build:lsp-tools-mcp && bun run build:lsp-daemon && npm --prefix packages/lsp-tools-mcp test && npm --prefix packages/omo-codex/plugin ci && npm --prefix packages/omo-codex/plugin/components/ulw-loop test && bun run --cwd packages/omo-codex/plugin build && node scripts/check-third-party-notices.mjs --ship && bun test --timeout 20000 packages/omo-opencode/src/cli/cli-installer.platform.test.ts packages/omo-codex/src/install/codex-cache.test.ts packages/omo-codex/src/install/codex-cleanup.test.ts packages/omo-codex/src/install/codex-config-agent-cleanup.test.ts packages/omo-codex/src/install/codex-config-autonomous-features.test.ts packages/omo-codex/src/install/codex-config-reasoning.test.ts packages/omo-codex/src/install/codex-config-toml.test.ts packages/omo-codex/src/install/codex-project-local-cleanup.test.ts packages/omo-codex/src/install/install-codex-project-local-cleanup.test.ts packages/omo-codex/src/install/install-codex.test.ts packages/omo-codex/src/install/install-codex-packaged.test.ts packages/omo-codex/src/install/link-cached-plugin-agents.test.ts packages/omo-codex/src/**/*.test.ts packages/utils/src/jsonc-parser.test.ts packages/utils/src/frontmatter.test.ts packages/hashline-core/src/hash-computation.test.ts packages/hashline-core/src/smoke-untested-modules.test.ts packages/rules-engine/src/index.test.ts packages/rules-engine/src/security-boundary.test.ts packages/agents-md-core/src/injector.test.ts packages/omo-codex/plugin/components/lsp/test/package-smoke.test.ts && node --test packages/omo-codex/plugin/test/*.test.mjs packages/omo-codex/scripts/install-cache-copy.test.mjs packages/omo-codex/scripts/install-cli-args.test.mjs packages/omo-codex/scripts/install-delegated-command.test.mjs packages/omo-codex/scripts/install-config-autonomous-features.test.mjs packages/omo-codex/scripts/install-config-autonomous.test.mjs packages/omo-codex/scripts/install-config-reasoning.test.mjs packages/omo-codex/scripts/install-config.test.mjs packages/omo-codex/scripts/install-hook-targets.test.mjs packages/omo-codex/scripts/install-project-local-cleanup.test.mjs packages/omo-codex/scripts/install-lazycodex-version-stamp.test.mjs packages/omo-codex/scripts/install-local-entrypoint.test.mjs packages/omo-codex/scripts/install-local-git-bash-preflight.test.mjs packages/omo-codex/scripts/install-local.test.mjs packages/omo-codex/scripts/install-marketplace-cache.test.mjs packages/omo-codex/scripts/install-mcp-context7-runtime.test.mjs packages/omo-codex/scripts/install-mcp-runtime.test.mjs packages/omo-codex/scripts/install-packaged-local.test.mjs packages/omo-codex/scripts/install-generated-bundle.test.mjs packages/omo-codex/scripts/install-agent-links.test.mjs packages/omo-codex/scripts/install-bin-links.test.mjs",
|
|
195
195
|
"test:fast": "bun run script/test-fast.ts",
|
|
196
|
-
"test:senpi": "bun run build:senpi-plugin && tsgo --noEmit -p packages/omo-senpi/tsconfig.json && bun test packages/omo-senpi && bun test ./.agents/skills/senpi-qa/scripts/resolve-evidence-dir.test.mjs",
|
|
196
|
+
"test:senpi": "bun run build:senpi-plugin && tsgo --noEmit -p packages/omo-senpi/tsconfig.json && bun test --timeout 20000 packages/omo-senpi && bun test ./.agents/skills/senpi-qa/scripts/resolve-evidence-dir.test.mjs",
|
|
197
197
|
"test:windows-codex": "bun run test:codex",
|
|
198
198
|
"build:git-bash-mcp": "bun run --cwd packages/git-bash-mcp build",
|
|
199
199
|
"build:ast-grep-mcp": "bun run --cwd packages/ast-grep-mcp build"
|
|
@@ -237,7 +237,7 @@ var init_package = __esm(() => {
|
|
|
237
237
|
zod: "^4.4.3"
|
|
238
238
|
},
|
|
239
239
|
devDependencies: {
|
|
240
|
-
"@code-yeongyu/senpi": "2026.9.
|
|
240
|
+
"@code-yeongyu/senpi": "2026.9.5",
|
|
241
241
|
"@oh-my-opencode/agents-md-core": "workspace:*",
|
|
242
242
|
"@oh-my-opencode/ast-grep-mcp": "workspace:*",
|
|
243
243
|
"@oh-my-opencode/boulder-state": "workspace:*",
|
|
@@ -278,18 +278,18 @@ var init_package = __esm(() => {
|
|
|
278
278
|
typescript: "^7.0.2"
|
|
279
279
|
},
|
|
280
280
|
optionalDependencies: {
|
|
281
|
-
"oh-my-opencode-darwin-arm64": "5.0.0-beta.
|
|
282
|
-
"oh-my-opencode-darwin-x64": "5.0.0-beta.
|
|
283
|
-
"oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.
|
|
284
|
-
"oh-my-opencode-linux-arm64": "5.0.0-beta.
|
|
285
|
-
"oh-my-opencode-linux-arm64-musl": "5.0.0-beta.
|
|
286
|
-
"oh-my-opencode-linux-x64": "5.0.0-beta.
|
|
287
|
-
"oh-my-opencode-linux-x64-baseline": "5.0.0-beta.
|
|
288
|
-
"oh-my-opencode-linux-x64-musl": "5.0.0-beta.
|
|
289
|
-
"oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.
|
|
290
|
-
"oh-my-opencode-windows-arm64": "5.0.0-beta.
|
|
291
|
-
"oh-my-opencode-windows-x64": "5.0.0-beta.
|
|
292
|
-
"oh-my-opencode-windows-x64-baseline": "5.0.0-beta.
|
|
281
|
+
"oh-my-opencode-darwin-arm64": "5.0.0-beta.43",
|
|
282
|
+
"oh-my-opencode-darwin-x64": "5.0.0-beta.43",
|
|
283
|
+
"oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.43",
|
|
284
|
+
"oh-my-opencode-linux-arm64": "5.0.0-beta.43",
|
|
285
|
+
"oh-my-opencode-linux-arm64-musl": "5.0.0-beta.43",
|
|
286
|
+
"oh-my-opencode-linux-x64": "5.0.0-beta.43",
|
|
287
|
+
"oh-my-opencode-linux-x64-baseline": "5.0.0-beta.43",
|
|
288
|
+
"oh-my-opencode-linux-x64-musl": "5.0.0-beta.43",
|
|
289
|
+
"oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.43",
|
|
290
|
+
"oh-my-opencode-windows-arm64": "5.0.0-beta.43",
|
|
291
|
+
"oh-my-opencode-windows-x64": "5.0.0-beta.43",
|
|
292
|
+
"oh-my-opencode-windows-x64-baseline": "5.0.0-beta.43"
|
|
293
293
|
},
|
|
294
294
|
overrides: {
|
|
295
295
|
"@earendil-works/pi-agent-core": "0.84.2",
|
|
@@ -7126,7 +7126,7 @@ var init_agent_model_requirements = __esm(() => {
|
|
|
7126
7126
|
fallbackChain: [
|
|
7127
7127
|
{
|
|
7128
7128
|
providers: ["anthropic", "github-copilot", "opencode"],
|
|
7129
|
-
model: "claude-fable-5",
|
|
7129
|
+
model: "claude-fable-5-1",
|
|
7130
7130
|
variant: "xhigh"
|
|
7131
7131
|
},
|
|
7132
7132
|
{
|
|
@@ -7152,10 +7152,9 @@ var init_agent_model_requirements = __esm(() => {
|
|
|
7152
7152
|
},
|
|
7153
7153
|
momus: {
|
|
7154
7154
|
fallbackChain: [
|
|
7155
|
-
{ providers: ["openai", "openai-codex"], model: "gpt-
|
|
7156
|
-
{ providers: ["github-copilot"], model: "gpt-
|
|
7157
|
-
{ providers: ["openai", "openai-codex", "opencode"], model: "gpt-
|
|
7158
|
-
{ providers: ["github-copilot"], model: "gpt-5.6-sol", variant: "high" },
|
|
7155
|
+
{ providers: ["openai", "openai-codex"], model: "gpt-6-astra", variant: "xhigh" },
|
|
7156
|
+
{ providers: ["github-copilot"], model: "gpt-6-astra", variant: "high" },
|
|
7157
|
+
{ providers: ["openai", "openai-codex", "opencode"], model: "gpt-6-astra", variant: "high" },
|
|
7159
7158
|
{
|
|
7160
7159
|
providers: ["anthropic", "github-copilot", "opencode"],
|
|
7161
7160
|
model: "claude-opus-5",
|
|
@@ -7207,6 +7206,11 @@ var init_category_model_requirements = __esm(() => {
|
|
|
7207
7206
|
CATEGORY_MODEL_REQUIREMENTS = {
|
|
7208
7207
|
"visual-engineering": {
|
|
7209
7208
|
fallbackChain: [
|
|
7209
|
+
{
|
|
7210
|
+
providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
|
|
7211
|
+
model: "claude-fable-5-1",
|
|
7212
|
+
variant: "max"
|
|
7213
|
+
},
|
|
7210
7214
|
{
|
|
7211
7215
|
providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
|
|
7212
7216
|
model: "claude-opus-5",
|
|
@@ -7216,17 +7220,14 @@ var init_category_model_requirements = __esm(() => {
|
|
|
7216
7220
|
providers: ["kimi-for-coding", "moonshotai", "opencode-go", "opencode"],
|
|
7217
7221
|
model: "kimi-k3",
|
|
7218
7222
|
variant: "max"
|
|
7219
|
-
},
|
|
7220
|
-
{ providers: ["zai-coding-plan", "opencode-go"], model: "glm-5.2", variant: "max" },
|
|
7221
|
-
{
|
|
7222
|
-
providers: ["openai", "openai-codex", "github-copilot", "opencode"],
|
|
7223
|
-
model: "gpt-5.6-sol",
|
|
7224
|
-
variant: "medium"
|
|
7225
7223
|
}
|
|
7226
7224
|
]
|
|
7227
7225
|
},
|
|
7228
7226
|
ultrabrain: {
|
|
7229
7227
|
fallbackChain: [
|
|
7228
|
+
{ providers: ["openai", "openai-codex"], model: "gpt-6-astra", variant: "max" },
|
|
7229
|
+
{ providers: ["github-copilot"], model: "gpt-6-astra", variant: "max" },
|
|
7230
|
+
{ providers: ["openai", "openai-codex", "opencode"], model: "gpt-6-astra", variant: "max" },
|
|
7230
7231
|
{ providers: ["openai", "openai-codex"], model: "gpt-5.6-sol", variant: "max" },
|
|
7231
7232
|
{ providers: ["github-copilot"], model: "gpt-5.6-sol", variant: "max" },
|
|
7232
7233
|
{ providers: ["openai", "openai-codex", "opencode"], model: "gpt-5.6-sol", variant: "max" }
|
|
@@ -7234,6 +7235,11 @@ var init_category_model_requirements = __esm(() => {
|
|
|
7234
7235
|
},
|
|
7235
7236
|
deep: {
|
|
7236
7237
|
fallbackChain: [
|
|
7238
|
+
{
|
|
7239
|
+
providers: ["openai", "openai-codex", "github-copilot", "opencode"],
|
|
7240
|
+
model: "gpt-6-astra",
|
|
7241
|
+
variant: "high"
|
|
7242
|
+
},
|
|
7237
7243
|
{
|
|
7238
7244
|
providers: ["openai", "openai-codex", "github-copilot", "opencode"],
|
|
7239
7245
|
model: "gpt-5.6-sol",
|
|
@@ -7245,7 +7251,7 @@ var init_category_model_requirements = __esm(() => {
|
|
|
7245
7251
|
fallbackChain: [
|
|
7246
7252
|
{
|
|
7247
7253
|
providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
|
|
7248
|
-
model: "claude-fable-5",
|
|
7254
|
+
model: "claude-fable-5-1",
|
|
7249
7255
|
variant: "xhigh"
|
|
7250
7256
|
},
|
|
7251
7257
|
{
|
|
@@ -7304,6 +7310,11 @@ var init_category_model_requirements = __esm(() => {
|
|
|
7304
7310
|
},
|
|
7305
7311
|
"unspecified-high": {
|
|
7306
7312
|
fallbackChain: [
|
|
7313
|
+
{
|
|
7314
|
+
providers: ["openai", "openai-codex", "github-copilot", "opencode"],
|
|
7315
|
+
model: "gpt-6-astra",
|
|
7316
|
+
variant: "high"
|
|
7317
|
+
},
|
|
7307
7318
|
{
|
|
7308
7319
|
providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
|
|
7309
7320
|
model: "claude-opus-5",
|
|
@@ -7319,17 +7330,16 @@ var init_category_model_requirements = __esm(() => {
|
|
|
7319
7330
|
},
|
|
7320
7331
|
writing: {
|
|
7321
7332
|
fallbackChain: [
|
|
7322
|
-
{
|
|
7323
|
-
providers: ["kimi-for-coding", "moonshotai", "opencode-go", "opencode"],
|
|
7324
|
-
model: "kimi-k3",
|
|
7325
|
-
variant: "low"
|
|
7326
|
-
},
|
|
7327
7333
|
{
|
|
7328
7334
|
providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
|
|
7329
|
-
model: "claude-
|
|
7330
|
-
variant: "
|
|
7335
|
+
model: "claude-fable-5-1",
|
|
7336
|
+
variant: "medium"
|
|
7331
7337
|
},
|
|
7332
|
-
{
|
|
7338
|
+
{
|
|
7339
|
+
providers: ["kimi-for-coding", "moonshotai", "opencode-go", "opencode"],
|
|
7340
|
+
model: "kimi-k3",
|
|
7341
|
+
variant: "max"
|
|
7342
|
+
}
|
|
7333
7343
|
]
|
|
7334
7344
|
}
|
|
7335
7345
|
};
|
|
@@ -7432,11 +7442,11 @@ var init_model_capability_aliases = __esm(() => {
|
|
|
7432
7442
|
EXACT_ALIAS_RULES_BY_MODEL = new Map(EXACT_ALIAS_RULES.map((rule) => [rule.aliasModelID, rule]));
|
|
7433
7443
|
PATTERN_ALIAS_RULES = [
|
|
7434
7444
|
{
|
|
7435
|
-
ruleID: "openai-gpt-
|
|
7436
|
-
description: "Normalizes OpenCode's OpenAI GPT
|
|
7445
|
+
ruleID: "openai-gpt-fast-service-tier-alias",
|
|
7446
|
+
description: "Normalizes OpenCode's OpenAI GPT fast service-tier IDs to canonical snapshot IDs.",
|
|
7437
7447
|
providerIDs: ["openai"],
|
|
7438
7448
|
allowedSubproviderHosts: ["vercel"],
|
|
7439
|
-
match: (normalizedModelID) => /^gpt-5\.6-(?:sol|terra|luna)-fast$/.test(normalizedModelID),
|
|
7449
|
+
match: (normalizedModelID) => /^(?:gpt-5\.6-(?:sol|terra|luna)|gpt-6-astra)-fast$/.test(normalizedModelID),
|
|
7440
7450
|
canonicalize: (normalizedModelID) => normalizedModelID.slice(0, -"-fast".length)
|
|
7441
7451
|
},
|
|
7442
7452
|
{
|
|
@@ -7576,6 +7586,14 @@ var init_model_capability_heuristics = __esm(() => {
|
|
|
7576
7586
|
reasoningEfforts: ["none", "minimal", "low", "medium", "high"],
|
|
7577
7587
|
supportsTemperature: false
|
|
7578
7588
|
},
|
|
7589
|
+
{
|
|
7590
|
+
family: "gpt-6",
|
|
7591
|
+
includes: ["gpt-6"],
|
|
7592
|
+
variants: ["low", "medium", "high", "xhigh", "max"],
|
|
7593
|
+
reasoningEfforts: ["low", "medium", "high", "xhigh", "max"],
|
|
7594
|
+
reasoningEffortAliases: { none: "low", minimal: "low" },
|
|
7595
|
+
supportsTemperature: false
|
|
7596
|
+
},
|
|
7579
7597
|
{
|
|
7580
7598
|
family: "gpt-5",
|
|
7581
7599
|
includes: ["gpt-5"],
|
|
@@ -7941,6 +7959,37 @@ var init_supplemental_entries = __esm(() => {
|
|
|
7941
7959
|
output: 262144
|
|
7942
7960
|
}
|
|
7943
7961
|
},
|
|
7962
|
+
"claude-fable-5-1": {
|
|
7963
|
+
id: "claude-fable-5-1",
|
|
7964
|
+
family: "claude-fable",
|
|
7965
|
+
reasoning: true,
|
|
7966
|
+
temperature: false,
|
|
7967
|
+
toolCall: true,
|
|
7968
|
+
modalities: {
|
|
7969
|
+
input: ["text", "image", "pdf"],
|
|
7970
|
+
output: ["text"]
|
|
7971
|
+
},
|
|
7972
|
+
limit: {
|
|
7973
|
+
context: 1e6,
|
|
7974
|
+
output: 128000
|
|
7975
|
+
}
|
|
7976
|
+
},
|
|
7977
|
+
"gpt-6-astra": {
|
|
7978
|
+
id: "gpt-6-astra",
|
|
7979
|
+
family: "gpt",
|
|
7980
|
+
reasoning: true,
|
|
7981
|
+
temperature: false,
|
|
7982
|
+
toolCall: true,
|
|
7983
|
+
modalities: {
|
|
7984
|
+
input: ["text", "image"],
|
|
7985
|
+
output: ["text"]
|
|
7986
|
+
},
|
|
7987
|
+
limit: {
|
|
7988
|
+
context: 1050000,
|
|
7989
|
+
input: 922000,
|
|
7990
|
+
output: 128000
|
|
7991
|
+
}
|
|
7992
|
+
},
|
|
7944
7993
|
"gpt-5.6-sol": {
|
|
7945
7994
|
id: "gpt-5.6-sol",
|
|
7946
7995
|
family: "gpt",
|
|
@@ -8281,7 +8330,7 @@ function getOverride(modelID) {
|
|
|
8281
8330
|
function getProviderOverride(providerID, modelID) {
|
|
8282
8331
|
if (providerID.trim().toLowerCase() !== "github-copilot")
|
|
8283
8332
|
return;
|
|
8284
|
-
return
|
|
8333
|
+
return GITHUB_COPILOT_GPT_MODEL.test(normalizeLookupModelID2(modelID)) ? GITHUB_COPILOT_GPT_OVERRIDE : undefined;
|
|
8285
8334
|
}
|
|
8286
8335
|
function stripSameProviderPrefix(providerID, modelID) {
|
|
8287
8336
|
const prefix = `${providerID.trim()}/`;
|
|
@@ -8420,14 +8469,14 @@ function getModelCapabilities(input) {
|
|
|
8420
8469
|
}
|
|
8421
8470
|
};
|
|
8422
8471
|
}
|
|
8423
|
-
var MODEL_ID_OVERRIDES,
|
|
8472
|
+
var MODEL_ID_OVERRIDES, GITHUB_COPILOT_GPT_MODEL, GITHUB_COPILOT_GPT_OVERRIDE;
|
|
8424
8473
|
var init_get_model_capabilities = __esm(() => {
|
|
8425
8474
|
init_model_capability_aliases();
|
|
8426
8475
|
init_model_capability_heuristics();
|
|
8427
8476
|
init_model_string_parser();
|
|
8428
8477
|
MODEL_ID_OVERRIDES = {};
|
|
8429
|
-
|
|
8430
|
-
|
|
8478
|
+
GITHUB_COPILOT_GPT_MODEL = /(?:^|\/)gpt-[56](?:[.-]|$)/;
|
|
8479
|
+
GITHUB_COPILOT_GPT_OVERRIDE = {
|
|
8431
8480
|
variants: ["low", "medium", "high"],
|
|
8432
8481
|
reasoningEfforts: ["none", "minimal", "low", "medium", "high"]
|
|
8433
8482
|
};
|
|
@@ -8779,22 +8828,6 @@ var init_agent_display_names = __esm(() => {
|
|
|
8779
8828
|
"athena-junior (council)": "athena-junior"
|
|
8780
8829
|
};
|
|
8781
8830
|
});
|
|
8782
|
-
// packages/omo-opencode/src/tools/delegate-task/anthropic-categories.ts
|
|
8783
|
-
var UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND = `<Category_Context>
|
|
8784
|
-
You are working on tasks that don't fit specific categories but require substantial effort.
|
|
8785
|
-
</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>`, ANTHROPIC_CATEGORIES;
|
|
8786
|
-
var init_anthropic_categories = __esm(() => {
|
|
8787
|
-
ANTHROPIC_CATEGORIES = [
|
|
8788
|
-
{
|
|
8789
|
-
name: "unspecified-high",
|
|
8790
|
-
config: { model: "anthropic/claude-opus-5", variant: "xhigh" },
|
|
8791
|
-
description: "Tasks that don't fit other categories, high effort required",
|
|
8792
|
-
callerGuidance: UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE,
|
|
8793
|
-
promptAppend: UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND
|
|
8794
|
-
}
|
|
8795
|
-
];
|
|
8796
|
-
});
|
|
8797
|
-
|
|
8798
8831
|
// packages/omo-opencode/src/tools/delegate-task/google-categories.ts
|
|
8799
8832
|
var VISUAL_CATEGORY_PROMPT_APPEND = `<Category_Context>
|
|
8800
8833
|
You are working on VISUAL/UI tasks.
|
|
@@ -8903,13 +8936,13 @@ var init_google_categories = __esm(() => {
|
|
|
8903
8936
|
GOOGLE_CATEGORIES = [
|
|
8904
8937
|
{
|
|
8905
8938
|
name: "visual-engineering",
|
|
8906
|
-
config: { model: "anthropic/claude-
|
|
8907
|
-
description: "
|
|
8939
|
+
config: { model: "anthropic/claude-fable-5-1", variant: "max" },
|
|
8940
|
+
description: "Visual design, UI/UX, frontend, styling, animation, and design systems",
|
|
8908
8941
|
promptAppend: VISUAL_CATEGORY_PROMPT_APPEND
|
|
8909
8942
|
},
|
|
8910
8943
|
{
|
|
8911
8944
|
name: "artistry",
|
|
8912
|
-
config: { model: "anthropic/claude-fable-5", variant: "
|
|
8945
|
+
config: { model: "anthropic/claude-fable-5-1", variant: "max" },
|
|
8913
8946
|
description: "Complex problem-solving with unconventional, creative approaches - beyond standard patterns",
|
|
8914
8947
|
promptAppend: ARTISTRY_CATEGORY_PROMPT_APPEND
|
|
8915
8948
|
}
|
|
@@ -8946,7 +8979,7 @@ var init_kimi_categories = __esm(() => {
|
|
|
8946
8979
|
KIMI_CATEGORIES = [
|
|
8947
8980
|
{
|
|
8948
8981
|
name: "writing",
|
|
8949
|
-
config: { model: "
|
|
8982
|
+
config: { model: "anthropic/claude-fable-5-1", variant: "medium" },
|
|
8950
8983
|
description: "Documentation, prose, technical writing",
|
|
8951
8984
|
promptAppend: WRITING_CATEGORY_PROMPT_APPEND
|
|
8952
8985
|
}
|
|
@@ -8965,16 +8998,58 @@ function isGpt5_6Model(model) {
|
|
|
8965
8998
|
const modelName = extractModelName2(model).toLowerCase();
|
|
8966
8999
|
return modelName.includes("gpt-5.6") || modelName.includes("gpt-5-6");
|
|
8967
9000
|
}
|
|
9001
|
+
function isGpt6Model(model) {
|
|
9002
|
+
const modelName = extractModelName2(model).toLowerCase();
|
|
9003
|
+
return modelName.includes("gpt-6");
|
|
9004
|
+
}
|
|
8968
9005
|
var init_types = () => {};
|
|
8969
9006
|
|
|
8970
9007
|
// packages/omo-opencode/src/tools/delegate-task/openai-categories.ts
|
|
9008
|
+
function resolveUltrabrainCategoryPromptAppend(model) {
|
|
9009
|
+
if (model && isGpt6Model(model)) {
|
|
9010
|
+
return ULTRABRAIN_CATEGORY_PROMPT_APPEND_GPT_6_ASTRA;
|
|
9011
|
+
}
|
|
9012
|
+
return ULTRABRAIN_CATEGORY_PROMPT_APPEND;
|
|
9013
|
+
}
|
|
8971
9014
|
function resolveDeepCategoryPromptAppend(model) {
|
|
9015
|
+
if (model && isGpt6Model(model)) {
|
|
9016
|
+
return DEEP_CATEGORY_PROMPT_APPEND_GPT_6_ASTRA;
|
|
9017
|
+
}
|
|
8972
9018
|
if (model && (isGpt5_5Model(model) || isGpt5_6Model(model))) {
|
|
8973
9019
|
return DEEP_CATEGORY_PROMPT_APPEND_GPT_5_5;
|
|
8974
9020
|
}
|
|
8975
9021
|
return DEEP_CATEGORY_PROMPT_APPEND;
|
|
8976
9022
|
}
|
|
8977
|
-
|
|
9023
|
+
function resolveUnspecifiedHighCategoryPromptAppend(model) {
|
|
9024
|
+
if (model && isGpt6Model(model)) {
|
|
9025
|
+
return UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND_GPT_6_ASTRA;
|
|
9026
|
+
}
|
|
9027
|
+
return UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND;
|
|
9028
|
+
}
|
|
9029
|
+
var ULTRABRAIN_CATEGORY_PROMPT_APPEND_GPT_6_ASTRA = `<Category_Context name="ultrabrain">
|
|
9030
|
+
The orchestrator routed this task here because it is the one genuinely hard, logic-heavy problem in its plan, and it sent a goal rather than steps: choose the approach yourself, and let correctness outrank speed, brevity, and token cost.
|
|
9031
|
+
|
|
9032
|
+
Success means:
|
|
9033
|
+
- every load-bearing claim cites evidence from this turn: a file and line read, a command run, a test executed;
|
|
9034
|
+
- every executable claim was executed: a proposed fix runs, an algorithm passes the boundary cases you enumerated, a verdict on a diff names the failing line;
|
|
9035
|
+
- the conclusion survived your own attempt to break it, and the answer names the strongest counter-case you looked for;
|
|
9036
|
+
- rejected alternatives carry the reason that decided against them, and open assumptions are stated so the orchestrator can overturn them;
|
|
9037
|
+
- one decision-complete recommendation, actionable without a follow-up question.
|
|
9038
|
+
|
|
9039
|
+
Whatever that check leaves unsettled goes in the answer as an open question with what would settle it. When the goal bundles independent problems, solve the one the others depend on and return the rest as separately delegable items.
|
|
9040
|
+
</Category_Context>`, DEEP_CATEGORY_PROMPT_APPEND_GPT_6_ASTRA = `<Category_Context name="deep">
|
|
9041
|
+
The orchestrator routed this task here for depth: one goal, one deliverable, and the time to earn it. The exploration budget is generous: read every file involved, trace callers and dependencies in both directions, and fan out explore and librarian subagents in parallel for the questions a single read wave cannot answer, until you can explain the full mechanism you are about to change; an edit made before that point is the failure this category exists to prevent.
|
|
9042
|
+
|
|
9043
|
+
**MUST USE \`deep\` FOR 3D GRAPHICS, COMPUTER USE, BROWSER USE, BACKEND, LOGIC, ALGORITHMS, CAPTCHA SOLVING, AND MULTIMODAL WORK.**
|
|
9044
|
+
|
|
9045
|
+
The goal is the authorization. Choose how to reach it yourself, and when it lists numbered steps or phases, deliver all of them in this turn as one task; a proposal, a plan awaiting approval, a simplified version, or a proof of concept is unfinished work. When the steps turn out to be independent problems sharing no reasoning, do the one the goal centers on and return the others as separately delegable items with what you learned. A question ends your turn and hands the task back unfinished, so decide from context, record each assumption in the final message, and stop early only for a blocker you cannot route around: a missing secret, a decision only the user can make, or three materially different attempts that all failed.
|
|
9046
|
+
|
|
9047
|
+
Fix the cause: trace at least two levels above the symptom before settling, and prefer the change that makes the failure impossible over the guard that hides it. Depth means understanding the mechanism, so the diff stays as small as the fix allows; on greenfield work choose strong defaults and finish something you would hand to a senior engineer. Close with the delivered change, the evidence that it works, and the assumptions you made.
|
|
9048
|
+
</Category_Context>`, UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND_GPT_6_ASTRA = `<Category_Context name="unspecified-high">
|
|
9049
|
+
The orchestrator routed this task here because it spans systems or modules and fits no specialist category, so breadth of consideration is what this category buys. Before committing to an approach, survey the whole surface the change touches: every caller and consumer of what you will modify, sibling modules that implement the same pattern, the tests, docs, schemas, config, scripts, and CI that encode the current behavior, and the history of the area (git log and blame) for the reasons it is shaped this way. Fan out explore and librarian subagents in parallel when that surface is wider than one read wave covers.
|
|
9050
|
+
|
|
9051
|
+
Weigh at least two ways to do it against what you found, choose one, and say in the final message why it won. Then deliver it across every surface you identified, so behavior stays consistent everywhere the change is observable and no caller, test, doc, schema, or config still describes the old state. A question ends your turn and hands the task back unfinished, so decide from context, record each assumption in the final message, and finish.
|
|
9052
|
+
</Category_Context>`, ULTRABRAIN_CATEGORY_PROMPT_APPEND = `<Category_Context>
|
|
8978
9053
|
You are working on DEEP LOGICAL REASONING / COMPLEX ARCHITECTURE tasks.
|
|
8979
9054
|
|
|
8980
9055
|
**CRITICAL - CODE STYLE REQUIREMENTS (NON-NEGOTIABLE)**:
|
|
@@ -8999,6 +9074,8 @@ You are working on GOAL-ORIENTED AUTONOMOUS tasks.
|
|
|
8999
9074
|
|
|
9000
9075
|
You are NOT an interactive assistant. You are an autonomous problem-solver.
|
|
9001
9076
|
|
|
9077
|
+
**MUST USE \`deep\` FOR 3D GRAPHICS, COMPUTER USE, BROWSER USE, BACKEND, LOGIC, ALGORITHMS, CAPTCHA SOLVING, AND MULTIMODAL WORK.**
|
|
9078
|
+
|
|
9002
9079
|
BEFORE making ANY changes:
|
|
9003
9080
|
1. Silently explore the codebase extensively (5-15 minutes of reading is normal)
|
|
9004
9081
|
2. Read related files, trace dependencies, understand the full context
|
|
@@ -9016,6 +9093,8 @@ Minimal status updates. Focus on results, not play-by-play. Report completion wi
|
|
|
9016
9093
|
</Category_Context>`, DEEP_CATEGORY_PROMPT_APPEND_GPT_5_5 = `<Category_Context name="deep">
|
|
9017
9094
|
You are operating in DEEP mode. This is the category reserved for goal-oriented autonomous work on hairy problems that reward thorough exploration and comprehensive solutions.
|
|
9018
9095
|
|
|
9096
|
+
**MUST USE \`deep\` FOR 3D GRAPHICS, COMPUTER USE, BROWSER USE, BACKEND, LOGIC, ALGORITHMS, CAPTCHA SOLVING, AND MULTIMODAL WORK.**
|
|
9097
|
+
|
|
9019
9098
|
The orchestrator chose this category because the task benefits from depth over speed. You should feel empowered to spend the time needed: five to fifteen minutes of silent exploration before the first edit is normal and correct. Rushing to implementation on a deep task is a failure mode, not a feature.
|
|
9020
9099
|
|
|
9021
9100
|
# How deep mode adjusts the base behavior
|
|
@@ -9049,23 +9128,27 @@ Approach:
|
|
|
9049
9128
|
</Category_Context>`, QUICK_CATEGORY_CALLER_GUIDANCE = `<Caller_Warning>Small/fast model: before delegating, write an explicit prompt with numbered must-do steps, forbidden deviations, and concrete success criteria.</Caller_Warning>`, UNSPECIFIED_LOW_CATEGORY_PROMPT_APPEND = `<Category_Context>
|
|
9050
9129
|
You are working on tasks that don't fit specific categories but require moderate effort.
|
|
9051
9130
|
</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>
|
|
9052
|
-
<Caller_Warning>Provide explicit must-do steps, forbidden scope, and concrete success criteria.</Caller_Warning>`,
|
|
9131
|
+
<Caller_Warning>Provide explicit must-do steps, forbidden scope, and concrete success criteria.</Caller_Warning>`, UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND = `<Category_Context>
|
|
9132
|
+
You are working on tasks that don't fit specific categories but require substantial effort.
|
|
9133
|
+
</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>`, GPT_FLAGSHIP_GATE_MODELS, OPENAI_CATEGORIES;
|
|
9053
9134
|
var init_openai_categories = __esm(() => {
|
|
9054
9135
|
init_types();
|
|
9136
|
+
GPT_FLAGSHIP_GATE_MODELS = ["gpt-6-astra", "gpt-5.6-sol"];
|
|
9055
9137
|
OPENAI_CATEGORIES = [
|
|
9056
9138
|
{
|
|
9057
9139
|
name: "ultrabrain",
|
|
9058
|
-
config: { model: "openai/gpt-
|
|
9140
|
+
config: { model: "openai/gpt-6-astra", variant: "max" },
|
|
9059
9141
|
description: "Use ONLY for genuinely hard, logic-heavy tasks. Give clear goals only, not step-by-step instructions.",
|
|
9060
|
-
promptAppend: ULTRABRAIN_CATEGORY_PROMPT_APPEND
|
|
9142
|
+
promptAppend: ULTRABRAIN_CATEGORY_PROMPT_APPEND,
|
|
9143
|
+
resolvePromptAppend: resolveUltrabrainCategoryPromptAppend
|
|
9061
9144
|
},
|
|
9062
9145
|
{
|
|
9063
9146
|
name: "deep",
|
|
9064
|
-
config: { model: "openai/gpt-
|
|
9065
|
-
description: "
|
|
9147
|
+
config: { model: "openai/gpt-6-astra", variant: "high" },
|
|
9148
|
+
description: "**MANDATORY: USE deep FOR 3D GRAPHICS, COMPUTER USE, BROWSER USE, BACKEND, LOGIC, ALGORITHMS, CAPTCHA SOLVING, AND MULTIMODAL WORK.** Deep autonomous problem-solving for complex research. ONE goal + ONE deliverable per call \u2014 multiple goals must fan out as parallel `deep` calls, never bundled into one.",
|
|
9066
9149
|
promptAppend: DEEP_CATEGORY_PROMPT_APPEND,
|
|
9067
9150
|
resolvePromptAppend: resolveDeepCategoryPromptAppend,
|
|
9068
|
-
requiresModel:
|
|
9151
|
+
requiresModel: GPT_FLAGSHIP_GATE_MODELS
|
|
9069
9152
|
},
|
|
9070
9153
|
{
|
|
9071
9154
|
name: "quick",
|
|
@@ -9080,6 +9163,14 @@ var init_openai_categories = __esm(() => {
|
|
|
9080
9163
|
description: "Tasks that don't fit other categories, low effort required",
|
|
9081
9164
|
callerGuidance: UNSPECIFIED_LOW_CATEGORY_CALLER_GUIDANCE,
|
|
9082
9165
|
promptAppend: UNSPECIFIED_LOW_CATEGORY_PROMPT_APPEND
|
|
9166
|
+
},
|
|
9167
|
+
{
|
|
9168
|
+
name: "unspecified-high",
|
|
9169
|
+
config: { model: "openai/gpt-6-astra", variant: "high" },
|
|
9170
|
+
description: "Tasks that don't fit other categories, high effort required",
|
|
9171
|
+
callerGuidance: UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE,
|
|
9172
|
+
promptAppend: UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND,
|
|
9173
|
+
resolvePromptAppend: resolveUnspecifiedHighCategoryPromptAppend
|
|
9083
9174
|
}
|
|
9084
9175
|
];
|
|
9085
9176
|
});
|
|
@@ -9090,14 +9181,12 @@ function buildCategoryRecord(selector) {
|
|
|
9090
9181
|
}
|
|
9091
9182
|
var BUILTIN_CATEGORIES, DEFAULT_CATEGORIES, CATEGORY_PROMPT_APPENDS, CATEGORY_DESCRIPTIONS, CATEGORY_CALLER_GUIDANCE, CATEGORY_PROMPT_APPEND_RESOLVERS, BUILTIN_CATEGORY_REQUIRES_MODEL;
|
|
9092
9183
|
var init_builtin_categories = __esm(() => {
|
|
9093
|
-
init_anthropic_categories();
|
|
9094
9184
|
init_google_categories();
|
|
9095
9185
|
init_kimi_categories();
|
|
9096
9186
|
init_openai_categories();
|
|
9097
9187
|
BUILTIN_CATEGORIES = [
|
|
9098
9188
|
...GOOGLE_CATEGORIES,
|
|
9099
9189
|
...OPENAI_CATEGORIES,
|
|
9100
|
-
...ANTHROPIC_CATEGORIES,
|
|
9101
9190
|
...KIMI_CATEGORIES
|
|
9102
9191
|
];
|
|
9103
9192
|
DEFAULT_CATEGORIES = buildCategoryRecord((definition) => definition.config);
|
|
@@ -9105,7 +9194,10 @@ var init_builtin_categories = __esm(() => {
|
|
|
9105
9194
|
CATEGORY_DESCRIPTIONS = buildCategoryRecord((definition) => definition.description);
|
|
9106
9195
|
CATEGORY_CALLER_GUIDANCE = buildCategoryRecord((definition) => definition.callerGuidance);
|
|
9107
9196
|
CATEGORY_PROMPT_APPEND_RESOLVERS = Object.fromEntries(BUILTIN_CATEGORIES.filter((definition) => definition.resolvePromptAppend !== undefined).map((definition) => [definition.name, definition.resolvePromptAppend]));
|
|
9108
|
-
BUILTIN_CATEGORY_REQUIRES_MODEL = Object.fromEntries(BUILTIN_CATEGORIES.filter((definition) => definition.requiresModel !== undefined).map((definition) => [
|
|
9197
|
+
BUILTIN_CATEGORY_REQUIRES_MODEL = Object.fromEntries(BUILTIN_CATEGORIES.filter((definition) => definition.requiresModel !== undefined).map((definition) => [
|
|
9198
|
+
definition.name,
|
|
9199
|
+
typeof definition.requiresModel === "string" ? [definition.requiresModel] : definition.requiresModel
|
|
9200
|
+
]));
|
|
9109
9201
|
});
|
|
9110
9202
|
|
|
9111
9203
|
// packages/omo-opencode/src/tools/delegate-task/constants.ts
|
|
@@ -82415,7 +82507,6 @@ var init_memory = __esm(() => {
|
|
|
82415
82507
|
OmoMemorySettingsSchema = object({
|
|
82416
82508
|
enabled: boolean2().default(true),
|
|
82417
82509
|
agent: string2().min(1).default("auto"),
|
|
82418
|
-
tool_exposure: _enum2(["direct", "search"]).default("direct"),
|
|
82419
82510
|
reflection: OmoMemoryReflectionSchema.default({
|
|
82420
82511
|
enabled: true,
|
|
82421
82512
|
trigger: { step_count: 25, on_compaction: true },
|
|
@@ -82446,7 +82537,6 @@ var init_memory = __esm(() => {
|
|
|
82446
82537
|
OmoMemorySettingsLayerSchema = object({
|
|
82447
82538
|
enabled: boolean2().optional(),
|
|
82448
82539
|
agent: string2().min(1).optional(),
|
|
82449
|
-
tool_exposure: _enum2(["direct", "search"]).optional(),
|
|
82450
82540
|
reflection: OmoMemoryReflectionLayerSchema.optional(),
|
|
82451
82541
|
nudge: OmoMemoryNudgeLayerSchema.optional(),
|
|
82452
82542
|
facts: OmoMemoryFactsLayerSchema.optional(),
|
|
@@ -94352,7 +94442,7 @@ var package_default2;
|
|
|
94352
94442
|
var init_package2 = __esm(() => {
|
|
94353
94443
|
package_default2 = {
|
|
94354
94444
|
name: "@oh-my-opencode/omo-codex",
|
|
94355
|
-
version: "5.0.0-beta.
|
|
94445
|
+
version: "5.0.0-beta.43",
|
|
94356
94446
|
type: "module",
|
|
94357
94447
|
private: true,
|
|
94358
94448
|
description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
|