lazycodex-ai 5.1.40 → 5.1.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/README.de.md +118 -0
  2. package/README.es.md +118 -0
  3. package/README.fr.md +118 -0
  4. package/README.it.md +118 -0
  5. package/README.ja.md +2 -1
  6. package/README.ko.md +2 -1
  7. package/README.md +3 -2
  8. package/README.pt-br.md +118 -0
  9. package/README.ru.md +2 -1
  10. package/README.zh-cn.md +2 -1
  11. package/dist/cli/index.js +115 -27
  12. package/dist/cli/service-auth/index.d.ts +3 -0
  13. package/dist/cli-node/index.js +115 -27
  14. package/package.json +1 -1
  15. package/packages/lsp-daemon/dist/cli.js +10 -0
  16. package/packages/lsp-daemon/dist/client.js +10 -0
  17. package/packages/lsp-daemon/dist/index.js +10 -0
  18. package/packages/lsp-tools-mcp/dist/cli.js +10 -0
  19. package/packages/lsp-tools-mcp/dist/lsp/manager.js +10 -0
  20. package/packages/lsp-tools-mcp/dist/mcp.js +10 -0
  21. package/packages/lsp-tools-mcp/dist/tools.js +10 -0
  22. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
  23. package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +84 -9
  24. package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
  25. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  26. package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
  27. package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
  28. package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
  29. package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
  30. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
  31. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
  32. package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +3 -3
  33. package/packages/omo-codex/plugin/components/lsp/dist/cli.js +10 -0
  34. package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
  35. package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
  36. package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
  37. package/packages/omo-codex/plugin/components/rules/package.json +1 -1
  38. package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
  39. package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
  40. package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
  41. package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
  42. package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
  43. package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
  44. package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +1 -1
  45. package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
  46. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +5 -5
  47. package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
  48. package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
  49. package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
  50. package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
  51. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
  52. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
  53. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
  54. package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
  55. package/packages/omo-codex/plugin/hooks/post-tool-use-recording-spawn-admission.json +1 -1
  56. package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
  57. package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
  58. package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
  59. package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
  60. package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
  61. package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
  62. package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
  63. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +1 -1
  64. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
  65. package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
  66. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
  67. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
  68. package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
  69. package/packages/omo-codex/plugin/package-lock.json +12 -12
  70. package/packages/omo-codex/plugin/package.json +1 -1
  71. package/packages/omo-codex/plugin/skills/browser/runtime/omowright/manifest.json +1 -1
  72. package/packages/omo-codex/plugin/skills/frontend/SKILL.md +6 -6
  73. package/packages/omo-codex/plugin/skills/frontend/references/design/README.md +2 -2
  74. package/packages/omo-codex/plugin/skills/frontend/references/perfection/README.md +2 -2
  75. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/declarations.ts +22 -13
  76. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/findings.ts +7 -6
  77. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/lint.ts +18 -24
  78. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/markup.ts +14 -7
  79. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/selector.ts +5 -1
  80. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/tailwind.ts +32 -14
  81. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/check-accent-stripes.ts +1 -1
  82. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/inline-ok.tsx +1 -0
  83. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/neutral-and-flat.css +1 -1
  84. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/tailwind-ok.tsx +5 -2
  85. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/uniform-and-rings.css +2 -2
  86. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.css +4 -0
  87. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.tsx +8 -0
  88. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/{negative → positive}/flat-stripe-side.tsx +3 -1
  89. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/report-callouts.html +8 -0
  90. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/square-surfaces.css +8 -0
  91. package/packages/omo-codex/plugin/skills/ulw-research/SKILL.md +10 -2
  92. package/packages/omo-codex/plugin/skills/ulw-research/references/deliverable-phase.md +10 -0
  93. package/packages/omo-codex/plugin/skills/ulw-research/references/report-visualization.md +23 -0
  94. package/packages/omo-codex/scripts/install-dist/install-local.mjs +86 -11
  95. package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +1 -1
  96. package/packages/shared-skills/skills/frontend/SKILL.md +6 -6
  97. package/packages/shared-skills/skills/frontend/references/design/README.md +2 -2
  98. package/packages/shared-skills/skills/frontend/references/perfection/README.md +2 -2
  99. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/declarations.ts +22 -13
  100. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/findings.ts +7 -6
  101. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/lint.ts +18 -24
  102. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/markup.ts +14 -7
  103. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/selector.ts +5 -1
  104. package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/tailwind.ts +32 -14
  105. package/packages/shared-skills/skills/frontend/scripts/perfection/check-accent-stripes.test.ts +15 -6
  106. package/packages/shared-skills/skills/frontend/scripts/perfection/check-accent-stripes.ts +1 -1
  107. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/inline-ok.tsx +1 -0
  108. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/neutral-and-flat.css +1 -1
  109. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/tailwind-ok.tsx +5 -2
  110. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/uniform-and-rings.css +2 -2
  111. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.css +4 -0
  112. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.tsx +8 -0
  113. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/{negative → positive}/flat-stripe-side.tsx +3 -1
  114. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/report-callouts.html +8 -0
  115. package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/square-surfaces.css +8 -0
  116. package/packages/shared-skills/skills/ulw-research/SKILL.md +10 -2
  117. package/packages/shared-skills/skills/ulw-research/references/deliverable-phase.md +10 -0
  118. package/packages/shared-skills/skills/ulw-research/references/report-visualization.md +23 -0
