Um comando,
vinte e três verbos.
Sem argumentos, mvcode abre a TUI. Com eles, vira uma interface programática completa — sessões, provedores, servidores, estatísticas e automação em scripts e CI.
mvcode # ou, sem abrir a TUI: mvcode run "Explique como closures funcionam em JavaScript"
01Índice de comandos
| Comando | Faz o quê |
|---|---|
| mvcode [projeto] | Abre a TUI no diretório atual ou no informado. |
| run | Modo não-interativo: prompt direto, saída no stdout. |
| serve | Servidor headless com a API HTTP. |
| web | Servidor + interface web no navegador. |
| attach | Anexa uma TUI a um servidor já em execução. |
| acp | Servidor ACP via stdio para editores. |
| auth | Credenciais de provedor: login, list, logout. |
| models | Lista modelos disponíveis por provedor. |
| agent | Cria e lista agentes. |
| mcp | MCP servers: add, list, auth, logout, debug. |
| session | Lista e exclui sessões. |
| stats | Uso de tokens e custo por período, ferramenta e modelo. |
| export · import | Sessão como JSON — para fora e para dentro. |
| plugin | Instala plugins e atualiza a config. |
| github | Instala e roda o agente do GitHub. |
| pr | Faz checkout de um PR e abre o MVCode nele. |
| db | Consultas ao banco local; db path imprime o caminho. |
| debug | Ferramentas de diagnóstico. Troubleshooting → |
| upgrade | Atualiza para a última versão ou uma específica. |
| uninstall | Remove o MVCode e, opcionalmente, dados e config. |
02mvcode run — automação
O cavalo de trabalho de scripts e CI. Aceita prompt como argumento, arquivos anexos e saída em JSON de eventos:
mvcode run -m anthropic/claude-sonnet-4 "Resuma as mudanças desta branch" mvcode run --format json -f relatorio.md "Extraia os riscos deste documento" # continue a última sessão, ou uma específica mvcode run -c "Agora aplique o plano" mvcode run -s ses_a1b2c3 --fork "Tente outra abordagem"
| Flag | Curta | Descrição |
|---|---|---|
| --continue | -c | Continua a última sessão. |
| --session | -s | ID da sessão a continuar. |
| --fork | — | Ramifica ao continuar (com -c ou -s). |
| --model | -m | Modelo no formato provedor/modelo. |
| --agent | — | Agente a usar (build, plan, um seu). |
| --file | -f | Arquivo(s) anexado(s) à mensagem. |
| --format | — | default formatado ou json com eventos crus. |
| --variant · --thinking | — | Variante de reasoning · exibe blocos de thinking. |
| --attach | — | Usa um servidor já em execução (evita cold boot de MCP). |
| --title · --share · --dir · --port | — | Título da sessão · share · diretório · porta local. |
--dangerously-skip-permissions aprova automaticamente tudo que não for negado explicitamente. Use apenas em sandboxes descartáveis — nunca na sua máquina de trabalho.
03Servidores: serve, web, attach
# headless, só API mvcode serve --port 4096 # com interface web mvcode web --port 4096 --hostname 0.0.0.0 # TUI anexada a qualquer um dos dois mvcode attach http://10.20.30.40:4096
Os três aceitam --port, --hostname, --mdns, --mdns-domain e --cors. Autenticação básica via MVCODE_SERVER_PASSWORD; attach também aceita -p/-u na linha de comando.
04Credenciais: auth
mvcode auth login mvcode auth list mvcode auth logout
login lista o diretório de provedores e guarda a chave no auth store local (auth.json no diretório de dados). Chaves em variáveis de ambiente ou .env do projeto também são carregadas. Provedores →
05Sessões: session, stats, export, import
mvcode session list -n 10 mvcode stats --days 30 --models 5 mvcode export ses_a1b2c3 > sessao.json mvcode import sessao.json # migração de outros agentes — Claude Code, Codex, opencode mvcode import --from claude-code
export --sanitize redige dados sensíveis do transcript antes de sair da máquina. A importação por origem está detalhada em migração.
06Agentes e MCP na linha de comando
mvcode agent create --mode subagent --description "Revisor de segurança" \ --permissions read,grep,glob --path .maxvision-code/agent mvcode agent list mvcode mcp add mvcode mcp list mvcode mcp auth sentry
No agent create, tudo que você não permitir é negado no frontmatter gerado. Passando --path, --description, --mode e --permissions, o comando roda sem interação — bom para provisionar frotas.
07Flags globais
| Flag | Curta | Descrição |
|---|---|---|
| --help | -h | Ajuda do comando. |
| --version | -v | Versão do binário. |
| --print-logs | — | Logs no stderr. |
| --log-level | — | DEBUG, INFO, WARN ou ERROR. |
| --pure | — | Roda sem plugins externos — isola problemas. |
08Variáveis de ambiente
O prefixo do produto é MVCODE_. As mais usadas:
| Variável | Tipo | Efeito |
|---|---|---|
| MVCODE_CONFIG | string | Caminho da config do runtime. |
| MVCODE_CONFIG_DIR | string | Diretório de config. |
| MVCODE_CONFIG_CONTENT | string | Config JSON inline — útil em CI. |
| MVCODE_TUI_CONFIG | string | Caminho do tui.json. |
| MVCODE_PERMISSION | string | Permissões JSON inline. |
| MVCODE_SERVER_PASSWORD · _USERNAME | string | Basic auth de serve/web. |
| MVCODE_AUTO_SHARE | boolean | Compartilha sessões automaticamente. |
| MVCODE_DISABLE_AUTOUPDATE | boolean | Sem checagem automática de update. |
| MVCODE_DISABLE_AUTOCOMPACT | boolean | Sem compactação automática de contexto. |
| MVCODE_DISABLE_LSP_DOWNLOAD | boolean | Sem download automático de LSP. |
| MVCODE_DISABLE_MODELS_FETCH | boolean | Sem busca remota de modelos — ver offline. |
| MVCODE_DISABLE_CLAUDE_CODE | boolean | Não ler .claude (prompt + skills) do projeto. |
| MVCODE_MODELS_URL | string | URL customizada do catálogo de modelos. |
| MVCODE_GIT_BASH_PATH | string | Caminho do Git Bash no Windows. |
Variáveis experimentais
Sujeitas a mudança ou remoção: MVCODE_EXPERIMENTAL (guarda-chuva), MVCODE_EXPERIMENTAL_BACKGROUND_SUBAGENTS (subagentes assíncronos — agentes), MVCODE_EXPERIMENTAL_FILEWATCHER, MVCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX, MVCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS, MVCODE_EXPERIMENTAL_LSP_TOOL, MVCODE_EXPERIMENTAL_OXFMT, MVCODE_EXPERIMENTAL_EXA, MVCODE_EXPERIMENTAL_SCOUT, MVCODE_EXPERIMENTAL_WORKSPACES, entre outras.
O username padrão do basic auth em serve/web/attach permanece opencode — herança do núcleo, alterável via MVCODE_SERVER_USERNAME. Links de share importáveis também aceitam o formato de URL herdado.
