lazycodex-ai 5.0.0-beta.86 → 5.0.0-beta.88
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/dist/cli/index.js +102 -79
- package/dist/cli-node/index.js +102 -79
- package/package.json +1 -1
- package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +2 -0
- 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/bundled-rules/hephaestus/gpt-6.md +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/README.md +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/agents/plan.toml +2 -2
- package/packages/omo-codex/plugin/components/ultrawork/dist/cli.js +63 -89
- 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/src/directive-content.ts +1 -1
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/directive.md +2 -2
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/directive.md +63 -89
- package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +5 -5
- package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/skills/ulw-loop/references/define-goal.md +2 -3
- package/packages/omo-codex/plugin/components/ulw-loop/skills/ulw-loop/references/full-workflow.md +2 -2
- 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/post-tool-use-recording-spawn-admission.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-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/plugin/scripts/materialize-shared-upstreams.mjs +8 -2
- package/packages/omo-codex/plugin/scripts/sync-skills.mjs +2 -2
- package/packages/omo-codex/plugin/skills/browser/ATTRIBUTION.md +26 -14
- package/packages/omo-codex/plugin/skills/browser/SKILL.md +65 -52
- package/packages/omo-codex/plugin/skills/browser/references/commands.md +81 -66
- package/packages/omo-codex/plugin/skills/browser/references/install.md +31 -34
- package/packages/omo-codex/plugin/skills/browser/references/owned-engine/README.md +41 -21
- package/packages/omo-codex/plugin/skills/browser/references/owned-engine/frames-and-humans.md +33 -20
- package/packages/omo-codex/plugin/skills/browser/references/owned-engine/ladder.md +24 -22
- package/packages/omo-codex/plugin/skills/browser/references/owned-engine/network.md +35 -15
- package/packages/omo-codex/plugin/skills/browser/references/recipes/1password.md +13 -11
- package/packages/omo-codex/plugin/skills/browser/references/remote.md +5 -4
- package/packages/omo-codex/plugin/skills/browser/runtime/omowright/index.js +1534 -0
- package/packages/omo-codex/plugin/skills/browser/runtime/omowright/manifest.json +9 -0
- package/packages/omo-codex/plugin/skills/browser/runtime/omowright/page-bundle.js +1395 -0
- package/packages/omo-codex/plugin/skills/browser/scripts/browser-doctor.mjs +37 -32
- package/packages/omo-codex/plugin/skills/browser/scripts/browser-install.mjs +31 -44
- package/packages/omo-codex/plugin/skills/browser/scripts/omowright.mjs +25 -0
- package/packages/omo-codex/plugin/skills/debugging/SKILL.md +2 -2
- package/packages/omo-codex/plugin/skills/debugging/references/methodology/06-fix.md +3 -3
- package/packages/omo-codex/plugin/skills/debugging/references/methodology/08-qa.md +1 -1
- package/packages/omo-codex/plugin/skills/debugging/references/tools/browser-qa.md +104 -0
- package/packages/omo-codex/plugin/skills/frontend/SKILL.md +1 -1
- package/packages/omo-codex/plugin/skills/frontend/references/design/ambience-skill.md +2 -1
- package/packages/omo-codex/plugin/skills/frontend/references/design/clone-from-url.md +1 -1
- package/packages/omo-codex/plugin/skills/frontend/references/design/design-system-architecture.md +30 -7
- package/packages/omo-codex/plugin/skills/frontend/references/design/interaction-skill.md +17 -5
- package/packages/omo-codex/plugin/skills/programming/SKILL.md +12 -18
- package/packages/omo-codex/plugin/skills/programming/references/rust/README.md +43 -15
- package/packages/omo-codex/plugin/skills/programming/references/rust/api-design.md +81 -0
- package/packages/omo-codex/plugin/skills/programming/references/rust/async-tokio.md +60 -28
- package/packages/omo-codex/plugin/skills/programming/references/rust/axum-stack.md +1 -13
- package/packages/omo-codex/plugin/skills/programming/references/rust/cargo-strict.md +44 -8
- package/packages/omo-codex/plugin/skills/programming/references/rust/clap-stack.md +8 -3
- package/packages/omo-codex/plugin/skills/programming/references/rust/concurrency.md +66 -52
- package/packages/omo-codex/plugin/skills/programming/references/rust/libraries.md +35 -25
- package/packages/omo-codex/plugin/skills/programming/references/rust/macros.md +63 -0
- package/packages/omo-codex/plugin/skills/programming/references/rust/one-liners.md +5 -3
- package/packages/omo-codex/plugin/skills/programming/references/rust/proptest-insta.md +8 -0
- package/packages/omo-codex/plugin/skills/programming/references/rust/type-state.md +50 -12
- package/packages/omo-codex/plugin/skills/programming/references/rust/unsafe-discipline.md +34 -6
- package/packages/omo-codex/plugin/skills/programming/references/rust/zero-cost-safety.md +62 -52
- package/packages/omo-codex/plugin/skills/programming/references/rust-ub/miri-sanitizers-loom.md +1 -1
- package/packages/omo-codex/plugin/skills/programming/references/rust-ub/ub-taxonomy.md +6 -3
- package/packages/omo-codex/plugin/skills/programming/scripts/rust/check-no-excuse-rules.sh +86 -75
- package/packages/omo-codex/plugin/skills/programming/scripts/rust/new-project.py +31 -28
- package/packages/omo-codex/plugin/skills/review-work/SKILL.md +1 -1
- package/packages/omo-codex/plugin/skills/ultimate-browsing/SKILL.md +27 -20
- package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/AGENTS.md +1 -1
- package/packages/omo-codex/plugin/skills/ultimate-browsing/references/chrome-stealth.md +32 -100
- package/packages/omo-codex/plugin/skills/ultimate-browsing/references/insane-search/README.md +5 -11
- package/packages/omo-codex/plugin/skills/ultimate-browsing/references/insane-search/playwright.md +20 -37
- package/packages/omo-codex/plugin/skills/ultrawork/SKILL.md +63 -89
- package/packages/omo-codex/plugin/skills/ulw-execute/SKILL.md +4 -4
- package/packages/omo-codex/plugin/skills/ulw-loop/references/define-goal.md +2 -3
- package/packages/omo-codex/plugin/skills/ulw-loop/references/full-workflow.md +2 -2
- package/packages/omo-codex/plugin/skills/visual-qa/SKILL.md +1 -1
- package/packages/omo-codex/plugin/skills/visual-qa/references/browser-setup.md +46 -46
- package/packages/omo-codex/plugin/test/sync-skills-test-support.mjs +2 -2
- package/packages/omo-codex/scripts/install-dist/install-local.mjs +4 -2
- package/packages/prompts-core/prompts/ultrawork/codex.md +63 -89
- package/packages/shared-skills/skills/browser/ATTRIBUTION.md +26 -14
- package/packages/shared-skills/skills/browser/SKILL.md +65 -52
- package/packages/shared-skills/skills/browser/references/commands.md +81 -66
- package/packages/shared-skills/skills/browser/references/install.md +31 -34
- package/packages/shared-skills/skills/browser/references/owned-engine/README.md +41 -21
- package/packages/shared-skills/skills/browser/references/owned-engine/frames-and-humans.md +33 -20
- package/packages/shared-skills/skills/browser/references/owned-engine/ladder.md +24 -22
- package/packages/shared-skills/skills/browser/references/owned-engine/network.md +35 -15
- package/packages/shared-skills/skills/browser/references/recipes/1password.md +13 -11
- package/packages/shared-skills/skills/browser/references/remote.md +5 -4
- package/packages/shared-skills/skills/browser/runtime/omowright/index.js +1534 -0
- package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +9 -0
- package/packages/shared-skills/skills/browser/runtime/omowright/page-bundle.js +1395 -0
- package/packages/shared-skills/skills/browser/scripts/browser-doctor.mjs +37 -32
- package/packages/shared-skills/skills/browser/scripts/browser-install.mjs +31 -44
- package/packages/shared-skills/skills/browser/scripts/omowright.mjs +25 -0
- package/packages/shared-skills/skills/debugging/SKILL.md +2 -2
- package/packages/shared-skills/skills/debugging/references/methodology/06-fix.md +3 -3
- package/packages/shared-skills/skills/debugging/references/methodology/08-qa.md +1 -1
- package/packages/shared-skills/skills/debugging/references/tools/browser-qa.md +104 -0
- package/packages/shared-skills/skills/frontend/SKILL.md +1 -1
- package/packages/shared-skills/skills/frontend/references/design/ambience-skill.md +2 -1
- package/packages/shared-skills/skills/frontend/references/design/clone-from-url.md +1 -1
- package/packages/shared-skills/skills/frontend/references/design/design-system-architecture.md +30 -7
- package/packages/shared-skills/skills/frontend/references/design/interaction-skill.md +17 -5
- package/packages/shared-skills/skills/programming/SKILL.md +12 -18
- package/packages/shared-skills/skills/programming/references/rust/README.md +43 -15
- package/packages/shared-skills/skills/programming/references/rust/api-design.md +81 -0
- package/packages/shared-skills/skills/programming/references/rust/async-tokio.md +60 -28
- package/packages/shared-skills/skills/programming/references/rust/axum-stack.md +1 -13
- package/packages/shared-skills/skills/programming/references/rust/cargo-strict.md +44 -8
- package/packages/shared-skills/skills/programming/references/rust/clap-stack.md +8 -3
- package/packages/shared-skills/skills/programming/references/rust/concurrency.md +66 -52
- package/packages/shared-skills/skills/programming/references/rust/libraries.md +35 -25
- package/packages/shared-skills/skills/programming/references/rust/macros.md +63 -0
- package/packages/shared-skills/skills/programming/references/rust/one-liners.md +5 -3
- package/packages/shared-skills/skills/programming/references/rust/proptest-insta.md +8 -0
- package/packages/shared-skills/skills/programming/references/rust/type-state.md +50 -12
- package/packages/shared-skills/skills/programming/references/rust/unsafe-discipline.md +34 -6
- package/packages/shared-skills/skills/programming/references/rust/zero-cost-safety.md +62 -52
- package/packages/shared-skills/skills/programming/references/rust-ub/miri-sanitizers-loom.md +1 -1
- package/packages/shared-skills/skills/programming/references/rust-ub/ub-taxonomy.md +6 -3
- package/packages/shared-skills/skills/programming/scripts/rust/check-no-excuse-rules.sh +86 -75
- package/packages/shared-skills/skills/programming/scripts/rust/check-no-excuse-rules.test.ts +83 -0
- package/packages/shared-skills/skills/programming/scripts/rust/new-project.py +31 -28
- package/packages/shared-skills/skills/review-work/SKILL.md +1 -1
- package/packages/shared-skills/skills/ultimate-browsing/SKILL.md +27 -20
- package/packages/shared-skills/skills/ultimate-browsing/engine/AGENTS.md +1 -1
- package/packages/shared-skills/skills/ultimate-browsing/references/chrome-stealth.md +32 -100
- package/packages/shared-skills/skills/ultimate-browsing/references/insane-search/README.md +5 -11
- package/packages/shared-skills/skills/ultimate-browsing/references/insane-search/playwright.md +20 -37
- package/packages/shared-skills/skills/ulw-execute/SKILL.md +4 -4
- package/packages/shared-skills/skills/visual-qa/SKILL.md +1 -1
- package/packages/shared-skills/skills/visual-qa/references/browser-setup.md +46 -46
- package/packages/omo-codex/plugin/skills/browser/scripts/browser-env.mjs +0 -41
- package/packages/omo-codex/plugin/skills/debugging/references/tools/playwright-cli.md +0 -112
- package/packages/omo-codex/plugin/skills/programming/scripts/rust/check-no-excuse-rules.py +0 -296
- package/packages/shared-skills/skills/browser/scripts/browser-env.mjs +0 -41
- package/packages/shared-skills/skills/debugging/references/tools/playwright-cli.md +0 -112
- package/packages/shared-skills/skills/programming/scripts/rust/check-no-excuse-rules.py +0 -296
package/dist/cli-node/index.js
CHANGED
|
@@ -65,7 +65,7 @@ var package_default;
|
|
|
65
65
|
var init_package = __esm(() => {
|
|
66
66
|
package_default = {
|
|
67
67
|
name: "oh-my-opencode",
|
|
68
|
-
version: "5.0.0-beta.
|
|
68
|
+
version: "5.0.0-beta.88",
|
|
69
69
|
description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
|
|
70
70
|
main: "./dist/index.js",
|
|
71
71
|
types: "dist/index.d.ts",
|
|
@@ -248,7 +248,7 @@ var init_package = __esm(() => {
|
|
|
248
248
|
zod: "^4.6.5"
|
|
249
249
|
},
|
|
250
250
|
devDependencies: {
|
|
251
|
-
"@code-yeongyu/senpi": "2026.9.23-
|
|
251
|
+
"@code-yeongyu/senpi": "2026.9.23-5",
|
|
252
252
|
"@oh-my-opencode/agents-md-core": "workspace:*",
|
|
253
253
|
"@oh-my-opencode/ast-grep-mcp": "workspace:*",
|
|
254
254
|
"@oh-my-opencode/boulder-state": "workspace:*",
|
|
@@ -284,22 +284,23 @@ var init_package = __esm(() => {
|
|
|
284
284
|
"@xterm/xterm": "^6.0.0",
|
|
285
285
|
"bun-types": "1.4.2",
|
|
286
286
|
"node-pty": "^1.1.0",
|
|
287
|
+
omowright: "github:code-yeongyu/omowright#25781c8ac04f9aae358b06551520b792ac45c6ed",
|
|
287
288
|
"puppeteer-core": "^25.11.0",
|
|
288
289
|
typescript: "^7.0.2"
|
|
289
290
|
},
|
|
290
291
|
optionalDependencies: {
|
|
291
|
-
"oh-my-opencode-darwin-arm64": "5.0.0-beta.
|
|
292
|
-
"oh-my-opencode-darwin-x64": "5.0.0-beta.
|
|
293
|
-
"oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.
|
|
294
|
-
"oh-my-opencode-linux-arm64": "5.0.0-beta.
|
|
295
|
-
"oh-my-opencode-linux-arm64-musl": "5.0.0-beta.
|
|
296
|
-
"oh-my-opencode-linux-x64": "5.0.0-beta.
|
|
297
|
-
"oh-my-opencode-linux-x64-baseline": "5.0.0-beta.
|
|
298
|
-
"oh-my-opencode-linux-x64-musl": "5.0.0-beta.
|
|
299
|
-
"oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.
|
|
300
|
-
"oh-my-opencode-windows-arm64": "5.0.0-beta.
|
|
301
|
-
"oh-my-opencode-windows-x64": "5.0.0-beta.
|
|
302
|
-
"oh-my-opencode-windows-x64-baseline": "5.0.0-beta.
|
|
292
|
+
"oh-my-opencode-darwin-arm64": "5.0.0-beta.88",
|
|
293
|
+
"oh-my-opencode-darwin-x64": "5.0.0-beta.88",
|
|
294
|
+
"oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.88",
|
|
295
|
+
"oh-my-opencode-linux-arm64": "5.0.0-beta.88",
|
|
296
|
+
"oh-my-opencode-linux-arm64-musl": "5.0.0-beta.88",
|
|
297
|
+
"oh-my-opencode-linux-x64": "5.0.0-beta.88",
|
|
298
|
+
"oh-my-opencode-linux-x64-baseline": "5.0.0-beta.88",
|
|
299
|
+
"oh-my-opencode-linux-x64-musl": "5.0.0-beta.88",
|
|
300
|
+
"oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.88",
|
|
301
|
+
"oh-my-opencode-windows-arm64": "5.0.0-beta.88",
|
|
302
|
+
"oh-my-opencode-windows-x64": "5.0.0-beta.88",
|
|
303
|
+
"oh-my-opencode-windows-x64-baseline": "5.0.0-beta.88"
|
|
303
304
|
},
|
|
304
305
|
overrides: {
|
|
305
306
|
"@earendil-works/pi-agent-core": "0.84.2",
|
|
@@ -7420,7 +7421,7 @@ var init_category_model_requirements = __esm(() => {
|
|
|
7420
7421
|
},
|
|
7421
7422
|
quick: {
|
|
7422
7423
|
fallbackChain: [
|
|
7423
|
-
{ providers: ["chatgpt-subscription"], model: "gpt-6-luna-fast", variant: "low" },
|
|
7424
|
+
{ providers: ["openai", "chatgpt-subscription"], model: "gpt-6-luna-fast", variant: "low" },
|
|
7424
7425
|
{ providers: ["deepseek"], model: "deepseek-flash", variant: "off" },
|
|
7425
7426
|
{
|
|
7426
7427
|
providers: ["qwen-token-plan", "alibaba-token-plan", "bailian-coding-plan"],
|
|
@@ -7465,7 +7466,7 @@ var init_category_model_requirements = __esm(() => {
|
|
|
7465
7466
|
{
|
|
7466
7467
|
providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
|
|
7467
7468
|
model: "claude-opus-5-5",
|
|
7468
|
-
variant: "
|
|
7469
|
+
variant: "medium"
|
|
7469
7470
|
},
|
|
7470
7471
|
{ providers: ["zai-coding-plan", "opencode-go"], model: "glm-5.3", variant: "max" },
|
|
7471
7472
|
{
|
|
@@ -7476,6 +7477,7 @@ var init_category_model_requirements = __esm(() => {
|
|
|
7476
7477
|
]
|
|
7477
7478
|
},
|
|
7478
7479
|
writing: {
|
|
7480
|
+
requiresAnyModel: true,
|
|
7479
7481
|
fallbackChain: [
|
|
7480
7482
|
{
|
|
7481
7483
|
providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
|
|
@@ -9461,7 +9463,7 @@ var init_openai_categories = __esm(() => {
|
|
|
9461
9463
|
},
|
|
9462
9464
|
{
|
|
9463
9465
|
name: "unspecified-high",
|
|
9464
|
-
config: { model: "anthropic/claude-opus-5-5", variant: "
|
|
9466
|
+
config: { model: "anthropic/claude-opus-5-5", variant: "medium" },
|
|
9465
9467
|
description: "Tasks that don't fit other categories, high effort required",
|
|
9466
9468
|
callerGuidance: UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE,
|
|
9467
9469
|
promptAppend: UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND,
|
|
@@ -74561,6 +74563,8 @@ var init_model_profile = __esm(() => {
|
|
|
74561
74563
|
init_fallback_models();
|
|
74562
74564
|
OmoModelProfileInputSchema = object({
|
|
74563
74565
|
display_name: string2().optional(),
|
|
74566
|
+
family: _enum(["daily", "geeky"]).optional(),
|
|
74567
|
+
tier: _enum(["normal", "heavy"]).optional(),
|
|
74564
74568
|
models: array(union([string2(), OmoFallbackModelObjectSchema])).optional()
|
|
74565
74569
|
}).strict();
|
|
74566
74570
|
OmoModelProfileSchema = preprocess((value) => isRecord8(value) ? normalizeLegacyModelFields(value) : value, OmoModelProfileInputSchema);
|
|
@@ -77154,8 +77158,7 @@ var init_openai_only_model_catalog = __esm(() => {
|
|
|
77154
77158
|
OPENAI_ONLY_CATEGORY_OVERRIDES = {
|
|
77155
77159
|
artistry: { model: "openai/gpt-5.6-sol", variant: "xhigh" },
|
|
77156
77160
|
quick: { model: "openai/gpt-6-luna-fast" },
|
|
77157
|
-
"visual-engineering": { model: "openai/gpt-5.6-sol", variant: "high" }
|
|
77158
|
-
writing: { model: "openai/gpt-5.6-sol", variant: "medium" }
|
|
77161
|
+
"visual-engineering": { model: "openai/gpt-5.6-sol", variant: "high" }
|
|
77159
77162
|
};
|
|
77160
77163
|
});
|
|
77161
77164
|
|
|
@@ -77346,7 +77349,7 @@ function generateModelConfig(config) {
|
|
|
77346
77349
|
return {
|
|
77347
77350
|
$schema: SCHEMA_URL,
|
|
77348
77351
|
agents: Object.fromEntries(Object.entries(CLI_AGENT_MODEL_REQUIREMENTS).filter(([role, req]) => !(role === "sisyphus" && req.requiresAnyModel)).map(([role]) => [role, { model: ULTIMATE_FALLBACK }])),
|
|
77349
|
-
categories: Object.fromEntries(Object.
|
|
77352
|
+
categories: Object.fromEntries(Object.entries(CLI_CATEGORY_MODEL_REQUIREMENTS).filter(([, req]) => !req.requiresAnyModel).map(([cat]) => [cat, { model: ULTIMATE_FALLBACK }]))
|
|
77350
77353
|
};
|
|
77351
77354
|
}
|
|
77352
77355
|
const agents = {};
|
|
@@ -77414,6 +77417,9 @@ function generateModelConfig(config) {
|
|
|
77414
77417
|
}
|
|
77415
77418
|
for (const [cat, req] of Object.entries(CLI_CATEGORY_MODEL_REQUIREMENTS)) {
|
|
77416
77419
|
const fallbackChain = cat === "unspecified-high" && !avail.isMaxPlan ? CLI_CATEGORY_MODEL_REQUIREMENTS["unspecified-low"].fallbackChain : req.fallbackChain;
|
|
77420
|
+
if (req.requiresAnyModel && !isAnyFallbackEntryAvailable(fallbackChain, avail)) {
|
|
77421
|
+
continue;
|
|
77422
|
+
}
|
|
77417
77423
|
if (req.requiresModel && !isRequiredModelAvailable(req.requiresModel, req.fallbackChain, avail)) {
|
|
77418
77424
|
continue;
|
|
77419
77425
|
}
|
|
@@ -88832,7 +88838,7 @@ var package_default2;
|
|
|
88832
88838
|
var init_package2 = __esm(() => {
|
|
88833
88839
|
package_default2 = {
|
|
88834
88840
|
name: "@oh-my-opencode/omo-codex",
|
|
88835
|
-
version: "5.0.0-beta.
|
|
88841
|
+
version: "5.0.0-beta.88",
|
|
88836
88842
|
type: "module",
|
|
88837
88843
|
private: true,
|
|
88838
88844
|
description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
|
|
@@ -105436,28 +105442,41 @@ init_src();
|
|
|
105436
105442
|
import { existsSync as existsSync53 } from "node:fs";
|
|
105437
105443
|
import { createRequire as createRequire3 } from "node:module";
|
|
105438
105444
|
import { homedir as homedir19 } from "node:os";
|
|
105439
|
-
import { dirname as dirname31, join as
|
|
105445
|
+
import { dirname as dirname31, join as join83 } from "node:path";
|
|
105440
105446
|
|
|
105447
|
+
// packages/omo-opencode/src/hooks/comment-checker/downloader.ts
|
|
105448
|
+
import { join as join82 } from "path";
|
|
105449
|
+
import { homedir as homedir18, tmpdir as tmpdir4 } from "os";
|
|
105450
|
+
// packages/comment-checker-core/src/release.ts
|
|
105451
|
+
import { join as join81 } from "node:path";
|
|
105452
|
+
function commentCheckerBinaryName(platform) {
|
|
105453
|
+
return platform === "win32" ? "comment-checker.exe" : "comment-checker";
|
|
105454
|
+
}
|
|
105455
|
+
function commentCheckerCacheDir(input) {
|
|
105456
|
+
if (input.platform === "win32") {
|
|
105457
|
+
const localAppData = input.env.LOCALAPPDATA || input.env.APPDATA;
|
|
105458
|
+
const base = localAppData || join81(input.homedir, "AppData", "Local");
|
|
105459
|
+
return join81(base, input.cacheDirName, "bin");
|
|
105460
|
+
}
|
|
105461
|
+
const base = input.env.XDG_CACHE_HOME || join81(input.homedir, ".cache");
|
|
105462
|
+
return join81(base, input.cacheDirName, "bin");
|
|
105463
|
+
}
|
|
105441
105464
|
// packages/omo-opencode/src/hooks/comment-checker/downloader.ts
|
|
105442
105465
|
init_binary_downloader();
|
|
105443
105466
|
init_logger2();
|
|
105444
105467
|
init_plugin_identity();
|
|
105445
|
-
import { join as join81 } from "path";
|
|
105446
|
-
import { homedir as homedir18, tmpdir as tmpdir4 } from "os";
|
|
105447
105468
|
var DEBUG = process.env.COMMENT_CHECKER_DEBUG === "1";
|
|
105448
|
-
var DEBUG_FILE =
|
|
105469
|
+
var DEBUG_FILE = join82(tmpdir4(), "comment-checker-debug.log");
|
|
105449
105470
|
function getCacheDir2() {
|
|
105450
|
-
|
|
105451
|
-
|
|
105452
|
-
|
|
105453
|
-
|
|
105454
|
-
|
|
105455
|
-
|
|
105456
|
-
const base = xdgCache || join81(homedir18(), ".cache");
|
|
105457
|
-
return join81(base, CACHE_DIR_NAME, "bin");
|
|
105471
|
+
return commentCheckerCacheDir({
|
|
105472
|
+
platform: process.platform,
|
|
105473
|
+
env: process.env,
|
|
105474
|
+
homedir: homedir18(),
|
|
105475
|
+
cacheDirName: CACHE_DIR_NAME
|
|
105476
|
+
});
|
|
105458
105477
|
}
|
|
105459
105478
|
function getBinaryName() {
|
|
105460
|
-
return process.platform
|
|
105479
|
+
return commentCheckerBinaryName(process.platform);
|
|
105461
105480
|
}
|
|
105462
105481
|
function getCachedBinaryPath2() {
|
|
105463
105482
|
return getCachedBinaryPath(getCacheDir2(), getBinaryName());
|
|
@@ -105504,7 +105523,7 @@ async function getBinaryVersion(binary) {
|
|
|
105504
105523
|
}
|
|
105505
105524
|
}
|
|
105506
105525
|
async function checkAstGrepCli() {
|
|
105507
|
-
const runtimeDir = astGrepRuntimeDir(
|
|
105526
|
+
const runtimeDir = astGrepRuntimeDir(join83(homedir19(), ".omo"));
|
|
105508
105527
|
const sgPath = findSgBinarySync({ runtimeDir });
|
|
105509
105528
|
if (sgPath === null) {
|
|
105510
105529
|
return {
|
|
@@ -105534,10 +105553,10 @@ function findCommentCheckerPackageBinary(baseDirOverride, resolvePackageJsonPath
|
|
|
105534
105553
|
const platformKey = `${process.platform}-${process.arch === "x64" ? "x64" : process.arch}`;
|
|
105535
105554
|
try {
|
|
105536
105555
|
const packageDir = baseDirOverride ?? dirname31(resolvePackageJsonPath());
|
|
105537
|
-
const vendorPath =
|
|
105556
|
+
const vendorPath = join83(packageDir, "vendor", platformKey, binaryName);
|
|
105538
105557
|
if (existsSync53(vendorPath))
|
|
105539
105558
|
return vendorPath;
|
|
105540
|
-
const binPath =
|
|
105559
|
+
const binPath = join83(packageDir, "bin", binaryName);
|
|
105541
105560
|
if (existsSync53(binPath))
|
|
105542
105561
|
return binPath;
|
|
105543
105562
|
} catch (error) {
|
|
@@ -105913,13 +105932,13 @@ function getInstalledLspServers(options = {}) {
|
|
|
105913
105932
|
init_shared();
|
|
105914
105933
|
import { existsSync as existsSync55, readFileSync as readFileSync35 } from "node:fs";
|
|
105915
105934
|
import { homedir as homedir20 } from "node:os";
|
|
105916
|
-
import { join as
|
|
105935
|
+
import { join as join84 } from "node:path";
|
|
105917
105936
|
var BUILTIN_MCP_SERVERS = ["websearch", "context7", "grep_app", "lsp"];
|
|
105918
105937
|
function getMcpConfigPaths() {
|
|
105919
105938
|
return [
|
|
105920
|
-
|
|
105921
|
-
|
|
105922
|
-
|
|
105939
|
+
join84(homedir20(), ".claude", ".mcp.json"),
|
|
105940
|
+
join84(process.cwd(), ".mcp.json"),
|
|
105941
|
+
join84(process.cwd(), ".claude", ".mcp.json")
|
|
105923
105942
|
];
|
|
105924
105943
|
}
|
|
105925
105944
|
function loadUserMcpConfig() {
|
|
@@ -106201,7 +106220,7 @@ init_src();
|
|
|
106201
106220
|
import { existsSync as existsSync57 } from "node:fs";
|
|
106202
106221
|
import { lstat as lstat16, readdir as readdir14, readFile as readFile28 } from "node:fs/promises";
|
|
106203
106222
|
import { homedir as homedir22 } from "node:os";
|
|
106204
|
-
import { basename as basename11, join as
|
|
106223
|
+
import { basename as basename11, join as join85, resolve as resolve23 } from "node:path";
|
|
106205
106224
|
// packages/omo-opencode/package.json
|
|
106206
106225
|
var package_default3 = {
|
|
106207
106226
|
name: "@oh-my-opencode/omo-opencode",
|
|
@@ -106213,6 +106232,10 @@ var package_default3 = {
|
|
|
106213
106232
|
"./config-migration": {
|
|
106214
106233
|
types: "./src/config-migration/index.ts",
|
|
106215
106234
|
import: "./src/config-migration/index.ts"
|
|
106235
|
+
},
|
|
106236
|
+
"./binary-downloader": {
|
|
106237
|
+
types: "./src/shared/binary-downloader.ts",
|
|
106238
|
+
import: "./src/shared/binary-downloader.ts"
|
|
106216
106239
|
}
|
|
106217
106240
|
},
|
|
106218
106241
|
scripts: {
|
|
@@ -106267,13 +106290,13 @@ var CODEX_BIN_NAMES = [
|
|
|
106267
106290
|
"omo-git-bash-hook"
|
|
106268
106291
|
];
|
|
106269
106292
|
async function gatherCodexSummary(deps = {}) {
|
|
106270
|
-
const codexHome = resolve23(deps.codexHome ?? process.env.CODEX_HOME ??
|
|
106293
|
+
const codexHome = resolve23(deps.codexHome ?? process.env.CODEX_HOME ?? join85(homedir22(), ".codex"));
|
|
106271
106294
|
const binDir = resolveCodexInstallerBinDir({ binDir: deps.binDir, codexHome, env: process.env });
|
|
106272
106295
|
const detection = await (deps.detectCodexInstallation ?? detectCodexInstallation)();
|
|
106273
106296
|
const pluginRoot = await resolveInstalledPluginRoot(codexHome);
|
|
106274
|
-
const manifest = pluginRoot === null ? null : await readJson(
|
|
106275
|
-
const installSnapshot = pluginRoot === null ? null : await readJson(
|
|
106276
|
-
const configPath =
|
|
106297
|
+
const manifest = pluginRoot === null ? null : await readJson(join85(pluginRoot, ".codex-plugin", "plugin.json"));
|
|
106298
|
+
const installSnapshot = pluginRoot === null ? null : await readJson(join85(pluginRoot, "lazycodex-install.json"));
|
|
106299
|
+
const configPath = join85(codexHome, "config.toml");
|
|
106277
106300
|
const pluginVersion = stringField(manifest, "version");
|
|
106278
106301
|
return {
|
|
106279
106302
|
codexPath: detection.found && "path" in detection ? detection.path : null,
|
|
@@ -106330,7 +106353,7 @@ function buildCodexIssues(summary) {
|
|
|
106330
106353
|
if (summary.pluginRoot === null) {
|
|
106331
106354
|
issues.push({
|
|
106332
106355
|
title: "OMO Codex plugin is not installed",
|
|
106333
|
-
description: `Expected cached plugin at ${
|
|
106356
|
+
description: `Expected cached plugin at ${join85("plugins", "cache", MARKETPLACE_NAME, PLUGIN_NAME2, DEFAULT_PLUGIN_VERSION)} under CODEX_HOME.`,
|
|
106334
106357
|
fix: "Run: npx lazycodex-ai install",
|
|
106335
106358
|
severity: "error",
|
|
106336
106359
|
affects: ["plugin loading"]
|
|
@@ -106395,12 +106418,12 @@ function buildCodexIssues(summary) {
|
|
|
106395
106418
|
return issues;
|
|
106396
106419
|
}
|
|
106397
106420
|
async function resolveInstalledPluginRoot(codexHome) {
|
|
106398
|
-
const pluginRoot =
|
|
106421
|
+
const pluginRoot = join85(codexHome, "plugins", "cache", MARKETPLACE_NAME, PLUGIN_NAME2);
|
|
106399
106422
|
if (!existsSync57(pluginRoot))
|
|
106400
106423
|
return null;
|
|
106401
106424
|
const versions = await readdir14(pluginRoot, { withFileTypes: true });
|
|
106402
106425
|
const candidates = versions.filter((entry) => entry.isDirectory()).map((entry) => entry.name).sort(compareVersionsDescending);
|
|
106403
|
-
return candidates.length === 0 ? null :
|
|
106426
|
+
return candidates.length === 0 ? null : join85(pluginRoot, candidates[0] ?? DEFAULT_PLUGIN_VERSION);
|
|
106404
106427
|
}
|
|
106405
106428
|
async function readCodexConfigSummary(configPath) {
|
|
106406
106429
|
if (!existsSync57(configPath)) {
|
|
@@ -106428,13 +106451,13 @@ async function readCodexConfigSummary(configPath) {
|
|
|
106428
106451
|
async function readLinkedBins(binDir) {
|
|
106429
106452
|
const linked = [];
|
|
106430
106453
|
for (const name of CODEX_BIN_NAMES) {
|
|
106431
|
-
if (await pathExists2(
|
|
106454
|
+
if (await pathExists2(join85(binDir, process.platform === "win32" ? `${name}.cmd` : name)))
|
|
106432
106455
|
linked.push(name);
|
|
106433
106456
|
}
|
|
106434
106457
|
return linked;
|
|
106435
106458
|
}
|
|
106436
106459
|
async function readLinkedAgents(codexHome) {
|
|
106437
|
-
const agentsDir =
|
|
106460
|
+
const agentsDir = join85(codexHome, "agents");
|
|
106438
106461
|
if (!existsSync57(agentsDir))
|
|
106439
106462
|
return [];
|
|
106440
106463
|
const entries = await readdir14(agentsDir, { withFileTypes: true });
|
|
@@ -106568,7 +106591,7 @@ function resolveLatestVersion(input) {
|
|
|
106568
106591
|
init_src();
|
|
106569
106592
|
import { readdir as readdir15, readFile as readFile29, stat as stat7 } from "node:fs/promises";
|
|
106570
106593
|
import { homedir as homedir23 } from "node:os";
|
|
106571
|
-
import { dirname as dirname33, isAbsolute as isAbsolute13, join as
|
|
106594
|
+
import { dirname as dirname33, isAbsolute as isAbsolute13, join as join86, relative as relative9, resolve as resolve24, sep as sep9 } from "node:path";
|
|
106572
106595
|
var CODEX_COMPONENTS_CHECK_ID = "codex-components";
|
|
106573
106596
|
var CODEX_COMPONENTS_CHECK_NAME = "codex-components";
|
|
106574
106597
|
var PLUGIN_DATA_DIR_NAME = "omo-sisyphuslabs";
|
|
@@ -106578,7 +106601,7 @@ async function checkCodexComponents(deps = {}) {
|
|
|
106578
106601
|
const env = deps.env ?? process.env;
|
|
106579
106602
|
const platform = deps.platform ?? process.platform;
|
|
106580
106603
|
const arch = deps.arch ?? process.arch;
|
|
106581
|
-
const codexHome = resolve24(deps.codexHome ?? env["CODEX_HOME"] ??
|
|
106604
|
+
const codexHome = resolve24(deps.codexHome ?? env["CODEX_HOME"] ?? join86(homedir23(), ".codex"));
|
|
106582
106605
|
const summary = await gatherCodexSummary({ ...deps, codexHome });
|
|
106583
106606
|
if (summary.pluginRoot === null) {
|
|
106584
106607
|
return {
|
|
@@ -106603,7 +106626,7 @@ async function checkCodexComponents(deps = {}) {
|
|
|
106603
106626
|
});
|
|
106604
106627
|
}
|
|
106605
106628
|
const runtimeSgDir = runtimeSgDirectory(codexHome, platform, arch);
|
|
106606
|
-
const runtimeSgPath =
|
|
106629
|
+
const runtimeSgPath = join86(runtimeSgDir, sgBinaryName(platform));
|
|
106607
106630
|
const sg = findSgBinarySync({
|
|
106608
106631
|
arch,
|
|
106609
106632
|
env,
|
|
@@ -106640,12 +106663,12 @@ async function auditBundleTargets(pluginRoot) {
|
|
|
106640
106663
|
let referencedCount = 0;
|
|
106641
106664
|
for (const manifestPath of await findManifestPaths(pluginRoot, ".mcp.json")) {
|
|
106642
106665
|
const manifest = await readJson2(manifestPath);
|
|
106643
|
-
if (manifest === null || !
|
|
106666
|
+
if (manifest === null || !isRecord18(manifest["mcpServers"]))
|
|
106644
106667
|
continue;
|
|
106645
106668
|
const manifestRoot = dirname33(manifestPath);
|
|
106646
106669
|
const isRootManifest = resolve24(manifestRoot) === resolve24(pluginRoot);
|
|
106647
106670
|
for (const server of Object.values(manifest["mcpServers"])) {
|
|
106648
|
-
if (!
|
|
106671
|
+
if (!isRecord18(server) || !Array.isArray(server["args"]))
|
|
106649
106672
|
continue;
|
|
106650
106673
|
for (const arg of server["args"]) {
|
|
106651
106674
|
if (typeof arg !== "string" || !isPluginRuntimePathArg(arg))
|
|
@@ -106715,7 +106738,7 @@ async function findManifestPaths(root, manifestName) {
|
|
|
106715
106738
|
for (const entry of entries) {
|
|
106716
106739
|
if (entry.name === "node_modules" || entry.name === ".git")
|
|
106717
106740
|
continue;
|
|
106718
|
-
const entryPath =
|
|
106741
|
+
const entryPath = join86(root, entry.name);
|
|
106719
106742
|
if (entry.isDirectory()) {
|
|
106720
106743
|
paths.push(...await findManifestPaths(entryPath, manifestName));
|
|
106721
106744
|
continue;
|
|
@@ -106731,7 +106754,7 @@ function collectHookCommands(value, commands) {
|
|
|
106731
106754
|
collectHookCommands(item, commands);
|
|
106732
106755
|
return;
|
|
106733
106756
|
}
|
|
106734
|
-
if (!
|
|
106757
|
+
if (!isRecord18(value))
|
|
106735
106758
|
return;
|
|
106736
106759
|
if (value["type"] === "command") {
|
|
106737
106760
|
if (typeof value["command"] === "string")
|
|
@@ -106759,18 +106782,18 @@ function isPluginRuntimePathArg(arg) {
|
|
|
106759
106782
|
return normalized.endsWith(".js") && normalized.includes("/dist/") && (normalized.startsWith("./") || normalized.startsWith("../") || normalized.startsWith("components/") || normalized.startsWith("/") || isAbsolute13(arg));
|
|
106760
106783
|
}
|
|
106761
106784
|
function runtimeSgDirectory(codexHome, platform, arch) {
|
|
106762
|
-
return
|
|
106785
|
+
return join86(codexHome, "runtime", "ast-grep", runtimeSlug(platform, arch));
|
|
106763
106786
|
}
|
|
106764
106787
|
function describeSgSource(sgPath, env, runtimeSgDir, platform) {
|
|
106765
106788
|
const override = env[SG_PATH_ENV_KEY]?.trim();
|
|
106766
106789
|
if (override !== undefined && override.length > 0 && sgPath === override)
|
|
106767
106790
|
return `env override ${SG_PATH_ENV_KEY}`;
|
|
106768
|
-
if (sgPath ===
|
|
106791
|
+
if (sgPath === join86(runtimeSgDir, sgBinaryName(platform)))
|
|
106769
106792
|
return "runtime dir";
|
|
106770
106793
|
return "PATH";
|
|
106771
106794
|
}
|
|
106772
106795
|
async function readBootstrapStateSummary(codexHome) {
|
|
106773
|
-
const statePath =
|
|
106796
|
+
const statePath = join86(codexHome, "plugins", "data", PLUGIN_DATA_DIR_NAME, "bootstrap", "state.json");
|
|
106774
106797
|
const raw = await readJson2(statePath);
|
|
106775
106798
|
if (raw === null)
|
|
106776
106799
|
return null;
|
|
@@ -106786,7 +106809,7 @@ function parseDegradedEntries(value) {
|
|
|
106786
106809
|
return [];
|
|
106787
106810
|
const entries = [];
|
|
106788
106811
|
for (const item of value) {
|
|
106789
|
-
if (!
|
|
106812
|
+
if (!isRecord18(item))
|
|
106790
106813
|
continue;
|
|
106791
106814
|
if (typeof item["component"] !== "string" || typeof item["reason"] !== "string")
|
|
106792
106815
|
continue;
|
|
@@ -106820,7 +106843,7 @@ function degradedDetailLines(entries) {
|
|
|
106820
106843
|
async function readJson2(path) {
|
|
106821
106844
|
try {
|
|
106822
106845
|
const parsed = JSON.parse(await readFile29(path, "utf8"));
|
|
106823
|
-
return
|
|
106846
|
+
return isRecord18(parsed) ? parsed : null;
|
|
106824
106847
|
} catch (error) {
|
|
106825
106848
|
if (error instanceof Error)
|
|
106826
106849
|
return null;
|
|
@@ -106841,7 +106864,7 @@ function normalizeRelative(root, target) {
|
|
|
106841
106864
|
function normalizePathSeparators(path) {
|
|
106842
106865
|
return path.split("\\").join("/");
|
|
106843
106866
|
}
|
|
106844
|
-
function
|
|
106867
|
+
function isRecord18(value) {
|
|
106845
106868
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
106846
106869
|
}
|
|
106847
106870
|
|
|
@@ -106849,16 +106872,16 @@ function isRecord17(value) {
|
|
|
106849
106872
|
import { existsSync as existsSync58 } from "node:fs";
|
|
106850
106873
|
import { readFile as readFile30 } from "node:fs/promises";
|
|
106851
106874
|
import { homedir as homedir24 } from "node:os";
|
|
106852
|
-
import { join as
|
|
106875
|
+
import { join as join87, resolve as resolve25 } from "node:path";
|
|
106853
106876
|
var RUNTIME_WRAPPER_MARKER2 = "OMO_GENERATED_RUNTIME_WRAPPER";
|
|
106854
106877
|
var CHECK_NAME = "codex-runtime-wrapper";
|
|
106855
106878
|
var REINSTALL_COMMAND = "npx --yes lazycodex-ai@latest install --no-tui";
|
|
106856
106879
|
async function checkCodexRuntimeWrapper(deps = {}) {
|
|
106857
|
-
const codexHome = resolve25(deps.codexHome ?? process.env.CODEX_HOME ??
|
|
106880
|
+
const codexHome = resolve25(deps.codexHome ?? process.env.CODEX_HOME ?? join87(homedir24(), ".codex"));
|
|
106858
106881
|
const binDir = resolveCodexInstallerBinDir({ binDir: deps.binDir, codexHome, env: process.env });
|
|
106859
106882
|
const platform = deps.platform ?? process.platform;
|
|
106860
|
-
const wrapperPath =
|
|
106861
|
-
const legacyWrapperPath =
|
|
106883
|
+
const wrapperPath = join87(binDir, platform === "win32" ? "omo-agent-toolkit.cmd" : "omo-agent-toolkit");
|
|
106884
|
+
const legacyWrapperPath = join87(binDir, platform === "win32" ? "omo.cmd" : "omo");
|
|
106862
106885
|
const [wrapper, legacyWrapper] = await Promise.all([readRuntimeWrapper(wrapperPath), readRuntimeWrapper(legacyWrapperPath)]);
|
|
106863
106886
|
const issues = [];
|
|
106864
106887
|
if (wrapper?.includes(RUNTIME_WRAPPER_MARKER2) === true) {
|
|
@@ -107394,12 +107417,12 @@ import {
|
|
|
107394
107417
|
unlinkSync as unlinkSync9,
|
|
107395
107418
|
writeFileSync as writeFileSync12
|
|
107396
107419
|
} from "node:fs";
|
|
107397
|
-
import { basename as basename12, dirname as dirname34, join as
|
|
107420
|
+
import { basename as basename12, dirname as dirname34, join as join90 } from "node:path";
|
|
107398
107421
|
|
|
107399
107422
|
// packages/mcp-client-core/src/config-dir.ts
|
|
107400
107423
|
import { existsSync as existsSync59, realpathSync as realpathSync8 } from "node:fs";
|
|
107401
107424
|
import { homedir as homedir25 } from "node:os";
|
|
107402
|
-
import { join as
|
|
107425
|
+
import { join as join88, resolve as resolve26 } from "node:path";
|
|
107403
107426
|
function resolveConfigPath2(pathValue) {
|
|
107404
107427
|
const resolvedPath = resolve26(pathValue);
|
|
107405
107428
|
if (!existsSync59(resolvedPath))
|
|
@@ -107417,13 +107440,13 @@ function getOpenCodeCliConfigDir(env = process.env) {
|
|
|
107417
107440
|
if (customConfigDir) {
|
|
107418
107441
|
return resolveConfigPath2(customConfigDir);
|
|
107419
107442
|
}
|
|
107420
|
-
const xdgConfigDir = env["XDG_CONFIG_HOME"]?.trim() ||
|
|
107421
|
-
return resolveConfigPath2(
|
|
107443
|
+
const xdgConfigDir = env["XDG_CONFIG_HOME"]?.trim() || join88(homedir25(), ".config");
|
|
107444
|
+
return resolveConfigPath2(join88(xdgConfigDir, "opencode"));
|
|
107422
107445
|
}
|
|
107423
107446
|
|
|
107424
107447
|
// packages/mcp-client-core/src/mcp-oauth/storage-index.ts
|
|
107425
107448
|
import { chmodSync as chmodSync4, existsSync as existsSync60, readFileSync as readFileSync37, renameSync as renameSync6, writeFileSync as writeFileSync11 } from "node:fs";
|
|
107426
|
-
import { join as
|
|
107449
|
+
import { join as join89 } from "node:path";
|
|
107427
107450
|
var INDEX_FILE_NAME = "index.json";
|
|
107428
107451
|
function isTokenIndex(value) {
|
|
107429
107452
|
if (typeof value !== "object" || value === null || Array.isArray(value))
|
|
@@ -107431,7 +107454,7 @@ function isTokenIndex(value) {
|
|
|
107431
107454
|
return Object.values(value).every((entry) => typeof entry === "string");
|
|
107432
107455
|
}
|
|
107433
107456
|
function getIndexPath(storageDir) {
|
|
107434
|
-
return
|
|
107457
|
+
return join89(storageDir, INDEX_FILE_NAME);
|
|
107435
107458
|
}
|
|
107436
107459
|
function readTokenIndex(storageDir) {
|
|
107437
107460
|
const indexPath = getIndexPath(storageDir);
|
|
@@ -107475,16 +107498,16 @@ function deleteTokenIndexEntry(storageDir, hash) {
|
|
|
107475
107498
|
var STORAGE_DIR_NAME = "mcp-oauth";
|
|
107476
107499
|
var LEGACY_STORAGE_FILE_NAME = "mcp-oauth.json";
|
|
107477
107500
|
function getMcpOauthStorageDir() {
|
|
107478
|
-
return
|
|
107501
|
+
return join90(getOpenCodeCliConfigDir(), STORAGE_DIR_NAME);
|
|
107479
107502
|
}
|
|
107480
107503
|
function getMcpOauthServerHash(serverHost, resource) {
|
|
107481
107504
|
return createHash7("sha256").update(buildKey(serverHost, resource)).digest("hex").slice(0, 32);
|
|
107482
107505
|
}
|
|
107483
107506
|
function getMcpOauthStoragePath(serverHost, resource) {
|
|
107484
|
-
return
|
|
107507
|
+
return join90(getMcpOauthStorageDir(), `${getMcpOauthServerHash(serverHost, resource)}.json`);
|
|
107485
107508
|
}
|
|
107486
107509
|
function getLegacyStoragePath() {
|
|
107487
|
-
return
|
|
107510
|
+
return join90(getOpenCodeCliConfigDir(), LEGACY_STORAGE_FILE_NAME);
|
|
107488
107511
|
}
|
|
107489
107512
|
function normalizeHost2(serverHost) {
|
|
107490
107513
|
let host = serverHost.trim();
|
|
@@ -107663,7 +107686,7 @@ function listTokensByHost(serverHost) {
|
|
|
107663
107686
|
for (const [hash, indexedKey] of Object.entries(index)) {
|
|
107664
107687
|
if (!indexedKey.startsWith(prefix))
|
|
107665
107688
|
continue;
|
|
107666
|
-
const indexedToken = readTokenFile(
|
|
107689
|
+
const indexedToken = readTokenFile(join90(getMcpOauthStorageDir(), `${hash}.json`));
|
|
107667
107690
|
if (indexedToken)
|
|
107668
107691
|
result[indexedKey] = indexedToken;
|
|
107669
107692
|
}
|
|
@@ -107678,7 +107701,7 @@ function listAllTokens() {
|
|
|
107678
107701
|
for (const entry of readdirSync12(dir, { withFileTypes: true })) {
|
|
107679
107702
|
if (!entry.isFile() || !entry.name.endsWith(".json") || entry.name === "index.json")
|
|
107680
107703
|
continue;
|
|
107681
|
-
const token = readTokenFile(
|
|
107704
|
+
const token = readTokenFile(join90(dir, entry.name));
|
|
107682
107705
|
const hash = basename12(entry.name, ".json");
|
|
107683
107706
|
if (token)
|
|
107684
107707
|
result[index[hash] ?? hash] = token;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lazycodex-ai",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.88",
|
|
4
4
|
"description": "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -7292,6 +7292,8 @@ function isRecord6(value) {
|
|
|
7292
7292
|
}
|
|
7293
7293
|
var OmoModelProfileInputSchema = object({
|
|
7294
7294
|
display_name: string2().optional(),
|
|
7295
|
+
family: _enum(["daily", "geeky"]).optional(),
|
|
7296
|
+
tier: _enum(["normal", "heavy"]).optional(),
|
|
7295
7297
|
models: array(union([string2(), OmoFallbackModelObjectSchema])).optional()
|
|
7296
7298
|
}).strict();
|
|
7297
7299
|
var OmoModelProfileSchema = preprocess((value) => isRecord6(value) ? normalizeLegacyModelFields(value) : value, OmoModelProfileInputSchema);
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"command": "node \"${PLUGIN_ROOT}/components/bootstrap/dist/cli.js\" hook session-start",
|
|
9
9
|
"commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\bootstrap.ps1\"",
|
|
10
10
|
"timeout": 30,
|
|
11
|
-
"statusMessage": "(OmO 5.0.0-beta.
|
|
11
|
+
"statusMessage": "(OmO 5.0.0-beta.88) Checking Bootstrap Provisioning"
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sisyphuslabs/codex-bootstrap",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.88",
|
|
4
4
|
"description": "Codex SessionStart bootstrap component that provisions LazyCodex runtime dependencies from a detached worker.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"private": true,
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"type": "command",
|
|
9
9
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook pre-tool-use",
|
|
10
10
|
"timeout": 5,
|
|
11
|
-
"statusMessage": "(OmO 5.0.0-beta.
|
|
11
|
+
"statusMessage": "(OmO 5.0.0-beta.88) Recommending Git Bash MCP"
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
}
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"type": "command",
|
|
21
21
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
|
|
22
22
|
"timeout": 5,
|
|
23
|
-
"statusMessage": "(OmO 5.0.0-beta.
|
|
23
|
+
"statusMessage": "(OmO 5.0.0-beta.88) Resetting Git Bash MCP Reminder"
|
|
24
24
|
}
|
|
25
25
|
]
|
|
26
26
|
}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"type": "command",
|
|
9
9
|
"command": "node \"${PLUGIN_ROOT}/components/lazycodex-executor-verify/dist/cli.js\" hook subagent-stop",
|
|
10
10
|
"timeout": 10,
|
|
11
|
-
"statusMessage": "(OmO 5.0.0-beta.
|
|
11
|
+
"statusMessage": "(OmO 5.0.0-beta.88) Verifying LazyCodex Executor Evidence"
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@code-yeongyu/codex-lazycodex-executor-verify",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.88",
|
|
4
4
|
"description": "Codex SubagentStop evidence verifier for LazyCodex executor completions.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"packageManager": "npm@11.12.1",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
|
-
"version": "5.0.0-beta.
|
|
4
|
-
"inputDigest": "sha256:
|
|
3
|
+
"version": "5.0.0-beta.88",
|
|
4
|
+
"inputDigest": "sha256:ebe9028d50ae97761a5b14dcb9e372ffead6731df3fdbed1beb944a71f9f0bb2",
|
|
5
5
|
"outputs": [
|
|
6
6
|
{
|
|
7
7
|
"path": "cli.d.ts",
|