Dev & Engineering ✓ Microsoft · Official azure-service-busrustmessage-queuespub-subazure-identityrbactokio

Azure Service Bus for Rust

Guides Rust developers in sending and receiving Azure Service Bus messages through queues, topics, and subscriptions.

FollowSkills review · FSRS-2.0
Not recommended
47/ 100 5-point scale 2.4 / 5
Trust14 / 25 · 2.8/5

The document requires the official crate, discourages hardcoded credentials, and provides DeveloperToolsCredential/ManagedIdentityCredential guidance plus scoped RBAC roles. However, sending, receiving, and completing messages create external state changes without explicit user confirmation, and it omits data-flow disclosure, sensitive-data handling, idempotency, rollback, and recovery guidance, so points are deducted.

Reliability7 / 20 · 1.8/5

Installation, authentication, queue/topic/subscription, and settlement flows are internally consistent, and examples propagate errors with Result. However, the crate is explicitly early-stage, with no guidance for retries, lock expiry, dead-lettering, connection failures, or abnormal inputs, and no skill-specific test evidence is supplied; the static score is therefore limited.

Adaptability8 / 15 · 2.7/5

Triggers, Rust audience, and queue/topic/subscription scenarios are reasonably clear. Non-fit ranges, API/version boundaries, input/output contracts, and environment requirements are not defined, and Chinese-language support is absent. The core function depends on network access to Azure Service Bus, whose mainland-China reachability is not established by the supplied material, so points are deducted.

Convention8 / 15 · 2.7/5

The document has clear sections for installation, environment variables, authentication, workflows, RBAC, practices, references, MIT licensing, and author metadata. It lacks concrete version-pinning examples, changelog, maintenance ownership and update path, troubleshooting, and fuller limitations; the scope of the instruction not to edit Cargo.toml is also unexplained.

Effectiveness6 / 15 · 2.0/5

The material covers the core send, receive, topic, and subscription tasks and offers directly useful starting snippets. However, the crate is explicitly unsuitable for production, while the examples omit complete configuration, lifecycle management, retries, and production reliability handling. Static evidence does not establish compilation or complete outcomes, so the score remains within the static ceiling.

Verifiability4 / 10 · 2.0/5

The skill supplies docs.rs, crates.io, and Azure SDK source references, with repository-level CI/test material providing limited corroboration. The supplied evidence does not show skill-specific tests, build results, or independent reproduction, and nothing was executed in this review, so a higher score is not justified.

Evidence confidence:Low Reviewed Jul 20, 2026 Reviewed revision 9ccaf7c3704a
Before you use it
  • The crate is explicitly in early development and should not be used directly in production; verify and pin the actual version and API before adoption.
  • Sending, completing, and abandoning messages change external state; add confirmation boundaries, idempotency, retries, lock renewal, dead-letter, audit, and recovery policies before deployment.
  • Do not log message bodies or credentials, and verify Azure Service Bus reachability in the target network environment.
See the full review method →

What it does & when to use it

This skill is for Rust applications that use Azure Service Bus for enterprise messaging. It covers installation, identity-based authentication, queue and topic workflows, subscription receivers, and message settlement. It recommends the official azure_messaging_servicebus crate and explains the relevant Entra ID roles. The crate is in early development and should not be used in production because its APIs may change.

Shows how to install azure_messaging_servicebus, azure_identity, and tokio with cargo add; configure SERVICEBUS_NAMESPACE; create a ServiceBusClient with DeveloperToolsCredential or ManagedIdentityCredential; create senders and receivers for queues, topics, and subscriptions; send messages; receive batches; inspect message bodies; complete successfully processed messages; abandon messages for retry; and assign Service Bus Data Sender, Data Receiver, or Data Owner roles.

  1. A Rust application needs to send work items to an Azure Service Bus queue and uses a sender to publish Message values.
  2. A Rust worker needs to receive several queue messages, process them, and complete them to prevent redelivery.
  3. Several consumers need the same published messages, so the application uses a topic with subscriptions for fan-out delivery.
  4. A developer needs local Azure authentication with DeveloperToolsCredential, while a production design would use ManagedIdentityCredential instead.

Pros & cons

Pros
  • Covers queues, topics, subscriptions, sending, receiving, and settlement semantics.
  • Uses the official crate and documents authentication, RBAC, and credential-handling practices.
  • Includes copyable asynchronous Rust examples.
  • Distinguishes local development credentials from production managed identity.
Limitations
  • The azure_messaging_servicebus crate is explicitly early-development software and should not be used in production.
  • APIs may change, and the source provides no stability guarantee or compatibility matrix.
  • The source does not show a dedicated test suite or platform-coverage evidence for this skill.
  • Azure resources, network access, and appropriate permissions are required; pricing is not documented.

