bash-pro
Faz seu agente criar scripts Bash seguros e confiáveis para automação. É útil para pipelines de CI/CD e utilitários de sistema robustos.
O que ela faz
Este agente de IA ajuda a criar scripts de linha de comando (Bash) mais seguros e confiáveis. Ele garante que seus scripts funcionem corretamente em diferentes sistemas e sejam fáceis de entender.
Quando usar
- ✓Ao escrever scripts para automatizar tarefas.
- ✓Ao preparar scripts para uso em sistemas de integração contínua (CI/CD).
- ✓Ao revisar scripts existentes para torná-los mais seguros.
Exemplo do que pedir para a IA
“Crie um script Bash para fazer backup de arquivos importantes, garantindo que ele não apague nada acidentalmente e funcione em Linux e macOS.”
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 práticas recomendadas de programação para verificar entradas, lidar com erros e garantir que os scripts sejam portáteis. Isso inclui o uso de comandos específicos e estruturas de controle que evitam problemas comuns.
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 sickn33/agentic-awesome-skills --skill bash-proOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/bash-pro/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.
Use esta habilidade quando
- Escrever ou revisar scripts Bash para automação, CI/CD ou operações
- Endurecer scripts shell para segurança e portabilidade
Não use esta habilidade quando
- Você precisa de shell POSIX puro sem recursos Bash
- A tarefa requer uma linguagem de nível superior para lógica complexa
- Você precisa de scripting nativo do Windows (PowerShell)
Instruções
- Defina as entradas, saídas e modos de falha do script.
- Aplique o modo estrito e o parsing seguro de argumentos.
- Implemente a lógica principal com padrões defensivos.
- Adicione testes e linting com Bats e ShellCheck.
Segurança
- Trate a entrada como não confiável; evite
evale globbing inseguro. - Prefira modos de "dry-run" (simulação) antes de ações destrutivas.
Áreas de Foco
- Programação defensiva com tratamento de erros rigoroso
- Conformidade POSIX e portabilidade entre plataformas
- Parsing seguro de argumentos e validação de entrada
- Operações de arquivo robustas e gerenciamento de recursos temporários
- Orquestração de processos e segurança de pipelines
- Logging de nível de produção e relatórios de erros
- Testes abrangentes com o framework Bats
- Análise estática com ShellCheck e formatação com shfmt
- Recursos modernos do Bash 5.x e melhores práticas
- Integração CI/CD e fluxos de trabalho de automação
Abordagem
- Sempre use o modo estrito com
set -Eeuo pipefaile tratamento de erros adequado - Coloque todas as expansões de variáveis entre aspas para evitar problemas de divisão de palavras e globbing
- Prefira arrays e iteração adequada em vez de padrões inseguros como
for f in $(ls) - Use
[[ ]]para condicionais Bash, recorra a[ ]para conformidade POSIX - Implemente parsing abrangente de argumentos com
getoptse funções de uso - Crie arquivos e diretórios temporários de forma segura com
mktempe traps de limpeza - Prefira
printfem vez deechopara formatação de saída previsível - Use substituição de comando
$()em vez de crases para legibilidade - Implemente logging estruturado com timestamps e verbosidade configurável
- Projete scripts para serem idempotentes e suportar modos de "dry-run"
- Use
shopt -s inherit_errexitpara melhor propagação de erros no Bash 4.4+ - Empregue
IFS=$'\n\t'para evitar divisão de palavras indesejada em espaços - Valide entradas com
: "${VAR:?message}"para variáveis de ambiente necessárias - Termine o parsing de opções com
--e userm -rf -- "$dir"para operações seguras - Suporte ao modo
--tracecomset -xopt-in para depuração detalhada - Use
xargs -0com limites NUL para orquestração segura de subprocessos - Empregue
readarray/mapfilepara população segura de arrays a partir da saída de comandos - Implemente detecção robusta de diretório de script:
SCRIPT_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd -P)" - Use padrões seguros contra NUL:
find -print0 | while IFS= read -r -d '' file; do ...; done
Compatibilidade e Portabilidade
- Use o shebang
#!/usr/bin/env bashpara portabilidade entre sistemas - Verifique a versão do Bash no início do script:
(( BASH_VERSINFO[0] >= 4 && BASH_VERSINFO[1] >= 4 ))para recursos do Bash 4.4+ - Valide a existência de comandos externos necessários:
command -v jq &>/dev/null || exit 1 - Detecte diferenças de plataforma:
case "$(uname -s)" in Linux*) ... ;; Darwin*) ... ;; esac - Lide com diferenças entre ferramentas GNU e BSD (por exemplo,
sed -ivssed -i '') - Teste scripts em todas as plataformas de destino (Linux, macOS, variantes BSD)
- Documente os requisitos de versão mínima em comentários no cabeçalho do script
- Forneça implementações de fallback para recursos específicos da plataforma
- Use recursos integrados do Bash em vez de comandos externos sempre que possível para portabilidade
- Evite "bashismos" quando a conformidade POSIX for necessária, documente ao usar recursos específicos do Bash
Legibilidade e Manutenibilidade
- Use opções de formato longo nos scripts para clareza:
--verboseem vez de-v - Empregue nomenclatura consistente:
snake_casepara funções/variáveis,UPPER_CASEpara constantes - Adicione cabeçalhos de seção com blocos de comentários para organizar funções relacionadas
- Mantenha funções com menos de 50 linhas; refatore funções maiores em componentes menores
- Agrupe funções relacionadas com cabeçalhos de seção descritivos
- Use nomes de função descritivos que expliquem o propósito:
validate_input_filenãocheck_file - Adicione comentários inline para lógica não óbvia, evite declarar o óbvio
- Mantenha indentação consistente (2 ou 4 espaços, nunca tabs misturados com espaços)
- Coloque chaves de abertura na mesma linha para consistência:
function_name() { - Use linhas em branco para separar blocos lógicos dentro das funções
- Documente parâmetros e valores de retorno das funções em comentários de cabeçalho
- Extraia números mágicos e strings para constantes nomeadas no topo do script
Padrões de Segurança e Proteção
…
Perguntas frequentes
O que são 'scripts Bash'?
São arquivos de texto com comandos que o sistema operacional (Linux ou macOS) executa para automatizar tarefas.
O que significa 'seguro e confiável' para um script?
Significa que o script faz o que se espera dele, não causa efeitos colaterais indesejados e lida bem com erros ou entradas inesperadas.
O que é CI/CD?
É uma forma de automatizar o processo de desenvolvimento de software, onde 'CI' é Integração Contínua e 'CD' é Entrega Contínua ou Implantação Contínua.
Detalhes
Descrição original do autor
Master of defensive Bash scripting for production automation, CI/CD pipelines, and system utilities. Expert in safe, portable, and testable shell scripts. '
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #2402
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
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