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.
- package/README.de.md +118 -0
- package/README.es.md +118 -0
- package/README.fr.md +118 -0
- package/README.it.md +118 -0
- package/README.ja.md +2 -1
- package/README.ko.md +2 -1
- package/README.md +3 -2
- package/README.pt-br.md +118 -0
- package/README.ru.md +2 -1
- package/README.zh-cn.md +2 -1
- package/dist/cli/index.js +115 -27
- package/dist/cli/service-auth/index.d.ts +3 -0
- package/dist/cli-node/index.js +115 -27
- package/package.json +1 -1
- package/packages/lsp-daemon/dist/cli.js +10 -0
- package/packages/lsp-daemon/dist/client.js +10 -0
- package/packages/lsp-daemon/dist/index.js +10 -0
- package/packages/lsp-tools-mcp/dist/cli.js +10 -0
- package/packages/lsp-tools-mcp/dist/lsp/manager.js +10 -0
- package/packages/lsp-tools-mcp/dist/mcp.js +10 -0
- package/packages/lsp-tools-mcp/dist/tools.js +10 -0
- package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +84 -9
- package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
- package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
- package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
- package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +3 -3
- package/packages/omo-codex/plugin/components/lsp/dist/cli.js +10 -0
- package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
- package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
- package/packages/omo-codex/plugin/components/rules/package.json +1 -1
- package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
- package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +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 +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
- package/packages/omo-codex/plugin/hooks/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/skills/browser/runtime/omowright/manifest.json +1 -1
- package/packages/omo-codex/plugin/skills/frontend/SKILL.md +6 -6
- package/packages/omo-codex/plugin/skills/frontend/references/design/README.md +2 -2
- package/packages/omo-codex/plugin/skills/frontend/references/perfection/README.md +2 -2
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/declarations.ts +22 -13
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/findings.ts +7 -6
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/lint.ts +18 -24
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/markup.ts +14 -7
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/selector.ts +5 -1
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/accent-stripes/tailwind.ts +32 -14
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/check-accent-stripes.ts +1 -1
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/inline-ok.tsx +1 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/neutral-and-flat.css +1 -1
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/tailwind-ok.tsx +5 -2
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/uniform-and-rings.css +2 -2
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.css +4 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.tsx +8 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/{negative → positive}/flat-stripe-side.tsx +3 -1
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/report-callouts.html +8 -0
- package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/square-surfaces.css +8 -0
- package/packages/omo-codex/plugin/skills/ulw-research/SKILL.md +10 -2
- package/packages/omo-codex/plugin/skills/ulw-research/references/deliverable-phase.md +10 -0
- package/packages/omo-codex/plugin/skills/ulw-research/references/report-visualization.md +23 -0
- package/packages/omo-codex/scripts/install-dist/install-local.mjs +86 -11
- package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +1 -1
- package/packages/shared-skills/skills/frontend/SKILL.md +6 -6
- package/packages/shared-skills/skills/frontend/references/design/README.md +2 -2
- package/packages/shared-skills/skills/frontend/references/perfection/README.md +2 -2
- package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/declarations.ts +22 -13
- package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/findings.ts +7 -6
- package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/lint.ts +18 -24
- package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/markup.ts +14 -7
- package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/selector.ts +5 -1
- package/packages/shared-skills/skills/frontend/scripts/perfection/accent-stripes/tailwind.ts +32 -14
- package/packages/shared-skills/skills/frontend/scripts/perfection/check-accent-stripes.test.ts +15 -6
- package/packages/shared-skills/skills/frontend/scripts/perfection/check-accent-stripes.ts +1 -1
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/inline-ok.tsx +1 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/neutral-and-flat.css +1 -1
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/tailwind-ok.tsx +5 -2
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/negative/uniform-and-rings.css +2 -2
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.css +4 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/accent-outlines.tsx +8 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/{negative → positive}/flat-stripe-side.tsx +3 -1
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/report-callouts.html +8 -0
- package/packages/shared-skills/skills/frontend/scripts/perfection/fixtures/accent-stripes/positive/square-surfaces.css +8 -0
- package/packages/shared-skills/skills/ulw-research/SKILL.md +10 -2
- package/packages/shared-skills/skills/ulw-research/references/deliverable-phase.md +10 -0
- package/packages/shared-skills/skills/ulw-research/references/report-visualization.md +23 -0
package/README.pt-br.md
ADDED
|
@@ -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
|
+
> [](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
|
+
> [](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
|
+
[](https://github.com/code-yeongyu/oh-my-openagent/releases)
|
|
39
|
+
[](https://omo.dev)
|
|
40
|
+
[](https://github.com/code-yeongyu/oh-my-openagent/graphs/contributors)
|
|
41
|
+
[](https://github.com/code-yeongyu/oh-my-openagent/stargazers)
|
|
42
|
+
[](https://github.com/code-yeongyu/oh-my-openagent/blob/dev/LICENSE.md)
|
|
43
|
+
[](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
|
[](https://github.com/code-yeongyu/oh-my-openagent/blob/dev/LICENSE.md)
|
|
42
44
|
[](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
|
[](https://github.com/code-yeongyu/oh-my-openagent/blob/dev/LICENSE.md)
|
|
42
44
|
[](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.
|
|
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.
|
|
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.
|
|
2374
|
-
"oh-my-opencode-darwin-x64": "5.1.
|
|
2375
|
-
"oh-my-opencode-darwin-x64-baseline": "5.1.
|
|
2376
|
-
"oh-my-opencode-linux-arm64": "5.1.
|
|
2377
|
-
"oh-my-opencode-linux-arm64-musl": "5.1.
|
|
2378
|
-
"oh-my-opencode-linux-x64": "5.1.
|
|
2379
|
-
"oh-my-opencode-linux-x64-baseline": "5.1.
|
|
2380
|
-
"oh-my-opencode-linux-x64-musl": "5.1.
|
|
2381
|
-
"oh-my-opencode-linux-x64-musl-baseline": "5.1.
|
|
2382
|
-
"oh-my-opencode-windows-arm64": "5.1.
|
|
2383
|
-
"oh-my-opencode-windows-x64": "5.1.
|
|
2384
|
-
"oh-my-opencode-windows-x64-baseline": "5.1.
|
|
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
|
-
|
|
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
|
|
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 =
|
|
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
|
|
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,
|
|
78154
|
+
layer = mergeOmoConfigRecords(layer, toRecord3(config[key]) ?? {});
|
|
78080
78155
|
}
|
|
78081
78156
|
return layer;
|
|
78082
78157
|
}
|
|
78083
78158
|
function resolveOmoConfigView(options) {
|
|
78084
|
-
const profiles =
|
|
78085
|
-
const profile = options.profile === undefined ? undefined :
|
|
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.
|
|
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"
|