@@ -0,0 +1,118 @@
1
+ [English](README.md) | [简体中文](README.zh-cn.md) | [日本語](README.ja.md) | [Русский](README.ru.md) | [한국어](README.ko.md) | [Español](README.es.md) | [Français](README.fr.md) | [Deutsch](README.de.md) | [Português (Brasil)](README.pt-br.md) | [Italiano](README.it.md)
2
+
3
+ > [!NOTE]
4
+ > **OmO 5.0: OmO ❤️ Pi**
5
+ > Instale com `curl -fsSL https://get.omo.dev/install.sh | bash`. Sistema de memória, CodeMode, assinaturas da Anthropic, tudo incluso.
6
+ > [![OmO Herdr DAG - DAGs de fluxo de trabalho do OmO ao vivo em um painel lateral do Herdr](./.github/assets/omo-herdr-dag.png)](https://github.com/jc01rho/omo-herdr-dag)
7
+ > *Basta digitar "mass ulw" com o seu prompt - agora você é o mestre da engenharia de grafos. O ultracode multimodelo, junto com um sistema de memória melhor. (O painel à direita é o [omo-herdr-dag](https://github.com/jc01rho/omo-herdr-dag).)*
8
+
9
+ > **Patrocinadores**
10
+ > Estes são os nossos patrocinadores. Eles ajudam a manter o OmO ativo como um projeto paralelo pessoal.
11
+ > | [<img alt="OpenGateway" src="./.github/assets/opengateway-logo.svg" width="156px" />](https://opengateway.ai/) | O **[OpenGateway](https://opengateway.ai/)** patrocina o OmO. Um gateway compatível com a OpenAI que reúne vários provedores de modelos em uma única API. Obrigado por apoiar o código aberto. |
12
+ > | :-----| :----- |
13
+
14
+
15
+ > [!NOTE]
16
+ >
17
+ > [![Sisyphus Labs - Conheça Dori. Não é uma demo. Assina tudo.](./.github/assets/sisyphuslabs.png?v=4)](https://sisyphuslabs.ai)
18
+ > > **O OmO é mantido por Jobdori, o assistente de IA mostrado acima. Conheça seu próprio Jobdori, Dori. <br />Entre na lista de espera [aqui](https://sisyphuslabs.ai).**
19
+
20
+ > [!TIP]
21
+ > Junte-se a nós!
22
+ >
23
+ > | [<img alt="Discord link" src="https://img.shields.io/discord/1452487457085063218?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square" width="156px" />](https://discord.gg/PUwSMR9XNk) | Entre na nossa [comunidade no Discord](https://discord.gg/PUwSMR9XNk) para se conectar com contribuidores e outros usuários do OmO. |
24
+ > | :-----| :----- |
25
+ > | [<img alt="X link" src="https://img.shields.io/badge/Follow-%40justsisyphus-00CED1?style=flat-square&logo=x&labelColor=black" width="156px" />](https://x.com/justsisyphus) | As atualizações do OmO costumavam ser postadas na minha conta do X. <br /> Como ela foi suspensa por engano, [@justsisyphus](https://x.com/justsisyphus) agora posta atualizações em meu nome. |
26
+ > | [<img alt="GitHub Follow" src="https://img.shields.io/github/followers/code-yeongyu?style=flat-square&logo=github&labelColor=black&color=24292f" width="156px" />](https://github.com/code-yeongyu) | Siga [@code-yeongyu](https://github.com/code-yeongyu) no GitHub para mais projetos. |
27
+
28
+ <!-- <CENTERED SECTION FOR GITHUB DISPLAY> -->
29
+
30
+ <div align="center">
31
+
32
+ <a href="https://omo.dev"><img src="./.github/assets/omo-icon-light.svg" alt="OmO" width="200" /></a>
33
+
34
+ # OmO
35
+
36
+ **Sua ferramenta para trabalho de verdade. Mas é um agente.**
37
+
38
+ [![GitHub Release](https://img.shields.io/github/v/release/code-yeongyu/oh-my-openagent?color=369eff&labelColor=black&logo=github&style=flat-square)](https://github.com/code-yeongyu/oh-my-openagent/releases)
39
+ [![downloads](https://img.shields.io/endpoint?url=https%3A%2F%2Fomo.dev%2Fapi%2Fdownloads&style=flat-square)](https://omo.dev)
40
+ [![GitHub Contributors](https://img.shields.io/github/contributors/code-yeongyu/oh-my-openagent?color=c4f042&labelColor=black&style=flat-square)](https://github.com/code-yeongyu/oh-my-openagent/graphs/contributors)
41
+ [![GitHub Stars](https://img.shields.io/github/stars/code-yeongyu/oh-my-openagent?color=ffcb47&labelColor=black&style=flat-square)](https://github.com/code-yeongyu/oh-my-openagent/stargazers)
42
+ [![License](https://img.shields.io/badge/license-SUL--1.0-white?labelColor=black&style=flat-square)](https://github.com/code-yeongyu/oh-my-openagent/blob/dev/LICENSE.md)
43
+ [![Docs](https://img.shields.io/badge/docs-omo.dev-369eff?labelColor=black&logo=readthedocs&logoColor=white&style=flat-square)](https://omo.dev/docs)
44
+
45
+
46
+ </div>
47
+
48
+ <!-- </CENTERED SECTION FOR GITHUB DISPLAY> -->
49
+
50
+ O OmO é um único comando `omo` que transforma seus tokens em trabalho pronto: pesquisa em dez mil fontes, uma apresentação que as pessoas realmente entendem, backends, frontends, código. Ele roda no senpi, nosso fork do [pi](https://github.com/badlogic/pi-mono), com tudo o que está abaixo já integrado.
51
+
52
+ ## Instalação
53
+
54
+ ```bash
55
+ curl -fsSL https://get.omo.dev/install.sh | bash
56
+ omo
57
+ ```
58
+
59
+ No Windows, no PowerShell: `irm https://get.omo.dev/install.ps1 | iex`. O script instala o binário nativo do `omo` para o seu SO e CPU em `~/.local/bin`, confere os checksums da versão e recorre ao GitHub Releases quando o espelho está inacessível. Adicione `-s -- beta` (ou uma versão como `-s -- 5.1.1`) após `bash` para escolher outro canal. O CMD do Windows, o ajuste do seu `PATH`, a atualização e a desinstalação são abordados em [omo.dev/docs/install](https://omo.dev/docs/install).
60
+
61
+ Prefere um gerenciador de pacotes? `bun add -g omo-ai` (ou `npm i -g omo-ai`) instala o mesmo OmO. O pacote é `omo-ai`; o pacote `omo` no npm não tem relação e pertence a outra pessoa.
62
+
63
+ Abra o seu projeto, execute `omo`, descreva a tarefa. Essa é toda a configuração.
64
+
65
+ Em uma sessão, `/thinking <level>` define o quanto o modelo pensa (`/thinking` sozinho abre um seletor), `Shift+Tab` alterna entre os níveis e `/efforts <level>` define o esforço de raciocínio diretamente em modelos com níveis de esforço. Para retomar um trabalho anterior, `/resume` (ou `/sessions`) abre suas sessões passadas; no shell, `omo -c` continua a última e `omo -r` abre o seletor. `/help` lista todo o resto.
66
+
67
+ Vindo da edição OpenCode ou do LazyCodex? Execute `omo setup` uma vez. Ele transfere suas chaves de provedor, provedores personalizados, servidores MCP, skills e escolhas de modelo. Em seguida, `omo doctor` mostra quais categorias de tarefas seus provedores podem executar e o que a instalação antiga deixou para trás. O passo a passo completo está em [Migrando do OpenCode](docs/guide/migrating-from-opencode.md).
68
+
69
+ Para atualizar, execute a linha de instalação novamente (uma instalação via gerenciador de pacotes atualiza com `omo update`). `rm ~/.local/bin/omo` remove a instalação do binário; `bun remove -g omo-ai` (ou `npm uninstall -g omo-ai`) remove a instalação do pacote.
70
+
71
+ ## Por que o OmO
72
+
73
+ **ultrawork.** Pule o estudo. Se uma tarefa parecer difícil, adicione `ultrawork` (ou `ulw`) ao seu prompt. O agente lê a base de código antes de tocar em uma linha, planeja, comprova cada etapa antes de avançar, verifica o resultado na superfície real e para quando termina.
74
+
75
+ **Centenas de agentes, uma palavra-chave.** Digite `mass ulw` e todo o trabalho vira um grafo de agentes: pesquisa profunda em milhares de fontes, um pipeline completo de machine learning, uma migração que ninguém quer fazer. Cada parte roda no modelo mais adequado, em paralelo, e é verificada antes que qualquer coisa seja dada como pronta.
76
+
77
+ **Kibitzer. Seu agente não esquece de você, nem do seu trabalho.** A memória fica em um repositório git de arquivos markdown. Um modelo pequeno e barato fica ao lado do agente principal mais caro, lê o que você já fez e avisa o agente principal antes que ele repita um erro. Você para de se explicar repetidamente.
78
+
79
+ **Combine modelos sem pensar nisso.** Use os modelos de ponta que você adora junto com os mais baratos. Basta entrar: `/login` cobre assinaturas do Claude, ChatGPT, Kimi e GLM. Cada modelo já vem com um system prompt ajustado para ele, então você nunca escolhe o errado.
80
+
81
+ **Skills de alta qualidade, apenas as que você precisa.** Seu modelo é inteligente, mas ainda não sabe muito sobre como resolver problemas do mundo real. O OmO entrega o conhecimento que falta na forma de skills, incluindo uso do navegador, e carrega apenas o que a tarefa precisa.
82
+
83
+ **Todo o resto é pensado nos detalhes.** Chamadas de ferramentas independentes rodam juntas em um pequeno programa, então vinte leituras acontecem em uma única viagem de ida e volta. Argumentos de ferramentas malformados são reparados antes de rodar. Esperar por um build ou deploy funciona por inscrição, não por polling. Trabalhos longos mantêm um registro do que já foi verificado, para que uma sessão reiniciada continue de onde parou. Configurações, skills e prompts recarregam ao vivo.
84
+
85
+ ## Configuração
86
+
87
+ Padrões opinativos, ajustáveis se você insistir. Suas configurações ficam em `~/.omo/omo.jsonc`, e um projeto pode adicionar seu próprio `.omo/omo.jsonc`; o arquivo mais próximo vence. Todas as chaves estão na [referência de configuração](docs/reference/configuration.md).
88
+
89
+ ## Documentação
90
+
91
+ - [omo.dev/docs](https://omo.dev/docs)
92
+ - [Migrando do OpenCode](docs/guide/migrating-from-opencode.md)
93
+ - [Referência de configuração](docs/reference/configuration.md)
94
+ - [Recursos](docs/reference/features.md)
95
+ - [Uso do computador](docs/guide/computer-use.md) (experimental)
96
+ - [Manifesto Ultrawork](docs/manifesto.md)
97
+
98
+ ## Avaliações
99
+
100
+ > "Me fez cancelar minha assinatura do Cursor. Coisas inacreditáveis estão acontecendo na comunidade open source." - [Arthur Guiot](https://x.com/arthur_guiot/status/2008736347092382053?s=20)
101
+
102
+ > "Se o Claude Code faz em 7 dias o que um humano faz em 3 meses, o OmO faz em 1 hora." <br/>- B, Pesquisador Quantitativo
103
+
104
+ > "Vocês deveriam integrar isso ao core e contratá-lo. Sério. É muito, muito, muito bom." <br/>- Henning Kilset
105
+
106
+ ## Nota do Autor
107
+
108
+ Quando preciso tomar o volante de volta de um agente, isso não é trabalho em equipe. O sistema falhou. O OmO foi construído com base nessa ideia. Você diz o que quer; o agente pesquisa, planeja, escreve um código que você não conseguiria diferenciar do de um engenheiro sênior, faz a verificação e continua até terminar. Ele gasta tokens quando eles compram velocidade real e direciona as partes fáceis para modelos baratos.
109
+
110
+ Sou o usuário mais obcecado deste projeto. Qual modelo tem a lógica mais afiada? Quem escreve a melhor prosa? O que todo mundo lançou esta semana? O OmO é onde essas respostas vão parar. Tem um jeito melhor? PRs são bem-vindos.
111
+
112
+ O objetivo é um agente que você deixa de notar. Você aperta o interruptor, a luz acende. A versão longa está no [Manifesto Ultrawork](docs/manifesto.md).
113
+
114
+ Sem afiliação com nenhum projeto ou modelo mencionado. As ideias do Ultragoal e do UltraQA vêm do [oh-my-codex](https://github.com/Yeachan-Heo/oh-my-codex), reimplementadas a partir do conceito para o OmO.
115
+
116
+ ## Amado por profissionais em
117
+
118
+ [Indent](https://indentcorp.com), criadores do Spray (solução de marketing de influência), vovushop (plataforma de comércio transfronteiriço) e vreview (solução de marketing de avaliações de comércio com IA). [Google](https://google.com). [Microsoft](https://microsoft.com). [Vercel](https://vercel.com). [ELESTYLE](https://elestyle.jp), criadores do elepay (gateway de pagamento multimóvel) e OneQR (SaaS de aplicativo móvel para soluções sem dinheiro em espécie). [Deepgram](https://deepgram.com).
package/README.ru.md CHANGED
@@ -1,3 +1,5 @@
1
+ [English](README.md) | [简体中文](README.zh-cn.md) | [日本語](README.ja.md) | [Русский](README.ru.md) | [한국어](README.ko.md) | [Español](README.es.md) | [Français](README.fr.md) | [Deutsch](README.de.md) | [Português (Brasil)](README.pt-br.md) | [Italiano](README.it.md)
2
+
1
3
  > [!NOTE]
2
4
  > **OmO Бета: OmO ❤️ Pi**
3
5
  > Установите одной командой `curl -fsSL https://get.omo.dev/install.sh | bash`: система памяти, CodeMode, подписки Anthropic. Всё включено.
@@ -41,7 +43,6 @@
41
43
  [![License](https://img.shields.io/badge/license-SUL--1.0-white?labelColor=black&style=flat-square)](https://github.com/code-yeongyu/oh-my-openagent/blob/dev/LICENSE.md)
42
44
  [![Docs](https://img.shields.io/badge/docs-omo.dev-369eff?labelColor=black&logo=readthedocs&logoColor=white&style=flat-square)](https://omo.dev/docs)
43
45
 
44
- [English](README.md) | [简体中文](README.zh-cn.md) | [日本語](README.ja.md) | [Русский](README.ru.md) | [한국어](README.ko.md)
45
46
 
46
47
  </div>
47
48
 
package/README.zh-cn.md CHANGED
@@ -1,3 +1,5 @@
1
+ [English](README.md) | [简体中文](README.zh-cn.md) | [日本語](README.ja.md) | [Русский](README.ru.md) | [한국어](README.ko.md) | [Español](README.es.md) | [Français](README.fr.md) | [Deutsch](README.de.md) | [Português (Brasil)](README.pt-br.md) | [Italiano](README.it.md)
2
+
1
3
  > [!NOTE]
2
4
  > **OmO 测试版: OmO ❤️ Pi**
3
5
  > 使用 `curl -fsSL https://get.omo.dev/install.sh | bash` 安装。记忆系统、CodeMode、Anthropic 订阅,全部支持。
@@ -41,7 +43,6 @@
41
43
  [![License](https://img.shields.io/badge/license-SUL--1.0-white?labelColor=black&style=flat-square)](https://github.com/code-yeongyu/oh-my-openagent/blob/dev/LICENSE.md)
42
44
  [![Docs](https://img.shields.io/badge/docs-omo.dev-369eff?labelColor=black&logo=readthedocs&logoColor=white&style=flat-square)](https://omo.dev/docs)
43
45
 
44
- [English](README.md) | [简体中文](README.zh-cn.md) | [日本語](README.ja.md) | [Русский](README.ru.md) | [한국어](README.ko.md)
45
46
 
46
47
  </div>
47
48
 
package/dist/cli/index.js CHANGED
@@ -2132,7 +2132,7 @@ var package_default;
2132
2132
  var init_package = __esm(() => {
2133
2133
  package_default = {
2134
2134
  name: "oh-my-opencode",
2135
- version: "5.1.40",
2135
+ version: "5.1.42",
2136
2136
  description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
2137
2137
  main: "./dist/index.js",
2138
2138
  types: "dist/index.d.ts",
@@ -2309,7 +2309,7 @@ var init_package = __esm(() => {
2309
2309
  },
2310
2310
  devDependencies: {
2311
2311
  "@clack/prompts": "^1.8.1",
2312
- "@code-yeongyu/senpi": "2026.10.19-2",
2312
+ "@code-yeongyu/senpi": "2026.10.21-2",
2313
2313
  "@modelcontextprotocol/sdk": "^1.30.0",
2314
2314
  "@oh-my-opencode/agents-md-core": "workspace:*",
2315
2315
  "@oh-my-opencode/ast-grep-mcp": "workspace:*",
@@ -2370,18 +2370,18 @@ var init_package = __esm(() => {
2370
2370
  typescript: "^7.0.2"
2371
2371
  },
2372
2372
  optionalDependencies: {
2373
- "oh-my-opencode-darwin-arm64": "5.1.40",
2374
- "oh-my-opencode-darwin-x64": "5.1.40",
2375
- "oh-my-opencode-darwin-x64-baseline": "5.1.40",
2376
- "oh-my-opencode-linux-arm64": "5.1.40",
2377
- "oh-my-opencode-linux-arm64-musl": "5.1.40",
2378
- "oh-my-opencode-linux-x64": "5.1.40",
2379
- "oh-my-opencode-linux-x64-baseline": "5.1.40",
2380
- "oh-my-opencode-linux-x64-musl": "5.1.40",
2381
- "oh-my-opencode-linux-x64-musl-baseline": "5.1.40",
2382
- "oh-my-opencode-windows-arm64": "5.1.40",
2383
- "oh-my-opencode-windows-x64": "5.1.40",
2384
- "oh-my-opencode-windows-x64-baseline": "5.1.40"
2373
+ "oh-my-opencode-darwin-arm64": "5.1.42",
2374
+ "oh-my-opencode-darwin-x64": "5.1.42",
2375
+ "oh-my-opencode-darwin-x64-baseline": "5.1.42",
2376
+ "oh-my-opencode-linux-arm64": "5.1.42",
2377
+ "oh-my-opencode-linux-arm64-musl": "5.1.42",
2378
+ "oh-my-opencode-linux-x64": "5.1.42",
2379
+ "oh-my-opencode-linux-x64-baseline": "5.1.42",
2380
+ "oh-my-opencode-linux-x64-musl": "5.1.42",
2381
+ "oh-my-opencode-linux-x64-musl-baseline": "5.1.42",
2382
+ "oh-my-opencode-windows-arm64": "5.1.42",
2383
+ "oh-my-opencode-windows-x64": "5.1.42",
2384
+ "oh-my-opencode-windows-x64-baseline": "5.1.42"
2385
2385
  },
2386
2386
  overrides: {
2387
2387
  hono: "^4.13.8",
@@ -76812,10 +76812,29 @@ var init_harness = __esm(() => {
76812
76812
  OMO_CONFIG_LEGACY_HARNESS_IDS = Object.keys(OMO_CONFIG_LEGACY_HARNESS_ALIASES);
76813
76813
  });
76814
76814
 
76815
+ // packages/omo-config-core/src/schema/memory-agreements.ts
76816
+ var OMO_MEMORY_AGREEMENTS_DEFAULTS, OmoMemoryAgreementsSchema, OmoMemoryAgreementsLayerSchema;
76817
+ var init_memory_agreements = __esm(() => {
76818
+ init_zod();
76819
+ OMO_MEMORY_AGREEMENTS_DEFAULTS = { enabled: true, needs_human_threshold: 3, max_items: 64 };
76820
+ OmoMemoryAgreementsSchema = object({
76821
+ enabled: boolean2().default(OMO_MEMORY_AGREEMENTS_DEFAULTS.enabled),
76822
+ needs_human_threshold: number2().int().min(1).default(OMO_MEMORY_AGREEMENTS_DEFAULTS.needs_human_threshold),
76823
+ max_items: number2().int().min(8).max(256).default(OMO_MEMORY_AGREEMENTS_DEFAULTS.max_items)
76824
+ }).strict();
76825
+ OmoMemoryAgreementsLayerSchema = object({
76826
+ enabled: boolean2().optional(),
76827
+ needs_human_threshold: number2().int().min(1).optional(),
76828
+ max_items: number2().int().min(8).max(256).optional()
76829
+ }).strict();
76830
+ });
76831
+
76815
76832
  // packages/omo-config-core/src/schema/memory.ts
76816
- 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, OmoMemorySettingsSchema, OmoMemorySettingsLayerSchema;
76833
+ 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;
76817
76834
  var init_memory = __esm(() => {
76818
76835
  init_zod();
76836
+ init_memory_agreements();
76837
+ init_memory_agreements();
76819
76838
  OmoMemoryReflectionTriggerSchema = object({
76820
76839
  step_count: number2().int().nonnegative().default(25),
76821
76840
  on_compaction: boolean2().default(true)
@@ -76958,6 +76977,7 @@ var init_memory = __esm(() => {
76958
76977
  facts: OmoMemoryFactsLayerSchema.optional(),
76959
76978
  dream: OmoMemoryDreamLayerSchema.optional(),
76960
76979
  people: OmoMemoryPeopleLayerSchema.optional(),
76980
+ agreements: OmoMemoryAgreementsLayerSchema.optional(),
76961
76981
  soul: OmoMemorySoulLayerSchema.optional(),
76962
76982
  write_notice: OmoMemoryWriteNoticeLayerSchema.optional(),
76963
76983
  sync: OmoMemorySyncLayerSchema.optional(),
@@ -76966,9 +76986,11 @@ var init_memory = __esm(() => {
76966
76986
  projection: OmoMemoryProjectionLayerSchema.optional(),
76967
76987
  compile_warn_tokens: number2().int().positive().optional()
76968
76988
  }).strict();
76989
+ OmoMemoryAutoIdentitySchema = _enum(["path", "git"]);
76969
76990
  OmoMemorySettingsSchema = object({
76970
76991
  enabled: boolean2().default(true),
76971
76992
  agent: string2().min(1).default("auto"),
76993
+ auto_identity: OmoMemoryAutoIdentitySchema.default("path"),
76972
76994
  reflection: OmoMemoryReflectionSchema.default({
76973
76995
  enabled: true,
76974
76996
  trigger: { step_count: 25, on_compaction: true },
@@ -76988,6 +77010,7 @@ var init_memory = __esm(() => {
76988
77010
  auto_select_max_chars: 150000
76989
77011
  }),
76990
77012
  people: OmoMemoryPeopleSchema.default({ enabled: true, max_entries: 40, max_entry_chars: 200 }),
77013
+ agreements: OmoMemoryAgreementsSchema.default(OMO_MEMORY_AGREEMENTS_DEFAULTS),
76991
77014
  soul: OmoMemorySoulSchema.default({ edit_notice: true }),
76992
77015
  write_notice: OmoMemoryWriteNoticeSchema.default({ enabled: true }),
76993
77016
  sync: OmoMemorySyncSchema.default({ enabled: true }),
@@ -77009,11 +77032,13 @@ var init_memory = __esm(() => {
77009
77032
  OmoMemorySettingsLayerSchema = object({
77010
77033
  enabled: boolean2().optional(),
77011
77034
  agent: string2().min(1).optional(),
77035
+ auto_identity: OmoMemoryAutoIdentitySchema.optional(),
77012
77036
  reflection: OmoMemoryReflectionLayerSchema.optional(),
77013
77037
  nudge: OmoMemoryNudgeLayerSchema.optional(),
77014
77038
  facts: OmoMemoryFactsLayerSchema.optional(),
77015
77039
  dream: OmoMemoryDreamLayerSchema.optional(),
77016
77040
  people: OmoMemoryPeopleLayerSchema.optional(),
77041
+ agreements: OmoMemoryAgreementsLayerSchema.optional(),
77017
77042
  soul: OmoMemorySoulLayerSchema.optional(),
77018
77043
  write_notice: OmoMemoryWriteNoticeLayerSchema.optional(),
77019
77044
  sync: OmoMemorySyncLayerSchema.optional(),
@@ -77057,6 +77082,7 @@ var init_model_profile = __esm(() => {
77057
77082
  init_fallback_models();
77058
77083
  OmoModelProfileInputSchema = object({
77059
77084
  display_name: string2().optional(),
77085
+ caution: string2().optional(),
77060
77086
  family: _enum(["daily", "geeky"]).optional(),
77061
77087
  tier: _enum(["normal", "heavy"]).optional(),
77062
77088
  models: array(union([string2(), OmoFallbackModelObjectSchema])).optional()
@@ -77350,7 +77376,7 @@ var init_gateway = __esm(() => {
77350
77376
  });
77351
77377
 
77352
77378
  // packages/omo-config-core/src/schema/config.ts
77353
- var OmoOpenCodeHarnessConfigSchema, OmoDisabledSkillsSchema, OmoTypedHarnessConfigSchema, OmoConfigProfileSchema, OmoConfigSchema, OmoConfigLayerSchema;
77379
+ var OmoOpenCodeHarnessConfigSchema, OmoDisabledSkillsSchema, OmoExcludedModelsSchema, OmoTypedHarnessConfigSchema, OmoConfigProfileSchema, OmoConfigSchema, OmoConfigLayerSchema;
77354
77380
  var init_config = __esm(() => {
77355
77381
  init_zod();
77356
77382
  init_agent();
@@ -77368,6 +77394,7 @@ var init_config = __esm(() => {
77368
77394
  init_gateway();
77369
77395
  OmoOpenCodeHarnessConfigSchema = record(string2(), unknown());
77370
77396
  OmoDisabledSkillsSchema = array(string2());
77397
+ OmoExcludedModelsSchema = array(string2());
77371
77398
  OmoTypedHarnessConfigSchema = object({
77372
77399
  formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
77373
77400
  gateway: OmoGatewaySectionSchema.optional(),
@@ -77383,7 +77410,8 @@ var init_config = __esm(() => {
77383
77410
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
77384
77411
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
77385
77412
  computer: OmoComputerSettingsLayerSchema.optional(),
77386
- disabled_skills: OmoDisabledSkillsSchema.optional()
77413
+ disabled_skills: OmoDisabledSkillsSchema.optional(),
77414
+ exclude_models: OmoExcludedModelsSchema.optional()
77387
77415
  }).strict();
77388
77416
  OmoConfigProfileSchema = object({
77389
77417
  formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
@@ -77400,6 +77428,7 @@ var init_config = __esm(() => {
77400
77428
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
77401
77429
  computer: OmoComputerSettingsLayerSchema.optional(),
77402
77430
  disabled_skills: OmoDisabledSkillsSchema.optional(),
77431
+ exclude_models: OmoExcludedModelsSchema.optional(),
77403
77432
  "[opencode]": OmoOpenCodeHarnessConfigSchema.optional(),
77404
77433
  "[native]": OmoTypedHarnessConfigSchema.optional(),
77405
77434
  "[senpi]": OmoTypedHarnessConfigSchema.optional(),
@@ -77422,6 +77451,7 @@ var init_config = __esm(() => {
77422
77451
  side_panel: OmoSidePanelSettingsSchema.optional(),
77423
77452
  computer: OmoComputerSettingsSchema.optional(),
77424
77453
  disabled_skills: OmoDisabledSkillsSchema.optional(),
77454
+ exclude_models: OmoExcludedModelsSchema.optional(),
77425
77455
  "[opencode]": OmoOpenCodeHarnessConfigSchema.optional(),
77426
77456
  "[native]": OmoTypedHarnessConfigSchema.optional(),
77427
77457
  "[senpi]": OmoTypedHarnessConfigSchema.optional(),
@@ -77447,6 +77477,7 @@ var init_config = __esm(() => {
77447
77477
  side_panel: OmoSidePanelSettingsLayerSchema.optional(),
77448
77478
  computer: OmoComputerSettingsLayerSchema.optional(),
77449
77479
  disabled_skills: OmoDisabledSkillsSchema.optional(),
77480
+ exclude_models: OmoExcludedModelsSchema.optional(),
77450
77481
  "[opencode]": OmoOpenCodeHarnessConfigSchema.optional(),
77451
77482
  "[native]": OmoTypedHarnessConfigSchema.optional(),
77452
77483
  "[senpi]": OmoTypedHarnessConfigSchema.optional(),
@@ -77655,7 +77686,51 @@ var init_diagnostic_lines = __esm(() => {
77655
77686
  });
77656
77687
 
77657
77688
  // packages/omo-config-core/src/loader/disabled-skills.ts
77658
- var init_disabled_skills = () => {};
77689
+ function toRecord(value) {
77690
+ if (value === null || typeof value !== "object" || Array.isArray(value))
77691
+ return;
77692
+ return value;
77693
+ }
77694
+ function namesAt(record, key) {
77695
+ const value = record?.[key];
77696
+ if (!Array.isArray(value))
77697
+ return [];
77698
+ return value.filter((entry) => typeof entry === "string" && entry.trim() !== "");
77699
+ }
77700
+ function harnessBlockKeys(harness) {
77701
+ const canonical = canonicalHarnessName(harness);
77702
+ const legacy = Object.entries(OMO_CONFIG_LEGACY_HARNESS_ALIASES).filter(([, target]) => target === canonical).map(([name]) => harnessBlockKey(name));
77703
+ return [harnessBlockKey(canonical), ...legacy];
77704
+ }
77705
+ function scopesOf(config, harness) {
77706
+ if (harness === undefined)
77707
+ return [config];
77708
+ return [config, ...harnessBlockKeys(harness).map((key) => toRecord(config[key]))];
77709
+ }
77710
+ function collectExcludedModels(options) {
77711
+ return collectUnionedList("exclude_models", options);
77712
+ }
77713
+ function collectUnionedList(key, options) {
77714
+ const names = new Set;
77715
+ for (const layer of options.layers) {
77716
+ const config = toRecord(layer.config);
77717
+ if (config === undefined)
77718
+ continue;
77719
+ const profile = options.profile === undefined ? undefined : toRecord(toRecord(config["profiles"])?.[options.profile]);
77720
+ const scopes = [
77721
+ ...scopesOf(config, options.harness),
77722
+ ...profile === undefined ? [] : scopesOf(profile, options.harness)
77723
+ ];
77724
+ for (const scope of scopes) {
77725
+ for (const name of namesAt(scope, key))
77726
+ names.add(name.trim());
77727
+ }
77728
+ }
77729
+ return [...names];
77730
+ }
77731
+ var init_disabled_skills = __esm(() => {
77732
+ init_schema();
77733
+ });
77659
77734
 
77660
77735
  // packages/omo-config-core/src/loader/merge.ts
77661
77736
  function isUnsafeObjectKey2(key) {
@@ -77891,7 +77966,7 @@ function stripUnrecognizedKeys(record, issues) {
77891
77966
  }
77892
77967
  return { issuePaths, stripped };
77893
77968
  }
77894
- function toRecord(value) {
77969
+ function toRecord2(value) {
77895
77970
  if (value === null || typeof value !== "object" || Array.isArray(value))
77896
77971
  return null;
77897
77972
  const record = {};
@@ -77902,7 +77977,7 @@ function toRecord(value) {
77902
77977
  }
77903
77978
  function validateConfigLayer(path, data) {
77904
77979
  const sanitized = sanitizeUnsafeKeys(data);
77905
- const record = toRecord(sanitized.value);
77980
+ const record = toRecord2(sanitized.value);
77906
77981
  const unsafeIssuePaths = sanitized.issues.flatMap((issue) => issue.keys.map((key) => [...issue.path, key].join(".")));
77907
77982
  const unsafeDiagnostics = unsafeIssuePaths.length === 0 ? [] : [{ kind: "unknown-keys", message: `Ignored unknown keys in ${path}: ${unsafeIssuePaths.join(", ")}`, path, issuePaths: unsafeIssuePaths }];
77908
77983
  const validation = OmoConfigLayerSchema.safeParse(sanitized.value);
@@ -78055,7 +78130,7 @@ function resolveOmoProfileName(options = {}) {
78055
78130
  const env = options.env ?? process.env;
78056
78131
  return profileName(options.profile) ?? profileName(env["OMO_PROFILE"]) ?? profileName(env["OCX_PROFILE"]) ?? profileNameFromOpenCodeConfigDir(env["OPENCODE_CONFIG_DIR"]);
78057
78132
  }
78058
- function toRecord2(value) {
78133
+ function toRecord3(value) {
78059
78134
  if (value === null || typeof value !== "object" || Array.isArray(value))
78060
78135
  return;
78061
78136
  return Object.fromEntries(Object.entries(value));
@@ -78076,13 +78151,13 @@ function harnessLayer(config, harness) {
78076
78151
  const legacyKeys = Object.entries(OMO_CONFIG_LEGACY_HARNESS_ALIASES).filter(([, target]) => target === canonical).map(([legacy]) => harnessBlockKey(legacy));
78077
78152
  let layer = {};
78078
78153
  for (const key of [...legacyKeys, harnessBlockKey(canonical)]) {
78079
- layer = mergeOmoConfigRecords(layer, toRecord2(config[key]) ?? {});
78154
+ layer = mergeOmoConfigRecords(layer, toRecord3(config[key]) ?? {});
78080
78155
  }
78081
78156
  return layer;
78082
78157
  }
78083
78158
  function resolveOmoConfigView(options) {
78084
- const profiles = toRecord2(options.config["profiles"]);
78085
- const profile = options.profile === undefined ? undefined : toRecord2(profiles?.[options.profile]);
78159
+ const profiles = toRecord3(options.config["profiles"]);
78160
+ const profile = options.profile === undefined ? undefined : toRecord3(profiles?.[options.profile]);
78086
78161
  const diagnostics = profile === undefined && options.profile !== undefined ? [{
78087
78162
  kind: "profile",
78088
78163
  message: `Activated omo profile "${options.profile}" does not exist; using the base configuration`,
@@ -78223,9 +78298,15 @@ function loadOmoConfig(options = {}) {
78223
78298
  });
78224
78299
  const finalInput = mergeOmoConfigRecords(DEFAULT_RAW_CONFIG, resolved.config);
78225
78300
  const finalConfig = OmoConfigSchema.safeParse(finalInput);
78301
+ const excludeModels = collectExcludedModels({
78302
+ layers,
78303
+ ...options.harness === undefined ? {} : { harness: options.harness },
78304
+ ...resolved.profile === undefined ? {} : { profile: resolved.profile }
78305
+ });
78306
+ const withExcludedModels = (config) => excludeModels.length === 0 ? config : { ...config, exclude_models: [...excludeModels] };
78226
78307
  if (finalConfig.success) {
78227
78308
  return {
78228
- config: stripResolutionControlKeys(finalConfig.data),
78309
+ config: withExcludedModels(stripResolutionControlKeys(finalConfig.data)),
78229
78310
  diagnostics: [...diagnostics, ...resolved.diagnostics],
78230
78311
  layers,
78231
78312
  ...resolved.profile === undefined ? {} : { profile: resolved.profile },
@@ -78238,7 +78319,7 @@ function loadOmoConfig(options = {}) {
78238
78319
  });
78239
78320
  if (pruned.ok) {
78240
78321
  return {
78241
- config: stripResolutionControlKeys(OmoConfigSchema.parse(pruned.config)),
78322
+ config: withExcludedModels(stripResolutionControlKeys(OmoConfigSchema.parse(pruned.config))),
78242
78323
  diagnostics: [...diagnostics, ...resolved.diagnostics, ...invalidValueDiagnostics(MERGED_OMO_CONFIG_PATH, pruned.dropped)],
78243
78324
  layers,
78244
78325
  ...resolved.profile === undefined ? {} : { profile: resolved.profile },
@@ -78257,6 +78338,7 @@ var DEFAULT_RAW_CONFIG;
78257
78338
  var init_loader2 = __esm(() => {
78258
78339
  init_main();
78259
78340
  init_schema();
78341
+ init_disabled_skills();
78260
78342
  init_layer_validation();
78261
78343
  init_merge();
78262
78344
  init_paths();
@@ -92119,7 +92201,7 @@ var package_default2;
92119
92201
  var init_package2 = __esm(() => {
92120
92202
  package_default2 = {
92121
92203
  name: "@oh-my-opencode/omo-codex",
92122
- version: "5.1.40",
92204
+ version: "5.1.42",
92123
92205
  type: "module",
92124
92206
  private: true,
92125
92207
  description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
@@ -99425,6 +99507,8 @@ var REQUIRED_PLUGIN_ARTIFACTS = [
99425
99507
  join63("extensions", "loro_wasm_bg.wasm"),
99426
99508
  join63("extensions", "CaseFolding.txt"),
99427
99509
  join63("extensions", "omo-thread-client.js"),
99510
+ join63("extensions", "omo-feedback.js"),
99511
+ join63("extensions", "omo-claim-receipt.js"),
99428
99512
  join63("extensions", "assets.generated.json"),
99429
99513
  join63("extensions", "omo-member.js"),
99430
99514
  join63("extensions", "memory-run-supervisor.mjs"),
@@ -108467,6 +108551,10 @@ var package_default3 = {
108467
108551
  types: "./src/config-migration/index.ts",
108468
108552
  import: "./src/config-migration/index.ts"
108469
108553
  },
108554
+ "./service-auth": {
108555
+ types: "./src/cli/service-auth/index.ts",
108556
+ import: "./src/cli/service-auth/index.ts"
108557
+ },
108470
108558
  "./binary-downloader": {
108471
108559
  types: "./src/shared/binary-downloader.ts",
108472
108560
  import: "./src/shared/binary-downloader.ts"
@@ -0,0 +1,3 @@
1
+ export { type CredentialStore, createCredentialStore } from "./keystore";
2
+ export { type Credentials, SignInError, serviceOrigin } from "./protocol";
3
+ export { createSession, type Session } from "./session";