bundled-skills/azure-storage-blob-rust/SKILL.md
Azure Blob Storage SDK for Rust. Use for uploading, downloading, and managing blobs and containers.
npx skillsauth add FrancoStino/opencode-skills-antigravity azure-storage-blob-rustInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Client library for Azure Blob Storage — Microsoft's object storage solution for the cloud.
cargo add azure_storage_blob azure_identity
AZURE_STORAGE_ACCOUNT_NAME=<storage-account-name>
# Endpoint: https://<account>.blob.core.windows.net/
use azure_identity::DeveloperToolsCredential;
use azure_storage_blob::{BlobClient, BlobClientOptions};
let credential = DeveloperToolsCredential::new(None)?;
let blob_client = BlobClient::new(
"https://<account>.blob.core.windows.net/",
"container-name",
"blob-name",
Some(credential),
Some(BlobClientOptions::default()),
)?;
| Client | Purpose |
|--------|---------|
| BlobServiceClient | Account-level operations, list containers |
| BlobContainerClient | Container operations, list blobs |
| BlobClient | Individual blob operations |
use azure_core::http::RequestContent;
let data = b"hello world";
blob_client
.upload(
RequestContent::from(data.to_vec()),
false, // overwrite
u64::try_from(data.len())?,
None,
)
.await?;
let response = blob_client.download(None).await?;
let content = response.into_body().collect_bytes().await?;
println!("Content: {:?}", content);
let properties = blob_client.get_properties(None).await?;
println!("Content-Length: {:?}", properties.content_length);
blob_client.delete(None).await?;
use azure_storage_blob::BlobContainerClient;
let container_client = BlobContainerClient::new(
"https://<account>.blob.core.windows.net/",
"container-name",
Some(credential),
None,
)?;
// Create container
container_client.create(None).await?;
// List blobs
let mut pager = container_client.list_blobs(None)?;
while let Some(blob) = pager.try_next().await? {
println!("Blob: {}", blob.name);
}
DeveloperToolsCredential for dev, ManagedIdentityCredential for productionRequestContent::from() — to wrap upload datatokio runtimeFor Entra ID auth, assign one of these roles:
Storage Blob Data Reader — read-onlyStorage Blob Data Contributor — read/writeStorage Blob Data Owner — full access including RBAC| Resource | Link | |----------|------| | API Reference | https://docs.rs/azure_storage_blob | | Source Code | https://github.com/Azure/azure-sdk-for-rust/tree/main/sdk/storage/azure_storage_blob | | crates.io | https://crates.io/crates/azure_storage_blob |
This skill is applicable to execute the workflow or actions described in the overview.
data-ai
Snapshot a site's SEO state and detect ranking, indexation, metadata, canonical, robots, schema, and on-page regressions over time.
development
Coordinate focused subagents on substantial work, keep their ownership non-overlapping, and integrate verified results. Use for large-scope Codex tasks; keep trivial work with the coordinator.
data-ai
Use when an owner asks to find a cofounder or project partner. Assess only that agent's own owner and rank only approved profiles other agents posted for their own owners.
devops
Install, configure, verify, repair, update, and uninstall Hyprland on Fedora Linux with GPU-aware detection (NVIDIA/AMD/Intel).