Configuração Inválida — Erro YAML OpenClaw

Como resolver erros de configuração no arquivo YAML ou variáveis de ambiente. Sintaxe e validação.

Configuração Inválida

Descrição do Problema

Erro ao carregar ou parsear arquivo de configuração:

YAML parse error
Invalid configuration
Missing required field: xxx
Configuration validation failed
Possíveis Causas
  1. Sintaxe YAML errada - Indentação ou caracteres inválidos
  2. Campo obrigatório faltando - Configuração incompleta
  3. Tipo errado - String onde deveria ser número
  4. Encoding errado - Arquivo não está em UTF-8
  5. Variável não expandida - ${VAR} não substituída
Soluções1. Validar Sintaxe YAML
# Instalar yamllint
pip install yamllint

# Validar arquivo
yamllint ~/.openclaw/config.yaml

# Ou usar Python
python -c "import yaml; yaml.safe_load(open('config.yaml'))"
2. Verificar Indentação
# ERRADO - indentação inconsistente
gateway:
  port: 3000
   ssl: true  # Espaço extra!

# CORRETO
gateway:
  port: 3000
  ssl: true
3. Verificar Strings e Caracteres Especiais
# ERRADO - caractere especial sem aspas
password: p@ss:word!

# CORRETO
password: "p@ss:word!"

# Ou com aspas simples
password: 'p@ss:word!'
4. Verificar Tipos de Dados
# ERRADO - porta como string
port: "3000"

# CORRETO - porta como número
port: 3000

# ERRADO - booleano como string
enabled: "true"

# CORRETO
enabled: true
5. Verificar Variáveis de Ambiente
# Usando variáveis
telegram:
  token: ${TELEGRAM_BOT_TOKEN}

# Verificar se está definida
echo $TELEGRAM_BOT_TOKEN
# Definir variável faltante
export TELEGRAM_BOT_TOKEN="seu_token_aqui"
6. Verificar Encoding
# Ver encoding do arquivo
file config.yaml

# Converter para UTF-8 se necessário
iconv -f ISO-8859-1 -t UTF-8 config.yaml > config_utf8.yaml
mv config_utf8.yaml config.yaml
7. Usar Configuração de Exemplo
# Copiar configuração de exemplo
cp ~/.openclaw/config.example.yaml ~/.openclaw/config.yaml

# Ou gerar nova configuração
openclaw config init
8. Validar com o Próprio OpenClaw
# Validar configuração
openclaw config validate

# Ver configuração atual
openclaw config show

# Ver campos obrigatórios
openclaw config schema
Exemplo de Configuração Válida
# ~/.openclaw/config.yaml
gateway:
  port: 3000
  host: "0.0.0.0"
  ssl:
    enabled: false

telegram:
  enabled: true
  token: "123456789:ABCdefGHIjklMNOpqrsTUVwxyz"

whatsapp:
  enabled: true
  session_path: "./sessions/whatsapp"

logging:
  level: "info"
  file: "./logs/openclaw.log"

cache:
  enabled: true
  ttl: 3600
Problemas RelacionadosPrevenção
  • Use um editor com validação YAML (VS Code + extensão)
  • Mantenha backup da configuração funcionando
  • Use variáveis de ambiente para secrets
  • Valide antes de aplicar mudanças