Pular para o conteúdo
Skillpedia
APIs e servidores (backend)48 mil · #2318

azure-functions-devsec

Ajuda seu agente a criar aplicações sem servidor no Azure Functions. Permite configurar como as funções são ativadas e conectadas a outros serviços.

O que ela faz

Esta ferramenta ajuda a criar e gerenciar aplicações que rodam na nuvem sem precisar se preocupar com servidores. Ela é ideal para tarefas que precisam acontecer em resposta a eventos, como quando um arquivo é carregado ou uma mensagem chega.

Quando usar

  • ✓Quando você quer que um programa rode automaticamente sem um servidor dedicado.
  • ✓Para criar pequenas partes de um sistema que respondem a eventos.
  • ✓Para processar dados que chegam de outros serviços da nuvem.

Exemplo do que pedir para a IA

“Como faço para criar uma função que roda quando um arquivo é adicionado no Azure Storage?”

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/azure-functions-devsec/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/azure-functions-devsec/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Você define o que dispara a função (o 'gatilho'), como um arquivo sendo adicionado, e o que ela deve fazer. A nuvem cuida de executar o código quando o evento acontece.

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 azure-functions-devsec

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/azure-functions-devsec/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.

Azure Functions

Crie e implante aplicações serverless com Azure Functions. Abrange criação de Function App, configuração de triggers e bindings, estratégias de implantação, exemplos de código real em Python e Node.js, e melhores práticas de produção.

Quando Usar

  • Você precisa de computação orientada a eventos que escala automaticamente para zero.
  • Você está construindo APIs, webhooks ou pipelines de processamento em segundo plano.
  • Você quer cobrança por execução sem gerenciar servidores.
  • Você precisa responder a eventos de serviços Azure (mudanças em Blob Storage, Service Bus, Cosmos DB).
  • Você está implementando microsserviços leves ou tarefas agendadas.

Pré-requisitos

# Install Azure CLI
curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash

# Install Azure Functions Core Tools v4
npm install -g azure-functions-core-tools@4

# Verify installation
func --version

# Login
az login
az account set --subscription "my-subscription-id"

# Create supporting resources
az group create --name functions-rg --location eastus

az storage account create \
  --name myfuncstorageacct \
  --resource-group functions-rg \
  --location eastus \
  --sku Standard_LRS

Criação de Function App

Plano de Consumo (Pago por execução)

# Python function app on Consumption plan
az functionapp create \
  --resource-group functions-rg \
  --consumption-plan-location eastus \
  --runtime python \
  --runtime-version 3.11 \
  --functions-version 4 \
  --name myapp-func \
  --storage-account myfuncstorageacct \
  --os-type Linux

# Node.js function app
az functionapp create \
  --resource-group functions-rg \
  --consumption-plan-location eastus \
  --runtime node \
  --runtime-version 20 \
  --functions-version 4 \
  --name myapp-node-func \
  --storage-account myfuncstorageacct \
  --os-type Linux

Plano Premium (Integração com VNet, sem cold start)

# Create Premium plan
az functionapp plan create \
  --resource-group functions-rg \
  --name myapp-premium-plan \
  --location eastus \
  --sku EP1 \
  --is-linux true

# Create function app on Premium plan
az functionapp create \
  --resource-group functions-rg \
  --plan myapp-premium-plan \
  --runtime python \
  --runtime-version 3.11 \
  --functions-version 4 \
  --name myapp-premium-func \
  --storage-account myfuncstorageacct

Exemplos de Triggers e Bindings

HTTP Trigger -- Python

# function_app.py (v2 programming model)
import azure.functions as func
import json
import logging

app = func.FunctionApp(http_auth_level=func.AuthLevel.FUNCTION)

@app.route(route="users/{userId}", methods=["GET"])
def get_user(req: func.HttpRequest) -> func.HttpResponse:
    user_id = req.route_params.get("userId")
    logging.info(f"Fetching user: {user_id}")

    if not user_id:
        return func.HttpResponse(
            json.dumps({"error": "userId is required"}),
            status_code=400,
            mimetype="application/json"
        )

    user = {"id": user_id, "name": "Jane Doe", "email": "jane@example.com"}
    return func.HttpResponse(
        json.dumps(user),
        status_code=200,
        mimetype="application/json"
    )

@app.route(route="users", methods=["POST"])
def create_user(req: func.HttpRequest) -> func.HttpResponse:
    try:
        body = req.get_json()
    except ValueError:
        return func.HttpResponse(
            json.dumps({"error": "Invalid JSON"}),
            status_code=400,
            mimetype="application/json"
        )

    logging.info(f"Creating user: {body.get('name')}")
    return func.HttpResponse(
        json.dumps({"id": "new-id", **body}),
        status_code=201,
        mimetype="application/json"
    )

HTTP Trigger -- Node.js

// src/functions/httpTrigger.js (modelo de programação v4)
const { app } = require("@azure/functions");

app.http("getUser", {
  methods: ["GET"],
  authLevel: "function",
  route: "users/{userId}",
  handler: async (request, context) => {
    const userId = request.params.userId;
    context.log(`Fetching user: ${userId}`);

    if (!userId) {
      return { status: 400, jsonBody: { error: "userId is required" } };
    }

    const user = { id: userId, name: "Jane Doe", email: "jane@example.com" };
    return { status: 200, jsonBody: user };
  },
});

app.http("createUser", {
  methods: ["POST"],
  authLevel: "function",
  route: "users",
  handler: async (request, context) => {
    const body = await request.json();
    context.log(`Creating user: ${body.name}`);


…
Perguntas frequentes

O que são 'serverless'?

Significa que você não gerencia servidores. A nuvem cuida de tudo, e você paga apenas pelo que usa.

Quais linguagens de programação funcionam?

Este exemplo mostra Python e Node.js, mas outras linguagens também são suportadas.

O que são 'triggers' e 'bindings'?

'Triggers' são os eventos que iniciam sua função (ex: um novo arquivo). 'Bindings' conectam sua função a outros serviços (ex: ler um arquivo).

Detalhes

Descrição original do autor

Build serverless applications on Azure Functions. Configure triggers, bindings, and deployment. Use when implementing serverless workloads on Azure.

repo: sickn33/agentic-awesome-skills

Popularidade

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

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas