diff options
Diffstat (limited to 'packages/web/src/content/docs/pt-br')
26 files changed, 410 insertions, 408 deletions
diff --git a/packages/web/src/content/docs/pt-br/acp.mdx b/packages/web/src/content/docs/pt-br/acp.mdx index 81449d53e..399ab1b88 100644 --- a/packages/web/src/content/docs/pt-br/acp.mdx +++ b/packages/web/src/content/docs/pt-br/acp.mdx @@ -9,7 +9,7 @@ opencode suporta o [Agent Client Protocol](https://agentclientprotocol.com) ou ( Para uma lista de editores e ferramentas que suportam ACP, confira o [relatório de progresso do ACP](https://zed.dev/blog/acp-progress-report#available-now). ::: -ACP é um protocolo aberto que padroniza a comunicação entre editores de código e agentes de codificação de IA. +ACP é um protocolo aberto que padroniza a comunicação entre editores de código e agentes de codificação de AI. --- @@ -30,7 +30,7 @@ Adicione à sua configuração do [Zed](https://zed.dev) (`~/.config/zed/setting ```json title="~/.config/zed/settings.json" { "agent_servers": { - "opencode": { + "OpenCode": { "command": "opencode", "args": ["acp"] } @@ -51,7 +51,7 @@ Você também pode vincular um atalho de teclado editando seu `keymap.json`: { "agent": { "custom": { - "name": "opencode", + "name": "OpenCode", "command": { "command": "opencode", "args": ["acp"] @@ -74,7 +74,7 @@ Adicione ao seu acp.json do [JetBrains IDE](https://www.jetbrains.com/) de acord ```json title="acp.json" { "agent_servers": { - "opencode": { + "OpenCode": { "command": "/absolute/path/bin/opencode", "args": ["acp"] } diff --git a/packages/web/src/content/docs/pt-br/agents.mdx b/packages/web/src/content/docs/pt-br/agents.mdx index 391edad0a..ddc034fad 100644 --- a/packages/web/src/content/docs/pt-br/agents.mdx +++ b/packages/web/src/content/docs/pt-br/agents.mdx @@ -3,7 +3,7 @@ title: Agentes description: Configure e use agentes especializados. --- -Agentes são assistentes de IA especializados que podem ser configurados para tarefas e fluxos de trabalho específicos. Eles permitem que você crie ferramentas focadas com prompts, modelos e acesso a ferramentas personalizados. +Agentes são assistentes de AI especializados que podem ser configurados para tarefas e fluxos de trabalho específicos. Eles permitem que você crie ferramentas focadas com prompts, modelos e acesso a ferramentas personalizados. :::tip Use o agente de planejamento para analisar código e revisar sugestões sem fazer alterações no código. @@ -162,10 +162,10 @@ Configure os agentes em seu arquivo de configuração `opencode.json`: } }, "code-reviewer": { - "description": "Revisa o código em busca de melhores práticas e problemas potenciais", + "description": "Reviews code for best practices and potential issues", "mode": "subagent", "model": "anthropic/claude-sonnet-4-20250514", - "prompt": "Você é um revisor de código. Foque em segurança, desempenho e manutenibilidade.", + "prompt": "You are a code reviewer. Focus on security, performance, and maintainability.", "tools": { "write": false, "edit": false @@ -186,7 +186,7 @@ Você também pode definir agentes usando arquivos markdown. Coloque-os em: ```markdown title="~/.config/opencode/agents/review.md" --- -description: Revisa o código em busca de qualidade e melhores práticas +description: Reviews code for quality and best practices mode: subagent model: anthropic/claude-sonnet-4-20250514 temperature: 0.1 @@ -196,14 +196,14 @@ tools: bash: false --- -Você está no modo de revisão de código. Foque em: +You are in code review mode. Focus on: -- Qualidade do código e melhores práticas -- Bugs potenciais e casos extremos -- Implicações de desempenho -- Considerações de segurança +- Code quality and best practices +- Potential bugs and edge cases +- Performance implications +- Security considerations -Forneça feedback construtivo sem fazer alterações diretas. +Provide constructive feedback without making direct changes. ``` O nome do arquivo markdown se torna o nome do agente. Por exemplo, `review.md` cria um agente `review`. @@ -224,7 +224,7 @@ Use a opção `description` para fornecer uma breve descrição do que o agente { "agent": { "review": { - "description": "Revisa o código em busca de melhores práticas e problemas potenciais" + "description": "Reviews code for best practices and potential issues" } } } @@ -291,8 +291,8 @@ Se isso não for definido, o agente continuará a iterar até que o modelo decid { "agent": { "quick-thinker": { - "description": "Raciocínio rápido com iterações limitadas", - "prompt": "Você é um pensador rápido. Resolva problemas com o mínimo de etapas.", + "description": "Fast reasoning with limited iterations", + "prompt": "You are a quick thinker. Solve problems with minimal steps.", "steps": 5 } } @@ -449,7 +449,7 @@ Você também pode definir permissões em agentes Markdown. ```markdown title="~/.config/opencode/agents/review.md" --- -description: Revisão de código sem edições +description: Code review without edits mode: subagent permission: edit: deny @@ -461,7 +461,7 @@ permission: webfetch: deny --- -Apenas analise o código e sugira alterações. +Only analyze code and suggest changes. ``` Você pode definir permissões para comandos bash específicos. @@ -645,7 +645,7 @@ Por exemplo, com os modelos de raciocínio da OpenAI, você pode controlar o esf { "agent": { "deep-thinker": { - "description": "Agente que usa alto esforço de raciocínio para problemas complexos", + "description": "Agent that uses high reasoning effort for complex problems", "model": "openai/gpt-5", "reasoningEffort": "high", "textVerbosity": "low" @@ -706,20 +706,20 @@ Você tem um agente que gostaria de compartilhar? [Envie um PR](https://github.c ```markdown title="~/.config/opencode/agents/docs-writer.md" --- -description: Escreve e mantém a documentação do projeto +description: Writes and maintains project documentation mode: subagent tools: bash: false --- -Você é um redator técnico. Crie documentação clara e abrangente. +You are a technical writer. Create clear, comprehensive documentation. -Foque em: +Focus on: -- Explicações claras -- Estrutura adequada -- Exemplos de código -- Linguagem amigável ao usuário +- Clear explanations +- Proper structure +- Code examples +- User-friendly language ``` --- @@ -728,20 +728,20 @@ Foque em: ```markdown title="~/.config/opencode/agents/security-auditor.md" --- -description: Realiza auditorias de segurança e identifica vulnerabilidades +description: Performs security audits and identifies vulnerabilities mode: subagent tools: write: false edit: false --- -Você é um especialista em segurança. Foque em identificar problemas potenciais de segurança. +You are a security expert. Focus on identifying potential security issues. -Procure por: +Look for: -- Vulnerabilidades de validação de entrada -- Falhas de autenticação e autorização -- Riscos de exposição de dados -- Vulnerabilidades de dependência -- Problemas de segurança de configuração +- Input validation vulnerabilities +- Authentication and authorization flaws +- Data exposure risks +- Dependency vulnerabilities +- Configuration security issues ``` diff --git a/packages/web/src/content/docs/pt-br/cli.mdx b/packages/web/src/content/docs/pt-br/cli.mdx index 1e9a766cd..aab792a99 100644 --- a/packages/web/src/content/docs/pt-br/cli.mdx +++ b/packages/web/src/content/docs/pt-br/cli.mdx @@ -14,7 +14,7 @@ opencode Mas também aceita comandos conforme documentado nesta página. Isso permite que você interaja com o opencode programaticamente. ```bash -opencode run "Explique como closures funcionam em JavaScript" +opencode run "Explain how closures work in JavaScript" ``` --- @@ -24,7 +24,7 @@ opencode run "Explique como closures funcionam em JavaScript" Inicie a interface de usuário do terminal do opencode. ```bash -opencode [projeto] +opencode [project] ``` #### Flags @@ -53,7 +53,7 @@ A CLI do opencode também possui os seguintes comandos. Gerencie agentes para o opencode. ```bash -opencode agent [comando] +opencode agent [command] ``` --- @@ -69,10 +69,10 @@ opencode attach [url] Isso permite usar o TUI com um backend opencode remoto. Por exemplo: ```bash -# Inicie o servidor backend para acesso web/móvel +# Start the backend server for web/mobile access opencode web --port 4096 --hostname 0.0.0.0 -# Em outro terminal, anexe o TUI ao backend em execução +# In another terminal, attach the TUI to the running backend opencode attach http://10.20.30.40:4096 ``` @@ -112,7 +112,7 @@ opencode agent list Comando para gerenciar credenciais e login para provedores. ```bash -opencode auth [comando] +opencode auth [command] ``` --- @@ -160,7 +160,7 @@ opencode auth logout Gerencie o agente do GitHub para automação de repositórios. ```bash -opencode github [comando] +opencode github [command] ``` --- @@ -199,7 +199,7 @@ opencode github run Gerencie servidores do Model Context Protocol. ```bash -opencode mcp [comando] +opencode mcp [command] ``` --- @@ -237,7 +237,7 @@ opencode mcp ls Autentique-se com um servidor MCP habilitado para OAuth. ```bash -opencode mcp auth [nome] +opencode mcp auth [name] ``` Se você não fornecer um nome de servidor, será solicitado que você selecione entre os servidores disponíveis habilitados para OAuth. @@ -261,7 +261,7 @@ opencode mcp auth ls Remova credenciais OAuth para um servidor MCP. ```bash -opencode mcp logout [nome] +opencode mcp logout [name] ``` --- @@ -271,7 +271,7 @@ opencode mcp logout [nome] Depure problemas de conexão OAuth para um servidor MCP. ```bash -opencode mcp debug <nome> +opencode mcp debug <name> ``` --- @@ -281,7 +281,7 @@ opencode mcp debug <nome> Liste todos os modelos disponíveis dos provedores configurados. ```bash -opencode models [provedor] +opencode models [provider] ``` Este comando exibe todos os modelos disponíveis entre seus provedores configurados no formato `provider/model`. @@ -314,23 +314,23 @@ opencode models --refresh Execute o opencode em modo não interativo passando um prompt diretamente. ```bash -opencode run [mensagem..] +opencode run [message..] ``` Isso é útil para scripts, automação ou quando você deseja uma resposta rápida sem iniciar o TUI completo. Por exemplo. ```bash "opencode run" -opencode run Explique o uso de contexto em Go +opencode run Explain the use of context in Go ``` Você também pode se anexar a uma instância em execução do `opencode serve` para evitar tempos de inicialização a frio do servidor MCP em cada execução: ```bash -# Inicie um servidor sem cabeça em um terminal +# Start a headless server in one terminal opencode serve -# Em outro terminal, execute comandos que se anexam a ele -opencode run --attach http://localhost:4096 "Explique async/await em JavaScript" +# In another terminal, run commands that attach to it +opencode run --attach http://localhost:4096 "Explain async/await in JavaScript" ``` #### Flags @@ -378,7 +378,7 @@ Isso inicia um servidor HTTP que fornece acesso à funcionalidade do opencode se Gerencie sessões do opencode. ```bash -opencode session [comando] +opencode session [command] ``` --- @@ -436,7 +436,7 @@ Se você não fornecer um ID de sessão, será solicitado que você selecione en Importe dados da sessão de um arquivo JSON ou URL de compartilhamento do opencode. ```bash -opencode import <arquivo> +opencode import <file> ``` Você pode importar de um arquivo local ou de uma URL de compartilhamento do opencode. @@ -513,7 +513,7 @@ opencode uninstall Atualiza o opencode para a versão mais recente ou uma versão específica. ```bash -opencode upgrade [alvo] +opencode upgrade [target] ``` Para atualizar para a versão mais recente. diff --git a/packages/web/src/content/docs/pt-br/commands.mdx b/packages/web/src/content/docs/pt-br/commands.mdx index 18cb9251d..89d9655cf 100644 --- a/packages/web/src/content/docs/pt-br/commands.mdx +++ b/packages/web/src/content/docs/pt-br/commands.mdx @@ -21,13 +21,13 @@ Crie `.opencode/commands/test.md`: ```md title=".opencode/commands/test.md" --- -description: Execute testes com cobertura +description: Run tests with coverage agent: build model: anthropic/claude-3-5-sonnet-20241022 --- -Execute a suíte de testes completa com relatório de cobertura e mostre quaisquer falhas. -Concentre-se nos testes que falharam e sugira correções. +Run the full test suite with coverage report and show any failures. +Focus on the failing tests and suggest fixes. ``` O frontmatter define as propriedades do comando. O conteúdo se torna o template. @@ -54,12 +54,12 @@ Use a opção `command` na sua [configuração](/docs/config) do opencode: { "$schema": "https://opencode.ai/config.json", "command": { - // Este se torna o nome do comando + // This becomes the name of the command "test": { - // Este é o prompt que será enviado ao LLM - "template": "Execute a suíte de testes completa com relatório de cobertura e mostre quaisquer falhas.\nConcentre-se nos testes que falharam e sugira correções.", - // Este é exibido como a descrição no TUI - "description": "Execute testes com cobertura", + // This is the prompt that will be sent to the LLM + "template": "Run the full test suite with coverage report and show any failures.\nFocus on the failing tests and suggest fixes.", + // This is shown as the description in the TUI + "description": "Run tests with coverage", "agent": "build", "model": "anthropic/claude-3-5-sonnet-20241022" } @@ -84,13 +84,13 @@ Você também pode definir comandos usando arquivos markdown. Coloque-os em: ```markdown title="~/.config/opencode/commands/test.md" --- -description: Execute testes com cobertura +description: Run tests with coverage agent: build model: anthropic/claude-3-5-sonnet-20241022 --- -Execute a suíte de testes completa com relatório de cobertura e mostre quaisquer falhas. -Concentre-se nos testes que falharam e sugira correções. +Run the full test suite with coverage report and show any failures. +Focus on the failing tests and suggest fixes. ``` O nome do arquivo markdown se torna o nome do comando. Por exemplo, `test.md` permite que você execute: @@ -113,11 +113,11 @@ Passe argumentos para os comandos usando o espaço reservado `$ARGUMENTS`. ```md title=".opencode/commands/component.md" --- -description: Crie um novo componente +description: Create a new component --- -Crie um novo componente React chamado $ARGUMENTS com suporte a TypeScript. -Inclua tipagem adequada e estrutura básica. +Create a new React component named $ARGUMENTS with TypeScript support. +Include proper typing and basic structure. ``` Execute o comando com argumentos: @@ -139,11 +139,11 @@ Por exemplo: ```md title=".opencode/commands/create-file.md" --- -description: Crie um novo arquivo com conteúdo +description: Create a new file with content --- -Crie um arquivo chamado $1 no diretório $2 -com o seguinte conteúdo: $3 +Create a file named $1 in the directory $2 +with the following content: $3 ``` Execute o comando: @@ -162,32 +162,32 @@ Isso substitui: ### Saída do shell -Use _!`comando`_ para injetar a saída do [comando bash](/docs/tui#bash-commands) no seu prompt. +Use _!`command`_ para injetar a saída do [comando bash](/docs/tui#bash-commands) no seu prompt. Por exemplo, para criar um comando personalizado que analisa a cobertura de testes: ```md title=".opencode/commands/analyze-coverage.md" --- -description: Analise a cobertura de testes +description: Analyze test coverage --- -Aqui estão os resultados atuais dos testes: +Here are the current test results: !`npm test` -Com base nesses resultados, sugira melhorias para aumentar a cobertura. +Based on these results, suggest improvements to increase coverage. ``` Ou para revisar alterações recentes: ```md title=".opencode/commands/review-changes.md" --- -description: Revise alterações recentes +description: Review recent changes --- -Commits git recentes: +Recent git commits: !`git log --oneline -10` -Revise essas alterações e sugira quaisquer melhorias. +Review these changes and suggest any improvements. ``` Os comandos são executados no diretório raiz do seu projeto e sua saída se torna parte do prompt. @@ -200,11 +200,11 @@ Inclua arquivos no seu comando usando `@` seguido pelo nome do arquivo. ```md title=".opencode/commands/review-component.md" --- -description: Revise componente +description: Review component --- -Revise o componente em @src/components/Button.tsx. -Verifique problemas de desempenho e sugira melhorias. +Review the component in @src/components/Button.tsx. +Check for performance issues and suggest improvements. ``` O conteúdo do arquivo é incluído automaticamente no prompt. @@ -225,7 +225,7 @@ A opção `template` define o prompt que será enviado ao LLM quando o comando f { "command": { "test": { - "template": "Execute a suíte de testes completa com relatório de cobertura e mostre quaisquer falhas.\nConcentre-se nos testes que falharam e sugira correções." + "template": "Run the full test suite with coverage report and show any failures.\nFocus on the failing tests and suggest fixes." } } } @@ -243,7 +243,7 @@ Use a opção `description` para fornecer uma breve descrição do que o comando { "command": { "test": { - "description": "Execute testes com cobertura" + "description": "Run tests with coverage" } } } diff --git a/packages/web/src/content/docs/pt-br/config.mdx b/packages/web/src/content/docs/pt-br/config.mdx index 688dc87d7..aa500a156 100644 --- a/packages/web/src/content/docs/pt-br/config.mdx +++ b/packages/web/src/content/docs/pt-br/config.mdx @@ -14,7 +14,7 @@ O opencode suporta os formatos **JSON** e **JSONC** (JSON com Comentários). ```jsonc title="opencode.jsonc" { "$schema": "https://opencode.ai/config.json", - // Configuração do tema + // Theme configuration "theme": "opencode", "model": "anthropic/claude-sonnet-4-5", "autoupdate": true, @@ -65,7 +65,7 @@ A configuração remota é carregada primeiro, servindo como a camada base. Toda Por exemplo, se sua organização fornece servidores MCP que estão desativados por padrão: -```json title="Configuração remota de .well-known/opencode" +```json title="Remote config from .well-known/opencode" { "mcp": { "jira": { @@ -320,11 +320,11 @@ Você pode configurar agentes especializados para tarefas específicas através "$schema": "https://opencode.ai/config.json", "agent": { "code-reviewer": { - "description": "Revisa o código em busca de melhores práticas e problemas potenciais", + "description": "Reviews code for best practices and potential issues", "model": "anthropic/claude-sonnet-4-5", - "prompt": "Você é um revisor de código. Foque em segurança, desempenho e manutenibilidade.", + "prompt": "You are a code reviewer. Focus on security, performance, and maintainability.", "tools": { - // Desabilitar ferramentas de modificação de arquivos para agente somente de revisão + // Disable file modification tools for review-only agent "write": false, "edit": false, }, @@ -384,14 +384,14 @@ Você pode configurar comandos personalizados para tarefas repetitivas através "$schema": "https://opencode.ai/config.json", "command": { "test": { - "template": "Execute a suíte de testes completa com relatório de cobertura e mostre quaisquer falhas.\nFoque nos testes que falharam e sugira correções.", - "description": "Executar testes com cobertura", + "template": "Run the full test suite with coverage report and show any failures.\nFocus on the failing tests and suggest fixes.", + "description": "Run tests with coverage", "agent": "build", "model": "anthropic/claude-haiku-4-5", }, "component": { - "template": "Crie um novo componente React chamado $ARGUMENTS com suporte a TypeScript.\nInclua tipagem adequada e estrutura básica.", - "description": "Criar um novo componente", + "template": "Create a new React component named $ARGUMENTS with TypeScript support.\nInclude proper typing and basic structure.", + "description": "Create a new component", }, }, } diff --git a/packages/web/src/content/docs/pt-br/custom-tools.mdx b/packages/web/src/content/docs/pt-br/custom-tools.mdx index 528e01e05..63a43df76 100644 --- a/packages/web/src/content/docs/pt-br/custom-tools.mdx +++ b/packages/web/src/content/docs/pt-br/custom-tools.mdx @@ -30,12 +30,12 @@ A maneira mais fácil de criar ferramentas é usando o helper `tool()`, que forn import { tool } from "@opencode-ai/plugin" export default tool({ - description: "Consultar o banco de dados do projeto", + description: "Query the project database", args: { - query: tool.schema.string().describe("Consulta SQL a ser executada"), + query: tool.schema.string().describe("SQL query to execute"), }, async execute(args) { - // Sua lógica de banco de dados aqui + // Your database logic here return `Executed query: ${args.query}` }, }) @@ -53,10 +53,10 @@ Você também pode exportar várias ferramentas de um único arquivo. Cada expor import { tool } from "@opencode-ai/plugin" export const add = tool({ - description: "Adicionar dois números", + description: "Add two numbers", args: { - a: tool.schema.number().describe("Primeiro número"), - b: tool.schema.number().describe("Segundo número"), + a: tool.schema.number().describe("First number"), + b: tool.schema.number().describe("Second number"), }, async execute(args) { return args.a + args.b @@ -64,10 +64,10 @@ export const add = tool({ }) export const multiply = tool({ - description: "Multiplicar dois números", + description: "Multiply two numbers", args: { - a: tool.schema.number().describe("Primeiro número"), - b: tool.schema.number().describe("Segundo número"), + a: tool.schema.number().describe("First number"), + b: tool.schema.number().describe("Second number"), }, async execute(args) { return args.a * args.b @@ -85,7 +85,7 @@ Você pode usar `tool.schema`, que é apenas [Zod](https://zod.dev), para defini ```ts "tool.schema" args: { - query: tool.schema.string().describe("Consulta SQL a ser executada") + query: tool.schema.string().describe("SQL query to execute") } ``` @@ -95,13 +95,13 @@ Você também pode importar [Zod](https://zod.dev) diretamente e retornar um obj import { z } from "zod" export default { - description: "Descrição da ferramenta", + description: "Tool description", args: { - param: z.string().describe("Descrição do parâmetro"), + param: z.string().describe("Parameter description"), }, async execute(args, context) { - // Implementação da ferramenta - return "resultado" + // Tool implementation + return "result" }, } ``` @@ -116,10 +116,10 @@ As ferramentas recebem contexto sobre a sessão atual: import { tool } from "@opencode-ai/plugin" export default tool({ - description: "Obter informações do projeto", + description: "Get project information", args: {}, async execute(args, context) { - // Acessar informações do contexto + // Access context information const { agent, sessionID, messageID, directory, worktree } = context return `Agent: ${agent}, Session: ${sessionID}, Message: ${messageID}, Directory: ${directory}, Worktree: ${worktree}` }, @@ -154,10 +154,10 @@ import { tool } from "@opencode-ai/plugin" import path from "path" export default tool({ - description: "Adicionar dois números usando Python", + description: "Add two numbers using Python", args: { - a: tool.schema.number().describe("Primeiro número"), - b: tool.schema.number().describe("Segundo número"), + a: tool.schema.number().describe("First number"), + b: tool.schema.number().describe("Second number"), }, async execute(args, context) { const script = path.join(context.worktree, ".opencode/tools/add.py") diff --git a/packages/web/src/content/docs/pt-br/ecosystem.mdx b/packages/web/src/content/docs/pt-br/ecosystem.mdx index 3530fc804..a405cdf62 100644 --- a/packages/web/src/content/docs/pt-br/ecosystem.mdx +++ b/packages/web/src/content/docs/pt-br/ecosystem.mdx @@ -27,7 +27,7 @@ Você também pode conferir [awesome-opencode](https://github.com/awesome-openco | [opencode-google-antigravity-auth](https://github.com/shekohex/opencode-google-antigravity-auth) | Plugin Google Antigravity OAuth, com suporte para Google Search e manuseio de API mais robusto | | [opencode-dynamic-context-pruning](https://github.com/Tarquinen/opencode-dynamic-context-pruning) | Otimize o uso de tokens podando saídas de ferramentas obsoletas | | [opencode-websearch-cited](https://github.com/ghoulr/opencode-websearch-cited.git) | Adicione suporte nativo de pesquisa na web para provedores suportados com estilo fundamentado no Google | -| [opencode-pty](https://github.com/shekohex/opencode-pty.git) | Permite que agentes de IA executem processos em segundo plano em um PTY, enviando entrada interativa para eles. | +| [opencode-pty](https://github.com/shekohex/opencode-pty.git) | Permite que agentes de AI executem processos em segundo plano em um PTY, enviando entrada interativa para eles. | | [opencode-shell-strategy](https://github.com/JRedeker/opencode-shell-strategy) | Instruções para comandos de shell não interativos - evita travamentos de operações dependentes de TTY | | [opencode-wakatime](https://github.com/angristan/opencode-wakatime) | Acompanhe o uso do opencode com Wakatime | | [opencode-md-table-formatter](https://github.com/franlol/opencode-md-table-formatter/tree/main) | Limpe tabelas markdown produzidas por LLMs | @@ -35,14 +35,14 @@ Você também pode conferir [awesome-opencode](https://github.com/awesome-openco | [oh-my-opencode](https://github.com/code-yeongyu/oh-my-opencode) | Agentes em segundo plano, ferramentas LSP/AST/MCP pré-construídas, agentes curados, compatível com Claude Code | | [opencode-notificator](https://github.com/panta82/opencode-notificator) | Notificações de desktop e alertas sonoros para sessões do opencode | | [opencode-notifier](https://github.com/mohak34/opencode-notifier) | Notificações de desktop e alertas sonoros para eventos de permissão, conclusão e erro | -| [opencode-zellij-namer](https://github.com/24601/opencode-zellij-namer) | Nomeação automática de sessões Zellij com suporte de IA com base no contexto do opencode | +| [opencode-zellij-namer](https://github.com/24601/opencode-zellij-namer) | Nomeação automática de sessões Zellij com suporte de AI com base no contexto do opencode | | [opencode-skillful](https://github.com/zenobi-us/opencode-skillful) | Permite que agentes do opencode carreguem prompts sob demanda com descoberta e injeção de habilidades | | [opencode-supermemory](https://github.com/supermemoryai/opencode-supermemory) | Memória persistente entre sessões usando Supermemory | | [@plannotator/opencode](https://github.com/backnotprop/plannotator/tree/main/apps/opencode-plugin) | Revisão de plano interativa com anotação visual e compartilhamento privado/offline | | [@openspoon/subtask2](https://github.com/spoons-and-mirrors/subtask2) | Estenda opencode /commands em um poderoso sistema de orquestração com controle de fluxo granular | | [opencode-scheduler](https://github.com/different-ai/opencode-scheduler) | Agende trabalhos recorrentes usando launchd (Mac) ou systemd (Linux) com sintaxe cron | | [micode](https://github.com/vtemian/micode) | Fluxo de trabalho Estruturado Brainstorm → Planejar → Implementar com continuidade de sessão | -| [octto](https://github.com/vtemian/octto) | UI interativa do navegador para brainstorming de IA com formulários de múltiplas perguntas | +| [octto](https://github.com/vtemian/octto) | UI interativa do navegador para brainstorming de AI com formulários de múltiplas perguntas | | [opencode-background-agents](https://github.com/kdcokenny/opencode-background-agents) | Agentes em segundo plano estilo Claude Code com delegação assíncrona e persistência de contexto | | [opencode-notify](https://github.com/kdcokenny/opencode-notify) | Notificações nativas do OS para opencode – saiba quando as tarefas são concluídas | | [opencode-workspace](https://github.com/kdcokenny/opencode-workspace) | Conjunto de orquestração multi-agente – 16 componentes, uma instalação | @@ -72,5 +72,5 @@ Você também pode conferir [awesome-opencode](https://github.com/awesome-openco | Nome | Descrição | | ----------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| [Agentic](https://github.com/Cluster444/agentic) | Agentes e comandos de IA modulares para desenvolvimento estruturado | +| [Agentic](https://github.com/Cluster444/agentic) | Agentes e comandos de AI modulares para desenvolvimento estruturado | | [opencode-agents](https://github.com/darrenhinde/opencode-agents) | Configurações, prompts, agentes e plugins para fluxos de trabalho aprimorados | diff --git a/packages/web/src/content/docs/pt-br/enterprise.mdx b/packages/web/src/content/docs/pt-br/enterprise.mdx index 385f28eea..6ea6e5dc3 100644 --- a/packages/web/src/content/docs/pt-br/enterprise.mdx +++ b/packages/web/src/content/docs/pt-br/enterprise.mdx @@ -6,7 +6,7 @@ description: Usando opencode com segurança em sua organização. import config from "../../../../config.mjs" export const email = `mailto:${config.email}` -opencode Enterprise é para organizações que desejam garantir que seu código e dados nunca deixem sua infraestrutura. Isso pode ser feito usando uma configuração centralizada que se integra ao seu SSO e gateway de IA interno. +opencode Enterprise é para organizações que desejam garantir que seu código e dados nunca deixem sua infraestrutura. Isso pode ser feito usando uma configuração centralizada que se integra ao seu SSO e gateway de AI interno. :::note opencode não armazena nenhum de seus códigos ou dados de contexto. @@ -27,9 +27,9 @@ opencode é de código aberto e não armazena nenhum de seus códigos ou dados d ### Manipulação de dados -**opencode não armazena seu código ou dados de contexto.** Todo o processamento acontece localmente ou através de chamadas diretas de API para seu provedor de IA. +**opencode não armazena seu código ou dados de contexto.** Todo o processamento acontece localmente ou através de chamadas diretas de API para seu provedor de AI. -Isso significa que, enquanto você estiver usando um provedor em quem confia, ou um gateway de IA interno, você pode usar o opencode com segurança. +Isso significa que, enquanto você estiver usando um provedor em quem confia, ou um gateway de AI interno, você pode usar o opencode com segurança. A única ressalva aqui é o recurso opcional `/share`. @@ -76,7 +76,7 @@ Uma vez que você tenha concluído seu teste e esteja pronto para usar o opencod Podemos configurar o opencode para usar uma única configuração central para toda a sua organização. -Essa configuração centralizada pode se integrar ao seu provedor de SSO e garante que todos os usuários acessem apenas seu gateway de IA interno. +Essa configuração centralizada pode se integrar ao seu provedor de SSO e garante que todos os usuários acessem apenas seu gateway de AI interno. --- @@ -84,15 +84,15 @@ Essa configuração centralizada pode se integrar ao seu provedor de SSO e garan Através da configuração central, o opencode pode se integrar ao provedor de SSO de sua organização para autenticação. -Isso permite que o opencode obtenha credenciais para seu gateway de IA interno através do seu sistema de gerenciamento de identidade existente. +Isso permite que o opencode obtenha credenciais para seu gateway de AI interno através do seu sistema de gerenciamento de identidade existente. --- -### Gateway de IA Interno +### Gateway de AI Interno -Com a configuração central, o opencode também pode ser configurado para usar apenas seu gateway de IA interno. +Com a configuração central, o opencode também pode ser configurado para usar apenas seu gateway de AI interno. -Você também pode desativar todos os outros provedores de IA, garantindo que todas as solicitações passem pela infraestrutura aprovada de sua organização. +Você também pode desativar todos os outros provedores de AI, garantindo que todas as solicitações passem pela infraestrutura aprovada de sua organização. --- @@ -109,7 +109,7 @@ Isso está atualmente em nosso roadmap. Se você estiver interessado, **<a href= <details> <summary>O que é opencode Enterprise?</summary> -opencode Enterprise é para organizações que desejam garantir que seu código e dados nunca deixem sua infraestrutura. Isso pode ser feito usando uma configuração centralizada que se integra ao seu SSO e gateway de IA interno. +opencode Enterprise é para organizações que desejam garantir que seu código e dados nunca deixem sua infraestrutura. Isso pode ser feito usando uma configuração centralizada que se integra ao seu SSO e gateway de AI interno. </details> @@ -132,7 +132,7 @@ Oferecemos preços empresariais por assento. Se você tiver seu próprio gateway <details> <summary>Meus dados estão seguros com opencode Enterprise?</summary> -Sim. O opencode não armazena seu código ou dados de contexto. Todo o processamento acontece localmente ou através de chamadas diretas de API para seu provedor de IA. Com a configuração central e a integração SSO, seus dados permanecem seguros dentro da infraestrutura de sua organização. +Sim. O opencode não armazena seu código ou dados de contexto. Todo o processamento acontece localmente ou através de chamadas diretas de API para seu provedor de AI. Com a configuração central e a integração SSO, seus dados permanecem seguros dentro da infraestrutura de sua organização. </details> diff --git a/packages/web/src/content/docs/pt-br/github.mdx b/packages/web/src/content/docs/pt-br/github.mdx index 3401c7e61..98ab1cec1 100644 --- a/packages/web/src/content/docs/pt-br/github.mdx +++ b/packages/web/src/content/docs/pt-br/github.mdx @@ -63,7 +63,7 @@ Ou você pode configurá-lo manualmente. fetch-depth: 1 persist-credentials: false - - name: Run opencode + - name: Run OpenCode uses: anomalyco/opencode/github@latest env: ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} @@ -119,11 +119,11 @@ O opencode pode ser acionado pelos seguintes eventos do GitHub: Execute o opencode em um cronograma para realizar tarefas automatizadas: ```yaml title=".github/workflows/opencode-scheduled.yml" -name: Tarefa Agendada opencode +name: Scheduled OpenCode Task on: schedule: - - cron: "0 9 * * 1" # Toda segunda-feira às 9h UTC + - cron: "0 9 * * 1" # Every Monday at 9am UTC jobs: opencode: @@ -139,15 +139,15 @@ jobs: with: persist-credentials: false - - name: Run opencode + - name: Run OpenCode uses: anomalyco/opencode/github@latest env: ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} with: model: anthropic/claude-sonnet-4-20250514 prompt: | - Revise a base de código em busca de comentários TODO e crie um resumo. - Se você encontrar problemas que valem a pena serem abordados, abra um problema para rastreá-los. + Review the codebase for any TODO comments and create a summary. + If you find issues worth addressing, open an issue to track them. ``` Para eventos agendados, a entrada `prompt` é **obrigatória** uma vez que não há comentário para extrair instruções. Fluxos de trabalho agendados são executados sem um contexto de usuário para verificação de permissões, então o fluxo de trabalho deve conceder `contents: write` e `pull-requests: write` se você espera que o opencode crie branches ou PRs. @@ -185,10 +185,10 @@ jobs: model: anthropic/claude-sonnet-4-20250514 use_github_token: true prompt: | - Revise este pull request: - - Verifique se há problemas de qualidade de código - - Procure por bugs potenciais - - Sugira melhorias + Review this pull request: + - Check for code quality issues + - Look for potential bugs + - Suggest improvements ``` Para eventos de `pull_request`, se nenhum `prompt` for fornecido, o opencode padrão será revisar o pull request. @@ -200,7 +200,7 @@ Para eventos de `pull_request`, se nenhum `prompt` for fornecido, o opencode pad Triagem automática de novos problemas. Este exemplo filtra contas com mais de 30 dias para reduzir spam: ```yaml title=".github/workflows/opencode-triage.yml" -name: Triagem de Problemas +name: Issue Triage on: issues: @@ -215,7 +215,7 @@ jobs: pull-requests: write issues: write steps: - - name: Verificar idade da conta + - name: Check account age id: check uses: actions/github-script@v7 with: @@ -240,10 +240,10 @@ jobs: with: model: anthropic/claude-sonnet-4-20250514 prompt: | - Revise este problema. Se houver uma correção clara ou documentos relevantes: - - Forneça links de documentação - - Adicione orientações de tratamento de erros para exemplos de código - Caso contrário, não comente. + Review this issue. If there's a clear fix or relevant docs: + - Provide documentation links + - Add error handling guidance for code examples + Otherwise, do not comment. ``` Para eventos de `issues`, a entrada `prompt` é **obrigatória** uma vez que não há comentário para extrair instruções. @@ -259,10 +259,10 @@ Substitua o prompt padrão para personalizar o comportamento do opencode para se with: model: anthropic/claude-sonnet-4-5 prompt: | - Revise este pull request: - - Verifique se há problemas de qualidade de código - - Procure por bugs potenciais - - Sugira melhorias + Review this pull request: + - Check for code quality issues + - Look for potential bugs + - Suggest improvements ``` Isso é útil para impor critérios de revisão específicos, padrões de codificação ou áreas de foco relevantes para seu projeto. @@ -308,7 +308,7 @@ Aqui estão alguns exemplos de como você pode usar o opencode no GitHub. Deixe um comentário diretamente nas linhas de código na aba "Files" do PR. O opencode detecta automaticamente o arquivo, os números das linhas e o contexto do diff para fornecer respostas precisas. ``` - [Comentário sobre linhas específicas na aba Files] + [Comment on specific lines in Files tab] /oc add error handling here ``` diff --git a/packages/web/src/content/docs/pt-br/gitlab.mdx b/packages/web/src/content/docs/pt-br/gitlab.mdx index b02f104aa..7a2ce36ea 100644 --- a/packages/web/src/content/docs/pt-br/gitlab.mdx +++ b/packages/web/src/content/docs/pt-br/gitlab.mdx @@ -35,9 +35,9 @@ Aqui estamos usando um componente CI/CD criado pela comunidade para opencode — - component: $CI_SERVER_FQDN/nagyv/gitlab-opencode/opencode@2 inputs: config_dir: ${CI_PROJECT_DIR}/opencode-config - auth_json: $OPENCODE_AUTH_JSON # O nome da variável para seu JSON de autenticação do opencode + auth_json: $OPENCODE_AUTH_JSON # The variable name for your OpenCode authentication JSON command: optional-custom-command - message: "Seu prompt aqui" + message: "Your prompt here" ``` Para mais entradas e casos de uso [consulte a documentação](https://gitlab.com/explore/catalog/nagyv/gitlab-opencode) deste componente. @@ -70,7 +70,7 @@ Consulte a [**documentação do GitLab**](https://docs.gitlab.com/user/duo_agent 1. Configure seu ambiente GitLab 2. Configure CI/CD -3. Obtenha uma chave de API do provedor de modelo de IA +3. Obtenha uma chave de API do provedor de modelo de AI 4. Crie uma conta de serviço 5. Configure variáveis de CI/CD 6. Crie um arquivo de configuração de fluxo, aqui está um exemplo: @@ -82,16 +82,16 @@ Consulte a [**documentação do GitLab**](https://docs.gitlab.com/user/duo_agent ```yaml image: node:22-slim commands: - - echo "Instalando opencode" + - echo "Installing opencode" - npm install --global opencode-ai - - echo "Instalando glab" + - echo "Installing glab" - export GITLAB_TOKEN=$GITLAB_TOKEN_OPENCODE - apt-get update --quiet && apt-get install --yes curl wget gpg git && rm --recursive --force /var/lib/apt/lists/* - curl --silent --show-error --location "https://raw.githubusercontent.com/upciti/wakemeops/main/assets/install_repository" | bash - apt-get install --yes glab - - echo "Configurando glab" + - echo "Configuring glab" - echo $GITLAB_HOST - - echo "Criando configuração de autenticação do opencode" + - echo "Creating OpenCode auth configuration" - mkdir --parents ~/.local/share/opencode - | cat > ~/.local/share/opencode/auth.json << EOF @@ -102,47 +102,47 @@ Consulte a [**documentação do GitLab**](https://docs.gitlab.com/user/duo_agent } } EOF - - echo "Configurando git" + - echo "Configuring git" - git config --global user.email "[email protected]" - - git config --global user.name "opencode" - - echo "Testando glab" + - git config --global user.name "OpenCode" + - echo "Testing glab" - glab issue list - - echo "Executando opencode" + - echo "Running OpenCode" - | opencode run " - Você é um assistente de IA ajudando com operações do GitLab. + You are an AI assistant helping with GitLab operations. - Contexto: $AI_FLOW_CONTEXT - Tarefa: $AI_FLOW_INPUT - Evento: $AI_FLOW_EVENT + Context: $AI_FLOW_CONTEXT + Task: $AI_FLOW_INPUT + Event: $AI_FLOW_EVENT - Por favor, execute a tarefa solicitada usando as ferramentas disponíveis do GitLab. - Seja minucioso em sua análise e forneça explicações claras. + Please execute the requested task using the available GitLab tools. + Be thorough in your analysis and provide clear explanations. <important> - Por favor, use a CLI do glab para acessar dados do GitLab. A CLI do glab já foi autenticada. Você pode executar os comandos correspondentes. + Please use the glab CLI to access data from GitLab. The glab CLI has already been authenticated. You can run the corresponding commands. - Se você for solicitado a resumir um MR ou problema ou a fornecer mais informações, então, por favor, poste uma nota de volta ao MR/Problema para que o usuário possa vê-la. - Você não precisa fazer commit ou push das alterações, isso será feito automaticamente com base nas alterações de arquivo que você fizer. + If you are asked to summarize an MR or issue or asked to provide more information then please post back a note to the MR/Issue so that the user can see it. + You don't need to commit or push up changes, those will be done automatically based on the file changes you make. </important> " - git checkout --branch $CI_WORKLOAD_REF origin/$CI_WORKLOAD_REF - - echo "Verificando alterações no git e fazendo push se existirem" + - echo "Checking for git changes and pushing if any exist" - | if ! git diff --quiet || ! git diff --cached --quiet || [ --not --zero "$(git ls-files --others --exclude-standard)" ]; then - echo "Alterações no Git detectadas, adicionando e fazendo push..." + echo "Git changes detected, adding and pushing..." git add . if git diff --cached --quiet; then - echo "Nenhuma alteração em estágio para fazer commit" + echo "No staged changes to commit" else - echo "Fazendo commit das alterações no branch: $CI_WORKLOAD_REF" - git commit --message "Alterações do Codex" - echo "Fazendo push das alterações para $CI_WORKLOAD_REF" + echo "Committing changes to branch: $CI_WORKLOAD_REF" + git commit --message "Codex changes" + echo "Pushing changes up to $CI_WORKLOAD_REF" git push https://gitlab-ci-token:$GITLAB_TOKEN@$GITLAB_HOST/gl-demo-ultimate-dev-ai-epic-17570/test-java-project.git $CI_WORKLOAD_REF - echo "Alterações enviadas com sucesso" + echo "Changes successfully pushed" fi else - echo "Nenhuma alteração no git detectada, pulando push" + echo "No git changes detected, skipping push" fi variables: - ANTHROPIC_API_KEY diff --git a/packages/web/src/content/docs/pt-br/index.mdx b/packages/web/src/content/docs/pt-br/index.mdx index a7c388a13..bbb951d23 100644 --- a/packages/web/src/content/docs/pt-br/index.mdx +++ b/packages/web/src/content/docs/pt-br/index.mdx @@ -147,7 +147,7 @@ Se você é novo no uso de provedores de LLM, recomendamos usar o [OpenCode Zen] 3. Cole sua chave de API. ```txt - ┌ Chave de API + ┌ API key │ │ └ enter @@ -162,7 +162,7 @@ Alternativamente, você pode selecionar um dos outros provedores. [Saiba mais](/ Agora que você configurou um provedor, pode navegar até um projeto no qual deseja trabalhar. ```bash -cd /caminho/para/projeto +cd /path/to/project ``` E execute o opencode. @@ -204,7 +204,7 @@ Use a tecla `@` para buscar arquivos no projeto. ::: ```txt frame="none" "@packages/functions/src/api/index.ts" -Como a autenticação é tratada em @packages/functions/src/api/index.ts +How is authentication handled in @packages/functions/src/api/index.ts ``` Isso é útil se houver uma parte da base de código na qual você não trabalhou. @@ -221,16 +221,16 @@ Você pode pedir ao opencode para adicionar novos recursos ao seu projeto. Embor Mude para ele usando a tecla **Tab**. Você verá um indicador para isso no canto inferior direito. - ```bash frame="none" title="Mudar para o modo de plano" + ```bash frame="none" title="Switch to Plan mode" <TAB> ``` Agora vamos descrever o que queremos que ele faça. ```txt frame="none" - Quando um usuário excluir uma nota, gostaríamos de marcá-la como excluída no banco de dados. - Em seguida, crie uma tela que mostre todas as notas recentemente excluídas. - A partir dessa tela, o usuário pode restaurar uma nota ou excluí-la permanentemente. + When a user deletes a note, we'd like to flag it as deleted in the database. + Then create a screen that shows all the recently deleted notes. + From this screen, the user can undelete a note or permanently delete it. ``` Você quer dar ao opencode detalhes suficientes para entender o que você deseja. Ajuda conversar com ele como se você estivesse falando com um desenvolvedor júnior da sua equipe. @@ -244,8 +244,8 @@ Você pode pedir ao opencode para adicionar novos recursos ao seu projeto. Embor Uma vez que ele lhe der um plano, você pode dar feedback ou adicionar mais detalhes. ```txt frame="none" - Gostaríamos de projetar essa nova tela usando um design que já usei antes. - [Imagem #1] Dê uma olhada nesta imagem e use-a como referência. + We'd like to design this new screen using a design I've used before. + [Image #1] Take a look at this image and use it as a reference. ``` :::tip @@ -265,7 +265,7 @@ Você pode pedir ao opencode para adicionar novos recursos ao seu projeto. Embor E peça para ele fazer as alterações. ```bash frame="none" - Parece bom! Vá em frente e faça as alterações. + Sounds good! Go ahead and make the changes. ``` --- @@ -275,7 +275,9 @@ Você pode pedir ao opencode para adicionar novos recursos ao seu projeto. Embor Para alterações mais simples, você pode pedir ao opencode para construí-las diretamente sem precisar revisar o plano primeiro. ```txt frame="none" "@packages/functions/src/settings.ts" "@packages/functions/src/notes.ts" -Precisamos adicionar autenticação à rota /settings. Dê uma olhada em como isso é tratado na rota /notes em @packages/functions/src/notes.ts e implemente a mesma lógica em @packages/functions/src/settings.ts +We need to add authentication to the /settings route. Take a look at how this is +handled in the /notes route in @packages/functions/src/notes.ts and implement +the same logic in @packages/functions/src/settings.ts ``` Você quer ter certeza de fornecer uma boa quantidade de detalhes para que o opencode faça as alterações corretas. @@ -287,7 +289,7 @@ Você quer ter certeza de fornecer uma boa quantidade de detalhes para que o ope Vamos supor que você peça ao opencode para fazer algumas alterações. ```txt frame="none" "@packages/functions/src/api/index.ts" -Você pode refatorar a função em @packages/functions/src/api/index.ts? +Can you refactor the function in @packages/functions/src/api/index.ts? ``` Mas você percebe que não era isso que você queria. Você **pode desfazer** as alterações usando o comando `/undo`. @@ -299,7 +301,7 @@ Mas você percebe que não era isso que você queria. Você **pode desfazer** as O opencode agora reverterá as alterações que você fez e mostrará sua mensagem original novamente. ```txt frame="none" "@packages/functions/src/api/index.ts" -Você pode refatorar a função em @packages/functions/src/api/index.ts? +Can you refactor the function in @packages/functions/src/api/index.ts? ``` A partir daqui, você pode ajustar o prompt e pedir ao opencode para tentar novamente. diff --git a/packages/web/src/content/docs/pt-br/lsp.mdx b/packages/web/src/content/docs/pt-br/lsp.mdx index 12cdf0ab2..9dab7555f 100644 --- a/packages/web/src/content/docs/pt-br/lsp.mdx +++ b/packages/web/src/content/docs/pt-br/lsp.mdx @@ -182,7 +182,7 @@ Você pode adicionar servidores LSP personalizados especificando o comando e as PHP Intelephense oferece recursos premium através de uma chave de licença. Você pode fornecer uma chave de licença colocando (apenas) a chave em um arquivo de texto em: -- No macOS/Linux: `$HOME/intelephense/licence.txt` -- No Windows: `%USERPROFILE%/intelephense/licence.txt` +- No macOS/Linux: `$HOME/intelephense/license.txt` +- No Windows: `%USERPROFILE%/intelephense/license.txt` O arquivo deve conter apenas a chave de licença sem conteúdo adicional. diff --git a/packages/web/src/content/docs/pt-br/mcp-servers.mdx b/packages/web/src/content/docs/pt-br/mcp-servers.mdx index 9a8673f30..597869035 100644 --- a/packages/web/src/content/docs/pt-br/mcp-servers.mdx +++ b/packages/web/src/content/docs/pt-br/mcp-servers.mdx @@ -29,11 +29,11 @@ Você pode definir servidores MCP em sua [Configuração do opencode](https://op { "$schema": "https://opencode.ai/config.json", "mcp": { - "mcp-server-name": { + "name-of-mcp-server": { // ... "enabled": true, }, - "another-mcp-server-name": { + "name-of-other-mcp-server": { // ... }, }, @@ -77,11 +77,11 @@ Adicione servidores MCP locais usando `type` como `"local"` dentro do objeto MCP "mcp": { "my-local-mcp-server": { "type": "local", - // Ou ["bun", "x", "my-mcp-command"] + // Or ["bun", "x", "my-mcp-command"] "command": ["npx", "-y", "my-mcp-command"], "enabled": true, "environment": { - "MY_ENV_VAR": "env_var_value", + "MY_ENV_VAR": "my_env_var_value", }, }, }, @@ -183,7 +183,7 @@ Para a maioria dos servidores MCP habilitados para OAuth, nenhuma configuração "mcp": { "my-oauth-server": { "type": "remote", - "url": "https://mcp.exemplo.com/mcp" + "url": "https://mcp.example.com/mcp" } } } @@ -203,9 +203,9 @@ Se você tiver credenciais de cliente do provedor do servidor MCP, pode configur "mcp": { "my-oauth-server": { "type": "remote", - "url": "https://mcp.exemplo.com/mcp", + "url": "https://mcp.example.com/mcp", "oauth": { - "clientId": "{env:MY_MCP_CLIENT_KEY}", + "clientId": "{env:MY_MCP_CLIENT_ID}", "clientSecret": "{env:MY_MCP_CLIENT_SECRET}", "scope": "tools:read tools:execute" } @@ -252,7 +252,7 @@ Se você quiser desabilitar o OAuth automático para um servidor (por exemplo, p "mcp": { "my-api-key-server": { "type": "remote", - "url": "https://mcp.exemplo.com/mcp", + "url": "https://mcp.example.com/mcp", "oauth": false, "headers": { "Authorization": "Bearer {env:MY_API_KEY}" @@ -278,10 +278,10 @@ Se você quiser desabilitar o OAuth automático para um servidor (por exemplo, p Se um servidor MCP remoto estiver falhando na autenticação, você pode diagnosticar problemas com: ```bash -# Ver status de autenticação para todos os servidores com capacidade OAuth +# View auth status for all OAuth-capable servers opencode mcp auth list -# Depurar conexão e fluxo OAuth para um servidor específico +# Debug connection and OAuth flow for a specific server opencode mcp debug my-oauth-server ``` @@ -387,7 +387,7 @@ O padrão glob usa padrões simples de regex globbing: As ferramentas do servidor MCP são registradas com o nome do servidor como prefixo, então para desabilitar todas as ferramentas de um servidor, simplesmente use: ``` -"mynome_do_servidor_mcp_*": false +"mymcpservername_*": false ``` ::: diff --git a/packages/web/src/content/docs/pt-br/modes.mdx b/packages/web/src/content/docs/pt-br/modes.mdx index 7198f6b93..0eea196d8 100644 --- a/packages/web/src/content/docs/pt-br/modes.mdx +++ b/packages/web/src/content/docs/pt-br/modes.mdx @@ -36,7 +36,7 @@ Um modo restrito projetado para planejamento e análise. No modo plan, as seguin - `patch` - Não pode aplicar patches - `bash` - Não pode executar comandos de shell -Este modo é útil quando você deseja que a IA analise o código, sugira alterações ou crie planos sem fazer modificações reais em sua base de código. +Este modo é útil quando você deseja que a AI analise o código, sugira alterações ou crie planos sem fazer modificações reais em sua base de código. --- @@ -98,14 +98,14 @@ tools: bash: false --- -Você está no modo de revisão de código. Foque em: +You are in code review mode. Focus on: -- Qualidade do código e melhores práticas -- Bugs potenciais e casos extremos -- Implicações de desempenho -- Considerações de segurança +- Code quality and best practices +- Potential bugs and edge cases +- Performance implications +- Security considerations -Forneça feedback construtivo sem fazer alterações diretas. +Provide constructive feedback without making direct changes. ``` O nome do arquivo markdown se torna o nome do modo (por exemplo, `review.md` cria um modo `review`). @@ -132,7 +132,7 @@ Use a configuração `model` para substituir o modelo padrão para este modo. Ú ### Temperatura -Controle a aleatoriedade e a criatividade das respostas da IA com a configuração `temperature`. Valores mais baixos tornam as respostas mais focadas e determinísticas, enquanto valores mais altos aumentam a criatividade e a variabilidade. +Controle a aleatoriedade e a criatividade das respostas da AI com a configuração `temperature`. Valores mais baixos tornam as respostas mais focadas e determinísticas, enquanto valores mais altos aumentam a criatividade e a variabilidade. ```json title="opencode.json" { @@ -278,17 +278,17 @@ tools: edit: false --- -Você está no modo de depuração. Seu objetivo principal é ajudar a investigar e diagnosticar problemas. +You are in debug mode. Your primary goal is to help investigate and diagnose issues. -Foque em: +Focus on: -- Compreender o problema através de uma análise cuidadosa -- Usar comandos bash para inspecionar o estado do sistema -- Ler arquivos e logs relevantes -- Pesquisar padrões e anomalias -- Fornecer explicações claras das descobertas +- Understanding the problem through careful analysis +- Using bash commands to inspect system state +- Reading relevant files and logs +- Searching for patterns and anomalies +- Providing clear explanations of findings -Não faça alterações em arquivos. Apenas investigue e relate. +Do not make any changes to files. Only investigate and report. ``` ```markdown title="~/.config/opencode/modes/refactor.md" @@ -302,15 +302,15 @@ tools: glob: true --- -Você está no modo de refatoração. Foque em melhorar a qualidade do código sem alterar a funcionalidade. +You are in refactoring mode. Focus on improving code quality without changing functionality. -Prioridades: +Priorities: -- Melhorar a legibilidade e a manutenibilidade do código -- Aplicar convenções de nomenclatura consistentes -- Reduzir a duplicação de código -- Otimizar o desempenho onde apropriado -- Garantir que todos os testes continuem passando +- Improve code readability and maintainability +- Apply consistent naming conventions +- Reduce code duplication +- Optimize performance where appropriate +- Ensure all tests continue to pass ``` --- diff --git a/packages/web/src/content/docs/pt-br/network.mdx b/packages/web/src/content/docs/pt-br/network.mdx index 48300a7b5..25052ae12 100644 --- a/packages/web/src/content/docs/pt-br/network.mdx +++ b/packages/web/src/content/docs/pt-br/network.mdx @@ -12,13 +12,13 @@ opencode suporta variáveis de ambiente de proxy padrão e certificados personal opencode respeita variáveis de ambiente de proxy padrão. ```bash -# Proxy HTTPS (recomendado) +# HTTPS proxy (recommended) export HTTPS_PROXY=https://proxy.example.com:8080 -# Proxy HTTP (se HTTPS não estiver disponível) +# HTTP proxy (if HTTPS not available) export HTTP_PROXY=http://proxy.example.com:8080 -# Ignorar proxy para servidor local (obrigatório) +# Bypass proxy for local server (required) export NO_PROXY=localhost,127.0.0.1 ``` diff --git a/packages/web/src/content/docs/pt-br/permissions.mdx b/packages/web/src/content/docs/pt-br/permissions.mdx index 5f20b0d1d..13299e576 100644 --- a/packages/web/src/content/docs/pt-br/permissions.mdx +++ b/packages/web/src/content/docs/pt-br/permissions.mdx @@ -221,7 +221,7 @@ Você também pode configurar permissões de agentes em Markdown: ```markdown title="~/.config/opencode/agents/review.md" --- -description: Revisão de código sem edições +description: Code review without edits mode: subagent permission: edit: deny @@ -229,7 +229,7 @@ permission: webfetch: deny --- -Apenas analise o código e sugira alterações. +Only analyze code and suggest changes. ``` :::tip diff --git a/packages/web/src/content/docs/pt-br/plugins.mdx b/packages/web/src/content/docs/pt-br/plugins.mdx index 99b9af819..eed62df67 100644 --- a/packages/web/src/content/docs/pt-br/plugins.mdx +++ b/packages/web/src/content/docs/pt-br/plugins.mdx @@ -104,10 +104,10 @@ export const MyPlugin = async (ctx) => { ```js title=".opencode/plugins/example.js" export const MyPlugin = async ({ project, client, $, directory, worktree }) => { - console.log("Plugin inicializado!") + console.log("Plugin initialized!") return { - // Implementações de hooks vão aqui + // Hook implementations go here } } ``` @@ -117,7 +117,7 @@ A função do plugin recebe: - `project`: As informações do projeto atual. - `directory`: O diretório de trabalho atual. - `worktree`: O caminho do worktree do git. -- `client`: Um cliente SDK do opencode para interagir com a IA. +- `client`: Um cliente SDK do opencode para interagir com a AI. - `$`: A [API shell](https://bun.com/docs/runtime/shell) do Bun para executar comandos. --- @@ -131,7 +131,7 @@ import type { Plugin } from "@opencode-ai/plugin" export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree }) => { return { - // Implementações de hooks seguras em tipo + // Type-safe hook implementations } } ``` @@ -222,7 +222,7 @@ Envie notificações quando certos eventos ocorrerem: export const NotificationPlugin = async ({ project, client, $, directory, worktree }) => { return { event: async ({ event }) => { - // Enviar notificação ao concluir a sessão + // Send notification on session completion if (event.type === "session.idle") { await $`osascript -e 'display notification "Session completed!" with title "opencode"'` } @@ -248,7 +248,7 @@ export const EnvProtection = async ({ project, client, $, directory, worktree }) return { "tool.execute.before": async (input, output) => { if (input.tool === "read" && output.args.filePath.includes(".env")) { - throw new Error("Não leia arquivos .env") + throw new Error("Do not read .env files") } }, } @@ -259,13 +259,13 @@ export const EnvProtection = async ({ project, client, $, directory, worktree }) ### Injetar variáveis de ambiente -Injete variáveis de ambiente em todas as execuções de shell (ferramentas de IA e terminais de usuário): +Injete variáveis de ambiente em todas as execuções de shell (ferramentas de AI e terminais de usuário): ```javascript title=".opencode/plugins/inject-env.js" export const InjectEnvPlugin = async () => { return { "shell.env": async (input, output) => { - output.env.MY_API_KEY = "secreto" + output.env.MY_API_KEY = "secret" output.env.PROJECT_ROOT = input.cwd }, } @@ -285,7 +285,7 @@ export const CustomToolsPlugin: Plugin = async (ctx) => { return { tool: { mytool: tool({ - description: "Esta é uma ferramenta personalizada", + description: "This is a custom tool", args: { foo: tool.schema.string(), }, @@ -319,7 +319,7 @@ export const MyPlugin = async ({ client }) => { body: { service: "my-plugin", level: "info", - message: "Plugin inicializado", + message: "Plugin initialized", extra: { foo: "bar" }, }, }) @@ -340,14 +340,14 @@ import type { Plugin } from "@opencode-ai/plugin" export const CompactionPlugin: Plugin = async (ctx) => { return { "experimental.session.compacting": async (input, output) => { - // Injetar contexto adicional no prompt de compactação + // Inject additional context into the compaction prompt output.context.push(` -## Contexto Personalizado +## Custom Context -Inclua qualquer estado que deve persistir entre as compactações: -- Status da tarefa atual -- Decisões importantes tomadas -- Arquivos sendo trabalhados ativamente +Include any state that should persist across compaction: +- Current task status +- Important decisions made +- Files being actively worked on `) }, } @@ -364,17 +364,17 @@ import type { Plugin } from "@opencode-ai/plugin" export const CustomCompactionPlugin: Plugin = async (ctx) => { return { "experimental.session.compacting": async (input, output) => { - // Substituir todo o prompt de compactação + // Replace the entire compaction prompt output.prompt = ` -Você está gerando um prompt de continuação para uma sessão de enxame multi-agente. +You are generating a continuation prompt for a multi-agent swarm session. -Resuma: -1. A tarefa atual e seu status -2. Quais arquivos estão sendo modificados e por quem -3. Quaisquer bloqueios ou dependências entre agentes -4. Os próximos passos para concluir o trabalho +Summarize: +1. The current task and its status +2. Which files are being modified and by whom +3. Any blockers or dependencies between agents +4. The next steps to complete the work -Formate como um prompt estruturado que um novo agente pode usar para retomar o trabalho. +Format as a structured prompt that a new agent can use to resume work. ` }, } diff --git a/packages/web/src/content/docs/pt-br/providers.mdx b/packages/web/src/content/docs/pt-br/providers.mdx index 572d8dc6a..c07844de8 100644 --- a/packages/web/src/content/docs/pt-br/providers.mdx +++ b/packages/web/src/content/docs/pt-br/providers.mdx @@ -65,7 +65,7 @@ Se você é novo, recomendamos começar com o OpenCode Zen. 3. Cole sua chave da API. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -104,7 +104,7 @@ Não vê um provedor aqui? Envie um PR. 3. Insira sua chave da API 302.AI. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -135,13 +135,13 @@ Para usar o Amazon Bedrock com o opencode: Defina uma dessas variáveis de ambiente ao executar o opencode: ```bash - # Opção 1: Usando chaves de acesso da AWS + # Option 1: Using AWS access keys AWS_ACCESS_KEY_ID=XXX AWS_SECRET_ACCESS_KEY=YYY opencode - # Opção 2: Usando perfil nomeado da AWS + # Option 2: Using named AWS profile AWS_PROFILE=my-profile opencode - # Opção 3: Usando token bearer do Bedrock + # Option 3: Using Bedrock bearer token AWS_BEARER_TOKEN_BEDROCK=XXX opencode ``` @@ -258,11 +258,11 @@ Para perfis de inferência personalizados, use o nome do modelo e do provedor na 2. Aqui você pode selecionar a opção **Claude Pro/Max** e isso abrirá seu navegador e pedirá para você se autenticar. ```txt - ┌ Selecionar método de autenticação + ┌ Select auth method │ │ Claude Pro/Max - │ Criar uma chave da API - │ Inserir chave da API manualmente + │ Create an API Key + │ Manually enter API Key └ ``` @@ -309,7 +309,7 @@ Se você encontrar erros "Desculpe, mas não posso ajudar com esse pedido", tent 4. Insira sua chave da API. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -356,7 +356,7 @@ Se você encontrar erros "Desculpe, mas não posso ajudar com esse pedido", tent 4. Insira sua chave da API. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -395,7 +395,7 @@ Se você encontrar erros "Desculpe, mas não posso ajudar com esse pedido", tent 3. Insira sua chave da API Baseten. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -422,7 +422,7 @@ Se você encontrar erros "Desculpe, mas não posso ajudar com esse pedido", tent 3. Insira sua chave da API Cerebras. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -445,8 +445,8 @@ O Cloudflare AI Gateway permite que você acesse modelos do OpenAI, Anthropic, W 2. Defina seu ID de Conta e ID de Gateway como variáveis de ambiente. ```bash title="~/.bash_profile" - export CLOUDFLARE_ACCOUNT_ID=seu-id-de-conta-de-32-caracteres - export CLOUDFLARE_GATEWAY_ID=seu-id-de-gateway + export CLOUDFLARE_ACCOUNT_ID=your-32-character-account-id + export CLOUDFLARE_GATEWAY_ID=your-gateway-id ``` 3. Execute o comando `/connect` e procure por **Cloudflare AI Gateway**. @@ -458,7 +458,7 @@ O Cloudflare AI Gateway permite que você acesse modelos do OpenAI, Anthropic, W 4. Insira seu token da API do Cloudflare. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -467,7 +467,7 @@ O Cloudflare AI Gateway permite que você acesse modelos do OpenAI, Anthropic, W Ou defina como uma variável de ambiente. ```bash title="~/.bash_profile" - export CLOUDFLARE_API_TOKEN=seu-token-da-api + export CLOUDFLARE_API_TOKEN=your-api-token ``` 5. Execute o comando `/models` para selecionar um modelo. @@ -507,7 +507,7 @@ O Cloudflare AI Gateway permite que você acesse modelos do OpenAI, Anthropic, W 3. Insira sua chave da API Cortecs. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -534,7 +534,7 @@ O Cloudflare AI Gateway permite que você acesse modelos do OpenAI, Anthropic, W 3. Insira sua chave da API DeepSeek. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -561,7 +561,7 @@ O Cloudflare AI Gateway permite que você acesse modelos do OpenAI, Anthropic, W 3. Insira sua chave da API Deep Infra. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -588,7 +588,7 @@ O Cloudflare AI Gateway permite que você acesse modelos do OpenAI, Anthropic, W 3. Insira sua chave da API Firmware. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -615,7 +615,7 @@ O Cloudflare AI Gateway permite que você acesse modelos do OpenAI, Anthropic, W 3. Insira sua chave da API Fireworks AI. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -642,10 +642,10 @@ GitLab Duo fornece um chat agente com suporte a ferramentas nativas através do 2. Escolha seu método de autenticação: ```txt - ┌ Selecionar método de autenticação + ┌ Select auth method │ - │ OAuth (Recomendado) - │ Token de Acesso Pessoal + │ OAuth (Recommended) + │ Personal Access Token └ ``` @@ -656,7 +656,7 @@ GitLab Duo fornece um chat agente com suporte a ferramentas nativas através do #### Usando Token de Acesso Pessoal 1. Vá para [Configurações do Usuário do GitLab > Tokens de Acesso](https://gitlab.com/-/user_settings/personal_access_tokens) 2. Clique em **Adicionar novo token** - 3. Nome: `opencode`, Escopos: `api` + 3. Nome: `OpenCode`, Escopos: `api` 4. Copie o token (começa com `glpat-`) 5. Insira-o no terminal @@ -679,7 +679,7 @@ armazenar o token no armazenamento de autenticação do opencode. ##### GitLab Auto-Hospedado :::note[nota de conformidade] -opencode usa um pequeno modelo para algumas tarefas de IA, como gerar o título da sessão. +opencode usa um pequeno modelo para algumas tarefas de AI, como gerar o título da sessão. Ele está configurado para usar gpt-5-nano por padrão, hospedado pela Zen. Para bloquear o opencode para usar apenas sua própria instância hospedada do GitLab, adicione o seguinte ao seu arquivo `opencode.json`. Também é recomendado desativar o compartilhamento de sessões. @@ -737,7 +737,7 @@ URL de callback `http://127.0.0.1:8080/callback` e os seguintes escopos: Em seguida, exponha o ID do aplicativo como variável de ambiente: ```bash -export GITLAB_OAUTH_CLIENT_ID=seu_id_do_aplicativo_aqui +export GITLAB_OAUTH_CLIENT_ID=your_application_id_here ``` Mais documentação na página [opencode-gitlab-auth](https://www.npmjs.com/package/@gitlab/opencode-gitlab-auth). @@ -797,13 +797,13 @@ Alguns modelos precisam ser habilitados manualmente nas suas [configurações do 2. Navegue até [github.com/login/device](https://github.com/login/device) e insira o código. ```txt - ┌ Login com GitHub Copilot + ┌ Login with GitHub Copilot │ │ https://github.com/login/device │ - │ Insira o código: 8F43-6FCF + │ Enter code: 8F43-6FCF │ - └ Aguardando autorização... + └ Waiting for authorization... ``` 3. Agora execute o comando `/models` para selecionar o modelo que você deseja. @@ -835,14 +835,14 @@ Para usar o Google Vertex AI com o opencode: Defina-as ao executar o opencode. ```bash - GOOGLE_APPLICATION_CREDENTIALS=/caminho/para/service-account.json GOOGLE_CLOUD_PROJECT=seu-id-do-projeto opencode + GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json GOOGLE_CLOUD_PROJECT=your-project-id opencode ``` Ou adicione-as ao seu perfil bash. ```bash title="~/.bash_profile" - export GOOGLE_APPLICATION_CREDENTIALS=/caminho/para/service-account.json - export GOOGLE_CLOUD_PROJECT=seu-id-do-projeto + export GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json + export GOOGLE_CLOUD_PROJECT=your-project-id export VERTEX_LOCATION=global ``` @@ -871,7 +871,7 @@ A região `global` melhora a disponibilidade e reduz erros sem custo adicional. 3. Insira a chave da API para o provedor. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -900,7 +900,7 @@ A região `global` melhora a disponibilidade e reduz erros sem custo adicional. 3. Insira seu token do Hugging Face. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -916,7 +916,7 @@ A região `global` melhora a disponibilidade e reduz erros sem custo adicional. ### Helicone -[Helicone](https://helicone.ai) é uma plataforma de observabilidade LLM que fornece registro, monitoramento e análises para suas aplicações de IA. O Helicone AI Gateway roteia suas solicitações para o provedor apropriado automaticamente com base no modelo. +[Helicone](https://helicone.ai) é uma plataforma de observabilidade LLM que fornece registro, monitoramento e análises para suas aplicações de AI. O Helicone AI Gateway roteia suas solicitações para o provedor apropriado automaticamente com base no modelo. 1. Acesse [Helicone](https://helicone.ai), crie uma conta e gere uma chave da API a partir do seu painel. @@ -929,7 +929,7 @@ A região `global` melhora a disponibilidade e reduz erros sem custo adicional. 3. Insira sua chave da API Helicone. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -961,8 +961,8 @@ Aqui está o [Diretório de Modelos do Helicone](https://helicone.ai/models), vo }, "models": { "gpt-4o": { - // ID do modelo (da página do diretório de modelos do Helicone) - "name": "GPT-4o", // Seu próprio nome personalizado para o modelo + // Model ID (from Helicone's model directory page) + "name": "GPT-4o", // Your own custom name for the model }, "claude-sonnet-4-20250514": { "name": "Claude Sonnet 4", @@ -1080,7 +1080,7 @@ IO.NET oferece 17 modelos otimizados para vários casos de uso: 3. Insira sua chave da API IO.NET. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -1143,7 +1143,7 @@ Para usar Kimi K2 do Moonshot AI: 3. Insira sua chave da API Moonshot. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -1170,7 +1170,7 @@ Para usar Kimi K2 do Moonshot AI: 3. Insira sua chave da API MiniMax. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -1197,7 +1197,7 @@ Para usar Kimi K2 do Moonshot AI: 3. Insira sua chave da API Nebius Token Factory. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -1272,7 +1272,7 @@ Para usar o Ollama Cloud com o opencode: 5. Insira sua chave da API do Ollama Cloud. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -1305,10 +1305,10 @@ Recomendamos se inscrever para [ChatGPT Plus ou Pro](https://chatgpt.com/pricing 2. Aqui você pode selecionar a opção **ChatGPT Plus/Pro** e isso abrirá seu navegador e pedirá para você se autenticar. ```txt - ┌ Selecionar método de autenticação + ┌ Select auth method │ │ ChatGPT Plus/Pro - │ Inserir chave da API manualmente + │ Manually enter API Key └ ``` @@ -1339,7 +1339,7 @@ OpenCode Zen é uma lista de modelos testados e verificados fornecidos pela equi 3. Insira sua chave da API do opencode. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -1366,7 +1366,7 @@ OpenCode Zen é uma lista de modelos testados e verificados fornecidos pela equi 3. Insira a chave da API para o provedor. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -1436,7 +1436,7 @@ SAP AI Core fornece acesso a mais de 40 modelos do OpenAI, Anthropic, Google, Am 3. Insira seu JSON da chave de serviço. ```txt - ┌ Chave de serviço + ┌ Service key │ │ └ enter @@ -1457,7 +1457,7 @@ SAP AI Core fornece acesso a mais de 40 modelos do OpenAI, Anthropic, Google, Am 4. Opcionalmente, defina o ID de implantação e o grupo de recursos: ```bash - AICORE_DEPLOYMENT_ID=seu-id-de-implantação AICORE_RESOURCE_GROUP=seu-grupo-de-recursos opencode + AICORE_DEPLOYMENT_ID=your-deployment-id AICORE_RESOURCE_GROUP=your-resource-group opencode ``` :::note @@ -1474,7 +1474,7 @@ SAP AI Core fornece acesso a mais de 40 modelos do OpenAI, Anthropic, Google, Am ### OVHcloud AI Endpoints -1. Acesse o [painel OVHcloud](https://ovh.com/manager). Navegue até a seção `Public Cloud`, `AI & Machine Learning` > `Endpoints de IA` e na aba `API Keys`, clique em **Criar uma nova chave da API**. +1. Acesse o [painel OVHcloud](https://ovh.com/manager). Navegue até a seção `Public Cloud`, `AI & Machine Learning` > `AI Endpoints` e na aba `API Keys`, clique em **Criar uma nova chave da API**. 2. Execute o comando `/connect` e procure por **OVHcloud AI Endpoints**. @@ -1485,7 +1485,7 @@ SAP AI Core fornece acesso a mais de 40 modelos do OpenAI, Anthropic, Google, Am 3. Insira sua chave da API OVHcloud AI Endpoints. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -1514,7 +1514,7 @@ Para usar [APIs Generativas Scaleway](https://www.scaleway.com/en/docs/generativ 3. Insira sua chave da API Scaleway. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -1541,7 +1541,7 @@ Para usar [APIs Generativas Scaleway](https://www.scaleway.com/en/docs/generativ 3. Insira sua chave da API Together AI. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -1568,7 +1568,7 @@ Para usar [APIs Generativas Scaleway](https://www.scaleway.com/en/docs/generativ 3. Insira sua chave da API Venice AI. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -1597,7 +1597,7 @@ O Vercel AI Gateway permite que você acesse modelos do OpenAI, Anthropic, Googl 3. Insira sua chave da API do Vercel AI Gateway. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -1651,7 +1651,7 @@ Algumas opções de roteamento úteis: 3. Insira sua chave da API xAI. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -1680,7 +1680,7 @@ Algumas opções de roteamento úteis: 3. Insira sua chave da API Z.AI. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -1707,7 +1707,7 @@ Algumas opções de roteamento úteis: 3. Insira a chave da API para o provedor. ```txt - ┌ Chave da API + ┌ API key │ │ └ enter @@ -1741,7 +1741,7 @@ Algumas opções de roteamento úteis: Para adicionar qualquer provedor **compatível com OpenAI** que não esteja listado no comando `/connect`: :::tip -Você pode usar qualquer provedor compatível com OpenAI com o opencode. A maioria dos provedores de IA modernos oferece APIs compatíveis com OpenAI. +Você pode usar qualquer provedor compatível com OpenAI com o opencode. A maioria dos provedores de AI modernos oferece APIs compatíveis com OpenAI. ::: 1. Execute o comando `/connect` e role para baixo até **Outro**. @@ -1749,11 +1749,11 @@ Você pode usar qualquer provedor compatível com OpenAI com o opencode. A maior ```bash $ /connect - ┌ Adicionar credencial + ┌ Add credential │ - ◆ Selecionar provedor + ◆ Select provider │ ... - │ ● Outro + │ ● Other └ ``` @@ -1762,9 +1762,9 @@ Você pode usar qualquer provedor compatível com OpenAI com o opencode. A maior ```bash $ /connect - ┌ Adicionar credencial + ┌ Add credential │ - ◇ Insira o id do provedor + ◇ Enter provider id │ myprovider └ ``` @@ -1778,11 +1778,11 @@ Você pode usar qualquer provedor compatível com OpenAI com o opencode. A maior ```bash $ /connect - ┌ Adicionar credencial + ┌ Add credential │ - ▲ Isso apenas armazena uma credencial para myprovider - você precisará configurá-la no opencode.json, verifique a documentação para exemplos. + ▲ This only stores a credential for myprovider - you will need to configure it in opencode.json, check the docs for examples. │ - ◇ Insira sua chave da API + ◇ Enter your API key │ sk-... └ ``` @@ -1795,13 +1795,13 @@ Você pode usar qualquer provedor compatível com OpenAI com o opencode. A maior "provider": { "myprovider": { "npm": "@ai-sdk/openai-compatible", - "name": "Nome de Exibição do Meu Provedor de IA", + "name": "My AI ProviderDisplay Name", "options": { "baseURL": "https://api.myprovider.com/v1" }, "models": { "my-model-name": { - "name": "Nome de Exibição do Meu Modelo" + "name": "My Model Display Name" } } } @@ -1810,7 +1810,7 @@ Você pode usar qualquer provedor compatível com OpenAI com o opencode. A maior ``` Aqui estão as opções de configuração: - - **npm**: Pacote do SDK de IA a ser usado, `@ai-sdk/openai-compatible` para provedores compatíveis com OpenAI + - **npm**: Pacote do SDK de AI a ser usado, `@ai-sdk/openai-compatible` para provedores compatíveis com OpenAI - **name**: Nome de exibição na interface do usuário. - **models**: Modelos disponíveis. - **options.baseURL**: URL do endpoint da API. @@ -1833,7 +1833,7 @@ Aqui está um exemplo definindo as opções `apiKey`, `headers` e `limit` do mod "provider": { "myprovider": { "npm": "@ai-sdk/openai-compatible", - "name": "Nome de Exibição do Meu Provedor de IA", + "name": "My AI ProviderDisplay Name", "options": { "baseURL": "https://api.myprovider.com/v1", "apiKey": "{env:ANTHROPIC_API_KEY}", @@ -1843,7 +1843,7 @@ Aqui está um exemplo definindo as opções `apiKey`, `headers` e `limit` do mod }, "models": { "my-model-name": { - "name": "Nome de Exibição do Meu Modelo", + "name": "My Model Display Name", "limit": { "context": 200000, "output": 65536 diff --git a/packages/web/src/content/docs/pt-br/rules.mdx b/packages/web/src/content/docs/pt-br/rules.mdx index 9d60753dd..3b0a1eda2 100644 --- a/packages/web/src/content/docs/pt-br/rules.mdx +++ b/packages/web/src/content/docs/pt-br/rules.mdx @@ -26,26 +26,26 @@ Se você já tiver um arquivo `AGENTS.md` existente, isso tentará adicionar a e Você também pode criar este arquivo manualmente. Aqui está um exemplo de algumas coisas que você pode colocar em um arquivo `AGENTS.md`. ```markdown title="AGENTS.md" -# Projeto Monorepo SST v3 +# SST v3 Monorepo Project -Este é um monorepo SST v3 com TypeScript. O projeto usa bun workspaces para gerenciamento de pacotes. +This is an SST v3 monorepo with TypeScript. The project uses bun workspaces for package management. -## Estrutura do Projeto +## Project Structure -- `packages/` - Contém todos os pacotes do workspace (funções, núcleo, web, etc.) -- `infra/` - Definições de infraestrutura divididas por serviço (storage.ts, api.ts, web.ts) -- `sst.config.ts` - Configuração principal do SST com imports dinâmicos +- `packages/` - Contains all workspace packages (functions, core, web, etc.) +- `infra/` - Infrastructure definitions split by service (storage.ts, api.ts, web.ts) +- `sst.config.ts` - Main SST configuration with dynamic imports -## Padrões de Código +## Code Standards -- Use TypeScript com o modo estrito habilitado -- O código compartilhado vai em `packages/core/` com a configuração de exports adequada -- Funções vão em `packages/functions/` -- A infraestrutura deve ser dividida em arquivos lógicos em `infra/` +- Use TypeScript with strict mode enabled +- Shared code goes in `packages/core/` with proper exports configuration +- Functions go in `packages/functions/` +- Infrastructure should be split into logical files in `infra/` -## Convenções de Monorepo +## Monorepo Conventions -- Importe módulos compartilhados usando nomes de workspace: `@my-app/core/example` +- Import shared modules using workspace names: `@my-app/core/example` ``` Estamos adicionando instruções específicas do projeto aqui e isso será compartilhado entre sua equipe. @@ -77,9 +77,9 @@ Para usuários migrando do Claude Code, o opencode suporta as convenções de ar Para desabilitar a compatibilidade com Claude Code, defina uma dessas variáveis de ambiente: ```bash -export OPENCODE_DISABLE_CLAUDE_CODE=1 # Desabilitar todo suporte a .claude -export OPENCODE_DISABLE_CLAUDE_CODE_PROMPT=1 # Desabilitar apenas ~/.claude/CLAUDE.md -export OPENCODE_DISABLE_CLAUDE_CODE_SKILLS=1 # Desabilitar apenas .claude/skills +export OPENCODE_DISABLE_CLAUDE_CODE=1 # Disable all .claude support +export OPENCODE_DISABLE_CLAUDE_CODE_PROMPT=1 # Disable only ~/.claude/CLAUDE.md +export OPENCODE_DISABLE_CLAUDE_CODE_SKILLS=1 # Disable only .claude/skills ``` --- @@ -144,28 +144,28 @@ A abordagem recomendada é usar o campo `instructions` em `opencode.json`: Você pode ensinar o opencode a ler arquivos externos fornecendo instruções explícitas em seu `AGENTS.md`. Aqui está um exemplo prático: ```markdown title="AGENTS.md" -# Regras do Projeto TypeScript +# TypeScript Project Rules -## Carregamento de Arquivos Externos +## External File Loading -CRÍTICO: Quando você encontrar uma referência de arquivo (por exemplo, @rules/general.md), use sua ferramenta de Leitura para carregá-lo conforme necessário. Eles são relevantes para a TAREFA ESPECÍFICA em questão. +CRITICAL: When you encounter a file reference (e.g., @rules/general.md), use your Read tool to load it on a need-to-know basis. They're relevant to the SPECIFIC task at hand. -Instruções: +Instructions: -- NÃO carregue todas as referências de forma preemptiva - use carregamento sob demanda com base na necessidade real -- Quando carregado, trate o conteúdo como instruções obrigatórias que substituem os padrões -- Siga referências recursivamente quando necessário +- Do NOT preemptively load all references - use lazy loading based on actual need +- When loaded, treat content as mandatory instructions that override defaults +- Follow references recursively when needed -## Diretrizes de Desenvolvimento +## Development Guidelines -Para estilo de código TypeScript e melhores práticas: @docs/typescript-guidelines.md -Para arquitetura de componentes React e padrões de hooks: @docs/react-patterns.md -Para design de API REST e tratamento de erros: @docs/api-standards.md -Para estratégias de teste e requisitos de cobertura: @test/testing-guidelines.md +For TypeScript code style and best practices: @docs/typescript-guidelines.md +For React component architecture and hooks patterns: @docs/react-patterns.md +For REST API design and error handling: @docs/api-standards.md +For testing strategies and coverage requirements: @test/testing-guidelines.md -## Diretrizes Gerais +## General Guidelines -Leia o seguinte arquivo imediatamente, pois é relevante para todos os fluxos de trabalho: @rules/general-guidelines.md. +Read the following file immediately as it's relevant to all workflows: @rules/general-guidelines.md. ``` Essa abordagem permite que você: diff --git a/packages/web/src/content/docs/pt-br/sdk.mdx b/packages/web/src/content/docs/pt-br/sdk.mdx index 64533d4b8..672b852f6 100644 --- a/packages/web/src/content/docs/pt-br/sdk.mdx +++ b/packages/web/src/content/docs/pt-br/sdk.mdx @@ -111,7 +111,7 @@ O SDK pode lançar erros que você pode capturar e tratar: try { await client.session.get({ path: { id: "invalid-id" } }) } catch (error) { - console.error("Falha ao obter a sessão:", (error as Error).message) + console.error("Failed to get session:", (error as Error).message) } ``` @@ -152,16 +152,16 @@ console.log(health.data.version) #### Exemplos ```javascript -// Escrever uma entrada de log +// Write a log entry await client.app.log({ body: { service: "my-app", level: "info", - message: "Operação concluída", + message: "Operation completed", }, }) -// Listar agentes disponíveis +// List available agents const agents = await client.app.agents() ``` @@ -179,10 +179,10 @@ const agents = await client.app.agents() #### Exemplos ```javascript -// Listar todos os projetos +// List all projects const projects = await client.project.list() -// Obter projeto atual +// Get current project const currentProject = await client.project.current() ``` @@ -199,7 +199,7 @@ const currentProject = await client.project.current() #### Exemplos ```javascript -// Obter informações do caminho atual +// Get current path information const pathInfo = await client.path.get() ``` @@ -241,7 +241,7 @@ const { providers, default: defaults } = await client.config.providers() | `session.summarize({ path, body })` | Resumir sessão | Retorna `boolean` | | `session.messages({ path })` | Listar mensagens em uma sessão | Retorna `{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}[]` | | `session.message({ path })` | Obter detalhes da mensagem | Retorna `{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` | -| `session.prompt({ path, body })` | Enviar mensagem de prompt | `body.noReply: true` retorna UserMessage (apenas contexto). O padrão retorna <a href={typesUrl}><code>AssistantMessage</code></a> com resposta da IA | +| `session.prompt({ path, body })` | Enviar mensagem de prompt | `body.noReply: true` retorna UserMessage (apenas contexto). O padrão retorna <a href={typesUrl}><code>AssistantMessage</code></a> com resposta da AI | | `session.command({ path, body })` | Enviar comando para a sessão | Retorna `{ info: `<a href={typesUrl}><code>AssistantMessage</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` | | `session.shell({ path, body })` | Executar um comando shell | Retorna <a href={typesUrl}><code>AssistantMessage</code></a> | | `session.revert({ path, body })` | Reverter uma mensagem | Retorna <a href={typesUrl}><code>Session</code></a> | @@ -253,28 +253,28 @@ const { providers, default: defaults } = await client.config.providers() #### Exemplos ```javascript -// Criar e gerenciar sessões +// Create and manage sessions const session = await client.session.create({ - body: { title: "Minha sessão" }, + body: { title: "My session" }, }) const sessions = await client.session.list() -// Enviar uma mensagem de prompt +// Send a prompt message const result = await client.session.prompt({ path: { id: session.id }, body: { model: { providerID: "anthropic", modelID: "claude-3-5-sonnet-20241022" }, - parts: [{ type: "text", text: "Olá!" }], + parts: [{ type: "text", text: "Hello!" }], }, }) -// Injetar contexto sem acionar resposta da IA (útil para plugins) +// Inject context without triggering AI response (useful for plugins) await client.session.prompt({ path: { id: session.id }, body: { noReply: true, - parts: [{ type: "text", text: "Você é um assistente útil." }], + parts: [{ type: "text", text: "You are a helpful assistant." }], }, }) ``` @@ -302,7 +302,7 @@ await client.session.prompt({ #### Exemplos ```javascript -// Pesquisar e ler arquivos +// Search and read files const textResults = await client.find.text({ query: { pattern: "function.*opencode" }, }) @@ -341,13 +341,13 @@ const content = await client.file.read({ #### Exemplos ```javascript -// Controlar a interface TUI +// Control TUI interface await client.tui.appendPrompt({ - body: { text: "Adicione isso ao prompt" }, + body: { text: "Add this to prompt" }, }) await client.tui.showToast({ - body: { message: "Tarefa concluída", variant: "success" }, + body: { message: "Task completed", variant: "success" }, }) ``` @@ -366,7 +366,7 @@ await client.tui.showToast({ ```javascript await client.auth.set({ path: { id: "anthropic" }, - body: { type: "api", key: "sua-chave-api" }, + body: { type: "api", key: "your-api-key" }, }) ``` @@ -383,9 +383,9 @@ await client.auth.set({ #### Exemplos ```javascript -// Ouvir eventos em tempo real +// Listen to real-time events const events = await client.event.subscribe() for await (const event of events.stream) { - console.log("Evento:", event.type, event.properties) + console.log("Event:", event.type, event.properties) } ``` diff --git a/packages/web/src/content/docs/pt-br/server.mdx b/packages/web/src/content/docs/pt-br/server.mdx index 12ebde7ab..6d2e9eb38 100644 --- a/packages/web/src/content/docs/pt-br/server.mdx +++ b/packages/web/src/content/docs/pt-br/server.mdx @@ -13,7 +13,7 @@ O comando `opencode serve` executa um servidor HTTP sem cabeça que expõe um en ### Uso ```bash -opencode serve [--port <número>] [--hostname <string>] [--cors <origem>] +opencode serve [--port <number>] [--hostname <string>] [--cors <origin>] ``` #### Opções @@ -39,7 +39,7 @@ opencode serve --cors http://localhost:5173 --cors https://app.example.com Defina `OPENCODE_SERVER_PASSWORD` para proteger o servidor com autenticação básica HTTP. O nome de usuário padrão é `opencode`, ou defina `OPENCODE_SERVER_USERNAME` para substituí-lo. Isso se aplica tanto ao `opencode serve` quanto ao `opencode web`. ```bash -OPENCODE_SERVER_PASSWORD=sua-senha opencode serve +OPENCODE_SERVER_PASSWORD=your-password opencode serve ``` --- diff --git a/packages/web/src/content/docs/pt-br/skills.mdx b/packages/web/src/content/docs/pt-br/skills.mdx index 4532ac04e..23a4497ed 100644 --- a/packages/web/src/content/docs/pt-br/skills.mdx +++ b/packages/web/src/content/docs/pt-br/skills.mdx @@ -78,24 +78,24 @@ Crie `.opencode/skills/git-release/SKILL.md` assim: ```markdown --- name: git-release -description: Crie lançamentos e changelogs consistentes +description: Create consistent releases and changelogs license: MIT compatibility: opencode metadata: - audience: mantenedores + audience: maintainers workflow: github --- -## O que eu faço +## What I do -- Redigir notas de lançamento a partir de PRs mesclados -- Propor um aumento de versão -- Fornecer um comando `gh release create` copiável e colável +- Draft release notes from merged PRs +- Propose a version bump +- Provide a copy-pasteable `gh release create` command -## Quando me usar +## When to use me -Use isso quando estiver preparando um lançamento marcado. -Faça perguntas esclarecedoras se o esquema de versionamento alvo não estiver claro. +Use this when you are preparing a tagged release. +Ask clarifying questions if the target versioning scheme is unclear. ``` --- @@ -109,7 +109,7 @@ Cada entrada inclui o nome e a descrição da habilidade: <available_skills> <skill> <name>git-release</name> - <description>Crie lançamentos e changelogs consistentes</description> + <description>Create consistent releases and changelogs</description> </skill> </available_skills> ``` diff --git a/packages/web/src/content/docs/pt-br/troubleshooting.mdx b/packages/web/src/content/docs/pt-br/troubleshooting.mdx index a4d0f0878..2d0009243 100644 --- a/packages/web/src/content/docs/pt-br/troubleshooting.mdx +++ b/packages/web/src/content/docs/pt-br/troubleshooting.mdx @@ -45,7 +45,7 @@ opencode Desktop executa um servidor opencode local (o sidecar `opencode-cli`) e - Saia completamente do aplicativo e reinicie-o. - Se o aplicativo mostrar uma tela de erro, clique em **Reiniciar** e copie os detalhes do erro. -- Apenas macOS: menu `opencode` -> **Recarregar Webview** (ajuda se a interface estiver em branco/congelada). +- Apenas macOS: menu `OpenCode` -> **Recarregar Webview** (ajuda se a interface estiver em branco/congelada). --- @@ -277,7 +277,7 @@ Usuários do Linux precisam ter um dos seguintes utilitários de área de transf ```bash apt install -y xclip -# ou +# or apt install -y xsel ``` @@ -291,7 +291,7 @@ apt install -y wl-clipboard ```bash apt install -y xvfb -# e execute: +# and run: Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 & export DISPLAY=:99.0 ``` diff --git a/packages/web/src/content/docs/pt-br/tui.mdx b/packages/web/src/content/docs/pt-br/tui.mdx index d3d5c7736..3199c842c 100644 --- a/packages/web/src/content/docs/pt-br/tui.mdx +++ b/packages/web/src/content/docs/pt-br/tui.mdx @@ -16,13 +16,13 @@ opencode Ou você pode iniciá-lo para um diretório de trabalho específico. ```bash -opencode /caminho/para/projeto +opencode /path/to/project ``` Uma vez que você esteja no TUI, você pode solicitar com uma mensagem. ```text -Me dê um resumo rápido da base de código. +Give me a quick summary of the codebase. ``` --- @@ -36,7 +36,7 @@ Você também pode usar `@` para referenciar arquivos em suas mensagens. ::: ```text "@packages/functions/src/api/index.ts" -Como a autenticação é tratada em @packages/functions/src/api/index.ts? +How is auth handled in @packages/functions/src/api/index.ts? ``` O conteúdo do arquivo é adicionado à conversa automaticamente. @@ -290,12 +290,12 @@ Tanto os comandos `/editor` quanto `/export` usam o editor especificado na sua v <Tabs> <TabItem label="Linux/macOS"> ```bash - # Exemplo para nano ou vim + # Example for nano or vim export EDITOR=nano export EDITOR=vim - # Para editores GUI, VS Code, Cursor, VSCodium, Windsurf, Zed, etc. - # inclua --wait + # For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc. + # include --wait export EDITOR="code --wait" ``` @@ -308,8 +308,8 @@ Tanto os comandos `/editor` quanto `/export` usam o editor especificado na sua v ```bash set EDITOR=notepad - # Para editores GUI, VS Code, Cursor, VSCodium, Windsurf, Zed, etc. - # inclua --wait + # For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc. + # include --wait set EDITOR=code --wait ``` @@ -321,8 +321,8 @@ Tanto os comandos `/editor` quanto `/export` usam o editor especificado na sua v ```powershell $env:EDITOR = "notepad" - # Para editores GUI, VS Code, Cursor, VSCodium, Windsurf, Zed, etc. - # inclua --wait + # For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc. + # include --wait $env:EDITOR = "code --wait" ``` diff --git a/packages/web/src/content/docs/pt-br/web.mdx b/packages/web/src/content/docs/pt-br/web.mdx index 621dfdcec..3382c700a 100644 --- a/packages/web/src/content/docs/pt-br/web.mdx +++ b/packages/web/src/content/docs/pt-br/web.mdx @@ -3,7 +3,7 @@ title: Web description: Usando opencode no seu navegador. --- -opencode pode ser executado como uma aplicação web no seu navegador, proporcionando a mesma poderosa experiência de codificação com IA sem precisar de um terminal. +opencode pode ser executado como uma aplicação web no seu navegador, proporcionando a mesma poderosa experiência de codificação com AI sem precisar de um terminal.  @@ -50,8 +50,8 @@ opencode web --hostname 0.0.0.0 Ao usar `0.0.0.0`, o opencode exibirá endereços locais e de rede: ``` - Acesso local: http://localhost:4096 - Acesso à rede: http://192.168.1.100:4096 + Local access: http://localhost:4096 + Network access: http://192.168.1.100:4096 ``` ### Descoberta mDNS @@ -113,10 +113,10 @@ Clique em "Ver Servidores" para visualizar os servidores conectados e seu status Você pode anexar um terminal TUI a um servidor web em execução: ```bash -# Inicie o servidor web +# Start the web server opencode web --port 4096 -# Em outro terminal, anexe o TUI +# In another terminal, attach the TUI opencode attach http://localhost:4096 ``` diff --git a/packages/web/src/content/docs/pt-br/zen.mdx b/packages/web/src/content/docs/pt-br/zen.mdx index 7acd2dd22..c472cf60f 100644 --- a/packages/web/src/content/docs/pt-br/zen.mdx +++ b/packages/web/src/content/docs/pt-br/zen.mdx @@ -33,7 +33,7 @@ Para resolver isso, fizemos algumas coisas: 2. Trabalhamos com alguns provedores para garantir que esses modelos estivessem sendo servidos corretamente. 3. Finalmente, realizamos benchmarks da combinação modelo/provedor e elaboramos uma lista que nos sentimos bem em recomendar. -OpenCode Zen é um gateway de IA que lhe dá acesso a esses modelos. +OpenCode Zen é um gateway de AI que lhe dá acesso a esses modelos. --- |
