Harness MaxxingDocumentação
📚 Todas as páginas

📚 Referência · 7 min de leitura

🩺Solução de problemas

O ponto na parte de baixo da barra lateral

Ele fica laranja ou vermelho quando algo precisa de você (disco, memória, uma tarefa agendada que falhou, um serviço parado, Claude não conectado, um backup antigo). Clique nele para ver a lista. Visto em um problema faz com que ele deixe de contar no ponto (ele continua na lista, em cinza): ele volta sozinho quando muda - outra tarefa falhando, por exemplo - ou depois de 24 horas se ainda estiver lá. A seta ao lado de um problema já visto faz com que ele volte a ser contado. As marcas de "visto" ficam guardadas no servidor, então valem em todos os dispositivos.

Comece pelo doctor

maxxing doctor            # human readable, exit code 1 if something fails
maxxing doctor --json     # for scripts and Claude
maxxing doctor --live     # also makes a real one-line Claude call

Ou abra uma sessão e diga "algo está errado, use a skill maxxing-doctor": o Claude lê as verificações e os logs, explica e corrige o que for seguro corrigir.

Verificação Significado
python, uv ambiente de execução e ferramentas
claude_cli, claude_auth Claude Code instalado e com login feito
claude_version Claude Code atrás da última versão (informativo; as versões trazem correções de segurança). Com Configurações -> Claude -> Atualizar o Claude Code automaticamente (desativado por padrão), o servidor instala a versão estável sozinho quando nada rodou nos últimos 10 min; a dica explica por que não instalou - correção: claude update
skill_listing quantas skills o Claude vê em cada prompt e o tamanho delas; acima do limite do Claude Code, as menos usadas perdem a descrição (informativo) - veja Skills
deps com --deps: pacotes instalados (servidor, web, ferramentas de vídeo) com vulnerabilidade conhecida, segundo osv.dev
setup primeiro login concluído
service, http claude-maxxing em execução e respondendo
security firewall (ufw), fail2ban e atualizações de segurança automáticas ativos - apenas aviso; correção: bash /opt/claude-maxxing/install.sh --secure
state_files um config.json / secrets.json danificado foi encontrado e substituído; a cópia dele (*.damaged-<date>) fica guardada ao lado - compare, restaure o que estiver faltando (chaves: Configurações -> Chaves) e apague a cópia
tools Node.js, Remotion, Scrapling e o Chromium compartilhado prontos (vídeos, PDFs, coleta de dados) - apenas aviso; correção: maxxing deps update
deps_files componentes externos (maxxing deps list): ✘ quando um binário mudou desde a instalação ou um arquivo não pertence ao root (outro usuário poderia substituí-lo), ! quando algum está faltando ou não está na versão desta release; correção: maxxing deps update
bind não está escutando em um endereço público
public_url, caddy sua URL acessível, configuração do Caddy válida
caddy_site o site do Caddy escrito por um instalador mais antigo: X-Frame-Options DENY (as prévias de PDF em Arquivos ficam em branco) ou um limite de corpo abaixo dos uploads de 2 GB - o comando de correção edita /etc/caddy/claude-maxxing.caddy e recarrega o Caddy
crontab todas as tarefas ativadas presentes no crontab
timezone fuso horário configurado = fuso horário do sistema (o cron usa o do sistema), ou relógio do servidor mantido (system_clock = keep)
telegram, backup configurado, vinculado, backup recente
disk, workspace espaço livre, workspace com permissão de escrita
memory RAM e swap; um servidor com menos de 4 GB sem swap recebe um aviso (cada turno do Claude em execução usa 200-300 MB, e voz local, navegadores e renderizações usam mais) e os comandos para adicionar um arquivo de swap de 2 GB
skills, web skills do produto e build da interface web presentes
git alterações locais, atualizações disponíveis

Logs

journalctl -u claude-maxxing -n 100 --no-pager     # server
journalctl -u caddy -n 50 --no-pager               # HTTPS proxy
systemctl list-units 'maxxing-*'                   # running Claude turns
journalctl -u maxxing-<id8> --no-pager             # one turn
maxxing cron list                                  # jobs and their last result

Os logs também ficam visíveis em Configurações -> Sistema.

Problemas comuns

Um comando foi "Killed" (código de saída 137), ou uma renderização pesada parou. Faltou memória. Cada sessão e cada tarefa agendada pode usar no máximo 75 % da RAM do servidor: acima disso, o kernel encerra apenas o maior processo daquela sessão, e o Claude avisa você e continua. A interface e as outras sessões normalmente continuam funcionando (o limite é por sessão: várias sessões pesadas ao mesmo tempo ainda podem encher a RAM). Peça ao Claude um jeito mais leve (uma resolução menor, uma renderização em partes, menos entradas de uma vez). Para mudar o limite, defina unit_memory_max em /var/lib/claude-maxxing/config.json ("4G", "90%", ou "" para nenhum): ele vale para os próximos turnos e tarefas. Todas as tarefas agendadas rodando ao mesmo tempo também compartilham jobs_memory_max (padrão 75 %, aplicado por maxxing init). journalctl -k | grep -i oom mostra o que foi encerrado. Se o turno inteiro foi interrompido, a sessão diz "The turn was stopped: the server ran out of memory".

