Detecção automática de PHP e Node
Escolha Automático no seletor de PHP ou Node do projeto para usar suas declarações. O LaraEnv lê o checkout usado pela operação, incluindo um worktree selecionado, e escolhe um runtime instalado compatível.
| Runtime | Prioridade, da maior para a menor |
|---|---|
| PHP | Escolha manual do projeto → .php-version → composer.json require.php → PHP global |
| Node | Escolha manual do projeto → .nvmrc → .node-version → package.json engines.node → Node global |
| Gerenciador de pacotes | package.json packageManager → lockfile → npm |
Selecionar Automático remove a escolha manual. A detecção não reescreve as declarações do projeto.

Requisitos e versões ausentes
Com um requisito declarado, o LaraEnv escolhe a maior versão estável instalada compatível usando metadados verificados do executável. Arquivos com versões parciais como 8.3 e v22 selecionam essa série. As regras de intervalos do Composer e npm são avaliadas separadamente; caret, tilde, comparações, curingas, AND e OR são aceitos. Arquivos de versão Node também aceitam node, stable e lts/*.
Declarações inválidas ou instalações compatíveis ausentes mostram orientação. O LaraEnv não substitui silenciosamente um requisito declarado pela versão global. Use Downloads para escolher e instalar uma versão adequada; a detecção nunca a instala automaticamente.
Uma escolha manual continua efetiva, com aviso quando conflita com um requisito. Sem declaração, vale o runtime global gerenciado. Sem escolha global, é usada a maior instalação estável verificada. O comportamento existente do PATH do sistema continua disponível somente quando não há requisito nem instalação gerenciada.
Alterações e comandos em execução
O LaraEnv atualiza a detecção após a criação de projetos, clones e edições relevantes de manifests ou arquivos de versão. Novos terminais, agentes, servidores Dev, workers de fila, comandos MCP e crons usam a mesma resolução. Uma escolha explícita de PHP no cron tem prioridade.
Terminais e processos existentes mantêm o runtime até serem reiniciados. Alterar PHP ou a raiz pública de um checkout servido atualiza sua configuração web; um novo pool PHP precisa iniciar com sucesso antes de redirecionar o site em execução. Requisitos ausentes ou inválidos preservam a última configuração servida enquanto o problema é informado.
Os pools PHP são compartilhados por versão, não por projeto. Veja Versões do PHP.