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

azure-storage-blob-ts

Ajuda seu agente a interagir com o armazenamento de blobs do Azure usando JavaScript/TypeScript. Ele permite carregar, baixar e organizar arquivos.

O que ela faz

Esta ferramenta ajuda a gerenciar arquivos (chamados 'blobs') em um serviço de armazenamento na nuvem chamado Azure Blob Storage. Você pode usá-la para enviar, baixar, listar e organizar esses arquivos.

Quando usar

  • ✓Quando você precisa fazer backup de arquivos importantes na nuvem.
  • ✓Quando você quer compartilhar arquivos grandes com outras pessoas.
  • ✓Quando você precisa organizar muitos arquivos em pastas virtuais.

Exemplo do que pedir para a IA

“Como faço para enviar um arquivo chamado 'relatorio.pdf' para a pasta 'documentos'?”

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

A ferramenta se conecta ao Azure Blob Storage usando credenciais de segurança. Uma vez conectada, ela permite que você execute comandos para manipular os arquivos e pastas dentro do seu armazenamento.

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-storage-blob-ts

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/azure-storage-blob-ts/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/storage-blob (TypeScript/JavaScript)

SDK para operações do Azure Blob Storage — fazer upload, download, listar e gerenciar blobs e contêineres.

Instalação

npm install @azure/storage-blob @azure/identity

Versão Atual: 12.x
Node.js: >= 18.0.0

Variáveis de Ambiente

AZURE_STORAGE_ACCOUNT_NAME=<account-name>
AZURE_STORAGE_ACCOUNT_KEY=<account-key>
# OR connection string
AZURE_STORAGE_CONNECTION_STRING=DefaultEndpointsProtocol=https;AccountName=...

Autenticação

DefaultAzureCredential (Recomendado)

import { BlobServiceClient } from "@azure/storage-blob";
import { DefaultAzureCredential } from "@azure/identity";

const accountName = process.env.AZURE_STORAGE_ACCOUNT_NAME!;
const client = new BlobServiceClient(
  `https://${accountName}.blob.core.windows.net`,
  new DefaultAzureCredential()
);

String de Conexão

import { BlobServiceClient } from "@azure/storage-blob";

const client = BlobServiceClient.fromConnectionString(
  process.env.AZURE_STORAGE_CONNECTION_STRING!
);

StorageSharedKeyCredential (Apenas Node.js)

import { BlobServiceClient, StorageSharedKeyCredential } from "@azure/storage-blob";

const accountName = process.env.AZURE_STORAGE_ACCOUNT_NAME!;
const accountKey = process.env.AZURE_STORAGE_ACCOUNT_KEY!;

const sharedKeyCredential = new StorageSharedKeyCredential(accountName, accountKey);
const client = new BlobServiceClient(
  `https://${accountName}.blob.core.windows.net`,
  sharedKeyCredential
);

Token SAS

import { BlobServiceClient } from "@azure/storage-blob";

const accountName = process.env.AZURE_STORAGE_ACCOUNT_NAME!;
const sasToken = process.env.AZURE_STORAGE_SAS_TOKEN!; // starts with "?"

const client = new BlobServiceClient(
  `https://${accountName}.blob.core.windows.net${sasToken}`
);

Hierarquia de Clientes

BlobServiceClient (account level)
└── ContainerClient (container level)
    └── BlobClient (blob level)
        ├── BlockBlobClient (block blobs - most common)
        ├── AppendBlobClient (append-only blobs)
        └── PageBlobClient (page blobs - VHDs)

Operações de Contêiner

Criar Contêiner

const containerClient = client.getContainerClient("my-container");
await containerClient.create();

// Or create if not exists
await containerClient.createIfNotExists();

Listar Contêineres

for await (const container of client.listContainers()) {
  console.log(container.name);
}

// With prefix filter
for await (const container of client.listContainers({ prefix: "logs-" })) {
  console.log(container.name);
}

Excluir Contêiner

await containerClient.delete();
// Or delete if exists
await containerClient.deleteIfExists();

Operações de Blob

Fazer Upload de Blob (Simples)

const containerClient = client.getContainerClient("my-container");
const blockBlobClient = containerClient.getBlockBlobClient("my-file.txt");

// Upload string
await blockBlobClient.upload("Hello, World!", 13);

// Upload Buffer
const buffer = Buffer.from("Hello, World!");
await blockBlobClient.upload(buffer, buffer.length);

Fazer Upload de Arquivo (Apenas Node.js)

const blockBlobClient = containerClient.getBlockBlobClient("uploaded-file.txt");
await blockBlobClient.uploadFile("/path/to/local/file.txt");

Fazer Upload de Stream (Apenas Node.js)

import * as fs from "fs";

const blockBlobClient = containerClient.getBlockBlobClient("streamed-file.txt");
const readStream = fs.createReadStream("/path/to/local/file.txt");

await blockBlobClient.uploadStream(readStream, 4 * 1024 * 1024, 5, {
  // bufferSize: 4MB, maxConcurrency: 5
  onProgress: (progress) => console.log(`Uploaded ${progress.loadedBytes} bytes`),
});

Fazer Upload do Navegador

const blockBlobClient = containerClient.getBlockBlobClient("browser-upload.txt");

// From File input
const fileInput = document.getElementById("fileInput") as HTMLInputElement;
const file = fileInput.files![0];
await blockBlobClient.uploadData(file);

// From Blob/ArrayBuffer
const arrayBuffer = new ArrayBuffer(1024);
await blockBlobClient.uploadData(arrayBuffer);

Baixar Blob

const blobClient = containerClient.getBlobClient("my-file.txt");
const downloadResponse = await blobClient.download();

// Ler como string (navegador e Node.js)

…
Perguntas frequentes

O que são 'blobs'?

Blobs são como arquivos individuais que você armazena no Azure Blob Storage. Podem ser documentos, imagens, vídeos ou qualquer outro tipo de dado.

Como a ferramenta sabe onde está meu armazenamento?

Você precisa fornecer informações de conexão, como um nome de conta e uma chave, ou uma string de conexão, para que a ferramenta possa acessar seu espaço de armazenamento no Azure.

Posso organizar meus arquivos?

Sim, você pode criar contêineres (como pastas principais) e dentro deles organizar seus blobs. Você também pode simular pastas usando nomes de arquivo com barras (ex: 'documentos/relatorio.pdf').

Detalhes

Descrição original do autor

Azure Blob Storage JavaScript/TypeScript SDK (@azure/storage-blob) for blob operations. Use for uploading, downloading, listing, and managing blobs and containers.

repo: sickn33/agentic-awesome-skills

Popularidade

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

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas