Pular para o conteúdo
Skillpedia
Deploy e nuvem (DevOps)48 mil · #2247

aws-lambda

Ajuda seu agente a criar e executar código sem se preocupar com servidores. Ele gerencia funções na AWS Lambda, ideal para aplicações sem servidor.

O que ela faz

AWS Lambda permite que você execute código sem precisar gerenciar servidores. É como ter um computador que roda seu código apenas quando necessário, economizando dinheiro e esforço.

Quando usar

  • ✓Criar um site que responde a cliques.
  • ✓Processar fotos que são enviadas para um serviço.
  • ✓Automatizar tarefas que precisam rodar em horários específicos.

Exemplo do que pedir para a IA

“Crie uma função Lambda que receba um nome e retorne uma saudação personalizada.”

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

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/aws-lambda/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/aws-lambda/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Você escreve seu código (como uma receita) e o envia para a AWS. A AWS cuida de rodar essa receita sempre que um evento acontece, como um clique no seu site.

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 aws-lambda

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/aws-lambda/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

AWS Lambda

Crie aplicações sem servidor com AWS Lambda, cobrindo criação de funções, fontes de eventos, camadas, templates SAM e otimização de cold start.

Quando Usar Esta Habilidade

  • Construir aplicações orientadas a eventos acionadas por API Gateway, S3, SQS ou EventBridge
  • Executar tarefas agendadas (cron) sem gerenciar servidores
  • Processar fluxos de dados do Kinesis ou DynamoDB
  • Construir APIs leves com API Gateway ou URLs de função
  • Implementar webhooks, bots do Slack ou scripts de automação
  • Reduzir custos de computação para cargas de trabalho intermitentes ou com picos

Pré-requisitos

  • AWS CLI v2 instalado e configurado
  • Permissões IAM: lambda:*, iam:PassRole, logs:*, apigateway:*, s3:*
  • Python 3.11+, Node.js 20+ ou outro runtime suportado instalado localmente
  • (Opcional) AWS SAM CLI para desenvolvimento e implantação local

Criar e Implantar uma Função

# Create a deployment package
cd my-function
zip -r function.zip app.py

# Create the Lambda function
aws lambda create-function \
  --function-name my-api-handler \
  --runtime python3.12 \
  --handler app.handler \
  --role arn:aws:iam::123456789012:role/LambdaExecRole \
  --zip-file fileb://function.zip \
  --memory-size 256 \
  --timeout 30 \
  --environment 'Variables={STAGE=production,LOG_LEVEL=INFO}' \
  --architectures arm64 \
  --tracing-config Mode=Active \
  --tags '{"Team":"backend","Environment":"production"}'

# Update function code
aws lambda update-function-code \
  --function-name my-api-handler \
  --zip-file fileb://function.zip

# Update function configuration
aws lambda update-function-configuration \
  --function-name my-api-handler \
  --memory-size 512 \
  --timeout 60 \
  --environment 'Variables={STAGE=production,LOG_LEVEL=WARNING}'

# Publish a version (immutable snapshot)
aws lambda publish-version \
  --function-name my-api-handler \
  --description "v1.2.0 - added rate limiting"

# Create an alias pointing to the version
aws lambda create-alias \
  --function-name my-api-handler \
  --name live \
  --function-version 3

# Weighted alias for canary deployments (90% v3, 10% v4)
aws lambda update-alias \
  --function-name my-api-handler \
  --name live \
  --function-version 4 \
  --routing-config '{"AdditionalVersionWeights":{"3":0.9}}'

Exemplos de Código de Função

# app.py - API Gateway handler with structured logging
import json
import logging
import os

logger = logging.getLogger()
logger.setLevel(os.environ.get("LOG_LEVEL", "INFO"))

def handler(event, context):
    """Handle API Gateway proxy event."""
    logger.info("Request: %s %s", event["httpMethod"], event["path"])

    try:
        body = json.loads(event.get("body", "{}"))
        result = process_request(body)

        return {
            "statusCode": 200,
            "headers": {
                "Content-Type": "application/json",
                "X-Request-Id": context.aws_request_id
            },
            "body": json.dumps(result)
        }
    except ValueError as e:
        logger.warning("Validation error: %s", e)
        return {"statusCode": 400, "body": json.dumps({"error": str(e)})}
    except Exception as e:
        logger.exception("Unhandled error")
        return {"statusCode": 500, "body": json.dumps({"error": "Internal server error"})}

def process_request(body):
    return {"message": "OK", "data": body}
# sqs_processor.py - SQS batch processor with partial failure reporting
import json
import logging

logger = logging.getLogger()
logger.setLevel("INFO")

def handler(event, context):
    """Process SQS messages with partial batch failure reporting."""
    failed_ids = []

    for record in event["Records"]:
        try:
            body = json.loads(record["body"])
            logger.info("Processing message: %s", record["messageId"])
            process_message(body)
        except Exception as e:
            logger.error("Failed message %s: %s", record["messageId"], e)
            failed_ids.append(record["messageId"])

    # Return failed items so only those get retried
    return {
        "batchItemFailures": [
            {"itemIdentifier": msg_id} for msg_id in failed_ids
        ]
    }

def process_message(body):
    pass  # your logic here

Camadas Lambda

# Construir uma camada para dependências Python
mkdir -p layer/python
pip install requests boto3-stubs -t layer/python/
cd layer
zip -r ../my-layer.zip python/

# Publicar a camada
aws lambda publish-layer-version \

…
Perguntas frequentes

O que são 'funções serverless'?

São pedaços de código que rodam na nuvem (AWS Lambda) sem que você precise se preocupar com servidores. Você só paga pelo tempo que o código está rodando.

O que são 'gatilhos' (triggers)?

São eventos que fazem seu código rodar. Exemplos incluem um novo arquivo sendo enviado, uma requisição em um site ou uma mensagem chegando.

Posso usar qualquer linguagem de programação?

Sim, o AWS Lambda suporta várias linguagens populares como Python, Node.js, Java, e outras.

Detalhes

Descrição original do autor

Build and deploy serverless functions on AWS Lambda. Configure triggers, manage permissions, and optimize performance. Use when implementing serverless applications.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#2247
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas