CommunityEscrita e Ediçãogithub.com

mirosing/resilient-server-ops

Habilidade para Claude Code que permite operações seguras em servidores remotos via SSH, deploys e trabalho remoto mesmo em redes instáveis (móvel, trem, Wi-Fi fraco). Utiliza gravações atômicas, nohup, idempotência e migalhas de recuperação.

O que é resilient-server-ops?

Esta habilidade para Claude Code foi projetada para engenheiros e operadores que precisam executar tarefas de SSH, deploys e manutenção remota em servidores através de conexões de rede instáveis, como móvel, trem ou Wi-Fi fraco. O 'mirosing/resilient-server-ops' resolve o problema de comandos interrompidos e sessões SSH perdidas, implementando um protocolo de conexão fraca que garante a execução segura e retomável das operações. Suas principais técnicas incluem gravações atômicas (para evitar corrupção de arquivos), uso de 'nohup' para manter processos em execução mesmo após a desconexão do terminal, comandos idempotentes (que podem ser executados múltiplas vezes sem causar danos) e 'migalhas de recuperação' (breadcrumbs) que permitem verificar o estado de uma operação em andamento e retomá-la do ponto de interrupção. A habilidade é ideal para cenários como deploy de aplicações em servidores remotos, backups, configuração de servidores e qualquer trabalho remoto onde a confiabilidade da conexão é um desafio. Ela funciona integrando-se diretamente às capacidades do Claude Code para executar scripts shell e comandos remotos, garantindo que cada operação seja segura, rastreável e resiliente a falhas de rede.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add mirosing/resilient-server-ops

Installed? Explore more Escrita e Edição skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que resilient-server-ops faz?

Protocolo de conexão fraca — Habilidade do agente Claude Code para SSH, deploys e trabalho remoto em redes instáveis (móvel, trem, Wi-Fi fraco). Gravações atômicas + nohup + idempotência + migalhas de recuperação.

Visão Geral

Esta habilidade permite que o Claude Code execute operações remotas em servidores via SSH com resiliência a desconexões de rede. Em vez de falhar quando a conexão cai, as operações são projetadas para:

  • Gravações atômicas: Arquivos são escritos de forma atômica usando operações de mv para evitar corrupção.
  • nohup: Comandos são executados com nohup e desanexados do terminal, para que continuem mesmo se a sessão SSH for perdida.
  • Idempotência: Comandos podem ser executados múltiplas vezes sem efeitos colaterais indesejados.
  • Migalhas de recuperação: Um arquivo de estado (breadcrumb) é criado para cada operação, permitindo verificar se ela foi concluída com sucesso ou precisa ser retomada.

Como Usar

Comandos Básicos

# Executar um comando remoto com resiliência a desconexão
resilient-ssh <user@host> <comando>

# Executar um script remoto com gravação atômica
resilient-deploy <user@host> <script.sh>

Exemplo de Deploy Resiliente

#!/bin/bash
# deploy.sh - Script de deploy com resiliência

resilient-ssh user@servidor "
  cd /app &&
  git pull &&
  npm install &&
  npm run build &&
  echo 'deploy_completed' > /tmp/deploy_breadcrumb
"

Verificação de Estado

Após uma reconexão, use o breadcrumb para verificar o estado:

resilient-check user@servidor "/tmp/deploy_breadcrumb"

Requisitos

  • Claude Code (ou agente compatível)
  • Acesso SSH ao servidor remoto
  • Shell Unix-like no servidor remoto
  • nohup e ssh instalados

Configuração

  1. Adicione a habilidade ao seu projeto:

    claude-code add-skill mirosing/resilient-server-ops
    
  2. Configure as variáveis de ambiente (opcional):

    RESILIENT_SSH_USER=meuusuario
    RESILIENT_SSH_HOST=meuservidor.com
    RESILIENT_WORK_DIR=/home/meuusuario/projeto
    

Exemplos Avançados

Script de Backup Resiliente

resilient-ssh user@servidor "
  tar -czf /tmp/backup.tar.gz /dados/importantes &&
  echo 'backup_ok' > /tmp/backup_breadcrumb &&
  scp /tmp/backup.tar.gz backup-server:/backups/
"

Múltiplos Comandos com Verificação

#!/bin/bash

# Primeiro comando
resilient-ssh user@servidor "comando1 && echo 'cmd1_ok' > /tmp/cmd1_breadcrumb"

# Verificar e executar segundo comando
if resilient-check user@servidor "/tmp/cmd1_breadcrumb" "cmd1_ok"; then
  resilient-ssh user@servidor "comando2 && echo 'cmd2_ok' > /tmp/cmd2_breadcrumb"
fi

Notas

  • Todos os comandos devem ser idempotentes. Se um comando falhar, ele pode ser reexecutado sem causar danos.
  • O breadcrumb deve ser sempre o último comando, indicando sucesso total.
  • Para operações longas, considere usar tmux ou screen dentro do ssh.
  • A habilidade não substitui um orquestrador completo, mas é ideal para tarefas rápidas e scripts de deploy.

Licença

MIT

Habilidades Relacionadas