github-actions-advanced
Ajuda seu agente a criar e melhorar fluxos de trabalho de automação. Permite construir sistemas mais robustos e seguros.
O que ela faz
Esta ferramenta ajuda a criar e melhorar fluxos de trabalho automatizados no GitHub (chamados de GitHub Actions). Ela garante que seus processos de construção, teste e publicação de código sejam seguros e eficientes.
Quando usar
- ✓Quando você quer automatizar tarefas repetitivas no GitHub.
- ✓Se o seu código não está sendo construído, testado ou publicado corretamente.
- ✓Para tornar seus processos de desenvolvimento mais seguros e confiáveis.
Exemplo do que pedir para a IA
“Como posso configurar o GitHub Actions para testar meu código automaticamente sempre que eu enviar uma atualização?”
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
A ferramenta analisa suas configurações de GitHub Actions e sugere melhorias focando em segurança e eficiência. Ela verifica permissões, o uso de ações de terceiros e como os scripts são executados para evitar problemas.
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 github-actions-advancedOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/github-actions-advanced/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.
Habilidade Avançada em GitHub Actions
Orientação especializada para projetar, escrever, depurar e proteger fluxos de trabalho de nível de produção no GitHub Actions.
Guia Detalhado
Leia o guia detalhado antes de executar esta habilidade. Ele contém o procedimento completo e o material de referência. Trate seus requisitos de segurança, pré-requisitos e validação como obrigatórios. Para trabalho focado, carregue as seções relevantes; para trabalho de ponta a ponta, leia o guia completamente.
Quando Usar Esta Habilidade
- O usuário menciona GitHub Actions,
.github/workflows, pipelines de CI/CD, runners, jobs, steps ou actions - O usuário quer automatizar builds, testes, deployments ou releases via GitHub
- O usuário pergunta sobre builds de matriz, fluxos de trabalho reutilizáveis, actions compostas ou runners auto-hospedados
- O usuário precisa de ajuda com autenticação OIDC, estratégias de cache ou gerenciamento de segredos
- O usuário diz "meu pipeline do GitHub está falhando" ou "configurar CI para meu repositório"
- O usuário pergunta sobre segurança de fluxo de trabalho, hardening ou regras de proteção de ambiente
Quando NÃO Usar Esta Habilidade
- O usuário está trabalhando com GitLab CI/CD → recomende
gitlab-ci-patterns - O usuário está trabalhando com CircleCI, Jenkins ou outras plataformas de CI
- A tarefa é puramente sobre construção de imagem Docker sem contexto do GitHub → recomende
docker-expert - A tarefa é sobre configuração de deployment do Kubernetes → recomende
kubernetes-architect
Hardening de Segurança
1. Sempre Declare Permissões (Menor Privilégio)
# Workflow-level default — restrict everything
permissions:
contents: read
jobs:
publish:
# Job-level override — only expand what's needed
permissions:
contents: write # Only for release/publish jobs
packages: write # Only for container push jobs
pull-requests: write # Only for PR comment jobs
id-token: write # Only for OIDC auth jobs
2. Fixe Actions de Terceiros para SHA de Commit Completo
# ❌ UNSAFE — tag can be mutated or hijacked
- uses: actions/checkout@v4
# ✅ SAFE — commit SHA is immutable
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
# Tool to automate SHA pinning:
# npx pin-github-action .github/workflows/*.yml
# or: pip install ratchet && ratchet pin .github/workflows/
3. Previna Injeção de Script
# ❌ UNSAFE — attacker controls PR title, which gets expanded in shell
- run: echo "${{ github.event.pull_request.title }}"
# ✅ SAFE — pass through environment variable (shell doesn't evaluate it)
- env:
PR_TITLE: ${{ github.event.pull_request.title }}
run: echo "$PR_TITLE"
# ✅ SAFE — expressions in if: conditions are evaluated by Actions, not shell
- if: github.event.pull_request.draft == false
run: echo "Not a draft"
Nunca coloque ${{ ... }} diretamente dentro de run: quando o valor pode vir de
metadados de PR, inputs de fluxo de trabalho, arquivos de repositório, JSON de matriz ou saídas de jobs anteriores. Coloque-o em env: primeiro, valide os valores permitidos sempre que possível e
referencie a variável shell com aspas.
4. Restrinja o Uso de pull_request_target
# Only run when a maintainer adds a specific label — prevents untrusted execution
on:
pull_request_target:
types: [labeled]
jobs:
validate:
# Double-guard: check label name AND author_association
if: |
github.event.label.name == 'safe-to-test' &&
(github.event.pull_request.author_association == 'COLLABORATOR' ||
github.event.pull_request.author_association == 'MEMBER' ||
github.event.pull_request.author_association == 'OWNER')
5. Proteja com StepSecurity
# Add to every workflow — hardens runner, monitors outbound traffic
- uses: step-security/harden-runner@4d991eb9995541a0b71d1b66f1f98a5f1bef422c # v2.11.0
with:
egress-policy: audit # Start with 'audit', move to 'block' after confirming allowlist
allowed-endpoints: >
api.github.com:443
registry.npmjs.org:443
objects.githubusercontent.com:443
Limitações
- Use esta habilidade apenas quando a tarefa corresponder claramente ao escopo descrito acima.
- Não trate a saída como substituta para validação específica do ambiente, testes ou revisão de especialistas.
- Sempre teste fluxos de trabalho reutilizáveis em um branch de recurso antes de mesclar para o main.
- Pare e peça esclarecimentos se os inputs necessários, permissões, limites de segurança ou critérios de sucesso estiverem faltando.
Perguntas frequentes
O que são GitHub Actions?
São ferramentas que automatizam tarefas no GitHub, como compilar código, rodar testes e publicar novas versões do seu projeto.
O que significa 'segurança' neste contexto?
Significa garantir que apenas as permissões necessárias sejam dadas às ações, que as ferramentas externas usadas sejam confiáveis e que o código não possa ser executado de forma maliciosa.
O que são 'reusable workflows'?
São fluxos de trabalho que você pode criar uma vez e usar em vários projetos ou partes do seu projeto, evitando repetição.
Detalhes
Descrição original do autor
Design, debug, and harden GitHub Actions CI/CD workflows, including reusable workflows, matrix builds, self-hosted runners, OIDC authentication, caching, environments, secrets, and release automation.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #3129
- 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
bun-runtime
Faz seu agente usar o Bun para rodar, organizar e testar código. Ajuda a escolher o Bun em vez de outras ferramentas e a migrar projetos existentes.
affaan-m/ECC
database-migrations
Ajuda seu agente a fazer mudanças seguras em bancos de dados. Ele garante que as alterações possam ser desfeitas e minimiza o tempo de inatividade.
affaan-m/ECC
deployment-patterns
Configura fluxos de implantação e CI/CD, containerização e estratégias de rollback para garantir lançamentos seguros.
affaan-m/ECC