bash-defensive-patterns
Ensina seu agente a escrever scripts de linha de comando seguros e confiáveis. É útil para criar ferramentas que funcionam bem e evitam erros em sistemas importantes.
O que ela faz
Este guia ensina como escrever scripts de automação (Bash) mais seguros e confiáveis. Ele ajuda a evitar erros comuns e garante que seus scripts funcionem corretamente mesmo em situações inesperadas.
Quando usar
- ✓Ao criar scripts para automatizar tarefas importantes no trabalho.
- ✓Ao construir etapas de automação para processos de desenvolvimento (CI/CD).
- ✓Ao desenvolver ferramentas de sistema que precisam ser muito confiáveis.
Exemplo do que pedir para a IA
“Como posso escrever um script Bash que não falhe se um arquivo não existir?”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Ele usa técnicas como ativar modos de segurança (`set -euo pipefail`), sempre proteger variáveis com aspas (`"$variavel"`) e verificar se os comandos foram executados com sucesso.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add wshobson/agents --skill bash-defensive-patternsOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/wshobson/agents/main/plugins/shell-scripting/skills/bash-defensive-patterns/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Padrões Defensivos em Bash
Orientação abrangente para escrever scripts Bash prontos para produção usando técnicas de programação defensiva, tratamento de erros e melhores práticas de segurança para prevenir armadilhas comuns e garantir confiabilidade.
Quando Usar Esta Habilidade
- Escrever scripts de automação de produção
- Construir scripts de pipeline CI/CD
- Criar utilitários de administração de sistemas
- Desenvolver automação de implantação resiliente a erros
- Escrever scripts que devem lidar com casos extremos com segurança
- Construir bibliotecas de script shell manteníveis
- Implementar registro e monitoramento abrangentes
- Criar scripts que devem funcionar em diferentes plataformas
Padrões Detalhados e Exemplos Práticos
A documentação detalhada dos padrões está em references/details.md. Leia esse arquivo quando o nível de navegação acima for insuficiente.
Resumo das Melhores Práticas
- Sempre use o modo estrito -
set -Eeuo pipefail - Coloque todas as variáveis entre aspas -
"$variable"previne a divisão de palavras - Use condicionais [[]] - Mais robusto que [ ]
- Implemente o rastreamento de erros - Capture e trate erros graciosamente
- Valide todas as entradas - Verifique a existência de arquivos, permissões, formatos
- Use funções para reutilização - Prefira nomes significativos
- Implemente registro estruturado - Inclua carimbos de data/hora e níveis
- Suporte ao modo de simulação (dry-run) - Permita que os usuários visualizem as alterações
- Lide com arquivos temporários com segurança - Use mktemp, limpe com trap
- Projete para idempotência - Scripts devem ser seguros para serem executados novamente
- Documente os requisitos - Liste dependências e versões mínimas
- Teste os caminhos de erro - Garanta que o tratamento de erros funcione corretamente
- Use
command -v- Mais seguro quewhichpara verificar executáveis - Prefira printf em vez de echo - Mais previsível entre sistemas
Perguntas frequentes
O que é 'strict mode'?
É um conjunto de regras (`set -Eeuo pipefail`) que torna o script mais rigoroso, forçando a correção de erros comuns que poderiam passar despercebidos.
Por que devo usar aspas em variáveis?
Colocar aspas em volta de variáveis (`"$variavel"`) evita que o script interprete espaços ou caracteres especiais dentro do valor da variável de forma incorreta, prevenindo erros.
O que significa 'idempotency'?
Um script idempotente pode ser executado várias vezes sem causar efeitos colaterais indesejados. Ele garante que o resultado final seja o mesmo, não importa quantas vezes o script seja rodado.
Detalhes
Descrição original do autor
Master defensive Bash programming techniques for production-grade scripts. Use when writing robust shell scripts, CI/CD pipelines, or system utilities requiring fault tolerance and safety.
repo: wshobson/agents
Popularidade
- Estrelas no GitHub
- 41 mil
- Posição no ranking
- #4950
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
screen-reader-testing
Faz seu agente testar sites usando leitores de tela para garantir que sejam acessíveis.
wshobson/agents
wcag-audit-patterns
Ajuda seu agente a auditar sites para acessibilidade e corrigir problemas de acordo com as diretrizes WCAG.
wshobson/agents
multi-reviewer-patterns
Faz seu agente coordenar revisões de código paralelas, deduplicando achados e consolidando relatórios.
wshobson/agents
parallel-debugging
Permite ao agente depurar problemas complexos com investigações paralelas e análise de causa raiz.
wshobson/agents
Skills parecidas
benchmark-optimization-loop
Faz seu agente melhorar a velocidade de algo de forma medida. Ele testa várias versões e escolhe a mais rápida que ainda funciona corretamente.
affaan-m/ECC
change-impact
Ajuda seu agente a analisar o impacto de mudanças no código antes de fazê-las. Ele compara o planejado com o real depois, cobrindo caminhos, dados, testes e documentação. É útil para mudanças arriscadas ou que afetam várias partes do sistema.
affaan-m/ECC
click-path-audit
Faz seu agente rastrear todos os botões e interações do usuário para achar bugs. Ele encontra problemas onde funções parecem funcionar sozinhas, mas falham juntas. Útil quando bugs persistem mesmo após depuração.
affaan-m/ECC