Algo que você iniciou no servidor (um site de desenvolvimento, uma API na porta 3000…) não está acessível. O firewall só deixa entrar SSH, 80/443 e Tailscale. Abra a porta de propósito (ufw allow 3000/tcp) ou, melhor ainda, sirva isso por trás do Caddy no seu domínio.

O instalador para em "Claude Code". Ele mostra o final da saída do instalador da Anthropic e a causa provável acima do erro (log completo: /tmp/maxxing-claude-install.log). Causas comuns: downloads.claude.ai inacessível a partir do servidor (DNS, firewall de saída do provedor, uma queda temporária - ele já tentou de novo uma vez), um país onde o Claude não está disponível (https://www.anthropic.com/supported-countries), disco cheio, ou uma arquitetura diferente de x86_64 / arm64. Corrija e execute de novo curl -fsSL https://get.harness-maxxing.com | bash: as etapas já concluídas são puladas. (Executar depois de sudo -i não tem problema: o Claude Code é instalado para o root.)

O instalador diz "could not record the Enterprise key". Só acontece com LICENSE=HM-… (não é preciso chave: deixe-a de fora). A instalação em si foi concluída; execute maxxing license activate para ver o motivo: chave desconhecida (confira no e-mail da sua licença), chave revogada, ou já ativa em outro servidor (uma chave = um servidor): execute maxxing license release no servidor que você não usa mais.

maxxing update diz que o servidor "still runs the code of a signed archive". Um servidor instalado com uma chave antes da 2.0.0a87 passa sozinho para o repositório git público; a mensagem diz o que o está impedindo (sem rede, edições de web/ na pasta do código, uma atualização sendo finalizada). Corrija e execute maxxing update de novo.

A página não carrega. systemctl status claude-maxxing. Se estiver falhando, leia o journal. Depois de um git pull manual, execute maxxing update em vez disso (ele sincroniza as dependências). systemctl restart claude-maxxing é seguro: os turnos do Claude em execução continuam em suas próprias unidades.

Erro de certificado / domínio inacessível. O registro DNS do domínio deve apontar para o servidor (getent ahosts ui.example.com), e as portas 80 e 443 devem estar abertas (ufw status, além do firewall do seu provedor de hospedagem). O Caddy obtém o certificado na primeira requisição: journalctl -u caddy mostra por que falhou. Valide a configuração: caddy validate --config /etc/caddy/Caddyfile --adapter caddyfile.

Senha perdida. No servidor: maxxing password. Ou recomece com um novo link de configuração: maxxing setup-link --reset.

"Too many attempts". Espere 15 minutos ou reinicie o serviço.

Link de configuração perdido. maxxing setup-link.

Todas as sessões falham ao mesmo tempo. O Claude não está com login feito ou o token expirou: Configurações -> Claude -> Testar, ou maxxing doctor --live. Renove com claude setup-token.

Uma sessão continua "em execução". Pressione Parar. Se persistir: systemctl list-units 'maxxing-*' e leia o journal dessa unidade.

Uma nota diz que a conversa não pôde ser retomada. A transcrição do Claude estava ausente; um contexto novo foi iniciado automaticamente. O histórico continua visível.

Uma tarefa não rodou. maxxing cron list (ativada? último resultado?), crontab -l (a linha dela está no bloco gerenciado?), maxxing cron sync, systemctl status cron. Execute-a manualmente: maxxing cron run <id>.

Uma tarefa roda na hora errada. O daemon do cron usa o fuso horário do sistema, a interface usa o de Configurações -> Geral. maxxing doctor mostra os dois. Em um servidor compartilhado, mantenha o relógio do servidor e deixe as tarefas seguirem o seu fuso: maxxing init --system-clock keep. Caso contrário, alinhe os dois: timedatectl set-timezone <Zone> && systemctl restart cron e maxxing init --timezone <Zone> && systemctl restart claude-maxxing.

O Telegram está em silêncio. maxxing telegram status mostra o último erro; maxxing telegram test. Veja Telegram.

O backup falhou. maxxing backup status. Token expirado, repositório tornado público ou um segredo encontrado em um arquivo (a mensagem diz o nome do arquivo). Veja Backup.

Disco cheio. Verifique ~/.claude/projects (transcrições), os anexos nos tópicos e o journal (journalctl --vacuum-size=200M). Apague com cuidado: as transcrições são necessárias para retomar sessões.

A interface parece desatualizada depois de uma atualização. Recarregue a página; o HTML do app nunca fica em cache, então basta recarregar.

A URL do Tailscale para de funcionar depois de uma reinicialização. Se o IP do Tailscale mudou, execute o instalador de novo com ACCESS=tailscale (ou maxxing init --bind <ip> --public-url http://<ip>:8787 e reinicie).

Ainda travado?

Reúna maxxing doctor --json e as últimas 200 linhas de journalctl -u claude-maxxing (confira que não contêm segredos) e entre em contato com o suporte.

💡 Travou? Abra uma sessão no topic system › help e pergunte com suas palavras: o Claude lê esta documentação no seu servidor e responde.✏️ Melhorar esta página