oh-my-opencode 5.0.0-beta.19 → 5.0.0-beta.20
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 +3 -3
- package/README.ko.md +3 -3
- package/README.md +3 -3
- package/README.ru.md +3 -3
- package/README.zh-cn.md +3 -3
- package/dist/cli/fallback-lane-policy.d.ts +1 -0
- package/dist/cli/index.js +72 -195
- package/dist/cli/install-codex/install-codex-test-fixtures.d.ts +1 -1
- package/dist/cli-node/index.js +72 -195
- package/dist/config/schema/commands.d.ts +1 -1
- package/dist/config/schema/hooks.d.ts +1 -1
- package/dist/config/schema/oh-my-opencode-config.d.ts +4 -1
- package/dist/config/schema/ulw-execute.d.ts +5 -0
- package/dist/config/validate.d.ts +2 -0
- package/dist/create-hooks.d.ts +2 -1
- package/dist/features/builtin-commands/templates/ulw-execute.d.ts +1 -0
- package/dist/features/builtin-commands/types.d.ts +1 -1
- package/dist/hooks/atlas/atlas-hook.d.ts +1 -0
- package/dist/hooks/atlas/atlas-lifecycle-store.d.ts +50 -0
- package/dist/hooks/atlas/event-handler.d.ts +1 -0
- package/dist/hooks/atlas/tool-execute-before.d.ts +3 -0
- package/dist/hooks/atlas/types.d.ts +1 -0
- package/dist/hooks/index.d.ts +1 -1
- package/dist/hooks/prometheus-md-only/agent-resolution.d.ts +2 -2
- package/dist/hooks/sisyphus-junior-notepad/constants.d.ts +1 -1
- package/dist/hooks/{start-work → ulw-execute}/context-info-builder.d.ts +1 -1
- package/dist/hooks/{start-work → ulw-execute}/index.d.ts +1 -1
- package/dist/hooks/ulw-execute/ulw-execute-hook.d.ts +23 -0
- package/dist/index.js +322 -258
- package/dist/oh-my-opencode.schema.json +14 -1
- package/dist/plugin/chat-message/types.d.ts +3 -3
- package/dist/plugin/chat-message/ulw-execute-message.d.ts +5 -0
- package/dist/plugin/hooks/create-core-hooks.d.ts +1 -1
- package/dist/plugin/hooks/create-session-hooks.d.ts +2 -2
- package/dist/skills/frontend/SKILL.md +1 -1
- package/dist/skills/frontend/references/designpowers/README.md +1 -1
- package/dist/skills/frontend/references/designpowers/lane-a-direction.md +1 -1
- package/dist/skills/frontend/references/designpowers/lane-b-execution.md +11 -11
- package/dist/skills/frontend/references/designpowers/lane-d-memory.md +3 -3
- package/dist/skills/frontend/references/designpowers/orchestration.md +1 -1
- package/dist/skills/frontend/references/designpowers/routing.md +5 -5
- package/dist/skills/{start-work → ulw-execute}/SKILL.md +7 -7
- package/dist/skills/ulw-plan/SKILL.md +4 -4
- package/dist/skills/ulw-plan/references/full-workflow.md +4 -4
- package/dist/skills/ulw-plan/references/intent-unclear.md +2 -2
- package/dist/tui.js +34 -9
- package/package.json +15 -15
- package/packages/omo-codex/THIRD-PARTY-NOTICES.md +4 -4
- package/packages/omo-codex/plugin/.codex-plugin/plugin.json +4 -4
- package/packages/omo-codex/plugin/README.md +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +2 -2
- 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/codegraph/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/ultrawork/skills/ulw-plan/SKILL.md +4 -4
- package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/full-workflow.md +4 -4
- package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/intent-unclear.md +2 -2
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/AGENTS.md +2 -2
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/NOTICE +1 -1
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/README.md +5 -5
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/directive.md +6 -6
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/dist/cli.js +12 -12
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +28 -0
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/package.json +8 -8
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/boulder-reader.ts +1 -1
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/cli.ts +1 -1
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/codex-hook.ts +3 -3
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/directive.ts +1 -1
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/index.ts +1 -1
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/boulder-reader.test.ts +3 -3
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/cli.test.ts +1 -1
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/codex-hook.test.ts +6 -6
- package/packages/omo-codex/plugin/components/ulw-loop/CHANGELOG.md +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/dist/stop-resume-hook.js +3 -3
- 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/components/ulw-loop/src/stop-resume-hook.ts +3 -3
- package/packages/omo-codex/plugin/components/ulw-loop/test/stop-resume-hook.test.ts +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-codegraph-init-guidance.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-checking-codegraph-bootstrap.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 +17 -0
- 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 +17 -0
- 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 +34 -34
- package/packages/omo-codex/plugin/package.json +2 -2
- package/packages/omo-codex/plugin/scripts/auto-update-plan.mjs +1 -1
- package/packages/omo-codex/plugin/scripts/sync-skills.mjs +11 -11
- package/packages/omo-codex/plugin/skills/frontend/SKILL.md +1 -1
- package/packages/omo-codex/plugin/skills/frontend/references/designpowers/README.md +1 -1
- package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-a-direction.md +1 -1
- package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-b-execution.md +11 -11
- package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-d-memory.md +3 -3
- package/packages/omo-codex/plugin/skills/frontend/references/designpowers/orchestration.md +1 -1
- package/packages/omo-codex/plugin/skills/frontend/references/designpowers/routing.md +5 -5
- package/packages/omo-codex/plugin/skills/review-work/SKILL.md +1 -1
- package/packages/omo-codex/plugin/skills/{start-work → ulw-execute}/SKILL.md +10 -10
- package/packages/omo-codex/plugin/skills/ulw-execute/agents/openai.yaml +2 -0
- package/packages/omo-codex/plugin/skills/ulw-plan/SKILL.md +4 -4
- package/packages/omo-codex/plugin/skills/ulw-plan/references/full-workflow.md +4 -4
- package/packages/omo-codex/plugin/skills/ulw-plan/references/intent-unclear.md +2 -2
- package/packages/omo-codex/plugin/test/aggregate-hooks.test.mjs +4 -4
- package/packages/omo-codex/plugin/test/aggregate-manifest.test.mjs +1 -1
- package/packages/omo-codex/plugin/test/component-bin-names.test.mjs +2 -2
- package/packages/omo-codex/plugin/test/component-bundled-cli.test.mjs +1 -1
- package/packages/omo-codex/plugin/test/component-hook-contract-cases.mjs +2 -2
- package/packages/omo-codex/plugin/test/hook-status-message.test.mjs +4 -4
- package/packages/omo-codex/plugin/test/sync-skills-test-support.mjs +12 -12
- package/packages/omo-codex/scripts/install-dist/install-local.mjs +4 -4
- package/packages/shared-skills/skills/frontend/SKILL.md +1 -1
- package/packages/shared-skills/skills/frontend/references/designpowers/README.md +1 -1
- package/packages/shared-skills/skills/frontend/references/designpowers/lane-a-direction.md +1 -1
- package/packages/shared-skills/skills/frontend/references/designpowers/lane-b-execution.md +11 -11
- package/packages/shared-skills/skills/frontend/references/designpowers/lane-d-memory.md +3 -3
- package/packages/shared-skills/skills/frontend/references/designpowers/orchestration.md +1 -1
- package/packages/shared-skills/skills/frontend/references/designpowers/routing.md +5 -5
- package/packages/shared-skills/skills/{start-work → ulw-execute}/SKILL.md +7 -7
- package/packages/shared-skills/skills/ulw-plan/SKILL.md +4 -4
- package/packages/shared-skills/skills/ulw-plan/references/full-workflow.md +4 -4
- package/packages/shared-skills/skills/ulw-plan/references/intent-unclear.md +2 -2
- package/dist/config/schema/start-work.d.ts +0 -5
- package/dist/features/builtin-commands/templates/start-work.d.ts +0 -1
- package/dist/hooks/start-work/start-work-hook.d.ts +0 -23
- package/dist/plugin/chat-message/start-work-message.d.ts +0 -5
- package/packages/omo-codex/plugin/components/start-work-continuation/hooks/hooks.json +0 -28
- package/packages/omo-codex/plugin/hooks/stop-checking-start-work-continuation.json +0 -17
- package/packages/omo-codex/plugin/hooks/subagent-stop-checking-start-work-continuation.json +0 -17
- package/packages/omo-codex/plugin/skills/start-work/agents/openai.yaml +0 -2
- /package/dist/hooks/{start-work → ulw-execute}/context-info-formatters.d.ts +0 -0
- /package/dist/hooks/{start-work → ulw-execute}/explicit-plan-context.d.ts +0 -0
- /package/dist/hooks/{start-work → ulw-execute}/notepad-scaffold.d.ts +0 -0
- /package/dist/hooks/{start-work → ulw-execute}/parse-user-request.d.ts +0 -0
- /package/dist/hooks/{start-work → ulw-execute}/plan-discovery-context.d.ts +0 -0
- /package/dist/hooks/{start-work → ulw-execute}/plan-selection.d.ts +0 -0
- /package/dist/hooks/{start-work → ulw-execute}/session-plan-affinity.d.ts +0 -0
- /package/dist/hooks/{start-work → ulw-execute}/work-initializer.d.ts +0 -0
- /package/dist/hooks/{start-work → ulw-execute}/worktree-block.d.ts +0 -0
- /package/dist/hooks/{start-work → ulw-execute}/worktree-detector.d.ts +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/.gitattributes +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/CHANGELOG.md +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/LICENSE +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/biome.json +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/plan-checklist.ts +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/types.ts +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/boulder-completed.json +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/boulder-mixed-platforms.json +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/boulder-single-codex-work.json +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-all-done.md +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-scaffold.md +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-with-nested-checkboxes.md +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-with-unchecked.md +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/tsconfig.build.json +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/tsconfig.json +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/vitest.config.ts +0 -0
package/README.ja.md
CHANGED
|
@@ -133,7 +133,7 @@ curl -s https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/refs/head
|
|
|
133
133
|
|
|
134
134
|
匿名のテレメトリは、アクティブなインストール数(DAU/WAU/MAU)の集計のためにデフォルトで有効になっています。マシン1台につきUTC日あたり最大1回イベントが送信され、ハッシュ化されたインストール識別子を使用し、生のホスト名は使用せず、PostHog person profile も作成されません。無効化するには `OMO_SEND_ANONYMOUS_TELEMETRY=0` または `OMO_DISABLE_POSTHOG=1` を設定してください。[プライバシーポリシー](docs/legal/privacy-policy.md)と[利用規約](docs/legal/terms-of-service.md)をご覧ください。
|
|
135
135
|
|
|
136
|
-
**Ultimate と Light:** oh-my-openagent は同じ製品の 2 つのエディションとして提供されます。**Ultimate エディション**(`bunx oh-my-openagent install` または `--platform=opencode`、デフォルト)は OpenCode 上のフル機能で、11 エージェント、54+ フック、Team Mode、すべての MCP、スラッシュコマンド、IntentGate モードを提供します。**Light エディション**(`npx lazycodex-ai install` または `bunx oh-my-openagent install --platform=codex`)は OpenAI Codex CLI のプラグインシステムへ綺麗に移植できるコアコンポーネント(`rules`、`comment-checker`、`git-bash`、`lsp`、`ultrawork`、`ulw-loop`、`
|
|
136
|
+
**Ultimate と Light:** oh-my-openagent は同じ製品の 2 つのエディションとして提供されます。**Ultimate エディション**(`bunx oh-my-openagent install` または `--platform=opencode`、デフォルト)は OpenCode 上のフル機能で、11 エージェント、54+ フック、Team Mode、すべての MCP、スラッシュコマンド、IntentGate モードを提供します。**Light エディション**(`npx lazycodex-ai install` または `bunx oh-my-openagent install --platform=codex`)は OpenAI Codex CLI のプラグインシステムへ綺麗に移植できるコアコンポーネント(`rules`、`comment-checker`、`git-bash`、`lsp`、`ultrawork`、`ulw-loop`、`ulw-execute-continuation`、`telemetry`)に加え、`teammode` と補助コンポーネント(`bootstrap`、`codegraph`、`lcx` など)を提供し、Codex エージェントの TOML を `~/.codex/agents/` にインストールします。両方を同時にインストールするには `--platform=both`。Codex 専用テレメトリは `OMO_CODEX_DISABLE_POSTHOG=1` または `OMO_CODEX_SEND_ANONYMOUS_TELEMETRY=0` で無効化できます。
|
|
137
137
|
|
|
138
138
|
---
|
|
139
139
|
|
|
@@ -165,7 +165,7 @@ Read this and tell me why it's not just another boilerplate: https://raw.githubu
|
|
|
165
165
|
| | 機能 | Editions | 何をするのか |
|
|
166
166
|
| :---: | :------------------------------------------------------- | :------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
167
167
|
| 🤖 | **規律あるエージェント (Discipline Agents)** | Ultimate | Sisyphus が Hephaestus、Oracle、Librarian、Explore をオーケストレーションします。完全な AI 開発チームが並列で動きます。 |
|
|
168
|
-
| 🧩 | **Codex CLI Light Edition** | Light | OpenAI Codex CLI 上で動作する omo の移植コンポーネント (rules, comment-checker, git-bash, LSP, ultrawork, ulw-loop,
|
|
168
|
+
| 🧩 | **Codex CLI Light Edition** | Light | OpenAI Codex CLI 上で動作する omo の移植コンポーネント (rules, comment-checker, git-bash, LSP, ultrawork, ulw-loop, ulw-execute continuation, telemetry, teammode など)。インストール: `npx lazycodex-ai install`。 |
|
|
169
169
|
| 👥 | **Team Mode** (v4.0, オプトイン) | Ultimate | リードエージェント + 最大 8 メンバーの並列実行、リアルタイム tmux 可視化、専用 `team_*` ツール群。`hyperplan`(5 人の敵対的批評家)と `security-research`(3 人のハンター + 2 人の PoC エンジニア)を駆動します。[ドキュメント →](docs/guide/team-mode.md) |
|
|
170
170
|
| ⚡ | **`ultrawork` / `ulw`** | Both | 一言で OK。すべてのエージェント (Ultimate) または Codex `ultrawork` コンポーネント (Light) がアクティブになり、終わるまで止まりません。 |
|
|
171
171
|
| 🚪 | **[IntentGate](https://factory.ai/news/terminal-bench)** | Ultimate | ユーザーの真の意図を分析してから分類・行動します。字面通りの誤解釈はもうありません。(Light は `ulw` / `ultrawork` キーワードのみ認識。) |
|
|
@@ -302,7 +302,7 @@ project/
|
|
|
302
302
|
|
|
303
303
|
複雑なタスクですか?プロンプトを投げて祈るのはやめましょう。
|
|
304
304
|
|
|
305
|
-
Prometheus は**本物のエンジニアのようにあなたにインタビューし**、スコープと曖昧さを特定し、コードに触れる前に検証済みの計画を `.omo/plans/` に書きます。`/
|
|
305
|
+
Prometheus は**本物のエンジニアのようにあなたにインタビューし**、スコープと曖昧さを特定し、コードに触れる前に検証済みの計画を `.omo/plans/` に書きます。`/ulw-execute` はその計画から **Atlas** のワークセッションを開始します。エージェントは作業を始める前に、自分が何を作るべきか正確に理解しています。
|
|
306
306
|
|
|
307
307
|
### スキル (Skills)
|
|
308
308
|
|
package/README.ko.md
CHANGED
|
@@ -134,7 +134,7 @@ curl -s https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/refs/head
|
|
|
134
134
|
|
|
135
135
|
익명 텔레메트리는 활성 설치 수(DAU/WAU/MAU) 집계를 위해 기본적으로 활성화되어 있습니다. 머신당 UTC 하루에 최대 1회만 이벤트가 전송되며, 해시된 설치 식별자를 사용하고 원시 호스트명은 절대 사용하지 않으며 PostHog person profile은 생성되지 않습니다. `OMO_SEND_ANONYMOUS_TELEMETRY=0` 또는 `OMO_DISABLE_POSTHOG=1`로 비활성화할 수 있습니다. [개인정보처리방침](docs/legal/privacy-policy.md)과 [서비스 이용약관](docs/legal/terms-of-service.md)을 참조하세요.
|
|
136
136
|
|
|
137
|
-
**Ultimate vs Light:** oh-my-openagent는 같은 제품의 두 에디션으로 출시됩니다. **Ultimate 에디션**(`bunx oh-my-openagent install` 또는 `--platform=opencode`, 기본값)은 OpenCode 위에서 풀 기능 — 11 agent, 54+ hook, Team Mode, 모든 MCP, 슬래시 명령, IntentGate 모드 — 을 제공합니다. **Light 에디션**(`npx lazycodex-ai install` 또는 `bunx oh-my-openagent install --platform=codex`)은 OpenAI Codex CLI의 플러그인 시스템에 깔끔히 포팅되는 핵심 컴포넌트(`rules`, `comment-checker`, `git-bash`, `lsp`, `ultrawork`, `ulw-loop`, `
|
|
137
|
+
**Ultimate vs Light:** oh-my-openagent는 같은 제품의 두 에디션으로 출시됩니다. **Ultimate 에디션**(`bunx oh-my-openagent install` 또는 `--platform=opencode`, 기본값)은 OpenCode 위에서 풀 기능 — 11 agent, 54+ hook, Team Mode, 모든 MCP, 슬래시 명령, IntentGate 모드 — 을 제공합니다. **Light 에디션**(`npx lazycodex-ai install` 또는 `bunx oh-my-openagent install --platform=codex`)은 OpenAI Codex CLI의 플러그인 시스템에 깔끔히 포팅되는 핵심 컴포넌트(`rules`, `comment-checker`, `git-bash`, `lsp`, `ultrawork`, `ulw-loop`, `ulw-execute-continuation`, `telemetry`)에 더해 `teammode`와 지원 컴포넌트(`bootstrap`, `codegraph`, `lcx` 등)를 제공하고, Codex 에이전트 TOML을 `~/.codex/agents/`에 설치합니다. 둘 다 설치하려면 `--platform=both`. Codex 전용 텔레메트리는 `OMO_CODEX_DISABLE_POSTHOG=1` 또는 `OMO_CODEX_SEND_ANONYMOUS_TELEMETRY=0`으로 비활성화할 수 있습니다.
|
|
138
138
|
|
|
139
139
|
---
|
|
140
140
|
|
|
@@ -166,7 +166,7 @@ Read this and tell me why it's not just another boilerplate: https://raw.githubu
|
|
|
166
166
|
| | 기능 | Editions | 하는 일 |
|
|
167
167
|
| :---: | :------------------------------------------------------- | :------: | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
168
168
|
| 🤖 | **Discipline Agents** | Ultimate | Sisyphus가 Hephaestus, Oracle, Librarian, Explore를 지휘합니다. 병렬로 도는 풀스택 AI 개발팀. |
|
|
169
|
-
| 🧩 | **Codex CLI Light Edition** | Light | OpenAI Codex CLI에서 동작하는 omo의 포팅 컴포넌트(rules, comment-checker, git-bash, LSP, ultrawork, ulw-loop,
|
|
169
|
+
| 🧩 | **Codex CLI Light Edition** | Light | OpenAI Codex CLI에서 동작하는 omo의 포팅 컴포넌트(rules, comment-checker, git-bash, LSP, ultrawork, ulw-loop, ulw-execute continuation, telemetry, teammode 등). 설치: `npx lazycodex-ai install`. |
|
|
170
170
|
| 👥 | **Team Mode** (v4.0, opt-in) | Ultimate | 리드 에이전트 + 최대 8명의 병렬 멤버, 실시간 tmux 시각화, 전용 `team_*` 도구. `hyperplan`(5명의 적대적 비평가)과 `security-research`(3명의 헌터 + 2명의 PoC 엔지니어)를 구동합니다. [문서 →](docs/guide/team-mode.md) |
|
|
171
171
|
| ⚡ | **`ultrawork` / `ulw`** | Both | 한 단어. 모든 에이전트(Ultimate)나 Codex `ultrawork` 컴포넌트(Light)가 켜집니다. 끝날 때까지 멈추지 않습니다. |
|
|
172
172
|
| 🚪 | **[IntentGate](https://factory.ai/news/terminal-bench)** | Ultimate | 분류하거나 행동하기 전에 사용자의 진짜 의도부터 분석합니다. 더 이상 문자 그대로의 오해석은 없습니다. (Light는 `ulw` / `ultrawork` 키워드만 인식.) |
|
|
@@ -303,7 +303,7 @@ project/
|
|
|
303
303
|
|
|
304
304
|
복잡한 작업인가요? 프롬프트 쓰고 기도하지 마세요.
|
|
305
305
|
|
|
306
|
-
Prometheus가 **진짜 엔지니어처럼 인터뷰**를 진행하고, 스코프와 모호한 부분을 짚어내고, 코드에 손대기 전에 검증된 계획을 `.omo/plans/`에 작성합니다. `/
|
|
306
|
+
Prometheus가 **진짜 엔지니어처럼 인터뷰**를 진행하고, 스코프와 모호한 부분을 짚어내고, 코드에 손대기 전에 검증된 계획을 `.omo/plans/`에 작성합니다. `/ulw-execute`는 그 계획으로 **Atlas** 작업 세션을 시작합니다. 에이전트는 뭘 만들지 알고 나서야 시작합니다.
|
|
307
307
|
|
|
308
308
|
### Skills
|
|
309
309
|
|
package/README.md
CHANGED
|
@@ -114,7 +114,7 @@ Install oh-my-openagent. Type `ultrawork`. Done.
|
|
|
114
114
|
oh-my-openagent ships in three editions of the same product: two plugins that load into a host you already run, plus one standalone edition.
|
|
115
115
|
|
|
116
116
|
- **Ultimate Edition (omo for OpenCode)** — full omo. 11 agents, 54+ lifecycle hooks, 5 built-in MCPs, all slash commands, Team Mode, `/goal`, ultrawork — everything. Hashline edits are opt-in (`hashline_edit: true`).
|
|
117
|
-
- **Light Edition (omo for Codex CLI)** — the portable components that fit Codex's plugin system: `rules`, `comment-checker`, `git-bash`, `lsp`, `ultrawork`, `ulw-loop`, `
|
|
117
|
+
- **Light Edition (omo for Codex CLI)** — the portable components that fit Codex's plugin system: `rules`, `comment-checker`, `git-bash`, `lsp`, `ultrawork`, `ulw-loop`, `ulw-execute-continuation`, and `telemetry` at the core, plus `teammode` and supporting components (`bootstrap`, `codegraph`, `lcx`, and more), plugin-scoped MCPs for `grep_app`, `context7`, `codegraph`, `git_bash`, and `lsp`, and the shared `ast-grep` skill. It installs Codex agent TOMLs into `~/.codex/agents/`. No OpenCode `team_*` tools — Codex CLI's own spawn/collaboration surface does that work.
|
|
118
118
|
- **Senpi Edition (standalone, beta)** — the native `omo` command with the OMO extension built in. It installs from `omo-ai@beta` rather than loading into OpenCode or Codex.
|
|
119
119
|
|
|
120
120
|
Pick the edition(s) you want.
|
|
@@ -224,7 +224,7 @@ Even with only the following subscriptions, `ultrawork` works well (this project
|
|
|
224
224
|
| | Feature | Edition | What it does |
|
|
225
225
|
| :---: | :------------------------------------------------------- | :------: | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
226
226
|
| 🤖 | **Discipline Agents** | Ultimate | Sisyphus orchestrates Hephaestus, Oracle, Librarian, Explore. A full AI dev team in parallel. |
|
|
227
|
-
| 🧩 | **Codex CLI Light Edition** | Light | Portable OMO components (rules, comment-checker, git-bash, LSP, ultrawork, ulw-loop,
|
|
227
|
+
| 🧩 | **Codex CLI Light Edition** | Light | Portable OMO components (rules, comment-checker, git-bash, LSP, ultrawork, ulw-loop, ulw-execute continuation, telemetry, teammode, and more) running inside OpenAI Codex CLI. Install via `npx lazycodex-ai install`. |
|
|
228
228
|
| 👥 | **Team Mode** (v4.0, opt-in) | Ultimate | Lead agent + up to 8 parallel members, real-time tmux visualization, dedicated `team_*` tools. Powers `hyperplan` (5 hostile critics) and `security-research` (3 hunters + 2 PoC engineers). [Docs →](docs/guide/team-mode.md) |
|
|
229
229
|
| ⚡ | **`ultrawork` / `ulw`** | Both | One word. Every agent activates. Doesn't stop until done. |
|
|
230
230
|
| 🚪 | **[IntentGate](https://factory.ai/news/terminal-bench)** | Ultimate | Analyzes true user intent before classifying or acting. No more literal misinterpretations. (Light edition only recognises the `ultrawork`/`ulw` keyword.) |
|
|
@@ -362,7 +362,7 @@ Agents auto-read relevant context. Zero manual management.
|
|
|
362
362
|
|
|
363
363
|
Complex task? Don't prompt and pray.
|
|
364
364
|
|
|
365
|
-
Prometheus **interviews you like a real engineer**, identifies scope and ambiguities, and writes a verified plan to `.omo/plans/` before touching code. `/
|
|
365
|
+
Prometheus **interviews you like a real engineer**, identifies scope and ambiguities, and writes a verified plan to `.omo/plans/` before touching code. `/ulw-execute` then starts an **Atlas** work session from that plan. The agent knows what it's building before it starts.
|
|
366
366
|
|
|
367
367
|
### Skills
|
|
368
368
|
|
package/README.ru.md
CHANGED
|
@@ -131,7 +131,7 @@ curl -s https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/refs/head
|
|
|
131
131
|
|
|
132
132
|
Анонимная телеметрия включена по умолчанию для подсчёта активных установок (DAU/WAU/MAU). Не более одного события на машину за UTC-сутки, использует хешированный идентификатор установки, никогда не использует исходное имя хоста, и не создаёт PostHog person profile. Можно отключить через `OMO_SEND_ANONYMOUS_TELEMETRY=0` или `OMO_DISABLE_POSTHOG=1`. См. [Политику конфиденциальности](docs/legal/privacy-policy.md) и [Условия обслуживания](docs/legal/terms-of-service.md).
|
|
133
133
|
|
|
134
|
-
**Ultimate и Light:** oh-my-openagent поставляется в двух редакциях одного продукта. **Ultimate** (`bunx oh-my-openagent install` или `--platform=opencode`, по умолчанию) — полнофункциональная редакция поверх OpenCode: 11 агентов, 54+ хука, Team Mode, все MCP, все слэш-команды, режимы IntentGate. **Light** (`npx lazycodex-ai install` или `bunx oh-my-openagent install --platform=codex`) — портируемые компоненты omo для системы плагинов OpenAI Codex CLI: ядро (`rules`, `comment-checker`, `git-bash`, `lsp`, `ultrawork`, `ulw-loop`, `
|
|
134
|
+
**Ultimate и Light:** oh-my-openagent поставляется в двух редакциях одного продукта. **Ultimate** (`bunx oh-my-openagent install` или `--platform=opencode`, по умолчанию) — полнофункциональная редакция поверх OpenCode: 11 агентов, 54+ хука, Team Mode, все MCP, все слэш-команды, режимы IntentGate. **Light** (`npx lazycodex-ai install` или `bunx oh-my-openagent install --platform=codex`) — портируемые компоненты omo для системы плагинов OpenAI Codex CLI: ядро (`rules`, `comment-checker`, `git-bash`, `lsp`, `ultrawork`, `ulw-loop`, `ulw-execute-continuation`, `telemetry`), а также `teammode` и вспомогательные компоненты (`bootstrap`, `codegraph`, `lcx` и другие); TOML-файлы Codex-агентов устанавливаются в `~/.codex/agents/`. Чтобы установить обе редакции одной командой, используйте `--platform=both`. Телеметрию только для Codex можно отключить через `OMO_CODEX_DISABLE_POSTHOG=1` или `OMO_CODEX_SEND_ANONYMOUS_TELEMETRY=0`.
|
|
135
135
|
|
|
136
136
|
------
|
|
137
137
|
|
|
@@ -164,7 +164,7 @@ Read this and tell me why it's not just another boilerplate: https://raw.githubu
|
|
|
164
164
|
| | Функция | Editions | Что делает |
|
|
165
165
|
| --- | -------------------------------------------------------- | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
166
166
|
| 🤖 | **Дисциплинированные агенты** | Ultimate | Sisyphus оркестрирует Hephaestus, Oracle, Librarian, Explore. Полноценная AI-команда разработки в параллельном режиме. |
|
|
167
|
-
| 🧩 | **Codex CLI Light Edition** | Light | Портируемые компоненты omo в OpenAI Codex CLI (rules, comment-checker, git-bash, LSP, ultrawork, ulw-loop,
|
|
167
|
+
| 🧩 | **Codex CLI Light Edition** | Light | Портируемые компоненты omo в OpenAI Codex CLI (rules, comment-checker, git-bash, LSP, ultrawork, ulw-loop, ulw-execute continuation, telemetry, teammode и другие). Установка: `npx lazycodex-ai install`. |
|
|
168
168
|
| 👥 | **Team Mode** (v4.0, opt-in) | Ultimate | Лид-агент + до 8 параллельных участников, визуализация в tmux в реальном времени, выделенные инструменты `team_*`. Питает `hyperplan` (5 враждебных критиков) и `security-research` (3 охотника + 2 PoC-инженера). [Документация →](docs/guide/team-mode.md) |
|
|
169
169
|
| ⚡ | **`ultrawork` / `ulw`** | Both | Одно слово. Все агенты (Ultimate) или Codex-компонент `ultrawork` (Light) активируются. Не останавливается, пока задача не выполнена. |
|
|
170
170
|
| 🚪 | **[IntentGate](https://factory.ai/news/terminal-bench)** | Ultimate | Анализирует истинное намерение пользователя перед классификацией и действием. Никаких буквальных искажений смысла. (Light распознаёт только ключевые слова `ulw` / `ultrawork`.) |
|
|
@@ -301,7 +301,7 @@ project/
|
|
|
301
301
|
|
|
302
302
|
Сложная задача? Не нужно молиться и надеяться на промпт.
|
|
303
303
|
|
|
304
|
-
Prometheus **интервьюирует вас как настоящий инженер**, определяет объём работ и неоднозначности и записывает проверенный план в `.omo/plans/` до прикосновения к коду. Затем `/
|
|
304
|
+
Prometheus **интервьюирует вас как настоящий инженер**, определяет объём работ и неоднозначности и записывает проверенный план в `.omo/plans/` до прикосновения к коду. Затем `/ulw-execute` запускает рабочую сессию **Atlas** по этому плану. Агент знает, что строит, прежде чем начать.
|
|
305
305
|
|
|
306
306
|
### Навыки
|
|
307
307
|
|
package/README.zh-cn.md
CHANGED
|
@@ -133,7 +133,7 @@ curl -s https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/refs/head
|
|
|
133
133
|
|
|
134
134
|
匿名遥测默认开启,用于统计活跃安装数(DAU/WAU/MAU)。每台机器每个 UTC 日最多发送一次事件,使用哈希化的安装标识符,绝不会使用原始主机名,且不会创建 PostHog person profile。可通过 `OMO_SEND_ANONYMOUS_TELEMETRY=0` 或 `OMO_DISABLE_POSTHOG=1` 禁用。详见 [隐私政策](docs/legal/privacy-policy.md) 和 [服务条款](docs/legal/terms-of-service.md)。
|
|
135
135
|
|
|
136
|
-
**Ultimate 与 Light:** oh-my-openagent 以同一产品的两个版本发布。**Ultimate 版本**(`bunx oh-my-openagent install` 或 `--platform=opencode`,默认值)在 OpenCode 上提供完整功能 —— 11 个智能体、54+ 个生命周期钩子、Team Mode、所有 MCP、所有斜杠命令、IntentGate 模式。**Light 版本**(`npx lazycodex-ai install` 或 `bunx oh-my-openagent install --platform=codex`)提供能够干净地移植到 OpenAI Codex CLI 插件系统的 核心组件(`rules`、`comment-checker`、`git-bash`、`lsp`、`ultrawork`、`ulw-loop`、`
|
|
136
|
+
**Ultimate 与 Light:** oh-my-openagent 以同一产品的两个版本发布。**Ultimate 版本**(`bunx oh-my-openagent install` 或 `--platform=opencode`,默认值)在 OpenCode 上提供完整功能 —— 11 个智能体、54+ 个生命周期钩子、Team Mode、所有 MCP、所有斜杠命令、IntentGate 模式。**Light 版本**(`npx lazycodex-ai install` 或 `bunx oh-my-openagent install --platform=codex`)提供能够干净地移植到 OpenAI Codex CLI 插件系统的 核心组件(`rules`、`comment-checker`、`git-bash`、`lsp`、`ultrawork`、`ulw-loop`、`ulw-execute-continuation`、`telemetry`),外加 `teammode` 和配套组件(`bootstrap`、`codegraph`、`lcx` 等),并会把 Codex 智能体 TOML 安装到 `~/.codex/agents/`。要同时安装两个版本,使用 `--platform=both`。Codex 专用遥测可通过 `OMO_CODEX_DISABLE_POSTHOG=1` 或 `OMO_CODEX_SEND_ANONYMOUS_TELEMETRY=0` 禁用。
|
|
137
137
|
|
|
138
138
|
---
|
|
139
139
|
|
|
@@ -171,7 +171,7 @@ Read this and tell me why it's not just another boilerplate: https://raw.githubu
|
|
|
171
171
|
| | 特性 | Editions | 功能说明 |
|
|
172
172
|
| :---: | :-------------------------------------------------------------- | :------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
173
173
|
| 🤖 | **自律军团 (Discipline Agents)** | Ultimate | Sisyphus 负责调度 Hephaestus、Oracle、Librarian 和 Explore。一支完整的 AI 开发团队并行工作。 |
|
|
174
|
-
| 🧩 | **Codex CLI Light Edition** | Light | 在 OpenAI Codex CLI 中运行的 omo 的可移植组件 (rules, comment-checker, git-bash, LSP, ultrawork, ulw-loop,
|
|
174
|
+
| 🧩 | **Codex CLI Light Edition** | Light | 在 OpenAI Codex CLI 中运行的 omo 的可移植组件 (rules, comment-checker, git-bash, LSP, ultrawork, ulw-loop, ulw-execute continuation, telemetry, teammode 等)。安装: `npx lazycodex-ai install`。 |
|
|
175
175
|
| 👥 | **Team Mode** (v4.0, 选择性启用) | Ultimate | 领导 Agent + 最多 8 个并行成员,实时 tmux 可视化,专用 `team_*` 工具家族。驱动 `hyperplan`(5 个敌对评论者) 和 `security-research`(3 个猎手 + 2 个 PoC 工程师)。[文档 →](docs/guide/team-mode.md) |
|
|
176
176
|
| ⚡ | **`ultrawork` / `ulw`** | Both | 一键触发,所有智能体(Ultimate)或 Codex `ultrawork` 组件(Light)出动。任务完成前绝不罢休。 |
|
|
177
177
|
| 🚪 | **[IntentGate 意图门](https://factory.ai/news/terminal-bench)** | Ultimate | 真正行动前,先分析用户的真实意图。不再有字面意义上的误解。(Light 仅识别 `ulw` / `ultrawork` 关键词。) |
|
|
@@ -308,7 +308,7 @@ Agent 会自动顺藤摸瓜加载对应的 Context,免去了你所有的手动
|
|
|
308
308
|
|
|
309
309
|
碰到了硬骨头?千万不要扔个 Prompt 就双手合十祈祷。
|
|
310
310
|
|
|
311
|
-
Prometheus **会像一个真实的主管那样去采访你**,主动深挖需求、指出模糊地带,并在改动哪怕一行代码之前把经过严密论证的计划写入 `.omo/plans/`。随后 `/
|
|
311
|
+
Prometheus **会像一个真实的主管那样去采访你**,主动深挖需求、指出模糊地带,并在改动哪怕一行代码之前把经过严密论证的计划写入 `.omo/plans/`。随后 `/ulw-execute` 基于该计划启动 **Atlas** 工作会话。你的 Agent 终于知道了自己在干嘛。
|
|
312
312
|
|
|
313
313
|
### 技能系统 (Skills)
|
|
314
314
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isExcludedFallbackLaneModel(model: string): boolean;
|
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.20",
|
|
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",
|
|
@@ -139,7 +139,7 @@ var init_package = __esm(() => {
|
|
|
139
139
|
"packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/cli.js",
|
|
140
140
|
"packages/omo-codex/plugin/components/lsp/dist/cli.js",
|
|
141
141
|
"packages/omo-codex/plugin/components/rules/dist/cli.js",
|
|
142
|
-
"packages/omo-codex/plugin/components/
|
|
142
|
+
"packages/omo-codex/plugin/components/ulw-execute-continuation/dist/cli.js",
|
|
143
143
|
"packages/omo-codex/plugin/components/teammode/dist/cli.js",
|
|
144
144
|
"packages/omo-codex/plugin/components/telemetry/dist/cli.js",
|
|
145
145
|
"packages/omo-codex/plugin/components/ultrawork/dist/cli.js",
|
|
@@ -235,7 +235,7 @@ var init_package = __esm(() => {
|
|
|
235
235
|
zod: "^4.4.3"
|
|
236
236
|
},
|
|
237
237
|
devDependencies: {
|
|
238
|
-
"@code-yeongyu/senpi": "2026.8.
|
|
238
|
+
"@code-yeongyu/senpi": "2026.8.25",
|
|
239
239
|
"@oh-my-opencode/agents-md-core": "workspace:*",
|
|
240
240
|
"@oh-my-opencode/ast-grep-mcp": "workspace:*",
|
|
241
241
|
"@oh-my-opencode/boulder-state": "workspace:*",
|
|
@@ -276,18 +276,18 @@ var init_package = __esm(() => {
|
|
|
276
276
|
typescript: "^7.0.2"
|
|
277
277
|
},
|
|
278
278
|
optionalDependencies: {
|
|
279
|
-
"oh-my-opencode-darwin-arm64": "5.0.0-beta.
|
|
280
|
-
"oh-my-opencode-darwin-x64": "5.0.0-beta.
|
|
281
|
-
"oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.
|
|
282
|
-
"oh-my-opencode-linux-arm64": "5.0.0-beta.
|
|
283
|
-
"oh-my-opencode-linux-arm64-musl": "5.0.0-beta.
|
|
284
|
-
"oh-my-opencode-linux-x64": "5.0.0-beta.
|
|
285
|
-
"oh-my-opencode-linux-x64-baseline": "5.0.0-beta.
|
|
286
|
-
"oh-my-opencode-linux-x64-musl": "5.0.0-beta.
|
|
287
|
-
"oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.
|
|
288
|
-
"oh-my-opencode-windows-arm64": "5.0.0-beta.
|
|
289
|
-
"oh-my-opencode-windows-x64": "5.0.0-beta.
|
|
290
|
-
"oh-my-opencode-windows-x64-baseline": "5.0.0-beta.
|
|
279
|
+
"oh-my-opencode-darwin-arm64": "5.0.0-beta.20",
|
|
280
|
+
"oh-my-opencode-darwin-x64": "5.0.0-beta.20",
|
|
281
|
+
"oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.20",
|
|
282
|
+
"oh-my-opencode-linux-arm64": "5.0.0-beta.20",
|
|
283
|
+
"oh-my-opencode-linux-arm64-musl": "5.0.0-beta.20",
|
|
284
|
+
"oh-my-opencode-linux-x64": "5.0.0-beta.20",
|
|
285
|
+
"oh-my-opencode-linux-x64-baseline": "5.0.0-beta.20",
|
|
286
|
+
"oh-my-opencode-linux-x64-musl": "5.0.0-beta.20",
|
|
287
|
+
"oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.20",
|
|
288
|
+
"oh-my-opencode-windows-arm64": "5.0.0-beta.20",
|
|
289
|
+
"oh-my-opencode-windows-x64": "5.0.0-beta.20",
|
|
290
|
+
"oh-my-opencode-windows-x64-baseline": "5.0.0-beta.20"
|
|
291
291
|
},
|
|
292
292
|
overrides: {
|
|
293
293
|
"@earendil-works/pi-agent-core": "0.84.2",
|
|
@@ -22768,124 +22768,6 @@ var init_internal_initiator_marker = __esm(() => {
|
|
|
22768
22768
|
INTERNAL_NOREPLY_MARKER_DETECT_PATTERN = /<!--\s*OMO_INTERNAL_NOREPLY\s*-->/;
|
|
22769
22769
|
});
|
|
22770
22770
|
|
|
22771
|
-
// packages/utils/src/migration/agent-names.ts
|
|
22772
|
-
function migrateAgentNames(agents) {
|
|
22773
|
-
const migrated = {};
|
|
22774
|
-
let changed = false;
|
|
22775
|
-
for (const [key, value] of Object.entries(agents)) {
|
|
22776
|
-
const newKey = AGENT_NAME_MAP[key.toLowerCase()] ?? AGENT_NAME_MAP[key] ?? key;
|
|
22777
|
-
if (newKey !== key) {
|
|
22778
|
-
changed = true;
|
|
22779
|
-
}
|
|
22780
|
-
migrated[newKey] = value;
|
|
22781
|
-
}
|
|
22782
|
-
return { migrated, changed };
|
|
22783
|
-
}
|
|
22784
|
-
var AGENT_NAME_MAP, BUILTIN_AGENT_NAMES;
|
|
22785
|
-
var init_agent_names = __esm(() => {
|
|
22786
|
-
AGENT_NAME_MAP = {
|
|
22787
|
-
omo: "sisyphus",
|
|
22788
|
-
OmO: "sisyphus",
|
|
22789
|
-
Sisyphus: "sisyphus",
|
|
22790
|
-
"Sisyphus (Ultraworker)": "sisyphus",
|
|
22791
|
-
sisyphus: "sisyphus",
|
|
22792
|
-
"Hephaestus (Deep Agent)": "hephaestus",
|
|
22793
|
-
"OmO-Plan": "prometheus",
|
|
22794
|
-
"omo-plan": "prometheus",
|
|
22795
|
-
"Planner-Sisyphus": "prometheus",
|
|
22796
|
-
"planner-sisyphus": "prometheus",
|
|
22797
|
-
"Prometheus - Plan Builder": "prometheus",
|
|
22798
|
-
"Prometheus (Plan Builder)": "prometheus",
|
|
22799
|
-
prometheus: "prometheus",
|
|
22800
|
-
"orchestrator-sisyphus": "atlas",
|
|
22801
|
-
Atlas: "atlas",
|
|
22802
|
-
"Atlas (Plan Executor)": "atlas",
|
|
22803
|
-
atlas: "atlas",
|
|
22804
|
-
"plan-consultant": "metis",
|
|
22805
|
-
"Metis - Plan Consultant": "metis",
|
|
22806
|
-
"Metis (Plan Consultant)": "metis",
|
|
22807
|
-
metis: "metis",
|
|
22808
|
-
"Momus - Plan Critic": "momus",
|
|
22809
|
-
"Momus (Plan Critic)": "momus",
|
|
22810
|
-
momus: "momus",
|
|
22811
|
-
"Sisyphus-Junior": "sisyphus-junior",
|
|
22812
|
-
"sisyphus-junior": "sisyphus-junior",
|
|
22813
|
-
build: "build",
|
|
22814
|
-
oracle: "oracle",
|
|
22815
|
-
librarian: "librarian",
|
|
22816
|
-
explore: "explore",
|
|
22817
|
-
"multimodal-looker": "multimodal-looker"
|
|
22818
|
-
};
|
|
22819
|
-
BUILTIN_AGENT_NAMES = new Set([
|
|
22820
|
-
"sisyphus",
|
|
22821
|
-
"oracle",
|
|
22822
|
-
"librarian",
|
|
22823
|
-
"explore",
|
|
22824
|
-
"multimodal-looker",
|
|
22825
|
-
"metis",
|
|
22826
|
-
"momus",
|
|
22827
|
-
"prometheus",
|
|
22828
|
-
"atlas",
|
|
22829
|
-
"build"
|
|
22830
|
-
]);
|
|
22831
|
-
});
|
|
22832
|
-
|
|
22833
|
-
// packages/utils/src/migration/hook-names.ts
|
|
22834
|
-
var HOOK_NAME_MAP;
|
|
22835
|
-
var init_hook_names = __esm(() => {
|
|
22836
|
-
HOOK_NAME_MAP = {
|
|
22837
|
-
"anthropic-auto-compact": "anthropic-context-window-limit-recovery",
|
|
22838
|
-
"sisyphus-orchestrator": "atlas",
|
|
22839
|
-
"sisyphus-gpt-hephaestus-reminder": "no-sisyphus-gpt",
|
|
22840
|
-
"empty-message-sanitizer": null,
|
|
22841
|
-
"delegate-task-english-directive": null,
|
|
22842
|
-
"gpt-permission-continuation": null,
|
|
22843
|
-
"thinking-block-validator": null,
|
|
22844
|
-
"session-recovery": null
|
|
22845
|
-
};
|
|
22846
|
-
});
|
|
22847
|
-
|
|
22848
|
-
// packages/utils/src/migration/model-versions.ts
|
|
22849
|
-
function migrationKey(oldModel, newModel) {
|
|
22850
|
-
return `model-version:${oldModel}->${newModel}`;
|
|
22851
|
-
}
|
|
22852
|
-
function migrateModelVersions(configs, appliedMigrations) {
|
|
22853
|
-
const migrated = {};
|
|
22854
|
-
let changed = false;
|
|
22855
|
-
const newMigrations = [];
|
|
22856
|
-
for (const [key, value] of Object.entries(configs)) {
|
|
22857
|
-
if (value && typeof value === "object" && !Array.isArray(value)) {
|
|
22858
|
-
const config3 = value;
|
|
22859
|
-
if (typeof config3.model === "string" && !CURRENT_USER_SELECTABLE_MODELS.has(config3.model) && MODEL_VERSION_MAP[config3.model]) {
|
|
22860
|
-
const oldModel = config3.model;
|
|
22861
|
-
const newModel = MODEL_VERSION_MAP[oldModel];
|
|
22862
|
-
const mKey = migrationKey(oldModel, newModel);
|
|
22863
|
-
if (appliedMigrations?.has(mKey)) {
|
|
22864
|
-
migrated[key] = value;
|
|
22865
|
-
continue;
|
|
22866
|
-
}
|
|
22867
|
-
migrated[key] = { ...config3, model: newModel };
|
|
22868
|
-
changed = true;
|
|
22869
|
-
newMigrations.push(mKey);
|
|
22870
|
-
continue;
|
|
22871
|
-
}
|
|
22872
|
-
}
|
|
22873
|
-
migrated[key] = value;
|
|
22874
|
-
}
|
|
22875
|
-
return { migrated, changed, newMigrations };
|
|
22876
|
-
}
|
|
22877
|
-
var MODEL_VERSION_MAP, CURRENT_USER_SELECTABLE_MODELS;
|
|
22878
|
-
var init_model_versions = __esm(() => {
|
|
22879
|
-
MODEL_VERSION_MAP = {
|
|
22880
|
-
"anthropic/claude-opus-4-4": "anthropic/claude-opus-4-8"
|
|
22881
|
-
};
|
|
22882
|
-
CURRENT_USER_SELECTABLE_MODELS = new Set([
|
|
22883
|
-
"anthropic/claude-opus-4-5",
|
|
22884
|
-
"anthropic/claude-opus-4-6",
|
|
22885
|
-
"anthropic/claude-sonnet-4-5"
|
|
22886
|
-
]);
|
|
22887
|
-
});
|
|
22888
|
-
|
|
22889
22771
|
// packages/utils/src/migration/agent-category.ts
|
|
22890
22772
|
function configureMigrationCategoryDefaults(defaults) {
|
|
22891
22773
|
categoryDefaults = defaults ?? {};
|
|
@@ -84994,6 +84876,18 @@ var init_fallback_chain_resolution = __esm(() => {
|
|
|
84994
84876
|
init_provider_model_id_transform2();
|
|
84995
84877
|
});
|
|
84996
84878
|
|
|
84879
|
+
// packages/omo-opencode/src/cli/fallback-lane-policy.ts
|
|
84880
|
+
function isExcludedFallbackLaneModel(model) {
|
|
84881
|
+
const slashIndex = model.indexOf("/");
|
|
84882
|
+
if (slashIndex <= 0)
|
|
84883
|
+
return false;
|
|
84884
|
+
return EXCLUDED_FALLBACK_PROVIDERS.has(model.slice(0, slashIndex).toLowerCase());
|
|
84885
|
+
}
|
|
84886
|
+
var EXCLUDED_FALLBACK_PROVIDERS;
|
|
84887
|
+
var init_fallback_lane_policy = __esm(() => {
|
|
84888
|
+
EXCLUDED_FALLBACK_PROVIDERS = new Set(["openrouter", "opencode", "vercel"]);
|
|
84889
|
+
});
|
|
84890
|
+
|
|
84997
84891
|
// packages/omo-opencode/src/cli/model-fallback.ts
|
|
84998
84892
|
function resolveCompatibleFallbackSettings(providerID, modelID, desired) {
|
|
84999
84893
|
const compatibility = resolveCompatibleModelSettings({
|
|
@@ -85053,7 +84947,7 @@ function attachFallbackModels(config3, fallbackChain, availability) {
|
|
|
85053
84947
|
if (primaryIndex === -1) {
|
|
85054
84948
|
return config3;
|
|
85055
84949
|
}
|
|
85056
|
-
const fallbackModels = uniqueFallbacks.slice(primaryIndex + 1);
|
|
84950
|
+
const fallbackModels = uniqueFallbacks.slice(primaryIndex + 1).filter((entry) => !isExcludedFallbackLaneModel(entry.model));
|
|
85057
84951
|
if (fallbackModels.length === 0) {
|
|
85058
84952
|
return config3;
|
|
85059
84953
|
}
|
|
@@ -85064,7 +84958,7 @@ function attachFallbackModels(config3, fallbackChain, availability) {
|
|
|
85064
84958
|
}
|
|
85065
84959
|
function attachAllFallbackModels(config3, fallbackChain, availability) {
|
|
85066
84960
|
const uniqueFallbacks = collectAvailableFallbacks(fallbackChain, availability);
|
|
85067
|
-
const fallbackModels = uniqueFallbacks.filter((entry) => entry.model !== config3.model);
|
|
84961
|
+
const fallbackModels = uniqueFallbacks.filter((entry) => entry.model !== config3.model).filter((entry) => !isExcludedFallbackLaneModel(entry.model));
|
|
85068
84962
|
if (fallbackModels.length === 0) {
|
|
85069
84963
|
return config3;
|
|
85070
84964
|
}
|
|
@@ -85178,6 +85072,7 @@ var init_model_fallback = __esm(() => {
|
|
|
85178
85072
|
init_provider_availability();
|
|
85179
85073
|
init_fallback_chain_resolution();
|
|
85180
85074
|
init_provider_model_id_transform2();
|
|
85075
|
+
init_fallback_lane_policy();
|
|
85181
85076
|
});
|
|
85182
85077
|
|
|
85183
85078
|
// packages/omo-opencode/src/cli/config-manager/generate-omo-config.ts
|
|
@@ -85590,58 +85485,18 @@ var init_deep_diff = __esm(() => {
|
|
|
85590
85485
|
});
|
|
85591
85486
|
|
|
85592
85487
|
// packages/omo-opencode/src/config-migration/transform-opencode.ts
|
|
85593
|
-
function
|
|
85594
|
-
if (!Array.isArray(value))
|
|
85595
|
-
return value;
|
|
85596
|
-
return value.map((entry) => {
|
|
85597
|
-
if (typeof entry !== "string")
|
|
85598
|
-
return entry;
|
|
85599
|
-
return AGENT_NAME_MAP[entry.toLowerCase()] ?? AGENT_NAME_MAP[entry] ?? entry;
|
|
85600
|
-
});
|
|
85601
|
-
}
|
|
85602
|
-
function replaceDisabledHooks(value) {
|
|
85603
|
-
if (!Array.isArray(value))
|
|
85604
|
-
return value;
|
|
85605
|
-
return value.flatMap((entry) => {
|
|
85606
|
-
if (typeof entry !== "string")
|
|
85607
|
-
return [entry];
|
|
85608
|
-
const replacement = HOOK_NAME_MAP[entry];
|
|
85609
|
-
return replacement === null ? [] : [replacement ?? entry];
|
|
85610
|
-
});
|
|
85611
|
-
}
|
|
85612
|
-
function transformLegacyKeys(value, history) {
|
|
85488
|
+
function transformLegacyKeys(value) {
|
|
85613
85489
|
const config3 = withoutLegacyMetadata(value);
|
|
85614
|
-
|
|
85615
|
-
|
|
85616
|
-
if (isPlainRecord3(agents)) {
|
|
85617
|
-
const namedAgents = migrateAgentNames(agents).migrated;
|
|
85618
|
-
config3.agents = migrateModelVersions(namedAgents, appliedMigrations).migrated;
|
|
85619
|
-
}
|
|
85620
|
-
const categories = config3.categories;
|
|
85621
|
-
if (isPlainRecord3(categories)) {
|
|
85622
|
-
config3.categories = migrateModelVersions(categories, appliedMigrations).migrated;
|
|
85623
|
-
}
|
|
85490
|
+
delete config3.agents;
|
|
85491
|
+
delete config3.categories;
|
|
85624
85492
|
if (config3.omo_agent !== undefined) {
|
|
85625
85493
|
config3.sisyphus_agent = config3.omo_agent;
|
|
85626
85494
|
delete config3.omo_agent;
|
|
85627
85495
|
}
|
|
85628
|
-
|
|
85629
|
-
if (isPlainRecord3(config3.experimental) && Object.hasOwn(config3.experimental, "hashline_edit")) {
|
|
85630
|
-
if (config3.hashline_edit === undefined)
|
|
85631
|
-
config3.hashline_edit = config3.experimental.hashline_edit;
|
|
85632
|
-
delete config3.experimental.hashline_edit;
|
|
85633
|
-
if (Object.keys(config3.experimental).length === 0)
|
|
85634
|
-
delete config3.experimental;
|
|
85635
|
-
}
|
|
85636
|
-
if (config3.disabled_agents !== undefined)
|
|
85637
|
-
config3.disabled_agents = replaceDisabledAgents(config3.disabled_agents);
|
|
85638
|
-
if (config3.disabled_hooks !== undefined)
|
|
85639
|
-
config3.disabled_hooks = replaceDisabledHooks(config3.disabled_hooks);
|
|
85640
|
-
return config3;
|
|
85496
|
+
return Object.fromEntries(Object.entries(config3).filter(([key]) => MIGRATED_OPENCODE_FIELDS.has(key)));
|
|
85641
85497
|
}
|
|
85642
85498
|
function loadedConfigs(discovered, sources) {
|
|
85643
85499
|
const metadataByPath = new Map(discovered.map((source) => [source.path, source]));
|
|
85644
|
-
const historyByConfigPath = legacyMigrationHistory(discovered, sources);
|
|
85645
85500
|
const configs = [];
|
|
85646
85501
|
for (const source of sources) {
|
|
85647
85502
|
const metadata = metadataByPath.get(source.path);
|
|
@@ -85649,7 +85504,7 @@ function loadedConfigs(discovered, sources) {
|
|
|
85649
85504
|
continue;
|
|
85650
85505
|
configs.push({
|
|
85651
85506
|
metadata,
|
|
85652
|
-
value: transformLegacyKeys(source.value
|
|
85507
|
+
value: transformLegacyKeys(source.value)
|
|
85653
85508
|
});
|
|
85654
85509
|
}
|
|
85655
85510
|
return configs;
|
|
@@ -85701,13 +85556,17 @@ function transformProjectSources(input, projectRoot) {
|
|
|
85701
85556
|
function transformOpenCodeSources(input) {
|
|
85702
85557
|
return input.scope.kind === "user" ? transformUserSources(input.discovered, input.sources) : transformProjectSources(input, input.scope.projectRoot);
|
|
85703
85558
|
}
|
|
85559
|
+
var MIGRATED_OPENCODE_FIELDS;
|
|
85704
85560
|
var init_transform_opencode = __esm(() => {
|
|
85705
|
-
init_agent_names();
|
|
85706
|
-
init_hook_names();
|
|
85707
|
-
init_model_versions();
|
|
85708
85561
|
init_deep_diff();
|
|
85709
85562
|
init_legacy_history();
|
|
85710
85563
|
init_record_values();
|
|
85564
|
+
MIGRATED_OPENCODE_FIELDS = new Set([
|
|
85565
|
+
"disabled_providers",
|
|
85566
|
+
"model_fallback",
|
|
85567
|
+
"models",
|
|
85568
|
+
"sisyphus_agent"
|
|
85569
|
+
]);
|
|
85711
85570
|
});
|
|
85712
85571
|
|
|
85713
85572
|
// packages/omo-opencode/src/config-migration/reasoning-unification.ts
|
|
@@ -94459,7 +94318,7 @@ var package_default2;
|
|
|
94459
94318
|
var init_package2 = __esm(() => {
|
|
94460
94319
|
package_default2 = {
|
|
94461
94320
|
name: "@oh-my-opencode/omo-codex",
|
|
94462
|
-
version: "5.0.0-beta.
|
|
94321
|
+
version: "5.0.0-beta.20",
|
|
94463
94322
|
type: "module",
|
|
94464
94323
|
private: true,
|
|
94465
94324
|
description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
|
|
@@ -98387,9 +98246,9 @@ var LEGACY_CODEX_COMPONENT_BINS = [
|
|
|
98387
98246
|
{ name: "codex-comment-checker", component: "comment-checker" },
|
|
98388
98247
|
{ name: "codex-lsp", component: "lsp" },
|
|
98389
98248
|
{ name: "codex-rules", component: "rules" },
|
|
98390
|
-
{ name: "codex-start-work-continuation", component: "start-work-continuation" },
|
|
98391
98249
|
{ name: "codex-telemetry", component: "telemetry" },
|
|
98392
|
-
{ name: "codex-ultrawork", component: "ultrawork" }
|
|
98250
|
+
{ name: "codex-ultrawork", component: "ultrawork" },
|
|
98251
|
+
{ name: "codex-ulw-execute-continuation", component: "ulw-execute-continuation" }
|
|
98393
98252
|
];
|
|
98394
98253
|
var LEGACY_CODEX_COMPONENT_BIN_NAMES = LEGACY_CODEX_COMPONENT_BINS.map((entry) => entry.name);
|
|
98395
98254
|
function isLegacyCodexBinTarget(binName, target) {
|
|
@@ -102947,9 +102806,9 @@ var MANAGED_CODEX_BIN_NAMES = new Set([
|
|
|
102947
102806
|
"omo-git-bash-hook",
|
|
102948
102807
|
"omo-lsp",
|
|
102949
102808
|
"omo-rules",
|
|
102950
|
-
"omo-start-work-continuation",
|
|
102951
102809
|
"omo-telemetry",
|
|
102952
102810
|
"omo-ultrawork",
|
|
102811
|
+
"omo-ulw-execute-continuation",
|
|
102953
102812
|
"omo-ulw-loop",
|
|
102954
102813
|
"lazycodex-executor-verify",
|
|
102955
102814
|
"ulw",
|
|
@@ -103432,6 +103291,7 @@ function localLauncherCmdPath(homeDir = homedir10()) {
|
|
|
103432
103291
|
function renderLocalLauncher(options) {
|
|
103433
103292
|
const brand = {
|
|
103434
103293
|
name: "OmO",
|
|
103294
|
+
command: "omo",
|
|
103435
103295
|
displayVersion: options.version ?? "local",
|
|
103436
103296
|
configDir: ".omo",
|
|
103437
103297
|
flatLayout: false,
|
|
@@ -103633,9 +103493,9 @@ var REQUIRED_PLUGIN_ARTIFACTS = [
|
|
|
103633
103493
|
join62("skills", "refactor", "SKILL.md"),
|
|
103634
103494
|
join62("skills", "remove-ai-slops", "SKILL.md"),
|
|
103635
103495
|
join62("skills", "review-work", "SKILL.md"),
|
|
103636
|
-
join62("skills", "start-work", "SKILL.md"),
|
|
103637
103496
|
join62("skills", "ultimate-browsing", "SKILL.md"),
|
|
103638
103497
|
join62("skills", "ultrawork", "SKILL.md"),
|
|
103498
|
+
join62("skills", "ulw-execute", "SKILL.md"),
|
|
103639
103499
|
join62("skills", "ulw-loop", "SKILL.md"),
|
|
103640
103500
|
join62("skills", "ulw-plan", "SKILL.md"),
|
|
103641
103501
|
join62("skills", "ulw-research", "SKILL.md"),
|
|
@@ -107215,7 +107075,7 @@ init_zod();
|
|
|
107215
107075
|
var BuiltinCommandNameSchema = exports_external.enum([
|
|
107216
107076
|
"goal",
|
|
107217
107077
|
"refactor",
|
|
107218
|
-
"
|
|
107078
|
+
"ulw-execute",
|
|
107219
107079
|
"stop-continuation",
|
|
107220
107080
|
"remove-ai-slops",
|
|
107221
107081
|
"hyperplan"
|
|
@@ -107341,7 +107201,7 @@ var HookNameSchema = exports_external.enum([
|
|
|
107341
107201
|
"no-sisyphus-gpt",
|
|
107342
107202
|
"no-hephaestus-non-gpt",
|
|
107343
107203
|
"hephaestus-agents-md-injector",
|
|
107344
|
-
"
|
|
107204
|
+
"ulw-execute",
|
|
107345
107205
|
"atlas",
|
|
107346
107206
|
"unstable-agent-babysitter",
|
|
107347
107207
|
"task-resume-info",
|
|
@@ -107552,9 +107412,9 @@ var TuiConfigSchema = exports_external.object({
|
|
|
107552
107412
|
sidebar: TuiSidebarConfigSchema.default({ enabled: true })
|
|
107553
107413
|
});
|
|
107554
107414
|
|
|
107555
|
-
// packages/omo-opencode/src/config/schema/
|
|
107415
|
+
// packages/omo-opencode/src/config/schema/ulw-execute.ts
|
|
107556
107416
|
init_zod();
|
|
107557
|
-
var
|
|
107417
|
+
var UlwExecuteConfigSchema = exports_external.object({
|
|
107558
107418
|
auto_commit: exports_external.boolean().default(true)
|
|
107559
107419
|
});
|
|
107560
107420
|
|
|
@@ -107614,7 +107474,8 @@ var OhMyOpenCodeConfigSchema = exports_external.object({
|
|
|
107614
107474
|
tmux: TmuxConfigSchema.optional(),
|
|
107615
107475
|
tui: TuiConfigSchema.default({ sidebar: { enabled: true } }).optional(),
|
|
107616
107476
|
sisyphus: SisyphusConfigSchema.optional(),
|
|
107617
|
-
|
|
107477
|
+
ulw_execute: UlwExecuteConfigSchema.optional(),
|
|
107478
|
+
start_work: UlwExecuteConfigSchema.optional(),
|
|
107618
107479
|
default_mode: DefaultModeConfigSchema.optional(),
|
|
107619
107480
|
_migrations: exports_external.array(exports_external.string()).optional()
|
|
107620
107481
|
});
|
|
@@ -107705,6 +107566,21 @@ function materializeAgentModelChains(config4) {
|
|
|
107705
107566
|
}));
|
|
107706
107567
|
return changed ? { ...config4, agents } : config4;
|
|
107707
107568
|
}
|
|
107569
|
+
var START_WORK_DEPRECATION_MESSAGE = 'config key "start_work" is deprecated, rename to "ulw_execute" - will be removed next release';
|
|
107570
|
+
var deprecationWarningSink = log2;
|
|
107571
|
+
function warnLegacyUlwExecuteKey(views) {
|
|
107572
|
+
for (const view of views) {
|
|
107573
|
+
if (!Object.hasOwn(view.config, "start_work"))
|
|
107574
|
+
continue;
|
|
107575
|
+
deprecationWarningSink(`[config] ${shortPath(view.path)}: ${START_WORK_DEPRECATION_MESSAGE}`);
|
|
107576
|
+
}
|
|
107577
|
+
}
|
|
107578
|
+
function migrateLegacyUlwExecuteKey(config4) {
|
|
107579
|
+
const legacy = config4.start_work;
|
|
107580
|
+
if (legacy === undefined || config4.ulw_execute !== undefined)
|
|
107581
|
+
return config4;
|
|
107582
|
+
return { ...config4, ulw_execute: legacy };
|
|
107583
|
+
}
|
|
107708
107584
|
function migrateRalphLoopConfig(config4) {
|
|
107709
107585
|
const legacy = config4.ralph_loop;
|
|
107710
107586
|
if (legacy === undefined)
|
|
@@ -107733,11 +107609,12 @@ function validatePluginConfig(directory, environment2 = process.env) {
|
|
|
107733
107609
|
const firstView = views[0];
|
|
107734
107610
|
const userConfig = parseConfig(chain.protectedUserView);
|
|
107735
107611
|
const config4 = applyDisabledProviders(materializeAgentModelChains(protectUserFields(mergeViews(views), userConfig)));
|
|
107612
|
+
warnLegacyUlwExecuteKey(chain.views);
|
|
107736
107613
|
return {
|
|
107737
107614
|
valid: messages.length === 0,
|
|
107738
107615
|
messages,
|
|
107739
107616
|
path: chainMessages.length > 0 ? chain.diagnostics[0]?.path ?? null : firstFailingView?.path ?? firstView?.path ?? null,
|
|
107740
|
-
config: migrateRalphLoopConfig(config4)
|
|
107617
|
+
config: migrateRalphLoopConfig(migrateLegacyUlwExecuteKey(config4))
|
|
107741
107618
|
};
|
|
107742
107619
|
}
|
|
107743
107620
|
|
|
@@ -111834,7 +111711,7 @@ var CODEX_BIN_NAMES = [
|
|
|
111834
111711
|
"omo-lsp",
|
|
111835
111712
|
"omo-comment-checker",
|
|
111836
111713
|
"omo-ultrawork",
|
|
111837
|
-
"omo-
|
|
111714
|
+
"omo-ulw-execute-continuation",
|
|
111838
111715
|
"omo-telemetry",
|
|
111839
111716
|
"omo-git-bash-hook"
|
|
111840
111717
|
];
|
|
@@ -15,7 +15,7 @@ export declare const EXPECTED_OMO_COMPONENT_BINS: readonly [{
|
|
|
15
15
|
readonly name: "omo-rules";
|
|
16
16
|
readonly target: string;
|
|
17
17
|
}, {
|
|
18
|
-
readonly name: "omo-
|
|
18
|
+
readonly name: "omo-ulw-execute-continuation";
|
|
19
19
|
readonly target: string;
|
|
20
20
|
}, {
|
|
21
21
|
readonly name: "omo-telemetry";
|