How to install

Run npx skills add microsoft/skills and select this skill in the installation wizard for the target agent. Alternatively, clone the collection and copy .github/plugins/azure-sdk-rust/skills/azure-servicebus-rust/ into the target agent skills directory. Add project dependencies with: cargo add azure_messaging_servicebus azure_identity tokio. Add azure_core only if the project directly imports azure_core types.

How to use

Use a trigger such as "service bus rust", "ServiceBusClient rust", "send message servicebus rust", "receive message servicebus rust", "queue rust messaging", or "topic subscription rust". Provide the Service Bus namespace and the relevant queue, topic, or subscription, then request a send, receive, or subscription workflow. Set SERVICEBUS_NAMESPACE=<namespace>.servicebus.windows.net and ensure the identity has the required Azure Service Bus data role.

FAQ

Is this skill suitable for production systems?
No. The SKILL.md explicitly says the crate is in early development and should not be used in production because APIs may change.
Which Azure permissions are required?
Use Azure Service Bus Data Sender to send, Data Receiver to receive, and Data Owner for full access.
What happens if message processing fails?
Complete successfully processed messages with complete_message. Abandoning a message releases its lock and makes it available for retry.
Does the source specify a cost?
No. It specifies the required Service Bus namespace and identity permissions but provides no pricing information.

More skills from this repository

All from microsoft/agent-skills

Dev & Engineering ✓ Microsoft · Official

Azure Identity for Python

A practical skill for securing Python Azure applications with Microsoft Entra ID credentials.

Dev & Engineering ✓ Microsoft · Official

Azure Event Hubs Java Skill

Build production-oriented Java event streaming applications on Azure Event Hubs.

Dev & Engineering ✓ Microsoft · Official

Azure Tables for Python

A practical guide to building authenticated Azure Tables applications with Python entity CRUD, queries, and partition-scoped batch operations.

Dev & Engineering ✓ Microsoft · Official

Azure Identity for TypeScript

Configure secure, flexible Microsoft Entra ID authentication for TypeScript Azure applications.

Automation & Ops ✓ Microsoft · Official

Azure Reliability Advisor

Assess and improve reliability for Azure Functions and App Service.

Dev & Engineering ✓ Microsoft · Official

Azure Cloud Architect

Guides coding agents through production-grade Azure architecture design and review using Azure Architecture Center practices.

Dev & Engineering ✓ Microsoft · Official

Azure AI Text Analytics for Python

Guides Python developers through Azure-powered text analysis and NLP workflows.

Automation & Ops ✓ Microsoft · Official

Azure Resource Architecture Visualizer

Analyze Azure resource groups and turn their dependencies into detailed Mermaid architecture diagrams.

Dev & Engineering ✓ Microsoft · Official

Azure Maps for .NET

Build .NET location features for search, routing, maps, geolocation, and weather.

Dev & Engineering ✓ Microsoft · Official

Azure AI Vision Image Analysis

Guides Python coding agents in implementing Azure AI Vision image understanding.

Dev & Engineering ✓ Microsoft · Official

Azure Blob Storage for Python

Guides secure, production-minded Blob Storage operations in Python.

Dev & Engineering ✓ Microsoft · Official

Azure Queue Storage for Python

Gives coding agents reliable Python patterns for secure Azure Queue Storage messaging and asynchronous task processing.

Automation & Ops ✓ Microsoft · Official

Azure AI Gateway Governance

Use Azure API Management to govern traffic across AI models, MCP tools, and agents.

Automation & Ops ✓ Microsoft · Official

AKS Automatic Readiness

Assess Kubernetes workloads for AKS Automatic compatibility and identify migration blockers before you switch.

Dev & Engineering ✓ Microsoft · Official

Azure Cosmos DB ARM for .NET

Provision and manage Azure Cosmos DB resources from .NET through ARM.

Dev & Engineering ✓ Microsoft · Official

Azure Playwright Workspace Manager

Provision and manage Microsoft Playwright Testing workspaces with .NET and Azure Resource Manager.

Dev & Engineering ✓ Microsoft · Official

Azure Cosmos DB for Python

A practical guide for building reliable Python applications on Azure Cosmos DB’s NoSQL API.

Dev & Engineering ✓ Microsoft · Official

Azure Key Vault SDK for Python

Gives Python coding agents practical guidance for securely managing Azure Key Vault secrets, keys, and certificates.

Dev & Engineering ✓ Microsoft · Official

Azure API Management for Python

Gives coding agents practical Python SDK patterns for managing Azure API Management services, APIs, products, subscriptions, and policies.

Dev & Engineering ✓ Microsoft · Official

Azure Monitor Query for Python

Generate Python code for querying Azure Monitor logs and metrics.

Related skills