Azure File Share TypeScript Skill
Guides coding agents through Azure SMB file-share operations in TypeScript.
The skill shows connection strings, account keys, SAS tokens, and token credentials, and includes delete, overwrite, copy, and local file I/O examples. It does not explain least privilege, user confirmation, sensitive-data non-logging, external data flows, failure recovery, or rollback, so points are deducted. No explicit red-line risk is evident.
It covers common share, directory, and file operations and includes partial HTTP-status error handling. However, it provides no skill-specific tests, edge-case coverage, retry/idempotency guidance, or abnormal-input feedback. Under static calibration the score stays at or below 10, so points are deducted.
Trigger terms, the TypeScript/JavaScript scope, Node.js/browser differences, and major scenarios are reasonably clear. Non-fit cases, input/output contracts, compatibility boundaries, Chinese-language support, and mainland-China reachability are not specified, so points are deducted.
The file has YAML metadata, MIT licensing, author and 1.0.0 version information, and a readable structure covering installation, authentication, hierarchy, operations, and best practices. It lacks a changelog, explicit maintenance owner/update path, FAQ, pinned dependency versions, and systematic limitation disclosure, so points are deducted.
The skill provides broadly useful snippets from authentication through shares, directories, files, ranges, snapshots, SAS, and error handling, making the core SDK reference task plausibly usable. There is no skill-specific executable validation, complete end-to-end sample, or comparative-benefit evidence, and some platform/API details require review; static calibration therefore caps this at 7.
The skill contains concrete code, version, and platform claims. The repository materials include generic CI, evaluation workflows, and harness tests, but they do not demonstrate coverage of this selected skill's key paths, and no third-party execution results or independent reproduction record is supplied; therefore the score remains below the static 5-point ceiling.
- Do not hard-code, commit, or log account keys, connection strings, or SAS tokens; prefer least-privilege managed identities and explicit confirmation for destructive operations.
- Before adoption, verify the current @azure/storage-file-share API signatures, browser/Node.js limits, SAS generation pattern, and range-download call, and add end-to-end tests.
- Mainland-China reachability is not documented; validate access to the required Azure services and documentation in the target environment.
What it does & when to use it
This skill supports JavaScript and TypeScript development with the @azure/storage-file-share SDK for Azure Files SMB shares, directories, and files. It covers client construction, connection strings, shared keys, Microsoft Entra credentials, and SAS access. The examples include uploads, downloads, copying, metadata, headers, ranges, snapshots, SAS generation, and RestError handling. It is a good fit for projects that need an agent to generate Azure File Share code, but execution still requires an Azure storage account and credentials.
Guides the agent to install @azure/storage-file-share and @azure/identity; construct ShareServiceClient, ShareClient, ShareDirectoryClient, and ShareFileClient; call Azure File Share APIs to create, list, delete, and configure shares; create and manage directories; upload or download strings, buffers, streams, and local files; copy and delete files; read or set properties, metadata, and HTTP headers; perform range writes, downloads, and clears; create or delete snapshots; generate file or share SAS tokens; and handle RestError status codes.
- A Node.js or TypeScript developer building a service that creates shares, directories, and files.
- A backend team uploading Azure Files content from local files, buffers, or readable streams.
- An application developer implementing partial file updates, range downloads, metadata, or HTTP headers.
- A team connecting to Azure Storage with a connection string, shared key, Microsoft Entra credential, managed identity, or SAS.
- An engineer creating snapshots before major changes and using idempotent create-or-delete patterns.
Pros & cons
- Covers shares, directories, files, ranges, snapshots, SAS, and error handling.
- Provides examples for connection strings, shared keys, Microsoft Entra credentials, and SAS.
- Clearly identifies Node.js and browser differences and states the Node.js requirement.
- Includes practical streaming and idempotent IfExists patterns.
- Several capabilities are Node.js-only, including shared keys, uploadFile, uploadStream, downloadToFile, downloadToBuffer, SAS generation, and DefaultAzureCredential.
- Examples require an Azure Storage account, network access, and valid credentials; no local emulator or offline mode is documented.
- The source provides no independent test coverage or test results for this individual skill.
- The source specifies the package as current 12.x but does not identify a more precise package version.
How to install
Install the collection with: npx skills add microsoft/skills. Select the required skill in the wizard; the collection is installed in the chosen agent directory, such as .github/skills/ for GitHub Copilot. Install the package dependencies in the project with: npm install @azure/storage-file-share @azure/identity.
How to use
In an Agent Skills-compatible coding agent, use a request containing phrases such as “file share,” “@azure/storage-file-share,” “ShareServiceClient,” “ShareClient,” “SMB,” or “Azure Files.” For example: “Create an Azure File Share, make a directory, and upload a file with @azure/storage-file-share and DefaultAzureCredential.” Configure the Azure Storage environment variables, then ask the agent to generate code following the client, authentication, and operation examples. The source does not define a platform-specific invocation command or prompt format.