---
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 Web - Nova Sessão](../../../assets/web/web-homepage-new-session.png)

## Começando

Inicie a interface web executando:

```bash
opencode web
```

Isso inicia um servidor local em `127.0.0.1` com uma porta aleatória disponível e abre automaticamente o opencode no seu navegador padrão.

:::caution
Se `OPENCODE_SERVER_PASSWORD` não estiver definido, o servidor ficará sem segurança. Isso é aceitável para uso local, mas deve ser configurado para acesso à rede.
:::

:::tip[Usuários do Windows]
Para a melhor experiência, execute `opencode web` a partir do [WSL](/docs/windows-wsl) em vez do PowerShell. Isso garante acesso adequado ao sistema de arquivos e integração com o terminal.
:::

---

## Configuração

Você pode configurar o servidor web usando flags de linha de comando ou no seu [arquivo de configuração](/docs/config).

### Porta

Por padrão, o opencode escolhe uma porta disponível. Você pode especificar uma porta:

```bash
opencode web --port 4096
```

### Nome do Host

Por padrão, o servidor se vincula a `127.0.0.1` (apenas localhost). Para tornar o opencode acessível na sua rede:

```bash
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
```

### Descoberta mDNS

Ative o mDNS para tornar seu servidor descobrível na rede local:

```bash
opencode web --mdns
```

Isso define automaticamente o nome do host como `0.0.0.0` e anuncia o servidor como `opencode.local`.

Você pode personalizar o nome de domínio mDNS para executar várias instâncias na mesma rede:

```bash
opencode web --mdns --mdns-domain myproject.local
```

### CORS

Para permitir domínios adicionais para CORS (útil para frontends personalizados):

```bash
opencode web --cors https://example.com
```

### Autenticação

Para proteger o acesso, defina uma senha usando a variável de ambiente `OPENCODE_SERVER_PASSWORD`:

```bash
OPENCODE_SERVER_PASSWORD=secret opencode web
```

O nome de usuário padrão é `opencode`, mas pode ser alterado com `OPENCODE_SERVER_USERNAME`.

---

## Usando a Interface Web

Uma vez iniciada, a interface web fornece acesso às suas sessões do opencode.

### Sessões

Visualize e gerencie suas sessões a partir da página inicial. Você pode ver sessões ativas e iniciar novas.

![opencode Web - Sessão Ativa](../../../assets/web/web-homepage-active-session.png)

### Status do Servidor

Clique em "Ver Servidores" para visualizar os servidores conectados e seu status.

![opencode Web - Ver Servidores](../../../assets/web/web-homepage-see-servers.png)

---

## Anexando um Terminal

Você pode anexar um terminal TUI a um servidor web em execução:

```bash
# Inicie o servidor web
opencode web --port 4096

# Em outro terminal, anexe o TUI
opencode attach http://localhost:4096
```

Isso permite que você use tanto a interface web quanto o terminal simultaneamente, compartilhando as mesmas sessões e estado.

---

## Arquivo de Configuração

Você também pode configurar as configurações do servidor no seu arquivo de configuração `opencode.json`:

```json
{
  "server": {
    "port": 4096,
    "hostname": "0.0.0.0",
    "mdns": true,
    "cors": ["https://example.com"]
  }
}
```

As flags de linha de comando têm precedência sobre as configurações do arquivo de configuração.
