MVCODEDocsv2026.7 · devAbrir o app
Docs/Configuração e automação/Configuração

Um arquivo,
todo o contrato.

O maxvision-code.json declara como o agente se comporta: modelos, permissões, ferramentas, agentes e integrações. Versionável, mesclável por escopo e validado por schema.

Disponível agoraReferência /config1 min de leitura

01Formato

JSON ou JSONC (com comentários). O schema dá validação e autocomplete no editor:

maxvision-code.jsoncjsonc
{
  "$schema": "https://opencode.ai/config.json",
  "model": "anthropic/claude-sonnet-4-5",
  "autoupdate": true,
  "server": { "port": 4096 }
}

Ajustes visuais da TUI vivem em um arquivo separado, tui.json — veja TUI.

02Onde a config mora

As fontes são mescladas, não substituídas: chaves em conflito seguem a precedência; o resto convive. Da base para o topo:

#FonteUso típico
1Config remota (.well-known)Defaults da organização, buscados na autenticação.
2Global ~/.config/<dir>/Preferências do usuário — provedores, modelo, permissões.
3Custom MVCODE_CONFIGOverrides apontados por env.
4Projeto ./maxvision-code.jsonRegras do repositório — versione no Git.
5Diretórios .maxvision-code/Agents, commands, plugins, skills, tools, themes do projeto.
6Inline MVCODE_CONFIG_CONTENTOverrides de runtime — CI e automação.
7Config gerenciadaArquivos em diretório de admin — usuários não sobrepõem.
8Preferências MDM (macOS)Frotas corporativas via .mobileconfig — prioridade máxima.

Na inicialização, o MVCode procura config no diretório atual e sobe até o repositório Git mais próximo. MVCODE_CONFIG_DIR aponta um diretório extra com a mesma estrutura de .maxvision-code/. Config gerenciada e MDM estão detalhadas em enterprise.

03Mapa de chaves

As chaves do runtime, com a página que aprofunda cada uma:

ChaveControlaDocs
model · small_modelModelo principal e o leve (títulos, resumos).Modelos
providerEndpoints, opções, modelos e variantes por provedor.Provedores
disabled_providers · enabled_providersBlocklist e allowlist de provedores (deny vence).Provedores
agent · default_agentAgentes customizados e o primário padrão.Agentes
permissionallow / ask / deny por ferramenta e recurso.Permissões
toolsHabilita e desabilita ferramentas do agente.Ferramentas
commandComandos /personalizados com template.Comandos
instructionsArquivos de regras extras (globs aceitos).Regras
mcpServidores MCP locais e remotos.MCP
pluginPlugins via npm; arquivos em .maxvision-code/plugins/.Plugins
skillsFontes de descoberta de skills (paths e URLs).Skills
connectorsRuntimes externos tipados. ImplementadoConnectors
formatterFormatação pós-edição, built-ins e customizados.Formatadores
lspServidores de linguagem por linguagem.LSP
sharemanual · auto · disabled.Share
serverport, hostname, mdns, mdnsDomain, cors.Servidor
network · offlinePolítica de egress e bundle offline. ImplementadoRede
experimental.policiesRegras allow/deny sobre recursos (ex.: provider.use).Policies

Comportamento do runtime

shellstringauto por SO

Shell do terminal interativo e das tool calls — nome curto (pwsh, zsh) ou caminho absoluto.

snapshotbooleantrue

Snapshots por mudança habilitam /undo e /redo. Desligue em monorepos gigantes se a indexação pesar — perdendo o rollback pela UI.

autoupdateboolean · "notify"true

Atualização automática na inicialização; "notify" só avisa. Frotas gerenciadas preferem fixar versão via policies.

compactionobjetoauto: true

auto compacta quando o contexto enche · prune descarta saídas antigas de ferramenta · reserved reserva janela para a própria compactação.

watcher.ignoreglob[]

Exclui diretórios ruidosos do file watcher — node_modules/**, dist/**.

attachment.imageobjeto2000×2000 · 5 MB

Normalização de imagens anexadas: auto_resize, max_width, max_height, max_base64_bytes.

04Variáveis na config

Dois mecanismos de substituição mantêm segredo fora do arquivo:

maxvision-code.jsonjson
{
  "model": "{env:MVCODE_MODEL}",
  "provider": {
    "anthropic": { "options": { "apiKey": "{env:ANTHROPIC_API_KEY}" } },
    "openai": { "options": { "apiKey": "{file:~/.secrets/openai-key}" } }
  }
}
  • {env:VAR} — variável de ambiente; ausente vira string vazia.
  • {file:caminho} — conteúdo de arquivo, relativo à config ou absoluto — chaves em arquivos separados, instruções longas fora do JSON.

05Depurando a config resolvida

terminal
mvcode debug config
→ imprime a config final, com todas as fontes mescladas

É a resposta definitiva para "de onde veio essa chave?" — inclusive para configuração gerenciada.

Compatibilidade · cadeia de fallback

O loader prefere maxvision-code.json{,c} e mantém a cadeia herdada como fallback: opencode.json{,c} e config.json, nos mesmos escopos. O $schema permanece https://opencode.ai/config.json (e opencode.ai/tui.json para a TUI) — é ele que dá validação no editor. Diretórios legados (~/.config/opencode/, dados opencode) são migrados/lidos automaticamente; os caminhos de config gerenciada preservam o nome herdado (/etc/opencode/, domínio ai.opencode.managed).