oh-my-opencode 5.1.44 → 5.1.45
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 +948 -416
- package/dist/cli/service-auth/keystore.d.ts +4 -2
- package/dist/cli-node/index.js +948 -416
- package/dist/config-migration/dori-section-rename.d.ts +3 -0
- package/dist/config-migration/index.d.ts +2 -2
- package/dist/config-migration/migration-plans.d.ts +10 -0
- package/dist/features/builtin-commands/templates/hyperplan.d.ts +1 -1
- package/dist/features/builtin-commands/templates/refactor-sections/team-mode-addendum.d.ts +1 -1
- package/dist/features/builtin-commands/templates/remove-ai-slops.d.ts +1 -1
- package/dist/hooks/sisyphus-junior-notepad/constants.d.ts +1 -1
- package/dist/index.js +6369 -3370
- package/dist/oh-my-opencode.schema.json +2 -2
- package/dist/plugin/command-execute-before.d.ts +3 -0
- package/dist/plugin/skill-context.d.ts +2 -0
- package/dist/plugin/skill-security-notice.d.ts +3 -0
- package/dist/plugin-config/omo-config-chain.d.ts +1 -0
- package/dist/skills/browser/SKILL.md +21 -22
- package/dist/skills/browser/references/commands.md +2 -9
- package/dist/skills/browser/references/install.md +1 -2
- package/dist/skills/browser/runtime/omowright/manifest.json +1 -1
- package/dist/skills/browser/scripts/browser-doctor.mjs +2 -2
- package/dist/skills/browser/scripts/browser-engine-guard.mjs +63 -487
- package/dist/skills/browser/scripts/browser-install.mjs +1 -1
- package/dist/skills/browser/scripts/omowright.mjs +1 -10
- package/dist/skills/frontend/SKILL.md +79 -118
- package/dist/skills/frontend/references/design/README.md +75 -224
- package/dist/skills/frontend/references/design/stylegallery.md +32 -27
- package/dist/skills/frontend/references/perfection/README.md +2 -2
- package/dist/skills/frontend/scripts/perfection/check-accent-stripes.ts +8 -24
- package/dist/skills/frontend/scripts/perfection/check-draft-guard.test.ts +101 -0
- package/dist/skills/frontend/scripts/perfection/check-draft-guard.ts +40 -0
- package/dist/skills/frontend/scripts/perfection/collect-files.test.ts +50 -0
- package/dist/skills/frontend/scripts/perfection/collect-files.ts +53 -0
- package/dist/skills/frontend/scripts/perfection/draft-guard/findings.ts +16 -0
- package/dist/skills/frontend/scripts/perfection/draft-guard/lint.ts +38 -0
- package/dist/skills/frontend/scripts/perfection/draft-guard/rules.ts +69 -0
- package/dist/skills/frontend/scripts/perfection/draft-guard/text-nodes.ts +121 -0
- package/dist/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/attr-lookalikes.tsx +10 -0
- package/dist/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/bound-values.tsx +12 -0
- package/dist/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/const-generics.tsx +3 -0
- package/dist/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/generics.tsx +7 -0
- package/dist/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/measured-stats.html +6 -0
- package/dist/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/plain-copy.html +9 -0
- package/dist/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/state-copy.html +11 -0
- package/dist/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/attribute-edges.html +7 -0
- package/dist/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/components.tsx +16 -0
- package/dist/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/decorative-badge.vue +7 -0
- package/dist/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/emoji-icons.tsx +9 -0
- package/dist/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/jsx-edges.tsx +1 -0
- package/dist/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/promo-copy.html +6 -0
- package/dist/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/promo-copy.tsx +8 -0
- package/dist/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/vanity-stats.html +5 -0
- package/dist/skills/programming/SKILL.md +10 -7
- package/dist/skills/programming/references/typescript/README.md +10 -7
- package/dist/skills/programming/references/typescript/bootstrap.md +9 -23
- package/dist/skills/programming/references/typescript/oxc-lint.md +130 -0
- package/dist/skills/programming/references/typescript/tsconfig-strict.md +6 -62
- package/dist/skills/programming/scripts/typescript/check-no-excuse-rules.ts +12 -12
- package/dist/skills/programming/scripts/typescript/new-project.test.ts +162 -0
- package/dist/skills/programming/scripts/typescript/new-project.ts +20 -81
- package/dist/skills/programming/scripts/typescript/oxc/.oxfmtrc.json +9 -0
- package/dist/skills/programming/scripts/typescript/oxc/.oxlintrc.json +46 -0
- package/dist/skills/programming/scripts/typescript/oxc/lint/oxlint-plugin/LICENSE +21 -0
- package/dist/skills/programming/scripts/typescript/oxc/lint/oxlint-plugin/index.js +10 -0
- package/dist/skills/programming/scripts/typescript/oxc/lint/oxlint-plugin/no-em-dash-copy.js +28 -0
- package/dist/skills/programming/scripts/typescript/oxc/lint/oxlint-plugin/require-suppression-reason.js +62 -0
- package/dist/skills/programming/scripts/typescript/oxc/tsconfig.json +29 -0
- package/dist/skills/refactor/SKILL.md +13 -13
- package/dist/skills/ulw-execute/SKILL.md +1 -1
- package/dist/skills/ulw-research/AGENTS.md +9 -3
- package/dist/skills/ulw-research/SKILL.md +2 -2
- package/dist/skills/ulw-research/references/deliverable-phase.md +7 -6
- package/dist/skills/ulw-research/references/fact-ledger-grammar.md +116 -0
- package/dist/skills/ulw-research/references/report-gates.md +51 -3
- package/dist/skills/ulw-research/scripts/claims-index.mjs +125 -0
- package/dist/skills/ulw-research/scripts/claims-index.test.ts +149 -0
- package/dist/skills/ulw-research/scripts/contracts.mjs +68 -3
- package/dist/skills/ulw-research/scripts/contracts.test.ts +97 -12
- package/dist/skills/ulw-research/scripts/fact-ledger-grammar.test.ts +190 -0
- package/dist/skills/ulw-research/scripts/fact-ledger-kinds.mjs +136 -0
- package/dist/skills/ulw-research/scripts/fact-ledger-kinds.test.ts +141 -0
- package/dist/skills/ulw-research/scripts/fact-ledger-schema.mjs +204 -0
- package/dist/skills/ulw-research/scripts/fact-ledger-schema.test.ts +43 -0
- package/dist/skills/ulw-research/scripts/fact-ledger.mjs +103 -0
- package/dist/skills/ulw-research/scripts/fact-ledger.test.ts +252 -0
- package/dist/skills/ulw-research/scripts/fidelity-brief.mjs +145 -0
- package/dist/skills/ulw-research/scripts/fidelity-brief.test.ts +179 -0
- package/dist/skills/ulw-research/scripts/fidelity-state.mjs +63 -0
- package/dist/skills/ulw-research/scripts/fidelity-state.test.ts +46 -0
- package/dist/skills/ulw-research/scripts/gates-context.test.ts +64 -0
- package/dist/skills/ulw-research/scripts/gates-static.mjs +1 -1
- package/dist/skills/ulw-research/scripts/gates-structure.mjs +1 -1
- package/dist/skills/ulw-research/scripts/gates-text.mjs +1 -27
- package/dist/skills/ulw-research/scripts/lexicon.mjs +47 -0
- package/dist/skills/ulw-research/scripts/lexicon.test.ts +57 -0
- package/dist/skills/ulw-research/scripts/numerals.mjs +226 -0
- package/dist/skills/ulw-research/scripts/numerals.test.ts +120 -0
- package/dist/skills/ulw-research/scripts/outcome.mjs +2 -3
- package/dist/skills/ulw-research/scripts/outcome.test.ts +29 -0
- package/dist/skills/ulw-research/scripts/particles-ko.mjs +108 -0
- package/dist/skills/ulw-research/scripts/particles-ko.test.ts +86 -0
- package/dist/skills/ulw-research/scripts/rational.mjs +139 -0
- package/dist/skills/ulw-research/scripts/rational.test.ts +46 -0
- package/dist/skills/ulw-research/scripts/report-tools-commands.mjs +2 -2
- package/dist/skills/ulw-research/scripts/sentence-split.mjs +77 -0
- package/dist/skills/ulw-research/scripts/sentence-split.test.ts +109 -0
- package/dist/skills/ulw-research/scripts/tests/fixtures/fidelity/claim-graph.md +13 -0
- package/dist/skills/ulw-research/scripts/tests/fixtures/fidelity-brief-locked.md +17 -0
- package/dist/skills/ulw-research/scripts/tests/fixtures/fidelity-brief-pending.md +17 -0
- package/dist/skills/ulw-research/scripts/text-normalize.mjs +82 -0
- package/dist/skills/ulw-research/scripts/text-normalize.test.ts +73 -0
- package/dist/skills/ulw-research/scripts/text-similarity.mjs +28 -0
- package/dist/skills/ulw-research/scripts/text-similarity.test.ts +38 -0
- package/dist/skills/ulw-research/scripts/units.mjs +105 -0
- package/dist/skills/ulw-research/scripts/units.test.ts +83 -0
- package/dist/skills/visual-qa/SKILL.md +70 -63
- package/dist/skills/visual-qa/scripts/skill-doc-fields.test.ts +34 -0
- package/dist/tools/delegate-task/constants.d.ts +1 -1
- package/dist/tools/session-manager/constants.d.ts +1 -1
- package/dist/tools/session-manager/file-storage.d.ts +9 -2
- package/dist/tools/session-manager/sdk-storage.d.ts +19 -1
- package/dist/tools/session-manager/session-formatter.d.ts +3 -3
- package/dist/tools/session-manager/storage.d.ts +8 -2
- package/dist/tools/skill/mcp-capability-formatter.d.ts +1 -1
- package/dist/tools/skill/native-skills.d.ts +2 -2
- package/dist/tools/skill/skill-mcp-authority.d.ts +3 -0
- package/dist/tui.js +535 -100
- package/docs/reference/web-terminal-visual-qa.md +8 -0
- package/package.json +24 -16
- package/packages/lsp-core/src/lsp/client-wrapper.ts +4 -4
- package/packages/lsp-core/src/post-edit/not-installed.test.ts +2 -2
- package/packages/lsp-daemon/dist/cli.js +4 -4
- package/packages/lsp-daemon/dist/client.js +4 -4
- package/packages/lsp-daemon/dist/index.js +4 -4
- package/packages/lsp-daemon/package.json +3 -3
- package/packages/lsp-tools-mcp/dist/cli.js +4 -4
- package/packages/lsp-tools-mcp/dist/mcp.js +4 -4
- package/packages/lsp-tools-mcp/dist/tools.js +4 -4
- package/packages/lsp-tools-mcp/package.json +3 -3
- package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +62 -21
- 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/bootstrap/src/hook.ts +1 -1
- package/packages/omo-codex/plugin/components/comment-checker/biome.json +1 -21
- package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/comment-checker/package.json +4 -4
- 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/biome.json +1 -21
- 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 +4 -4
- package/packages/omo-codex/plugin/components/lsp/biome.json +1 -21
- package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +3 -3
- package/packages/omo-codex/plugin/components/lsp/dist/cli.js +4 -4
- package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/lsp/package.json +4 -4
- package/packages/omo-codex/plugin/components/lsp/scripts/build-runtime.mjs +0 -1
- package/packages/omo-codex/plugin/components/lsp/test/codex-hook-not-installed.test.ts +1 -1
- package/packages/omo-codex/plugin/components/rules/biome.json +1 -21
- package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
- package/packages/omo-codex/plugin/components/rules/package.json +4 -4
- 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/biome.json +1 -21
- package/packages/omo-codex/plugin/components/telemetry/dist/cli.js +90 -1
- package/packages/omo-codex/plugin/components/telemetry/dist/posthog.js +91 -1
- package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/telemetry/package.json +4 -4
- package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-gate-reviewer.toml +2 -2
- package/packages/omo-codex/plugin/components/ultrawork/biome.json +1 -21
- package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/package.json +4 -4
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/biome.json +1 -21
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/directive.md +1 -1
- 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 +4 -4
- package/packages/omo-codex/plugin/components/ulw-loop/biome.json +1 -21
- package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint.js +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/dist/cli.js +7 -7
- package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-instruction.js +5 -5
- package/packages/omo-codex/plugin/components/ulw-loop/dist/stop-resume-hook.js +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +5 -5
- package/packages/omo-codex/plugin/components/ulw-loop/package.json +4 -4
- package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint.ts +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/src/codex-goal-instruction.ts +5 -5
- package/packages/omo-codex/plugin/components/ulw-loop/src/stop-resume-hook.ts +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/commit-mutations.mjs +2 -0
- 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/sync-skills.mjs +7 -7
- package/packages/omo-codex/plugin/shared/test/config-loader.test.ts +2 -0
- package/packages/omo-codex/plugin/skills/browser/SKILL.md +21 -22
- package/packages/omo-codex/plugin/skills/browser/references/commands.md +2 -9
- package/packages/omo-codex/plugin/skills/browser/references/install.md +1 -2
- package/packages/omo-codex/plugin/skills/browser/runtime/omowright/manifest.json +1 -1
- package/packages/omo-codex/plugin/skills/browser/scripts/browser-doctor.mjs +2 -2
- package/packages/omo-codex/plugin/skills/browser/scripts/browser-engine-guard.mjs +63 -487
- package/packages/omo-codex/plugin/skills/browser/scripts/browser-install.mjs +1 -1
- package/packages/omo-codex/plugin/skills/browser/scripts/omowright.mjs +1 -10
- package/packages/omo-codex/plugin/skills/frontend/SKILL.md +79 -118
- package/packages/omo-codex/plugin/skills/frontend/references/design/README.md +75 -224
- package/packages/omo-codex/plugin/skills/frontend/references/design/stylegallery.md +32 -27
- package/packages/omo-codex/plugin/skills/frontend/references/perfection/README.md +2 -2
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/check-accent-stripes.ts +8 -24
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/check-draft-guard.ts +40 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/collect-files.ts +53 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/draft-guard/findings.ts +16 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/draft-guard/lint.ts +38 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/draft-guard/rules.ts +69 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/draft-guard/text-nodes.ts +121 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/attr-lookalikes.tsx +10 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/bound-values.tsx +12 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/const-generics.tsx +3 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/generics.tsx +7 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/measured-stats.html +6 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/plain-copy.html +9 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/state-copy.html +11 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/attribute-edges.html +7 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/components.tsx +16 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/decorative-badge.vue +7 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/emoji-icons.tsx +9 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/jsx-edges.tsx +1 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/promo-copy.html +6 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/promo-copy.tsx +8 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/vanity-stats.html +5 -0
- package/packages/omo-codex/plugin/skills/init-deep/SKILL.md +1 -1
- package/packages/omo-codex/plugin/skills/programming/SKILL.md +10 -7
- package/packages/omo-codex/plugin/skills/programming/references/typescript/README.md +10 -7
- package/packages/omo-codex/plugin/skills/programming/references/typescript/bootstrap.md +9 -23
- package/packages/omo-codex/plugin/skills/programming/references/typescript/oxc-lint.md +130 -0
- package/packages/omo-codex/plugin/skills/programming/references/typescript/tsconfig-strict.md +6 -62
- package/packages/omo-codex/plugin/skills/programming/scripts/typescript/check-no-excuse-rules.ts +12 -12
- package/packages/omo-codex/plugin/skills/programming/scripts/typescript/new-project.ts +20 -81
- package/packages/omo-codex/plugin/skills/programming/scripts/typescript/oxc/.oxfmtrc.json +9 -0
- package/packages/omo-codex/plugin/skills/programming/scripts/typescript/oxc/.oxlintrc.json +46 -0
- package/packages/omo-codex/plugin/skills/programming/scripts/typescript/oxc/lint/oxlint-plugin/LICENSE +21 -0
- package/packages/omo-codex/plugin/skills/programming/scripts/typescript/oxc/lint/oxlint-plugin/index.js +10 -0
- package/packages/omo-codex/plugin/skills/programming/scripts/typescript/oxc/lint/oxlint-plugin/no-em-dash-copy.js +28 -0
- package/packages/omo-codex/plugin/skills/programming/scripts/typescript/oxc/lint/oxlint-plugin/require-suppression-reason.js +62 -0
- package/packages/omo-codex/plugin/skills/programming/scripts/typescript/oxc/tsconfig.json +29 -0
- package/packages/omo-codex/plugin/skills/refactor/SKILL.md +14 -14
- package/packages/omo-codex/plugin/skills/remove-ai-slops/SKILL.md +1 -1
- package/packages/omo-codex/plugin/skills/review-work/SKILL.md +2 -2
- package/packages/omo-codex/plugin/skills/ulw-execute/SKILL.md +2 -2
- package/packages/omo-codex/plugin/skills/ulw-loop/SKILL.md +1 -1
- package/packages/omo-codex/plugin/skills/ulw-research/AGENTS.md +9 -3
- package/packages/omo-codex/plugin/skills/ulw-research/SKILL.md +2 -2
- package/packages/omo-codex/plugin/skills/ulw-research/references/deliverable-phase.md +7 -6
- package/packages/omo-codex/plugin/skills/ulw-research/references/fact-ledger-grammar.md +116 -0
- package/packages/omo-codex/plugin/skills/ulw-research/references/report-gates.md +51 -3
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/claims-index.mjs +125 -0
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/contracts.mjs +68 -3
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/fact-ledger-kinds.mjs +136 -0
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/fact-ledger-schema.mjs +204 -0
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/fact-ledger.mjs +103 -0
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/fidelity-brief.mjs +145 -0
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/fidelity-state.mjs +63 -0
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/gates-static.mjs +1 -1
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/gates-structure.mjs +1 -1
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/gates-text.mjs +1 -27
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/lexicon.mjs +47 -0
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/numerals.mjs +226 -0
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/outcome.mjs +2 -3
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/particles-ko.mjs +108 -0
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/rational.mjs +139 -0
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/report-tools-commands.mjs +2 -2
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/sentence-split.mjs +77 -0
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/text-normalize.mjs +82 -0
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/text-similarity.mjs +28 -0
- package/packages/omo-codex/plugin/skills/ulw-research/scripts/units.mjs +105 -0
- package/packages/omo-codex/plugin/skills/visual-qa/SKILL.md +71 -64
- package/packages/omo-codex/plugin/test/component-bundled-cli.test.mjs +4 -1
- package/packages/omo-codex/plugin/test/sync-skills-test-support.mjs +6 -6
- package/packages/omo-codex/scripts/install-dist/install-local.mjs +152 -23
- package/packages/shared-skills/skills/browser/SKILL.md +21 -22
- package/packages/shared-skills/skills/browser/references/commands.md +2 -9
- package/packages/shared-skills/skills/browser/references/install.md +1 -2
- package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +1 -1
- package/packages/shared-skills/skills/browser/scripts/browser-doctor.mjs +2 -2
- package/packages/shared-skills/skills/browser/scripts/browser-engine-guard.mjs +63 -487
- package/packages/shared-skills/skills/browser/scripts/browser-install.mjs +1 -1
- package/packages/shared-skills/skills/browser/scripts/omowright.mjs +1 -10
- package/packages/shared-skills/skills/frontend/SKILL.md +79 -118
- package/packages/shared-skills/skills/frontend/references/design/README.md +75 -224
- package/packages/shared-skills/skills/frontend/references/design/stylegallery.md +32 -27
- package/packages/shared-skills/skills/frontend/references/perfection/README.md +2 -2
- package/packages/shared-skills/skills/frontend/scripts/perfection/check-accent-stripes.ts +8 -24
- package/packages/shared-skills/skills/frontend/scripts/perfection/check-draft-guard.test.ts +101 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/check-draft-guard.ts +40 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/collect-files.test.ts +50 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/collect-files.ts +53 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/draft-guard/findings.ts +16 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/draft-guard/lint.ts +38 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/draft-guard/rules.ts +69 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/draft-guard/text-nodes.ts +121 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/attr-lookalikes.tsx +10 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/bound-values.tsx +12 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/const-generics.tsx +3 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/generics.tsx +7 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/measured-stats.html +6 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/plain-copy.html +9 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/draft-guard/negative/state-copy.html +11 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/attribute-edges.html +7 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/components.tsx +16 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/decorative-badge.vue +7 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/emoji-icons.tsx +9 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/jsx-edges.tsx +1 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/promo-copy.html +6 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/promo-copy.tsx +8 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/draft-guard/positive/vanity-stats.html +5 -0
- package/packages/shared-skills/skills/programming/SKILL.md +10 -7
- package/packages/shared-skills/skills/programming/references/typescript/README.md +10 -7
- package/packages/shared-skills/skills/programming/references/typescript/bootstrap.md +9 -23
- package/packages/shared-skills/skills/programming/references/typescript/oxc-lint.md +130 -0
- package/packages/shared-skills/skills/programming/references/typescript/tsconfig-strict.md +6 -62
- package/packages/shared-skills/skills/programming/scripts/typescript/check-no-excuse-rules.ts +12 -12
- package/packages/shared-skills/skills/programming/scripts/typescript/new-project.test.ts +162 -0
- package/packages/shared-skills/skills/programming/scripts/typescript/new-project.ts +20 -81
- package/packages/shared-skills/skills/programming/scripts/typescript/oxc/.oxfmtrc.json +9 -0
- package/packages/shared-skills/skills/programming/scripts/typescript/oxc/.oxlintrc.json +46 -0
- package/packages/shared-skills/skills/programming/scripts/typescript/oxc/lint/oxlint-plugin/LICENSE +21 -0
- package/packages/shared-skills/skills/programming/scripts/typescript/oxc/lint/oxlint-plugin/index.js +10 -0
- package/packages/shared-skills/skills/programming/scripts/typescript/oxc/lint/oxlint-plugin/no-em-dash-copy.js +28 -0
- package/packages/shared-skills/skills/programming/scripts/typescript/oxc/lint/oxlint-plugin/require-suppression-reason.js +62 -0
- package/packages/shared-skills/skills/programming/scripts/typescript/oxc/tsconfig.json +29 -0
- package/packages/shared-skills/skills/refactor/SKILL.md +13 -13
- package/packages/shared-skills/skills/ulw-execute/SKILL.md +1 -1
- package/packages/shared-skills/skills/ulw-research/AGENTS.md +9 -3
- package/packages/shared-skills/skills/ulw-research/SKILL.md +2 -2
- package/packages/shared-skills/skills/ulw-research/references/deliverable-phase.md +7 -6
- package/packages/shared-skills/skills/ulw-research/references/fact-ledger-grammar.md +116 -0
- package/packages/shared-skills/skills/ulw-research/references/report-gates.md +51 -3
- package/packages/shared-skills/skills/ulw-research/scripts/claims-index.mjs +125 -0
- package/packages/shared-skills/skills/ulw-research/scripts/claims-index.test.ts +149 -0
- package/packages/shared-skills/skills/ulw-research/scripts/contracts.mjs +68 -3
- package/packages/shared-skills/skills/ulw-research/scripts/contracts.test.ts +97 -12
- package/packages/shared-skills/skills/ulw-research/scripts/fact-ledger-grammar.test.ts +190 -0
- package/packages/shared-skills/skills/ulw-research/scripts/fact-ledger-kinds.mjs +136 -0
- package/packages/shared-skills/skills/ulw-research/scripts/fact-ledger-kinds.test.ts +141 -0
- package/packages/shared-skills/skills/ulw-research/scripts/fact-ledger-schema.mjs +204 -0
- package/packages/shared-skills/skills/ulw-research/scripts/fact-ledger-schema.test.ts +43 -0
- package/packages/shared-skills/skills/ulw-research/scripts/fact-ledger.mjs +103 -0
- package/packages/shared-skills/skills/ulw-research/scripts/fact-ledger.test.ts +252 -0
- package/packages/shared-skills/skills/ulw-research/scripts/fidelity-brief.mjs +145 -0
- package/packages/shared-skills/skills/ulw-research/scripts/fidelity-brief.test.ts +179 -0
- package/packages/shared-skills/skills/ulw-research/scripts/fidelity-state.mjs +63 -0
- package/packages/shared-skills/skills/ulw-research/scripts/fidelity-state.test.ts +46 -0
- package/packages/shared-skills/skills/ulw-research/scripts/gates-context.test.ts +64 -0
- package/packages/shared-skills/skills/ulw-research/scripts/gates-static.mjs +1 -1
- package/packages/shared-skills/skills/ulw-research/scripts/gates-structure.mjs +1 -1
- package/packages/shared-skills/skills/ulw-research/scripts/gates-text.mjs +1 -27
- package/packages/shared-skills/skills/ulw-research/scripts/lexicon.mjs +47 -0
- package/packages/shared-skills/skills/ulw-research/scripts/lexicon.test.ts +57 -0
- package/packages/shared-skills/skills/ulw-research/scripts/numerals.mjs +226 -0
- package/packages/shared-skills/skills/ulw-research/scripts/numerals.test.ts +120 -0
- package/packages/shared-skills/skills/ulw-research/scripts/outcome.mjs +2 -3
- package/packages/shared-skills/skills/ulw-research/scripts/outcome.test.ts +29 -0
- package/packages/shared-skills/skills/ulw-research/scripts/particles-ko.mjs +108 -0
- package/packages/shared-skills/skills/ulw-research/scripts/particles-ko.test.ts +86 -0
- package/packages/shared-skills/skills/ulw-research/scripts/rational.mjs +139 -0
- package/packages/shared-skills/skills/ulw-research/scripts/rational.test.ts +46 -0
- package/packages/shared-skills/skills/ulw-research/scripts/report-tools-commands.mjs +2 -2
- package/packages/shared-skills/skills/ulw-research/scripts/sentence-split.mjs +77 -0
- package/packages/shared-skills/skills/ulw-research/scripts/sentence-split.test.ts +109 -0
- package/packages/shared-skills/skills/ulw-research/scripts/tests/fixtures/fidelity/claim-graph.md +13 -0
- package/packages/shared-skills/skills/ulw-research/scripts/tests/fixtures/fidelity-brief-locked.md +17 -0
- package/packages/shared-skills/skills/ulw-research/scripts/tests/fixtures/fidelity-brief-pending.md +17 -0
- package/packages/shared-skills/skills/ulw-research/scripts/text-normalize.mjs +82 -0
- package/packages/shared-skills/skills/ulw-research/scripts/text-normalize.test.ts +73 -0
- package/packages/shared-skills/skills/ulw-research/scripts/text-similarity.mjs +28 -0
- package/packages/shared-skills/skills/ulw-research/scripts/text-similarity.test.ts +38 -0
- package/packages/shared-skills/skills/ulw-research/scripts/units.mjs +105 -0
- package/packages/shared-skills/skills/ulw-research/scripts/units.test.ts +83 -0
- package/packages/shared-skills/skills/visual-qa/SKILL.md +70 -63
- package/packages/shared-skills/skills/visual-qa/scripts/skill-doc-fields.test.ts +34 -0
- package/script/qa/web-terminal-visual-qa.mjs +6 -2
- package/script/qa/xterm-live-terminal.mjs +26 -3
package/dist/tui.js
CHANGED
|
@@ -2362,6 +2362,20 @@ var init_logger = __esm(() => {
|
|
|
2362
2362
|
DEFAULT_MAX_LOG_FILE_SIZE_BYTES = 50 * 1024 * 1024;
|
|
2363
2363
|
});
|
|
2364
2364
|
|
|
2365
|
+
// packages/utils/src/logging/product-identity.ts
|
|
2366
|
+
function createProductIdentity(input) {
|
|
2367
|
+
return {
|
|
2368
|
+
pluginName: input.pluginName,
|
|
2369
|
+
legacyPluginName: input.legacyPluginName,
|
|
2370
|
+
publishedPackageName: input.publishedPackageName,
|
|
2371
|
+
acceptedPackageNames: input.acceptedPackageNames ?? [input.publishedPackageName, input.pluginName],
|
|
2372
|
+
configBasename: input.configBasename,
|
|
2373
|
+
legacyConfigBasename: input.legacyConfigBasename,
|
|
2374
|
+
logFileName: input.logFileName,
|
|
2375
|
+
cacheDirName: input.cacheDirName
|
|
2376
|
+
};
|
|
2377
|
+
}
|
|
2378
|
+
|
|
2365
2379
|
// packages/utils/src/logging/index.ts
|
|
2366
2380
|
var init_logging = __esm(() => {
|
|
2367
2381
|
init_logger();
|
|
@@ -2416,8 +2430,17 @@ var init_ast_grep = __esm(() => {
|
|
|
2416
2430
|
// packages/utils/src/classify-path-environment.ts
|
|
2417
2431
|
var init_classify_path_environment = () => {};
|
|
2418
2432
|
|
|
2433
|
+
// packages/utils/src/command-executor/home-directory.ts
|
|
2434
|
+
import { homedir } from "os";
|
|
2435
|
+
function getHomeDirectory() {
|
|
2436
|
+
return process.env.HOME || process.env.USERPROFILE || homedir();
|
|
2437
|
+
}
|
|
2438
|
+
var init_home_directory = () => {};
|
|
2439
|
+
|
|
2419
2440
|
// packages/utils/src/command-executor.ts
|
|
2420
|
-
var init_command_executor = () => {
|
|
2441
|
+
var init_command_executor = __esm(() => {
|
|
2442
|
+
init_home_directory();
|
|
2443
|
+
});
|
|
2421
2444
|
|
|
2422
2445
|
// packages/utils/src/git-worktree/index.ts
|
|
2423
2446
|
var init_git_worktree = () => {};
|
|
@@ -2510,6 +2533,25 @@ var init_agent_names = __esm(() => {
|
|
|
2510
2533
|
]);
|
|
2511
2534
|
});
|
|
2512
2535
|
|
|
2536
|
+
// packages/model-core/src/latest-models.ts
|
|
2537
|
+
var LATEST_MODEL_BY_FAMILY;
|
|
2538
|
+
var init_latest_models = __esm(() => {
|
|
2539
|
+
LATEST_MODEL_BY_FAMILY = {
|
|
2540
|
+
claudeOpus: "claude-opus-5-5",
|
|
2541
|
+
claudeSonnet: "claude-sonnet-5-5",
|
|
2542
|
+
claudeHaiku: "claude-haiku-5-5",
|
|
2543
|
+
claudeFable: "claude-fable-5-1",
|
|
2544
|
+
gptAstra: "gpt-6-astra",
|
|
2545
|
+
gptSol: "gpt-6.1-sol",
|
|
2546
|
+
gptSolFast: "gpt-6.1-sol-fast",
|
|
2547
|
+
gptLunaFast: "gpt-6-luna-fast",
|
|
2548
|
+
glm: "glm-5.3",
|
|
2549
|
+
glmFlash: "glm-5.3-flash",
|
|
2550
|
+
kimi: "kimi-k3",
|
|
2551
|
+
geminiPro: "gemini-4-argon"
|
|
2552
|
+
};
|
|
2553
|
+
});
|
|
2554
|
+
|
|
2513
2555
|
// packages/utils/src/migration/agent-category.ts
|
|
2514
2556
|
function configureMigrationCategoryDefaults(defaults) {
|
|
2515
2557
|
categoryDefaults = defaults ?? {};
|
|
@@ -3346,17 +3388,18 @@ var init_file_reference_resolver = __esm(() => {
|
|
|
3346
3388
|
// packages/model-core/src/agent-model-requirements.ts
|
|
3347
3389
|
var AGENT_MODEL_REQUIREMENTS;
|
|
3348
3390
|
var init_agent_model_requirements = __esm(() => {
|
|
3391
|
+
init_latest_models();
|
|
3349
3392
|
AGENT_MODEL_REQUIREMENTS = {
|
|
3350
3393
|
sisyphus: {
|
|
3351
3394
|
fallbackChain: [
|
|
3352
3395
|
{
|
|
3353
3396
|
providers: ["anthropic", "github-copilot", "opencode"],
|
|
3354
|
-
model:
|
|
3397
|
+
model: LATEST_MODEL_BY_FAMILY.claudeOpus,
|
|
3355
3398
|
variant: "max"
|
|
3356
3399
|
},
|
|
3357
3400
|
{
|
|
3358
3401
|
providers: ["opencode-go", "kimi-for-coding", "moonshotai", "opencode", "bailian-coding-plan", "moonshotai-cn", "firmware", "ollama-cloud", "aihubmix"],
|
|
3359
|
-
model:
|
|
3402
|
+
model: LATEST_MODEL_BY_FAMILY.kimi
|
|
3360
3403
|
},
|
|
3361
3404
|
{
|
|
3362
3405
|
providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
|
|
@@ -3390,7 +3433,7 @@ var init_agent_model_requirements = __esm(() => {
|
|
|
3390
3433
|
{ providers: ["github-copilot"], model: "gpt-5.6-sol", variant: "high" },
|
|
3391
3434
|
{
|
|
3392
3435
|
providers: ["google", "google-vertex", "opencode"],
|
|
3393
|
-
model:
|
|
3436
|
+
model: LATEST_MODEL_BY_FAMILY.geminiPro,
|
|
3394
3437
|
variant: "high"
|
|
3395
3438
|
},
|
|
3396
3439
|
{
|
|
@@ -3400,7 +3443,7 @@ var init_agent_model_requirements = __esm(() => {
|
|
|
3400
3443
|
},
|
|
3401
3444
|
{
|
|
3402
3445
|
providers: ["anthropic", "github-copilot", "opencode"],
|
|
3403
|
-
model:
|
|
3446
|
+
model: LATEST_MODEL_BY_FAMILY.claudeOpus,
|
|
3404
3447
|
variant: "max"
|
|
3405
3448
|
},
|
|
3406
3449
|
{ providers: ["opencode-go"], model: "glm-5.2" }
|
|
@@ -3409,8 +3452,8 @@ var init_agent_model_requirements = __esm(() => {
|
|
|
3409
3452
|
librarian: {
|
|
3410
3453
|
fallbackChain: [
|
|
3411
3454
|
{ providers: ["kimi-for-coding"], model: "kimi-for-coding-highspeed", variant: "off" },
|
|
3412
|
-
{ providers: ["openai", "chatgpt-subscription"], model:
|
|
3413
|
-
{ providers: ["anthropic", "github-copilot"], model:
|
|
3455
|
+
{ providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptLunaFast, variant: "low" },
|
|
3456
|
+
{ providers: ["anthropic", "github-copilot"], model: LATEST_MODEL_BY_FAMILY.claudeHaiku, variant: "medium" },
|
|
3414
3457
|
{ providers: ["deepseek"], model: "deepseek-flash", variant: "max" },
|
|
3415
3458
|
{ providers: ["opencode-go", "bailian-coding-plan"], model: "qwen3.7-plus" },
|
|
3416
3459
|
{ providers: ["opencode-go"], model: "minimax-m2.7" }
|
|
@@ -3419,8 +3462,8 @@ var init_agent_model_requirements = __esm(() => {
|
|
|
3419
3462
|
explore: {
|
|
3420
3463
|
fallbackChain: [
|
|
3421
3464
|
{ providers: ["kimi-for-coding"], model: "kimi-for-coding-highspeed", variant: "off" },
|
|
3422
|
-
{ providers: ["openai", "chatgpt-subscription"], model:
|
|
3423
|
-
{ providers: ["anthropic", "github-copilot"], model:
|
|
3465
|
+
{ providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptLunaFast, variant: "low" },
|
|
3466
|
+
{ providers: ["anthropic", "github-copilot"], model: LATEST_MODEL_BY_FAMILY.claudeHaiku, variant: "medium" },
|
|
3424
3467
|
{ providers: ["deepseek"], model: "deepseek-flash", variant: "max" },
|
|
3425
3468
|
{ providers: ["opencode-go", "bailian-coding-plan"], model: "qwen3.7-plus" },
|
|
3426
3469
|
{ providers: ["opencode-go"], model: "minimax-m2.7" }
|
|
@@ -3429,7 +3472,7 @@ var init_agent_model_requirements = __esm(() => {
|
|
|
3429
3472
|
"multimodal-looker": {
|
|
3430
3473
|
fallbackChain: [
|
|
3431
3474
|
{ providers: ["openai", "chatgpt-subscription", "opencode"], model: "gpt-5.6-sol", variant: "low" },
|
|
3432
|
-
{ providers: ["opencode-go"], model:
|
|
3475
|
+
{ providers: ["opencode-go"], model: LATEST_MODEL_BY_FAMILY.kimi },
|
|
3433
3476
|
{ providers: ["zai-coding-plan"], model: "glm-4.6v" },
|
|
3434
3477
|
{ providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"], model: "gpt-5-nano" }
|
|
3435
3478
|
]
|
|
@@ -3438,17 +3481,17 @@ var init_agent_model_requirements = __esm(() => {
|
|
|
3438
3481
|
fallbackChain: [
|
|
3439
3482
|
{
|
|
3440
3483
|
providers: ["anthropic", "github-copilot", "opencode"],
|
|
3441
|
-
model:
|
|
3484
|
+
model: LATEST_MODEL_BY_FAMILY.claudeFable,
|
|
3442
3485
|
variant: "xhigh"
|
|
3443
3486
|
},
|
|
3444
3487
|
{
|
|
3445
3488
|
providers: ["anthropic", "github-copilot", "opencode"],
|
|
3446
|
-
model:
|
|
3489
|
+
model: LATEST_MODEL_BY_FAMILY.claudeOpus,
|
|
3447
3490
|
variant: "max"
|
|
3448
3491
|
},
|
|
3449
3492
|
{
|
|
3450
3493
|
providers: ["opencode-go", "kimi-for-coding", "moonshotai", "opencode"],
|
|
3451
|
-
model:
|
|
3494
|
+
model: LATEST_MODEL_BY_FAMILY.kimi,
|
|
3452
3495
|
variant: "max"
|
|
3453
3496
|
}
|
|
3454
3497
|
]
|
|
@@ -3457,34 +3500,34 @@ var init_agent_model_requirements = __esm(() => {
|
|
|
3457
3500
|
fallbackChain: [
|
|
3458
3501
|
{
|
|
3459
3502
|
providers: ["anthropic", "github-copilot", "opencode"],
|
|
3460
|
-
model:
|
|
3503
|
+
model: LATEST_MODEL_BY_FAMILY.claudeFable,
|
|
3461
3504
|
variant: "max"
|
|
3462
3505
|
},
|
|
3463
3506
|
{
|
|
3464
3507
|
providers: ["anthropic", "github-copilot", "opencode"],
|
|
3465
|
-
model:
|
|
3508
|
+
model: LATEST_MODEL_BY_FAMILY.claudeOpus,
|
|
3466
3509
|
variant: "max"
|
|
3467
3510
|
},
|
|
3468
3511
|
{
|
|
3469
3512
|
providers: ["opencode-go", "kimi-for-coding", "moonshotai", "opencode"],
|
|
3470
|
-
model:
|
|
3513
|
+
model: LATEST_MODEL_BY_FAMILY.kimi,
|
|
3471
3514
|
variant: "max"
|
|
3472
3515
|
}
|
|
3473
3516
|
]
|
|
3474
3517
|
},
|
|
3475
3518
|
momus: {
|
|
3476
3519
|
fallbackChain: [
|
|
3477
|
-
{ providers: ["openai", "chatgpt-subscription"], model:
|
|
3478
|
-
{ providers: ["github-copilot"], model:
|
|
3479
|
-
{ providers: ["openai", "chatgpt-subscription", "opencode"], model:
|
|
3520
|
+
{ providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptAstra, variant: "xhigh" },
|
|
3521
|
+
{ providers: ["github-copilot"], model: LATEST_MODEL_BY_FAMILY.gptAstra, variant: "high" },
|
|
3522
|
+
{ providers: ["openai", "chatgpt-subscription", "opencode"], model: LATEST_MODEL_BY_FAMILY.gptAstra, variant: "high" },
|
|
3480
3523
|
{
|
|
3481
3524
|
providers: ["anthropic", "github-copilot", "opencode"],
|
|
3482
|
-
model:
|
|
3525
|
+
model: LATEST_MODEL_BY_FAMILY.claudeOpus,
|
|
3483
3526
|
variant: "max"
|
|
3484
3527
|
},
|
|
3485
3528
|
{
|
|
3486
3529
|
providers: ["google", "google-vertex", "opencode"],
|
|
3487
|
-
model:
|
|
3530
|
+
model: LATEST_MODEL_BY_FAMILY.geminiPro,
|
|
3488
3531
|
variant: "high"
|
|
3489
3532
|
},
|
|
3490
3533
|
{
|
|
@@ -3498,7 +3541,7 @@ var init_agent_model_requirements = __esm(() => {
|
|
|
3498
3541
|
atlas: {
|
|
3499
3542
|
fallbackChain: [
|
|
3500
3543
|
{ providers: ["anthropic", "github-copilot", "opencode"], model: "claude-sonnet-5" },
|
|
3501
|
-
{ providers: ["opencode-go"], model:
|
|
3544
|
+
{ providers: ["opencode-go"], model: LATEST_MODEL_BY_FAMILY.kimi },
|
|
3502
3545
|
{
|
|
3503
3546
|
providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
|
|
3504
3547
|
model: "gpt-5.6-sol",
|
|
@@ -3512,7 +3555,7 @@ var init_agent_model_requirements = __esm(() => {
|
|
|
3512
3555
|
"sisyphus-junior": {
|
|
3513
3556
|
fallbackChain: [
|
|
3514
3557
|
{ providers: ["anthropic", "github-copilot", "opencode"], model: "claude-sonnet-5" },
|
|
3515
|
-
{ providers: ["opencode-go"], model:
|
|
3558
|
+
{ providers: ["opencode-go"], model: LATEST_MODEL_BY_FAMILY.kimi },
|
|
3516
3559
|
{
|
|
3517
3560
|
providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
|
|
3518
3561
|
model: "gpt-5.6-sol",
|
|
@@ -3530,32 +3573,33 @@ var init_agent_model_requirements = __esm(() => {
|
|
|
3530
3573
|
// packages/model-core/src/category-model-requirements.ts
|
|
3531
3574
|
var CATEGORY_MODEL_REQUIREMENTS;
|
|
3532
3575
|
var init_category_model_requirements = __esm(() => {
|
|
3576
|
+
init_latest_models();
|
|
3533
3577
|
CATEGORY_MODEL_REQUIREMENTS = {
|
|
3534
3578
|
"visual-engineering": {
|
|
3535
3579
|
fallbackChain: [
|
|
3536
|
-
{ providers: ["google", "google-vertex", "opencode"], model:
|
|
3580
|
+
{ providers: ["google", "google-vertex", "opencode"], model: LATEST_MODEL_BY_FAMILY.geminiPro, variant: "low" },
|
|
3537
3581
|
{
|
|
3538
3582
|
providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
|
|
3539
|
-
model:
|
|
3583
|
+
model: LATEST_MODEL_BY_FAMILY.claudeFable,
|
|
3540
3584
|
variant: "max"
|
|
3541
3585
|
},
|
|
3542
3586
|
{
|
|
3543
3587
|
providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
|
|
3544
|
-
model:
|
|
3588
|
+
model: LATEST_MODEL_BY_FAMILY.claudeOpus,
|
|
3545
3589
|
variant: "max"
|
|
3546
3590
|
},
|
|
3547
3591
|
{
|
|
3548
3592
|
providers: ["kimi-for-coding", "moonshotai", "opencode-go", "opencode"],
|
|
3549
|
-
model:
|
|
3593
|
+
model: LATEST_MODEL_BY_FAMILY.kimi,
|
|
3550
3594
|
variant: "max"
|
|
3551
3595
|
}
|
|
3552
3596
|
]
|
|
3553
3597
|
},
|
|
3554
3598
|
ultrabrain: {
|
|
3555
3599
|
fallbackChain: [
|
|
3556
|
-
{ providers: ["openai", "chatgpt-subscription"], model:
|
|
3557
|
-
{ providers: ["github-copilot"], model:
|
|
3558
|
-
{ providers: ["openai", "chatgpt-subscription", "opencode"], model:
|
|
3600
|
+
{ providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptAstra, variant: "max" },
|
|
3601
|
+
{ providers: ["github-copilot"], model: LATEST_MODEL_BY_FAMILY.gptAstra, variant: "max" },
|
|
3602
|
+
{ providers: ["openai", "chatgpt-subscription", "opencode"], model: LATEST_MODEL_BY_FAMILY.gptAstra, variant: "max" },
|
|
3559
3603
|
{ providers: ["openai", "chatgpt-subscription"], model: "gpt-5.6-sol", variant: "max" },
|
|
3560
3604
|
{ providers: ["github-copilot"], model: "gpt-5.6-sol", variant: "max" },
|
|
3561
3605
|
{ providers: ["openai", "chatgpt-subscription", "opencode"], model: "gpt-5.6-sol", variant: "max" }
|
|
@@ -3563,8 +3607,8 @@ var init_category_model_requirements = __esm(() => {
|
|
|
3563
3607
|
},
|
|
3564
3608
|
"deep-low": {
|
|
3565
3609
|
fallbackChain: [
|
|
3566
|
-
{ providers: ["openai", "chatgpt-subscription"], model:
|
|
3567
|
-
{ providers: ["openai", "chatgpt-subscription"], model:
|
|
3610
|
+
{ providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptSol, variant: "medium" },
|
|
3611
|
+
{ providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptSolFast, variant: "medium" },
|
|
3568
3612
|
{
|
|
3569
3613
|
providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
|
|
3570
3614
|
model: "gpt-5.6-sol",
|
|
@@ -3577,7 +3621,7 @@ var init_category_model_requirements = __esm(() => {
|
|
|
3577
3621
|
fallbackChain: [
|
|
3578
3622
|
{
|
|
3579
3623
|
providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
|
|
3580
|
-
model:
|
|
3624
|
+
model: LATEST_MODEL_BY_FAMILY.gptAstra,
|
|
3581
3625
|
variant: "high"
|
|
3582
3626
|
}
|
|
3583
3627
|
]
|
|
@@ -3586,27 +3630,27 @@ var init_category_model_requirements = __esm(() => {
|
|
|
3586
3630
|
fallbackChain: [
|
|
3587
3631
|
{
|
|
3588
3632
|
providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
|
|
3589
|
-
model:
|
|
3633
|
+
model: LATEST_MODEL_BY_FAMILY.claudeFable,
|
|
3590
3634
|
variant: "max"
|
|
3591
3635
|
},
|
|
3592
3636
|
{
|
|
3593
3637
|
providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
|
|
3594
|
-
model:
|
|
3638
|
+
model: LATEST_MODEL_BY_FAMILY.claudeOpus,
|
|
3595
3639
|
variant: "max"
|
|
3596
3640
|
},
|
|
3597
3641
|
{
|
|
3598
3642
|
providers: ["kimi-for-coding", "moonshotai", "opencode-go", "opencode"],
|
|
3599
|
-
model:
|
|
3643
|
+
model: LATEST_MODEL_BY_FAMILY.kimi,
|
|
3600
3644
|
variant: "max"
|
|
3601
3645
|
}
|
|
3602
3646
|
]
|
|
3603
3647
|
},
|
|
3604
3648
|
quick: {
|
|
3605
3649
|
fallbackChain: [
|
|
3606
|
-
{ providers: ["openai", "chatgpt-subscription"], model:
|
|
3650
|
+
{ providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptLunaFast, variant: "low" },
|
|
3607
3651
|
{
|
|
3608
3652
|
providers: ["anthropic", "anthropic-api", "github-copilot"],
|
|
3609
|
-
model:
|
|
3653
|
+
model: LATEST_MODEL_BY_FAMILY.claudeHaiku,
|
|
3610
3654
|
variant: "medium"
|
|
3611
3655
|
},
|
|
3612
3656
|
{ providers: ["deepseek"], model: "deepseek-flash", variant: "off" },
|
|
@@ -3618,7 +3662,7 @@ var init_category_model_requirements = __esm(() => {
|
|
|
3618
3662
|
{ providers: ["opencode-go"], model: "minimax-m3", variant: "max" },
|
|
3619
3663
|
{ providers: ["opencode-go"], model: "minimax-m2.7", variant: "max" },
|
|
3620
3664
|
{ providers: ["xai"], model: "grok-4.20-0309-non-reasoning" },
|
|
3621
|
-
{ providers: ["zai-coding-plan"], model:
|
|
3665
|
+
{ providers: ["zai-coding-plan"], model: LATEST_MODEL_BY_FAMILY.glmFlash, variant: "low" },
|
|
3622
3666
|
{ providers: ["xiaomi"], model: "mimo-v2.6-flash", variant: "low" }
|
|
3623
3667
|
]
|
|
3624
3668
|
},
|
|
@@ -3626,13 +3670,13 @@ var init_category_model_requirements = __esm(() => {
|
|
|
3626
3670
|
fallbackChain: [
|
|
3627
3671
|
{
|
|
3628
3672
|
providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
|
|
3629
|
-
model:
|
|
3673
|
+
model: LATEST_MODEL_BY_FAMILY.claudeSonnet,
|
|
3630
3674
|
variant: "medium"
|
|
3631
3675
|
},
|
|
3632
3676
|
{ providers: ["xiaomi", "opencode-go"], model: "mimo-v2.6-pro", variant: "max" },
|
|
3633
3677
|
{ providers: ["xai", "github-copilot", "opencode-go"], model: "grok-4.7", variant: "xhigh" },
|
|
3634
|
-
{ providers: ["zai-coding-plan", "opencode-go"], model:
|
|
3635
|
-
{ providers: ["openai", "chatgpt-subscription"], model:
|
|
3678
|
+
{ providers: ["zai-coding-plan", "opencode-go"], model: LATEST_MODEL_BY_FAMILY.glm, variant: "high" },
|
|
3679
|
+
{ providers: ["openai", "chatgpt-subscription"], model: LATEST_MODEL_BY_FAMILY.gptSol, variant: "medium" },
|
|
3636
3680
|
{
|
|
3637
3681
|
providers: ["openai", "chatgpt-subscription", "github-copilot", "opencode"],
|
|
3638
3682
|
model: "gpt-5.6-sol",
|
|
@@ -3656,13 +3700,13 @@ var init_category_model_requirements = __esm(() => {
|
|
|
3656
3700
|
fallbackChain: [
|
|
3657
3701
|
{
|
|
3658
3702
|
providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
|
|
3659
|
-
model:
|
|
3703
|
+
model: LATEST_MODEL_BY_FAMILY.claudeOpus,
|
|
3660
3704
|
variant: "medium"
|
|
3661
3705
|
},
|
|
3662
|
-
{ providers: ["zai-coding-plan", "opencode-go"], model:
|
|
3706
|
+
{ providers: ["zai-coding-plan", "opencode-go"], model: LATEST_MODEL_BY_FAMILY.glm, variant: "max" },
|
|
3663
3707
|
{
|
|
3664
3708
|
providers: ["kimi-for-coding", "moonshotai", "opencode-go", "opencode"],
|
|
3665
|
-
model:
|
|
3709
|
+
model: LATEST_MODEL_BY_FAMILY.kimi,
|
|
3666
3710
|
variant: "max"
|
|
3667
3711
|
}
|
|
3668
3712
|
]
|
|
@@ -3670,10 +3714,10 @@ var init_category_model_requirements = __esm(() => {
|
|
|
3670
3714
|
writing: {
|
|
3671
3715
|
requiresAnyModel: true,
|
|
3672
3716
|
fallbackChain: [
|
|
3673
|
-
{ providers: ["google", "google-vertex", "opencode"], model:
|
|
3717
|
+
{ providers: ["google", "google-vertex", "opencode"], model: LATEST_MODEL_BY_FAMILY.geminiPro, variant: "low" },
|
|
3674
3718
|
{
|
|
3675
3719
|
providers: ["anthropic", "anthropic-api", "github-copilot", "opencode"],
|
|
3676
|
-
model:
|
|
3720
|
+
model: LATEST_MODEL_BY_FAMILY.claudeOpus,
|
|
3677
3721
|
variant: "low"
|
|
3678
3722
|
},
|
|
3679
3723
|
{
|
|
@@ -4942,6 +4986,7 @@ var MODELS_DEV_SOURCE_URL = "https://models.dev/api.json";
|
|
|
4942
4986
|
var init_src2 = __esm(() => {
|
|
4943
4987
|
init_model_resolver();
|
|
4944
4988
|
init_model_requirements();
|
|
4989
|
+
init_latest_models();
|
|
4945
4990
|
init_model_family_detectors();
|
|
4946
4991
|
init_model_capability_aliases();
|
|
4947
4992
|
init_model_capability_heuristics();
|
|
@@ -5179,16 +5224,17 @@ Approach:
|
|
|
5179
5224
|
- This is for tasks requiring exceptional creativity
|
|
5180
5225
|
</Category_Context>`, GOOGLE_CATEGORIES;
|
|
5181
5226
|
var init_google_categories = __esm(() => {
|
|
5227
|
+
init_latest_models();
|
|
5182
5228
|
GOOGLE_CATEGORIES = [
|
|
5183
5229
|
{
|
|
5184
5230
|
name: "visual-engineering",
|
|
5185
|
-
config: { model:
|
|
5231
|
+
config: { model: `google/${LATEST_MODEL_BY_FAMILY.geminiPro}`, variant: "low" },
|
|
5186
5232
|
description: "Visual design, UI/UX, frontend, styling, animation, and design systems",
|
|
5187
5233
|
promptAppend: VISUAL_CATEGORY_PROMPT_APPEND
|
|
5188
5234
|
},
|
|
5189
5235
|
{
|
|
5190
5236
|
name: "artistry",
|
|
5191
|
-
config: { model:
|
|
5237
|
+
config: { model: `anthropic/${LATEST_MODEL_BY_FAMILY.claudeFable}`, variant: "max" },
|
|
5192
5238
|
description: "Complex problem-solving with unconventional, creative approaches - beyond standard patterns",
|
|
5193
5239
|
promptAppend: ARTISTRY_CATEGORY_PROMPT_APPEND
|
|
5194
5240
|
}
|
|
@@ -5222,10 +5268,11 @@ ANTI-AI-SLOP RULES (NON-NEGOTIABLE):
|
|
|
5222
5268
|
- Write like a human, not a corporate template.
|
|
5223
5269
|
</Category_Context>`, KIMI_CATEGORIES;
|
|
5224
5270
|
var init_kimi_categories = __esm(() => {
|
|
5271
|
+
init_latest_models();
|
|
5225
5272
|
KIMI_CATEGORIES = [
|
|
5226
5273
|
{
|
|
5227
5274
|
name: "writing",
|
|
5228
|
-
config: { model:
|
|
5275
|
+
config: { model: `google/${LATEST_MODEL_BY_FAMILY.geminiPro}`, variant: "low" },
|
|
5229
5276
|
description: "Documentation, prose, technical writing",
|
|
5230
5277
|
promptAppend: WRITING_CATEGORY_PROMPT_APPEND
|
|
5231
5278
|
}
|
|
@@ -5360,21 +5407,23 @@ You are working on tasks that don't fit specific categories but require moderate
|
|
|
5360
5407
|
</Category_Context>`, UNSPECIFIED_LOW_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Use only when no specialist category fits, effort is moderate, and scope stays within a few files/modules. Prefer any matching specialist category.</Selection_Gate>
|
|
5361
5408
|
<Caller_Warning>Provide explicit must-do steps, forbidden scope, and concrete success criteria.</Caller_Warning>`, UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND = `<Category_Context>
|
|
5362
5409
|
You are working on tasks that don't fit specific categories but require substantial effort.
|
|
5363
|
-
</Category_Context>`, UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Use only when no specialist category fits and substantial effort spans systems/modules with broad impact. Use unspecified-low for contained moderate work.</Selection_Gate>`, DEEP_LOW_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Of the two deep lanes this is the default: the child settles its decisions from what it reads. When unsure, choose deep-low; a misrouted child returns \`ESCALATE: deep-high\` after one cheap attempt, and you re-spawn the same brief as deep-high with its findings.</Selection_Gate>`, DEEP_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Route here only when you can name the decision evidence cannot settle: a trade-off with no single right answer, a contract change crossing a package or process boundary, a mechanism with no in-repo pattern to copy, or correctness argued from invariants rather than observed in a test. Wide scope with easy decisions is deep-low or unspecified-high; reasoning as the deliverable is ultrabrain.</Selection_Gate>`, DEEP_LOW_GATE_MODELS, DEEP_HIGH_GATE_MODEL
|
|
5410
|
+
</Category_Context>`, UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Use only when no specialist category fits and substantial effort spans systems/modules with broad impact. Use unspecified-low for contained moderate work.</Selection_Gate>`, DEEP_LOW_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Of the two deep lanes this is the default: the child settles its decisions from what it reads. When unsure, choose deep-low; a misrouted child returns \`ESCALATE: deep-high\` after one cheap attempt, and you re-spawn the same brief as deep-high with its findings.</Selection_Gate>`, DEEP_HIGH_CATEGORY_CALLER_GUIDANCE = `<Selection_Gate>Route here only when you can name the decision evidence cannot settle: a trade-off with no single right answer, a contract change crossing a package or process boundary, a mechanism with no in-repo pattern to copy, or correctness argued from invariants rather than observed in a test. Wide scope with easy decisions is deep-low or unspecified-high; reasoning as the deliverable is ultrabrain.</Selection_Gate>`, DEEP_LOW_GATE_MODELS, DEEP_HIGH_GATE_MODEL, OPENAI_CATEGORIES;
|
|
5364
5411
|
var init_openai_categories = __esm(() => {
|
|
5365
5412
|
init_types();
|
|
5366
|
-
|
|
5413
|
+
init_latest_models();
|
|
5414
|
+
DEEP_LOW_GATE_MODELS = [LATEST_MODEL_BY_FAMILY.gptSol, LATEST_MODEL_BY_FAMILY.gptSolFast, "gpt-5.6-sol-fast", "gpt-5.6-sol"];
|
|
5415
|
+
DEEP_HIGH_GATE_MODEL = LATEST_MODEL_BY_FAMILY.gptAstra;
|
|
5367
5416
|
OPENAI_CATEGORIES = [
|
|
5368
5417
|
{
|
|
5369
5418
|
name: "ultrabrain",
|
|
5370
|
-
config: { model:
|
|
5419
|
+
config: { model: `openai/${LATEST_MODEL_BY_FAMILY.gptAstra}`, variant: "max" },
|
|
5371
5420
|
description: "Use ONLY for genuinely hard, logic-heavy tasks. Give clear goals only, not step-by-step instructions.",
|
|
5372
5421
|
promptAppend: ULTRABRAIN_CATEGORY_PROMPT_APPEND,
|
|
5373
5422
|
resolvePromptAppend: resolveUltrabrainCategoryPromptAppend
|
|
5374
5423
|
},
|
|
5375
5424
|
{
|
|
5376
5425
|
name: "deep-low",
|
|
5377
|
-
config: { model:
|
|
5426
|
+
config: { model: `openai/${LATEST_MODEL_BY_FAMILY.gptSol}`, variant: "medium" },
|
|
5378
5427
|
description: "Default deep lane: one goal, one deliverable, decisions the child can settle from what it reads; preferred over deep-high for 3D graphics, computer/browser use, CAPTCHA, multimodal, backend, logic, and algorithm work. Multiple goals fan out as parallel calls.",
|
|
5379
5428
|
callerGuidance: DEEP_LOW_CATEGORY_CALLER_GUIDANCE,
|
|
5380
5429
|
promptAppend: DEEP_LOW_CATEGORY_PROMPT_APPEND,
|
|
@@ -5383,7 +5432,7 @@ var init_openai_categories = __esm(() => {
|
|
|
5383
5432
|
},
|
|
5384
5433
|
{
|
|
5385
5434
|
name: "deep-high",
|
|
5386
|
-
config: { model:
|
|
5435
|
+
config: { model: `openai/${LATEST_MODEL_BY_FAMILY.gptAstra}`, variant: "high" },
|
|
5387
5436
|
description: "Escalation deep lane: a goal whose central decision cannot be settled from evidence alone. Same one-goal, one-deliverable contract as deep-low.",
|
|
5388
5437
|
callerGuidance: DEEP_HIGH_CATEGORY_CALLER_GUIDANCE,
|
|
5389
5438
|
promptAppend: DEEP_HIGH_CATEGORY_PROMPT_APPEND,
|
|
@@ -5392,21 +5441,21 @@ var init_openai_categories = __esm(() => {
|
|
|
5392
5441
|
},
|
|
5393
5442
|
{
|
|
5394
5443
|
name: "quick",
|
|
5395
|
-
config: { model:
|
|
5444
|
+
config: { model: `openai/${LATEST_MODEL_BY_FAMILY.gptLunaFast}`, variant: "low" },
|
|
5396
5445
|
description: "Trivial tasks - single file changes, typo fixes, simple modifications",
|
|
5397
5446
|
callerGuidance: QUICK_CATEGORY_CALLER_GUIDANCE,
|
|
5398
5447
|
promptAppend: QUICK_CATEGORY_PROMPT_APPEND
|
|
5399
5448
|
},
|
|
5400
5449
|
{
|
|
5401
5450
|
name: "unspecified-low",
|
|
5402
|
-
config: { model:
|
|
5451
|
+
config: { model: `anthropic/${LATEST_MODEL_BY_FAMILY.claudeSonnet}`, variant: "medium" },
|
|
5403
5452
|
description: "Tasks that don't fit other categories, low effort required",
|
|
5404
5453
|
callerGuidance: UNSPECIFIED_LOW_CATEGORY_CALLER_GUIDANCE,
|
|
5405
5454
|
promptAppend: UNSPECIFIED_LOW_CATEGORY_PROMPT_APPEND
|
|
5406
5455
|
},
|
|
5407
5456
|
{
|
|
5408
5457
|
name: "unspecified-high",
|
|
5409
|
-
config: { model:
|
|
5458
|
+
config: { model: `anthropic/${LATEST_MODEL_BY_FAMILY.claudeOpus}`, variant: "medium" },
|
|
5410
5459
|
description: "Tasks that don't fit other categories, high effort required",
|
|
5411
5460
|
callerGuidance: UNSPECIFIED_HIGH_CATEGORY_CALLER_GUIDANCE,
|
|
5412
5461
|
promptAppend: UNSPECIFIED_HIGH_CATEGORY_PROMPT_APPEND,
|
|
@@ -5456,7 +5505,7 @@ var init_migration2 = __esm(() => {
|
|
|
5456
5505
|
|
|
5457
5506
|
// packages/omo-opencode/src/shared/opencode-config-dir.ts
|
|
5458
5507
|
import { existsSync as existsSync2, realpathSync } from "fs";
|
|
5459
|
-
import { homedir as
|
|
5508
|
+
import { homedir as homedir3 } from "os";
|
|
5460
5509
|
import { join as join3, posix, resolve, win32 } from "path";
|
|
5461
5510
|
function isDevBuild(version) {
|
|
5462
5511
|
if (!version)
|
|
@@ -5467,14 +5516,14 @@ function getTauriConfigDir(identifier) {
|
|
|
5467
5516
|
const platform = process.platform;
|
|
5468
5517
|
switch (platform) {
|
|
5469
5518
|
case "darwin":
|
|
5470
|
-
return join3(
|
|
5519
|
+
return join3(homedir3(), "Library", "Application Support", identifier);
|
|
5471
5520
|
case "win32": {
|
|
5472
|
-
const appData = process.env.APPDATA || join3(
|
|
5521
|
+
const appData = process.env.APPDATA || join3(homedir3(), "AppData", "Roaming");
|
|
5473
5522
|
return win32.join(appData, identifier);
|
|
5474
5523
|
}
|
|
5475
5524
|
case "linux":
|
|
5476
5525
|
default: {
|
|
5477
|
-
const xdgConfig = process.env.XDG_CONFIG_HOME || join3(
|
|
5526
|
+
const xdgConfig = process.env.XDG_CONFIG_HOME || join3(homedir3(), ".config");
|
|
5478
5527
|
return join3(xdgConfig, identifier);
|
|
5479
5528
|
}
|
|
5480
5529
|
}
|
|
@@ -5518,7 +5567,7 @@ function getWslLinuxHomeDir(windowsConfigRoot) {
|
|
|
5518
5567
|
function getCliDefaultConfigDir() {
|
|
5519
5568
|
const envXdgConfig = process.env.XDG_CONFIG_HOME?.trim();
|
|
5520
5569
|
const shouldIgnoreWindowsXdg = envXdgConfig !== undefined && envXdgConfig.length > 0 && isWslEnvironment() && isWindowsUserConfigRoot(envXdgConfig);
|
|
5521
|
-
const xdgConfig = shouldIgnoreWindowsXdg ? posix.join(getWslLinuxHomeDir(envXdgConfig) ?? "/home", ".config") : envXdgConfig || join3(
|
|
5570
|
+
const xdgConfig = shouldIgnoreWindowsXdg ? posix.join(getWslLinuxHomeDir(envXdgConfig) ?? "/home", ".config") : envXdgConfig || join3(homedir3(), ".config");
|
|
5522
5571
|
const configDir = isWslEnvironment() ? posix.join(xdgConfig, "opencode") : join3(xdgConfig, "opencode");
|
|
5523
5572
|
return resolveConfigPath(configDir);
|
|
5524
5573
|
}
|
|
@@ -63697,10 +63746,11 @@ var ANTHROPIC_PREFIX = "anthropic/", CLAUDE_CODE_ALIAS_MAP;
|
|
|
63697
63746
|
var init_claude_model_mapper = __esm(() => {
|
|
63698
63747
|
init_model_format_normalizer();
|
|
63699
63748
|
init_model_normalization2();
|
|
63749
|
+
init_latest_models();
|
|
63700
63750
|
CLAUDE_CODE_ALIAS_MAP = new Map([
|
|
63701
|
-
["sonnet", `${ANTHROPIC_PREFIX}
|
|
63702
|
-
["opus", `${ANTHROPIC_PREFIX}
|
|
63703
|
-
["haiku", `${ANTHROPIC_PREFIX}
|
|
63751
|
+
["sonnet", `${ANTHROPIC_PREFIX}${LATEST_MODEL_BY_FAMILY.claudeSonnet}`],
|
|
63752
|
+
["opus", `${ANTHROPIC_PREFIX}${LATEST_MODEL_BY_FAMILY.claudeOpus}`],
|
|
63753
|
+
["haiku", `${ANTHROPIC_PREFIX}${LATEST_MODEL_BY_FAMILY.claudeHaiku}`]
|
|
63704
63754
|
]);
|
|
63705
63755
|
});
|
|
63706
63756
|
|
|
@@ -70090,7 +70140,7 @@ var init_git_master = __esm(() => {
|
|
|
70090
70140
|
OmoGitMasterSettingsLayerSchema = object(OmoGitMasterSettingsShape).partial().strict();
|
|
70091
70141
|
OmoGitMasterSettingsSchema = OmoGitMasterSettingsLayerSchema.extend({
|
|
70092
70142
|
commit_footer: union([boolean2(), string2()]).default(false),
|
|
70093
|
-
include_co_authored_by: boolean2().default(
|
|
70143
|
+
include_co_authored_by: boolean2().default(true),
|
|
70094
70144
|
git_env_prefix: GitEnvPrefixSchema.default("GIT_MASTER=1")
|
|
70095
70145
|
}).strict();
|
|
70096
70146
|
});
|
|
@@ -70124,7 +70174,7 @@ var init_memory_agreements = __esm(() => {
|
|
|
70124
70174
|
});
|
|
70125
70175
|
|
|
70126
70176
|
// packages/omo-config-core/src/schema/memory.ts
|
|
70127
|
-
var OmoMemoryReflectionTriggerSchema, OmoMemoryReflectionSchema, OmoMemorySyncSchema, OmoMemorySearchSchema, OmoMemoryRecallEventCapsSchema, OmoMemoryRecallSchema, OmoMemoryNudgeSchema, OmoMemoryFactsSchema, OmoMemoryDreamSchema, OmoMemoryPeopleSchema, OmoMemorySoulSchema, OmoMemoryWriteNoticeSchema, OmoMemoryReflectionTriggerLayerSchema, OmoMemoryReflectionLayerSchema, OmoMemorySyncLayerSchema, OmoMemorySearchLayerSchema, OmoMemoryRecallEventCapsLayerSchema, OmoMemoryRecallLayerSchema, OmoMemoryNudgeLayerSchema, OmoMemoryFactsLayerSchema, OmoMemoryDreamLayerSchema, OmoMemoryPeopleLayerSchema, OmoMemorySoulLayerSchema, OmoMemoryWriteNoticeLayerSchema, OmoMemoryProjectionSchema, OmoMemoryProjectionLayerSchema, OmoMemoryAgentOverridesSchema, OmoMemoryAutoIdentitySchema, OmoMemorySettingsSchema, OmoMemorySettingsLayerSchema;
|
|
70177
|
+
var OmoMemoryReflectionTriggerSchema, OmoMemoryReflectionSchema, OmoMemorySyncSchema, OmoMemorySearchSchema, OmoMemoryRecallEventCapsSchema, OmoMemoryRecallSchema, OmoMemoryProjectScopeSchema, OmoMemoryProjectScopeLayerSchema, OmoMemoryNudgeSchema, OmoMemoryFactsSchema, OmoMemoryDreamSchema, OmoMemoryPeopleSchema, OmoMemorySoulSchema, OmoMemoryWriteNoticeSchema, OmoMemoryReflectionTriggerLayerSchema, OmoMemoryReflectionLayerSchema, OmoMemorySyncLayerSchema, OmoMemorySearchLayerSchema, OmoMemoryRecallEventCapsLayerSchema, OmoMemoryRecallLayerSchema, OmoMemoryNudgeLayerSchema, OmoMemoryFactsLayerSchema, OmoMemoryDreamLayerSchema, OmoMemoryPeopleLayerSchema, OmoMemorySoulLayerSchema, OmoMemoryWriteNoticeLayerSchema, OmoMemoryProjectionSchema, OmoMemoryProjectionLayerSchema, OmoMemoryAgentOverridesSchema, OmoMemoryAutoIdentitySchema, OmoMemorySettingsSchema, OmoMemorySettingsLayerSchema;
|
|
70128
70178
|
var init_memory = __esm(() => {
|
|
70129
70179
|
init_zod();
|
|
70130
70180
|
init_memory_agreements();
|
|
@@ -70164,6 +70214,14 @@ var init_memory = __esm(() => {
|
|
|
70164
70214
|
tool_budget: number2().int().positive().default(8),
|
|
70165
70215
|
query_expansion: boolean2().default(false)
|
|
70166
70216
|
}).strict();
|
|
70217
|
+
OmoMemoryProjectScopeSchema = object({
|
|
70218
|
+
nudge: boolean2().default(true),
|
|
70219
|
+
recall: boolean2().default(true)
|
|
70220
|
+
}).strict();
|
|
70221
|
+
OmoMemoryProjectScopeLayerSchema = object({
|
|
70222
|
+
nudge: boolean2().optional(),
|
|
70223
|
+
recall: boolean2().optional()
|
|
70224
|
+
}).strict();
|
|
70167
70225
|
OmoMemoryNudgeSchema = object({
|
|
70168
70226
|
enabled: boolean2().default(true),
|
|
70169
70227
|
every_user_turns: number2().int().min(1).default(10)
|
|
@@ -70319,6 +70377,7 @@ var init_memory = __esm(() => {
|
|
|
70319
70377
|
tool_budget: 8,
|
|
70320
70378
|
query_expansion: false
|
|
70321
70379
|
}),
|
|
70380
|
+
project_scope: OmoMemoryProjectScopeSchema.default({ nudge: true, recall: true }),
|
|
70322
70381
|
projection: OmoMemoryProjectionSchema.default({ max_entries_per_directory: 40, max_bytes: 24576 }),
|
|
70323
70382
|
compile_warn_tokens: number2().int().positive().default(30000),
|
|
70324
70383
|
agents: record(string2(), OmoMemoryAgentOverridesSchema).default({})
|
|
@@ -70338,6 +70397,7 @@ var init_memory = __esm(() => {
|
|
|
70338
70397
|
sync: OmoMemorySyncLayerSchema.optional(),
|
|
70339
70398
|
search: OmoMemorySearchLayerSchema.optional(),
|
|
70340
70399
|
recall: OmoMemoryRecallLayerSchema.optional(),
|
|
70400
|
+
project_scope: OmoMemoryProjectScopeLayerSchema.optional(),
|
|
70341
70401
|
projection: OmoMemoryProjectionLayerSchema.optional(),
|
|
70342
70402
|
compile_warn_tokens: number2().int().positive().optional(),
|
|
70343
70403
|
agents: record(string2(), OmoMemoryAgentOverridesSchema).optional()
|
|
@@ -70635,7 +70695,8 @@ var OmoTelemetrySettingsShape, OmoTelemetrySettingsLayerSchema, OmoTelemetrySett
|
|
|
70635
70695
|
var init_telemetry = __esm(() => {
|
|
70636
70696
|
init_zod();
|
|
70637
70697
|
OmoTelemetrySettingsShape = {
|
|
70638
|
-
enabled: boolean2()
|
|
70698
|
+
enabled: boolean2(),
|
|
70699
|
+
rawTurnSampleRate: number2().min(0).max(1)
|
|
70639
70700
|
};
|
|
70640
70701
|
OmoTelemetrySettingsLayerSchema = object(OmoTelemetrySettingsShape).partial().strict();
|
|
70641
70702
|
OmoTelemetrySettingsSchema = OmoTelemetrySettingsLayerSchema.extend({
|
|
@@ -70662,11 +70723,24 @@ var init_format_on_mutation = __esm(() => {
|
|
|
70662
70723
|
}).strict();
|
|
70663
70724
|
});
|
|
70664
70725
|
|
|
70665
|
-
// packages/omo-config-core/src/schema/
|
|
70666
|
-
var
|
|
70667
|
-
var
|
|
70726
|
+
// packages/omo-config-core/src/schema/dori.ts
|
|
70727
|
+
var OmoDoriSectionSchema;
|
|
70728
|
+
var init_dori = __esm(() => {
|
|
70668
70729
|
init_zod();
|
|
70669
|
-
|
|
70730
|
+
OmoDoriSectionSchema = record(string2(), unknown()).describe("Chat-surface dori settings, owned and validated by a separately installed dori package. omo accepts the key and never reads it.");
|
|
70731
|
+
});
|
|
70732
|
+
|
|
70733
|
+
// packages/omo-config-core/src/schema/provenance.ts
|
|
70734
|
+
var OmoProvenanceSettingsSchema;
|
|
70735
|
+
var init_provenance = __esm(() => {
|
|
70736
|
+
init_zod();
|
|
70737
|
+
OmoProvenanceSettingsSchema = object({
|
|
70738
|
+
workspaces: array(object({
|
|
70739
|
+
name: string2().trim().min(1).regex(/\S/),
|
|
70740
|
+
git_owners: array(string2().trim().min(1).regex(/\S/)).optional(),
|
|
70741
|
+
paths: array(string2().trim().min(1).regex(/\S/)).optional()
|
|
70742
|
+
}).strict()).optional()
|
|
70743
|
+
}).strict();
|
|
70670
70744
|
});
|
|
70671
70745
|
|
|
70672
70746
|
// packages/omo-config-core/src/schema/config.ts
|
|
@@ -70685,13 +70759,15 @@ var init_config = __esm(() => {
|
|
|
70685
70759
|
init_team();
|
|
70686
70760
|
init_telemetry();
|
|
70687
70761
|
init_format_on_mutation();
|
|
70688
|
-
|
|
70762
|
+
init_dori();
|
|
70763
|
+
init_provenance();
|
|
70689
70764
|
OmoOpenCodeHarnessConfigSchema = record(string2(), unknown());
|
|
70690
70765
|
OmoDisabledSkillsSchema = array(string2());
|
|
70691
70766
|
OmoExcludedModelsSchema = array(string2());
|
|
70692
70767
|
OmoTypedHarnessConfigSchema = object({
|
|
70768
|
+
provenance: OmoProvenanceSettingsSchema.optional(),
|
|
70693
70769
|
formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
|
|
70694
|
-
|
|
70770
|
+
dori: OmoDoriSectionSchema.optional(),
|
|
70695
70771
|
categories: OmoCategoriesConfigSchema.optional(),
|
|
70696
70772
|
agents: OmoAgentsConfigSchema.optional(),
|
|
70697
70773
|
git_master: OmoGitMasterSettingsLayerSchema.optional(),
|
|
@@ -70708,7 +70784,9 @@ var init_config = __esm(() => {
|
|
|
70708
70784
|
exclude_models: OmoExcludedModelsSchema.optional()
|
|
70709
70785
|
}).strict();
|
|
70710
70786
|
OmoConfigProfileSchema = object({
|
|
70787
|
+
provenance: OmoProvenanceSettingsSchema.optional(),
|
|
70711
70788
|
formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
|
|
70789
|
+
dori: OmoDoriSectionSchema.optional(),
|
|
70712
70790
|
categories: OmoCategoriesConfigSchema.optional(),
|
|
70713
70791
|
agents: OmoAgentsConfigSchema.optional(),
|
|
70714
70792
|
git_master: OmoGitMasterSettingsLayerSchema.optional(),
|
|
@@ -70729,8 +70807,9 @@ var init_config = __esm(() => {
|
|
|
70729
70807
|
"[codex]": OmoTypedHarnessConfigSchema.optional()
|
|
70730
70808
|
}).strict();
|
|
70731
70809
|
OmoConfigSchema = object({
|
|
70810
|
+
provenance: OmoProvenanceSettingsSchema.optional(),
|
|
70732
70811
|
formatOnMutation: OmoFormatOnMutationSchema.optional(),
|
|
70733
|
-
|
|
70812
|
+
dori: OmoDoriSectionSchema.optional(),
|
|
70734
70813
|
$schema: string2().optional(),
|
|
70735
70814
|
categories: OmoCategoriesConfigSchema.optional(),
|
|
70736
70815
|
agents: OmoAgentsConfigSchema.optional(),
|
|
@@ -70755,8 +70834,9 @@ var init_config = __esm(() => {
|
|
|
70755
70834
|
legacy_migrations: record(string2(), unknown()).optional()
|
|
70756
70835
|
}).strict();
|
|
70757
70836
|
OmoConfigLayerSchema = object({
|
|
70837
|
+
provenance: OmoProvenanceSettingsSchema.optional(),
|
|
70758
70838
|
formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
|
|
70759
|
-
|
|
70839
|
+
dori: OmoDoriSectionSchema.optional(),
|
|
70760
70840
|
$schema: string2().optional(),
|
|
70761
70841
|
categories: OmoCategoriesConfigSchema.optional(),
|
|
70762
70842
|
agents: OmoAgentsConfigSchema.optional(),
|
|
@@ -70892,6 +70972,9 @@ var init_legacy_harness_names = __esm(() => {
|
|
|
70892
70972
|
init_harness();
|
|
70893
70973
|
});
|
|
70894
70974
|
|
|
70975
|
+
// packages/omo-config-core/src/schema/legacy-dori-section.ts
|
|
70976
|
+
var init_legacy_dori_section = () => {};
|
|
70977
|
+
|
|
70895
70978
|
// packages/omo-config-core/src/schema/index.ts
|
|
70896
70979
|
var init_schema = __esm(() => {
|
|
70897
70980
|
init_agent();
|
|
@@ -70899,15 +70982,17 @@ var init_schema = __esm(() => {
|
|
|
70899
70982
|
init_config();
|
|
70900
70983
|
init_fallback_models();
|
|
70901
70984
|
init_format_on_mutation();
|
|
70902
|
-
|
|
70985
|
+
init_dori();
|
|
70903
70986
|
init_git_master();
|
|
70904
70987
|
init_harness();
|
|
70905
70988
|
init_legacy_category_names();
|
|
70906
70989
|
init_legacy_harness_names();
|
|
70990
|
+
init_legacy_dori_section();
|
|
70907
70991
|
init_memory();
|
|
70908
70992
|
init_model_catalog();
|
|
70909
70993
|
init_model_profile();
|
|
70910
70994
|
init_model_ref();
|
|
70995
|
+
init_provenance();
|
|
70911
70996
|
init_side_panel();
|
|
70912
70997
|
init_task();
|
|
70913
70998
|
init_team();
|
|
@@ -72016,6 +72101,323 @@ var init_shared = __esm(() => {
|
|
|
72016
72101
|
init_legacy_workspace_migration();
|
|
72017
72102
|
init_replace_tool_args();
|
|
72018
72103
|
});
|
|
72104
|
+
// packages/skills-loader-core/src/shared/skill-path-resolver.ts
|
|
72105
|
+
var init_skill_path_resolver3 = __esm(() => {
|
|
72106
|
+
init_skill_path_resolver();
|
|
72107
|
+
});
|
|
72108
|
+
// packages/shared-skills/index.mjs
|
|
72109
|
+
import { existsSync as existsSync8 } from "fs";
|
|
72110
|
+
import { fileURLToPath as fileURLToPath2 } from "url";
|
|
72111
|
+
function sharedSkillsRootPath() {
|
|
72112
|
+
const candidates = SKILLS_PROBE_SPECIFIERS.map((specifier) => fileURLToPath2(new URL(specifier, import.meta.url)));
|
|
72113
|
+
return candidates.find((candidate) => existsSync8(candidate)) ?? candidates[0];
|
|
72114
|
+
}
|
|
72115
|
+
var SKILLS_PROBE_SPECIFIERS;
|
|
72116
|
+
var init_shared_skills = __esm(() => {
|
|
72117
|
+
SKILLS_PROBE_SPECIFIERS = ["./skills/", "../skills/", "../../skills/"];
|
|
72118
|
+
});
|
|
72119
|
+
|
|
72120
|
+
// packages/skills-loader-core/src/shared/claude-config-dir.ts
|
|
72121
|
+
import { join as join13 } from "path";
|
|
72122
|
+
function getClaudeConfigDir() {
|
|
72123
|
+
const envConfigDir = process.env.CLAUDE_CONFIG_DIR;
|
|
72124
|
+
if (envConfigDir) {
|
|
72125
|
+
return envConfigDir;
|
|
72126
|
+
}
|
|
72127
|
+
return join13(getHomeDirectory(), ".claude");
|
|
72128
|
+
}
|
|
72129
|
+
var init_claude_config_dir2 = __esm(() => {
|
|
72130
|
+
init_src();
|
|
72131
|
+
});
|
|
72132
|
+
|
|
72133
|
+
// packages/skills-loader-core/src/shared/plugin-identity.ts
|
|
72134
|
+
var PRODUCT_IDENTITY, PLUGIN_NAME2, LEGACY_PLUGIN_NAME2, PUBLISHED_PACKAGE_NAME2, CONFIG_BASENAME, LEGACY_CONFIG_BASENAME, LOG_FILENAME3, CACHE_DIR_NAME2;
|
|
72135
|
+
var init_plugin_identity2 = __esm(() => {
|
|
72136
|
+
init_src();
|
|
72137
|
+
PRODUCT_IDENTITY = createProductIdentity({
|
|
72138
|
+
pluginName: "oh-my-openagent",
|
|
72139
|
+
legacyPluginName: "oh-my-opencode",
|
|
72140
|
+
publishedPackageName: "oh-my-opencode",
|
|
72141
|
+
configBasename: "oh-my-openagent",
|
|
72142
|
+
legacyConfigBasename: "oh-my-opencode",
|
|
72143
|
+
logFileName: "oh-my-opencode.log",
|
|
72144
|
+
cacheDirName: "oh-my-opencode"
|
|
72145
|
+
});
|
|
72146
|
+
PLUGIN_NAME2 = PRODUCT_IDENTITY.pluginName;
|
|
72147
|
+
LEGACY_PLUGIN_NAME2 = PRODUCT_IDENTITY.legacyPluginName;
|
|
72148
|
+
PUBLISHED_PACKAGE_NAME2 = PRODUCT_IDENTITY.publishedPackageName;
|
|
72149
|
+
CONFIG_BASENAME = PRODUCT_IDENTITY.configBasename;
|
|
72150
|
+
LEGACY_CONFIG_BASENAME = PRODUCT_IDENTITY.legacyConfigBasename;
|
|
72151
|
+
LOG_FILENAME3 = PRODUCT_IDENTITY.logFileName;
|
|
72152
|
+
CACHE_DIR_NAME2 = PRODUCT_IDENTITY.cacheDirName;
|
|
72153
|
+
});
|
|
72154
|
+
|
|
72155
|
+
// packages/skills-loader-core/src/shared/opencode-config-dir.ts
|
|
72156
|
+
import { existsSync as existsSync9, realpathSync as realpathSync5 } from "fs";
|
|
72157
|
+
import { homedir as homedir5 } from "os";
|
|
72158
|
+
import { join as join14, posix as posix3, resolve as resolve5, win32 as win322 } from "path";
|
|
72159
|
+
function isDevBuild2(version) {
|
|
72160
|
+
if (!version)
|
|
72161
|
+
return false;
|
|
72162
|
+
return version.includes("-dev") || version.includes(".dev");
|
|
72163
|
+
}
|
|
72164
|
+
function getTauriConfigDir2(identifier) {
|
|
72165
|
+
const platform = process.platform;
|
|
72166
|
+
switch (platform) {
|
|
72167
|
+
case "darwin":
|
|
72168
|
+
return join14(homedir5(), "Library", "Application Support", identifier);
|
|
72169
|
+
case "win32": {
|
|
72170
|
+
const appData = process.env.APPDATA || join14(homedir5(), "AppData", "Roaming");
|
|
72171
|
+
return win322.join(appData, identifier);
|
|
72172
|
+
}
|
|
72173
|
+
case "linux":
|
|
72174
|
+
default: {
|
|
72175
|
+
const xdgConfig = process.env.XDG_CONFIG_HOME || join14(homedir5(), ".config");
|
|
72176
|
+
return join14(xdgConfig, identifier);
|
|
72177
|
+
}
|
|
72178
|
+
}
|
|
72179
|
+
}
|
|
72180
|
+
function resolveConfigPath2(pathValue) {
|
|
72181
|
+
if (isWslEnvironment2() && pathValue.startsWith("/")) {
|
|
72182
|
+
return posix3.normalize(pathValue);
|
|
72183
|
+
}
|
|
72184
|
+
const resolvedPath = resolve5(pathValue);
|
|
72185
|
+
if (!existsSync9(resolvedPath))
|
|
72186
|
+
return resolvedPath;
|
|
72187
|
+
try {
|
|
72188
|
+
return realpathSync5(resolvedPath);
|
|
72189
|
+
} catch (error) {
|
|
72190
|
+
if (error instanceof Error) {
|
|
72191
|
+
return resolvedPath;
|
|
72192
|
+
}
|
|
72193
|
+
return resolvedPath;
|
|
72194
|
+
}
|
|
72195
|
+
}
|
|
72196
|
+
function isWslEnvironment2() {
|
|
72197
|
+
return process.platform === "linux" && (Boolean(process.env.WSL_DISTRO_NAME?.trim()) || Boolean(process.env.WSL_INTEROP?.trim()));
|
|
72198
|
+
}
|
|
72199
|
+
function isWindowsUserConfigRoot2(pathValue) {
|
|
72200
|
+
const normalizedPath = pathValue.replaceAll("\\", "/").toLowerCase();
|
|
72201
|
+
return /^[a-z]:\/users\//.test(normalizedPath) || /^\/mnt\/[a-z]\/users\//.test(normalizedPath);
|
|
72202
|
+
}
|
|
72203
|
+
function getWindowsUserFromConfigRoot2(pathValue) {
|
|
72204
|
+
const normalizedPath = pathValue.replaceAll("\\", "/");
|
|
72205
|
+
const match = /^(?:[a-z]:|\/mnt\/[a-z])\/Users\/([^/]+)/i.exec(normalizedPath);
|
|
72206
|
+
return match?.[1] ?? null;
|
|
72207
|
+
}
|
|
72208
|
+
function getWslLinuxHomeDir2(windowsConfigRoot) {
|
|
72209
|
+
const envHome = process.env.HOME?.trim();
|
|
72210
|
+
if (envHome && envHome.startsWith("/") && !isWindowsUserConfigRoot2(envHome)) {
|
|
72211
|
+
return envHome;
|
|
72212
|
+
}
|
|
72213
|
+
const user = process.env.USER?.trim() || process.env.LOGNAME?.trim() || process.env.SUDO_USER?.trim() || (windowsConfigRoot ? getWindowsUserFromConfigRoot2(windowsConfigRoot) : undefined);
|
|
72214
|
+
return user ? posix3.join("/home", user) : null;
|
|
72215
|
+
}
|
|
72216
|
+
function getCliDefaultConfigDir2() {
|
|
72217
|
+
const envXdgConfig = process.env.XDG_CONFIG_HOME?.trim();
|
|
72218
|
+
const shouldIgnoreWindowsXdg = envXdgConfig !== undefined && envXdgConfig.length > 0 && isWslEnvironment2() && isWindowsUserConfigRoot2(envXdgConfig);
|
|
72219
|
+
const xdgConfig = shouldIgnoreWindowsXdg ? posix3.join(getWslLinuxHomeDir2(envXdgConfig) ?? "/home", ".config") : envXdgConfig || join14(homedir5(), ".config");
|
|
72220
|
+
const configDir = isWslEnvironment2() ? posix3.join(xdgConfig, "opencode") : join14(xdgConfig, "opencode");
|
|
72221
|
+
return resolveConfigPath2(configDir);
|
|
72222
|
+
}
|
|
72223
|
+
function getCliCustomConfigDir2() {
|
|
72224
|
+
const envConfigDir = process.env.OPENCODE_CONFIG_DIR?.trim();
|
|
72225
|
+
if (!envConfigDir) {
|
|
72226
|
+
return null;
|
|
72227
|
+
}
|
|
72228
|
+
return resolveConfigPath2(envConfigDir);
|
|
72229
|
+
}
|
|
72230
|
+
function getCliConfigDir2() {
|
|
72231
|
+
return getCliCustomConfigDir2() ?? getCliDefaultConfigDir2();
|
|
72232
|
+
}
|
|
72233
|
+
function getOpenCodeConfigDirs2(options) {
|
|
72234
|
+
if (options.binary !== "opencode") {
|
|
72235
|
+
return [getOpenCodeConfigDir2(options)];
|
|
72236
|
+
}
|
|
72237
|
+
const customConfigDir = getCliCustomConfigDir2();
|
|
72238
|
+
return Array.from(new Set([
|
|
72239
|
+
...customConfigDir ? [customConfigDir] : [],
|
|
72240
|
+
getCliDefaultConfigDir2()
|
|
72241
|
+
]));
|
|
72242
|
+
}
|
|
72243
|
+
function getOpenCodeConfigDir2(options) {
|
|
72244
|
+
const { binary, version, checkExisting = true } = options;
|
|
72245
|
+
if (binary === "opencode") {
|
|
72246
|
+
return getCliConfigDir2();
|
|
72247
|
+
}
|
|
72248
|
+
const identifier = isDevBuild2(version) ? TAURI_APP_IDENTIFIER_DEV2 : TAURI_APP_IDENTIFIER2;
|
|
72249
|
+
const tauriDirBase = getTauriConfigDir2(identifier);
|
|
72250
|
+
const tauriDir = process.platform === "win32" ? win322.isAbsolute(tauriDirBase) ? win322.normalize(tauriDirBase) : win322.resolve(tauriDirBase) : resolveConfigPath2(tauriDirBase);
|
|
72251
|
+
if (checkExisting) {
|
|
72252
|
+
const legacyDir = getCliConfigDir2();
|
|
72253
|
+
const legacyConfig = join14(legacyDir, "opencode.json");
|
|
72254
|
+
const legacyConfigC = join14(legacyDir, "opencode.jsonc");
|
|
72255
|
+
if (existsSync9(legacyConfig) || existsSync9(legacyConfigC)) {
|
|
72256
|
+
return legacyDir;
|
|
72257
|
+
}
|
|
72258
|
+
}
|
|
72259
|
+
return tauriDir;
|
|
72260
|
+
}
|
|
72261
|
+
var TAURI_APP_IDENTIFIER2 = "ai.opencode.desktop", TAURI_APP_IDENTIFIER_DEV2 = "ai.opencode.desktop.dev";
|
|
72262
|
+
var init_opencode_config_dir2 = __esm(() => {
|
|
72263
|
+
init_plugin_identity2();
|
|
72264
|
+
});
|
|
72265
|
+
|
|
72266
|
+
// packages/skills-loader-core/src/shared/opencode-command-dirs.ts
|
|
72267
|
+
var init_opencode_command_dirs2 = __esm(() => {
|
|
72268
|
+
init_opencode_config_dir2();
|
|
72269
|
+
});
|
|
72270
|
+
// packages/skills-loader-core/src/shared/jsonc-parser.ts
|
|
72271
|
+
var init_jsonc_parser3 = () => {};
|
|
72272
|
+
|
|
72273
|
+
// packages/skills-loader-core/src/shared/project-discovery-dirs.ts
|
|
72274
|
+
import { execFileSync } from "child_process";
|
|
72275
|
+
import { existsSync as existsSync10, realpathSync as realpathSync6 } from "fs";
|
|
72276
|
+
import { dirname as dirname5, join as join15, resolve as resolve6, win32 as win323 } from "path";
|
|
72277
|
+
function normalizePath(path) {
|
|
72278
|
+
const resolvedPath = process.platform !== "win32" && win323.isAbsolute(path) ? path : resolve6(path);
|
|
72279
|
+
if (!existsSync10(resolvedPath)) {
|
|
72280
|
+
return resolvedPath;
|
|
72281
|
+
}
|
|
72282
|
+
try {
|
|
72283
|
+
return realpathSync6.native(resolvedPath);
|
|
72284
|
+
} catch (error) {
|
|
72285
|
+
if (!(error instanceof Error)) {
|
|
72286
|
+
throw error;
|
|
72287
|
+
}
|
|
72288
|
+
try {
|
|
72289
|
+
return realpathSync6(resolvedPath);
|
|
72290
|
+
} catch (fallbackError) {
|
|
72291
|
+
if (!(fallbackError instanceof Error)) {
|
|
72292
|
+
throw fallbackError;
|
|
72293
|
+
}
|
|
72294
|
+
return resolvedPath;
|
|
72295
|
+
}
|
|
72296
|
+
}
|
|
72297
|
+
}
|
|
72298
|
+
function pathKey(path) {
|
|
72299
|
+
const normalized = path.replace(/\\/g, "/");
|
|
72300
|
+
return process.platform === "win32" ? normalized.toLowerCase() : normalized;
|
|
72301
|
+
}
|
|
72302
|
+
function detectWorktreePath(directory) {
|
|
72303
|
+
const resolvedDirectory = resolve6(directory);
|
|
72304
|
+
const cacheKey = pathKey(normalizePath(resolvedDirectory));
|
|
72305
|
+
if (worktreePathCache2.has(cacheKey)) {
|
|
72306
|
+
return worktreePathCache2.get(cacheKey);
|
|
72307
|
+
}
|
|
72308
|
+
let ancestor = normalizePath(resolvedDirectory);
|
|
72309
|
+
while (true) {
|
|
72310
|
+
if (existsSync10(join15(ancestor, ".git"))) {
|
|
72311
|
+
worktreePathCache2.set(cacheKey, ancestor);
|
|
72312
|
+
return ancestor;
|
|
72313
|
+
}
|
|
72314
|
+
const parent = dirname5(ancestor);
|
|
72315
|
+
if (parent === ancestor)
|
|
72316
|
+
break;
|
|
72317
|
+
ancestor = parent;
|
|
72318
|
+
}
|
|
72319
|
+
try {
|
|
72320
|
+
const worktreePath = execFileSync("git", ["rev-parse", "--show-toplevel"], {
|
|
72321
|
+
cwd: resolvedDirectory,
|
|
72322
|
+
encoding: "utf-8",
|
|
72323
|
+
timeout: 5000,
|
|
72324
|
+
stdio: ["pipe", "pipe", "pipe"]
|
|
72325
|
+
}).trim();
|
|
72326
|
+
const normalizedWorktreePath = normalizePath(worktreePath);
|
|
72327
|
+
worktreePathCache2.set(cacheKey, normalizedWorktreePath);
|
|
72328
|
+
return normalizedWorktreePath;
|
|
72329
|
+
} catch (error) {
|
|
72330
|
+
if (!(error instanceof Error)) {
|
|
72331
|
+
throw error;
|
|
72332
|
+
}
|
|
72333
|
+
worktreePathCache2.set(cacheKey, undefined);
|
|
72334
|
+
return;
|
|
72335
|
+
}
|
|
72336
|
+
}
|
|
72337
|
+
var worktreePathCache2;
|
|
72338
|
+
var init_project_discovery_dirs2 = __esm(() => {
|
|
72339
|
+
init_jsonc_parser3();
|
|
72340
|
+
init_plugin_identity2();
|
|
72341
|
+
worktreePathCache2 = new Map;
|
|
72342
|
+
});
|
|
72343
|
+
|
|
72344
|
+
// packages/skills-loader-core/src/shared/internal-initiator-marker.ts
|
|
72345
|
+
var init_internal_initiator_marker3 = __esm(() => {
|
|
72346
|
+
init_internal_initiator_marker();
|
|
72347
|
+
});
|
|
72348
|
+
|
|
72349
|
+
// packages/skills-loader-core/src/shared/index.ts
|
|
72350
|
+
var init_shared2 = __esm(() => {
|
|
72351
|
+
init_claude_config_dir2();
|
|
72352
|
+
init_opencode_command_dirs2();
|
|
72353
|
+
init_opencode_config_dir2();
|
|
72354
|
+
init_project_discovery_dirs2();
|
|
72355
|
+
init_skill_path_resolver3();
|
|
72356
|
+
init_internal_initiator_marker3();
|
|
72357
|
+
});
|
|
72358
|
+
|
|
72359
|
+
// packages/skills-loader-core/src/features/opencode-skill-loader/skill-provenance.ts
|
|
72360
|
+
import { basename as basename3, dirname as dirname6, join as join16, resolve as resolve7, sep } from "path";
|
|
72361
|
+
import { homedir as homedir6 } from "os";
|
|
72362
|
+
function knownUserSkillRoots() {
|
|
72363
|
+
const home = homedir6();
|
|
72364
|
+
return [
|
|
72365
|
+
join16(getClaudeConfigDir(), "skills"),
|
|
72366
|
+
join16(home, ".agents", "skills"),
|
|
72367
|
+
join16(home, ".omo", "agent", "skills"),
|
|
72368
|
+
join16(home, ".senpi", "agent", "skills"),
|
|
72369
|
+
sharedSkillsRootPath(),
|
|
72370
|
+
...getOpenCodeConfigDirs2({ binary: "opencode" }).flatMap((dir) => [
|
|
72371
|
+
join16(dir, "skills"),
|
|
72372
|
+
join16(dir, "skill")
|
|
72373
|
+
])
|
|
72374
|
+
];
|
|
72375
|
+
}
|
|
72376
|
+
var observers;
|
|
72377
|
+
var init_skill_provenance = __esm(() => {
|
|
72378
|
+
init_shared_skills();
|
|
72379
|
+
init_shared2();
|
|
72380
|
+
observers = new Set;
|
|
72381
|
+
});
|
|
72382
|
+
|
|
72383
|
+
// packages/skills-loader-core/src/features/opencode-skill-loader/checked-skill-read.ts
|
|
72384
|
+
var init_checked_skill_read = __esm(() => {
|
|
72385
|
+
init_skill_provenance();
|
|
72386
|
+
});
|
|
72387
|
+
|
|
72388
|
+
// packages/skills-loader-core/src/features/opencode-skill-loader/skill-mcp-config.ts
|
|
72389
|
+
var init_skill_mcp_config = __esm(() => {
|
|
72390
|
+
init_js_yaml();
|
|
72391
|
+
init_checked_skill_read();
|
|
72392
|
+
init_skill_provenance();
|
|
72393
|
+
});
|
|
72394
|
+
|
|
72395
|
+
// packages/skills-loader-core/src/features/opencode-skill-loader/loaded-skill-from-path.ts
|
|
72396
|
+
var init_loaded_skill_from_path = __esm(() => {
|
|
72397
|
+
init_skill_path_resolver3();
|
|
72398
|
+
init_skill_mcp_config();
|
|
72399
|
+
init_checked_skill_read();
|
|
72400
|
+
init_skill_provenance();
|
|
72401
|
+
});
|
|
72402
|
+
|
|
72403
|
+
// packages/skills-loader-core/src/features/opencode-skill-loader/skill-directory-loader.ts
|
|
72404
|
+
var init_skill_directory_loader = __esm(() => {
|
|
72405
|
+
init_loaded_skill_from_path();
|
|
72406
|
+
init_skill_provenance();
|
|
72407
|
+
});
|
|
72408
|
+
|
|
72409
|
+
// packages/skills-loader-core/src/features/opencode-skill-loader/config-source-discovery.ts
|
|
72410
|
+
function setSkillSourceProvenance(config, provenance) {
|
|
72411
|
+
sourceOrigins.set(config, provenance);
|
|
72412
|
+
}
|
|
72413
|
+
var sourceOrigins;
|
|
72414
|
+
var init_config_source_discovery = __esm(() => {
|
|
72415
|
+
init_skill_directory_loader();
|
|
72416
|
+
init_loaded_skill_from_path();
|
|
72417
|
+
init_project_discovery_dirs2();
|
|
72418
|
+
init_skill_provenance();
|
|
72419
|
+
sourceOrigins = new WeakMap;
|
|
72420
|
+
});
|
|
72019
72421
|
|
|
72020
72422
|
// packages/omo-opencode/src/shared/disabled-providers.ts
|
|
72021
72423
|
function getModelProvider(model) {
|
|
@@ -72135,7 +72537,7 @@ function appendViews(views, layers, select, keyPrefix) {
|
|
|
72135
72537
|
for (const layer of layers) {
|
|
72136
72538
|
const config = select(layer.config);
|
|
72137
72539
|
if (Object.keys(config).length > 0)
|
|
72138
|
-
views.push({ config, keyPrefix, path: layer.source.path });
|
|
72540
|
+
views.push({ config, keyPrefix, path: layer.source.path, scope: layer.source.scope });
|
|
72139
72541
|
}
|
|
72140
72542
|
}
|
|
72141
72543
|
function recordFields(value, fields) {
|
|
@@ -72741,7 +73143,7 @@ var init_git_master2 = __esm(() => {
|
|
|
72741
73143
|
init_git_env_prefix2();
|
|
72742
73144
|
GitMasterConfigSchema = object({
|
|
72743
73145
|
commit_footer: union([boolean2(), string2()]).default(false),
|
|
72744
|
-
include_co_authored_by: boolean2().default(
|
|
73146
|
+
include_co_authored_by: boolean2().default(true),
|
|
72745
73147
|
git_env_prefix: GitEnvPrefixSchema2
|
|
72746
73148
|
});
|
|
72747
73149
|
});
|
|
@@ -73146,7 +73548,7 @@ var init_oh_my_opencode_config = __esm(() => {
|
|
|
73146
73548
|
babysitting: BabysittingConfigSchema.optional(),
|
|
73147
73549
|
git_master: GitMasterConfigSchema.default({
|
|
73148
73550
|
commit_footer: false,
|
|
73149
|
-
include_co_authored_by:
|
|
73551
|
+
include_co_authored_by: true,
|
|
73150
73552
|
git_env_prefix: "GIT_MASTER=1"
|
|
73151
73553
|
}),
|
|
73152
73554
|
browser_automation_engine: BrowserAutomationConfigSchema.optional(),
|
|
@@ -73221,7 +73623,7 @@ var init_prune_plugin_view = __esm(() => {
|
|
|
73221
73623
|
});
|
|
73222
73624
|
|
|
73223
73625
|
// packages/omo-opencode/src/config/validate.ts
|
|
73224
|
-
import { relative } from "path";
|
|
73626
|
+
import { dirname as dirname7, isAbsolute, join as join17, relative } from "path";
|
|
73225
73627
|
function shortPath(configPath) {
|
|
73226
73628
|
const candidate = relative(process.cwd(), configPath);
|
|
73227
73629
|
return candidate.length > 0 ? candidate : configPath;
|
|
@@ -73357,6 +73759,28 @@ function validatePluginConfig(directory, environment = process.env) {
|
|
|
73357
73759
|
const userConfig = parseConfig(prunePluginView({ config: chain.protectedUserView, homeDir, keyPrefix: "", path: "" }).config);
|
|
73358
73760
|
const config = applyDisabledProviders(materializeAgentModelChains(protectUserFields(mergeViews(views), userConfig)));
|
|
73359
73761
|
warnLegacyUlwExecuteKey(chain.views);
|
|
73762
|
+
if (config.skills) {
|
|
73763
|
+
const owner = chain.views.findLast((view) => Object.hasOwn(view.config, "skills"));
|
|
73764
|
+
const userRoots = [...knownUserSkillRoots()];
|
|
73765
|
+
for (const view of chain.views.filter((candidate) => candidate.scope === "user")) {
|
|
73766
|
+
const settings = OhMyOpenCodeConfigSchema.safeParse({ skills: view.config.skills });
|
|
73767
|
+
const skills = settings.success ? settings.data.skills : undefined;
|
|
73768
|
+
if (!skills || Array.isArray(skills))
|
|
73769
|
+
continue;
|
|
73770
|
+
for (const source of skills.sources ?? []) {
|
|
73771
|
+
const path = typeof source === "string" ? source : source.path;
|
|
73772
|
+
if (/^https?:\/\//.test(path))
|
|
73773
|
+
continue;
|
|
73774
|
+
userRoots.push(path.startsWith("~/") ? join17(homeDir ?? "", path.slice(2)) : isAbsolute(path) ? path : join17(dirname7(view.path), path));
|
|
73775
|
+
}
|
|
73776
|
+
}
|
|
73777
|
+
setSkillSourceProvenance(config.skills, {
|
|
73778
|
+
kind: owner?.scope === "user" ? "user" : "project-auto",
|
|
73779
|
+
selectedRoot: owner ? dirname7(owner.path) : directory,
|
|
73780
|
+
projectRoot: detectWorktreePath(directory) ?? directory,
|
|
73781
|
+
userRoots
|
|
73782
|
+
});
|
|
73783
|
+
}
|
|
73360
73784
|
return {
|
|
73361
73785
|
valid: messages.length === 0,
|
|
73362
73786
|
messages,
|
|
@@ -73367,6 +73791,9 @@ function validatePluginConfig(directory, environment = process.env) {
|
|
|
73367
73791
|
}
|
|
73368
73792
|
var START_WORK_DEPRECATION_MESSAGE = 'config key "start_work" is deprecated, rename to "ulw_execute" - will be removed next release', deprecationWarningSink;
|
|
73369
73793
|
var init_validate = __esm(() => {
|
|
73794
|
+
init_config_source_discovery();
|
|
73795
|
+
init_skill_provenance();
|
|
73796
|
+
init_project_discovery_dirs2();
|
|
73370
73797
|
init_src4();
|
|
73371
73798
|
init_disabled_providers();
|
|
73372
73799
|
init_logger2();
|
|
@@ -75096,7 +75523,7 @@ init_shared();
|
|
|
75096
75523
|
// package.json
|
|
75097
75524
|
var package_default = {
|
|
75098
75525
|
name: "oh-my-opencode",
|
|
75099
|
-
version: "5.1.
|
|
75526
|
+
version: "5.1.45",
|
|
75100
75527
|
description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
|
|
75101
75528
|
main: "./dist/index.js",
|
|
75102
75529
|
types: "dist/index.d.ts",
|
|
@@ -75216,6 +75643,8 @@ var package_default = {
|
|
|
75216
75643
|
"build:senpi-plugin": "bun run build:lsp-daemon && bun run build:ast-grep-mcp && bun run build:senpi-plugin:stage",
|
|
75217
75644
|
"build:senpi-plugin:native": "node packages/omo-senpi/plugin/scripts/stage-lsp-daemon-runtime.mjs && node packages/omo-senpi/plugin/scripts/stage-ast-grep-mcp-runtime.mjs && node packages/omo-senpi/plugin/scripts/stage-x-search-skill.mjs && node packages/omo-senpi/plugin/scripts/build-extension.mjs && node packages/omo-senpi/plugin/scripts/build-daemon-launch-spec.mjs && node packages/omo-senpi/plugin/scripts/sync-skills.mjs && node packages/omo-senpi/plugin/scripts/embed-directive.mjs --check && node packages/omo-senpi/plugin/scripts/build-install.mjs",
|
|
75218
75645
|
"build:senpi-plugin:stage": "bun run build:materialize-frontend && node packages/omo-senpi/plugin/scripts/stage-lsp-daemon-runtime.mjs && node packages/omo-senpi/plugin/scripts/stage-ast-grep-mcp-runtime.mjs && node packages/omo-senpi/plugin/scripts/stage-x-search-skill.mjs && node packages/omo-senpi/plugin/scripts/build-extension.mjs && node packages/omo-senpi/plugin/scripts/build-daemon-launch-spec.mjs && node packages/omo-senpi/plugin/scripts/sync-skills.mjs && node packages/omo-senpi/plugin/scripts/embed-directive.mjs --check && node packages/omo-senpi/plugin/scripts/build-install.mjs",
|
|
75646
|
+
"bundle-inputs": "node packages/omo-senpi/plugin/scripts/bundle-inputs.mjs",
|
|
75647
|
+
"bundle-inputs:check": "node packages/omo-senpi/plugin/scripts/bundle-inputs.mjs --check",
|
|
75219
75648
|
"build:materialize-frontend": "node packages/omo-codex/plugin/scripts/materialize-shared-upstreams.mjs --strict",
|
|
75220
75649
|
"build:shared-skills-assets": "bun run build:materialize-frontend && rm -rf dist/skills && cp -R packages/shared-skills/skills dist/skills",
|
|
75221
75650
|
"build:lsp-tools-mcp": "npm --prefix packages/lsp-tools-mcp ci && npm --prefix packages/lsp-tools-mcp run build",
|
|
@@ -75234,7 +75663,8 @@ var package_default = {
|
|
|
75234
75663
|
postinstall: "node postinstall.mjs",
|
|
75235
75664
|
prepublishOnly: "bun run clean && bun run build:lsp-tools-mcp && bun run build:lsp-daemon && bun run build",
|
|
75236
75665
|
"test:model-capabilities": "bun test --timeout 20000 packages/model-core/src/model-capability-aliases.test.ts packages/model-core/src/model-capability-guardrails.test.ts packages/model-core/src/model-capabilities.test.ts packages/omo-opencode/src/cli/doctor/checks/model-resolution.test.ts --bail",
|
|
75237
|
-
|
|
75666
|
+
"check:copy": "bun script/check-copy.ts",
|
|
75667
|
+
typecheck: "bun run check:copy && tsgo --noEmit && bun run typecheck:script && bun run typecheck:packages",
|
|
75238
75668
|
"typecheck:packages": "tsgo --noEmit -p packages/rules-engine/tsconfig.json && tsgo --noEmit -p packages/delegate-core/tsconfig.json && tsgo --noEmit -p packages/mcp-stdio-core/tsconfig.json && tsgo --noEmit -p packages/mcp-client-core/tsconfig.json && tsgo --noEmit -p packages/git-bash-mcp/tsconfig.json && tsgo --noEmit -p packages/ast-grep-mcp/tsconfig.json && tsgo --noEmit -p packages/lsp-core/tsconfig.json && tsgo --noEmit -p packages/utils/tsconfig.json && tsgo --noEmit -p packages/model-core/tsconfig.json && tsgo --noEmit -p packages/omo-config-core/tsconfig.json && tsgo --noEmit -p packages/prompts-core/tsconfig.json && tsgo --noEmit -p packages/comment-checker-core/tsconfig.json && tsgo --noEmit -p packages/hashline-core/tsconfig.json && tsgo --noEmit -p packages/tmux-core/tsconfig.json && tsgo --noEmit -p packages/team-core/tsconfig.json && tsgo --noEmit -p packages/openclaw-core/tsconfig.json && tsgo --noEmit -p packages/boulder-state/tsconfig.json && tsgo --noEmit -p packages/isolation-core/tsconfig.json && tsgo --noEmit -p packages/memory-core/tsconfig.json && tsgo --noEmit -p packages/telemetry-core/tsconfig.json && tsgo --noEmit -p packages/claude-code-compat-core/tsconfig.json && tsgo --noEmit -p packages/skills-loader-core/tsconfig.json && tsgo --noEmit -p packages/agents-md-core/tsconfig.json && tsgo --noEmit -p packages/omo-codex/plugin/shared/tsconfig.json && tsgo --noEmit -p packages/omo-codex/tsconfig.json && tsgo --noEmit -p packages/omo-senpi/tsconfig.json && tsgo --noEmit -p packages/senpi-task/tsconfig.json && tsgo --noEmit -p packages/omo-opencode/tsconfig.json && tsgo --noEmit -p packages/omo-native/tsconfig.json && tsgo --noEmit -p packages/senpi-desktop-protocol/tsconfig.json && tsgo --noEmit -p packages/senpi-desktop-engine/tsconfig.json && tsgo --noEmit -p packages/senpi-desktop-prelude/tsconfig.json && tsgo --noEmit -p packages/senpi-desktop-service/tsconfig.json && tsgo --noEmit -p packages/senpi-desktop-tool/tsconfig.json",
|
|
75239
75669
|
"typecheck:script": "tsgo --noEmit -p script/tsconfig.json",
|
|
75240
75670
|
test: "bun test --timeout 20000",
|
|
@@ -75245,7 +75675,10 @@ var package_default = {
|
|
|
75245
75675
|
"test:windows-codex": "bun run test:codex",
|
|
75246
75676
|
"build:git-bash-mcp": "bun run --cwd packages/git-bash-mcp build",
|
|
75247
75677
|
"build:ast-grep-mcp": "bun run --cwd packages/ast-grep-mcp build",
|
|
75248
|
-
"test:desktop": "bun script/check-cargo-pinned-deps.mjs && bun run --cwd packages/senpi-desktop-protocol test && bun run --cwd packages/senpi-desktop-engine test && bun run --cwd packages/senpi-desktop-prelude test && bun run --cwd packages/senpi-desktop-service test && bun run --cwd packages/senpi-desktop-tool test"
|
|
75678
|
+
"test:desktop": "bun script/check-cargo-pinned-deps.mjs && bun run --cwd packages/senpi-desktop-protocol test && bun run --cwd packages/senpi-desktop-engine test && bun run --cwd packages/senpi-desktop-prelude test && bun run --cwd packages/senpi-desktop-service test && bun run --cwd packages/senpi-desktop-tool test",
|
|
75679
|
+
"lint:ratchet": "bun script/lint-ratchet.ts",
|
|
75680
|
+
"lint:ratchet:update": "bun script/lint-ratchet.ts --update",
|
|
75681
|
+
lint: "bun run check:copy && oxlint packages/lsp-tools-mcp packages/lsp-daemon packages/web packages/omo-codex/plugin/components/comment-checker packages/omo-codex/plugin/components/lazycodex-executor-verify packages/omo-codex/plugin/components/lsp packages/omo-codex/plugin/components/rules packages/omo-codex/plugin/components/telemetry packages/omo-codex/plugin/components/ultrawork packages/omo-codex/plugin/components/ulw-execute-continuation packages/omo-codex/plugin/components/ulw-loop"
|
|
75249
75682
|
},
|
|
75250
75683
|
keywords: [
|
|
75251
75684
|
"opencode",
|
|
@@ -75273,7 +75706,7 @@ var package_default = {
|
|
|
75273
75706
|
},
|
|
75274
75707
|
devDependencies: {
|
|
75275
75708
|
"@clack/prompts": "^1.8.1",
|
|
75276
|
-
"@code-yeongyu/senpi": "2026.10.
|
|
75709
|
+
"@code-yeongyu/senpi": "2026.10.23-1",
|
|
75277
75710
|
"@modelcontextprotocol/sdk": "^1.30.0",
|
|
75278
75711
|
"@oh-my-opencode/agents-md-core": "workspace:*",
|
|
75279
75712
|
"@oh-my-opencode/ast-grep-mcp": "workspace:*",
|
|
@@ -75327,6 +75760,8 @@ var package_default = {
|
|
|
75327
75760
|
"jsonc-parser": "^3.3.1",
|
|
75328
75761
|
"node-pty": "^1.1.0",
|
|
75329
75762
|
omowright: "github:code-yeongyu/omowright#f87ef4d63fe7b56fe117dbab246c8ad88dd8a780",
|
|
75763
|
+
"oxc-parser": "0.148.0",
|
|
75764
|
+
oxlint: "1.89.0",
|
|
75330
75765
|
picocolors: "^1.1.1",
|
|
75331
75766
|
picomatch: "^4.0.7",
|
|
75332
75767
|
"posthog-node": "^5.52.4",
|
|
@@ -75334,18 +75769,18 @@ var package_default = {
|
|
|
75334
75769
|
typescript: "^7.0.2"
|
|
75335
75770
|
},
|
|
75336
75771
|
optionalDependencies: {
|
|
75337
|
-
"oh-my-opencode-darwin-arm64": "5.1.
|
|
75338
|
-
"oh-my-opencode-darwin-x64": "5.1.
|
|
75339
|
-
"oh-my-opencode-darwin-x64-baseline": "5.1.
|
|
75340
|
-
"oh-my-opencode-linux-arm64": "5.1.
|
|
75341
|
-
"oh-my-opencode-linux-arm64-musl": "5.1.
|
|
75342
|
-
"oh-my-opencode-linux-x64": "5.1.
|
|
75343
|
-
"oh-my-opencode-linux-x64-baseline": "5.1.
|
|
75344
|
-
"oh-my-opencode-linux-x64-musl": "5.1.
|
|
75345
|
-
"oh-my-opencode-linux-x64-musl-baseline": "5.1.
|
|
75346
|
-
"oh-my-opencode-windows-arm64": "5.1.
|
|
75347
|
-
"oh-my-opencode-windows-x64": "5.1.
|
|
75348
|
-
"oh-my-opencode-windows-x64-baseline": "5.1.
|
|
75772
|
+
"oh-my-opencode-darwin-arm64": "5.1.45",
|
|
75773
|
+
"oh-my-opencode-darwin-x64": "5.1.45",
|
|
75774
|
+
"oh-my-opencode-darwin-x64-baseline": "5.1.45",
|
|
75775
|
+
"oh-my-opencode-linux-arm64": "5.1.45",
|
|
75776
|
+
"oh-my-opencode-linux-arm64-musl": "5.1.45",
|
|
75777
|
+
"oh-my-opencode-linux-x64": "5.1.45",
|
|
75778
|
+
"oh-my-opencode-linux-x64-baseline": "5.1.45",
|
|
75779
|
+
"oh-my-opencode-linux-x64-musl": "5.1.45",
|
|
75780
|
+
"oh-my-opencode-linux-x64-musl-baseline": "5.1.45",
|
|
75781
|
+
"oh-my-opencode-windows-arm64": "5.1.45",
|
|
75782
|
+
"oh-my-opencode-windows-x64": "5.1.45",
|
|
75783
|
+
"oh-my-opencode-windows-x64-baseline": "5.1.45"
|
|
75349
75784
|
},
|
|
75350
75785
|
overrides: {
|
|
75351
75786
|
hono: "^4.13.8",
|
|
@@ -75754,10 +76189,10 @@ init_write_file_atomically();
|
|
|
75754
76189
|
// packages/omo-opencode/src/features/tui-sidebar/mirror-path.ts
|
|
75755
76190
|
import { createHash } from "crypto";
|
|
75756
76191
|
import { realpathSync as realpathSync4 } from "fs";
|
|
75757
|
-
import { homedir as
|
|
76192
|
+
import { homedir as homedir4 } from "os";
|
|
75758
76193
|
import { join as join11, resolve as resolve4 } from "path";
|
|
75759
76194
|
function mirrorStorageDir() {
|
|
75760
|
-
return join11(process.env.XDG_DATA_HOME ?? join11(
|
|
76195
|
+
return join11(process.env.XDG_DATA_HOME ?? join11(homedir4(), ".local", "share"), "opencode", "storage", "oh-my-openagent", MIRROR_DIR_NAME);
|
|
75761
76196
|
}
|
|
75762
76197
|
function canonicalProjectDir(projectDir) {
|
|
75763
76198
|
try {
|