# Build Azure Queue Workflows in TypeScript

Azure Queue Storage integrations require careful authentication and message lifecycle handling. This skill provides TypeScript patterns for queue administration, processing, retries, encoding, SAS access, and errors.

## Install

```bash
npx skillstore add sickn33/azure-storage-queue-ts
```

## Metadata

- Status: approved
- Slug: sickn33-azure-storage-queue-ts
- Skillstore revision: r2
- Version status: missing
- Tree hash: bcb79d4ab4f10048a0755ccfe9a66f2a23ecc0804a5e08f391e3b3a34a12f5e1
- Author: sickn33
- GitHub username: sickn33
- License: MIT
- Repository: https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/azure-storage-queue-ts
- Ref: 5a26d1d61d694db29af9b138c661c1981076d9df
- Supported tools: Claude, Codex, Claude Code
- Audit status: complete
- Agent install advisory: allowed
- Manual install advisory: allowed
- Artifact signature: available
- Audit attestation: unavailable
- Human verification: not\_verified
- Risk factors: external\_commands, network, env\_access
- Quality score: 69
- Public page: https://skillstore.pages.dev/skills/sickn33-azure-storage-queue-ts
- Manifest: https://skillstore.pages.dev/api/skills/sickn33-azure-storage-queue-ts/manifest

## Capabilities

- Configures queue clients with identity credentials, connection strings, shared keys, or SAS tokens.
- Creates, lists, inspects, updates, and deletes Azure storage queues.
- Sends, receives, peeks, updates, deletes, and clears queue messages.
- Designs workers with visibility timeouts, retries, poison queues, and batch processing.
- Explains message encoding, SAS generation, SDK errors, types, and service limits.

## Use Cases

- Create a Queue Client: Configure secure Azure Queue Storage access and select the correct authentication method.
- Build a Reliable Worker: Implement message polling, visibility renewal, deletion, retry limits, and poison queue handling.
- Review Queue Operations: Check SDK methods, service limits, error handling, and platform compatibility before release.

## Prompt Templates

### Configure Authentication

```
Create a TypeScript QueueServiceClient using DefaultAzureCredential and validate the required account name.
```

### Process Messages

```
Design a worker that receives ten messages, handles each safely, and deletes only successful messages.
```

### Handle Repeated Failures

```
Add retry limits and a poison queue while preserving message content and avoiding premature deletion.
```

### Design Production Processing

```
Design a production worker with visibility renewal, idempotency, bounded concurrency, least-privilege access, observability, and graceful shutdown.
```

## Limitations

- It provides guidance and examples but does not deploy or operate Azure resources.
- Users must supply an Azure account, credentials, permissions, and runtime configuration.
- Examples require testing for application-specific reliability, idempotency, monitoring, and security requirements.
- Some authentication and SAS features work only in Node.js.

## Best Practices

- Prefer managed identity and DefaultAzureCredential over shared keys or long-lived connection strings.
- Use idempotent processing, bounded retries, and a poison queue for repeated failures.
- Set visibility timeouts from observed processing duration and renew them for long tasks.

## Anti Patterns

- Do not delete a message before its work completes successfully.
- Do not grant broad SAS permissions or expose SAS URLs in logs.
- Do not run an unbounded polling loop without backoff, cancellation, and monitoring.

## Security Audit

- Audited at: 2026-08-14T09:28:10.097\+00:00
- Summary: All 87 static findings are false positives caused by Markdown fences, TypeScript template literals, expected Azure endpoints, named environment variables, and standard Base64 decoding. These examples do not execute shell commands, read environment files, or send credentials to unrelated services. One medium concern remains: the account SAS example grants broad permissions across all resource types for 24 hours.

## Stats

- Views: 94
- Downloads: 8
- Favorites: 0
- Popularity score: 0
