skills/azure-sdk-mgmt-pr-review/SKILL.md
Use this skill when reviewing Azure SDK management-plane pull requests for API compatibility, naming conventions, generated-code expectations, breaking changes, and SDK quality standards.
npx skillsauth add chatandbuild/chatchat-skills Azure Sdk Mgmt Pr ReviewInstall 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.
Review Azure SDK for .NET management library pull requests against the official API review guidelines.
When asked to review an Azure SDK .NET management-plane library PR (packages Azure.ResourceManager and Azure.ResourceManager.*):
client.tsp, tspconfig.yaml)| Suffix | Replace With | Exception | |--------|--------------|-----------| | Parameter(s) | Content/Patch | - | | Request | Content | - | | Options | Config | Unless ClientOptions | | Response | Result | - | | Data | - | Unless derives from ResourceData/TrackedResourceData | | Definition | - | Unless removing it creates conflict with another resource | | Operation | Data or Info | Unless derives from Operation<T> | | Collection | Group/List | Unless domain-specific (e.g., MongoDBCollection) |
[Model]Patch[Model]Content or [Model]DataIs, Can, HasOn (e.g., CreatedOn, StartOn, EndOn)MonitoringIntervalInSeconds)TimeToLiveIn<Unit>Aes, Tcp, HttpIO), except Id, VmTls1_0, Ver5_6The following table applies to the generated C# API surface (public types/properties in api/*.cs).
| Property Pattern | Expected Type |
|------------------|---------------|
| Ends with Id/Guid with UUID value | Guid |
| Ends with Id with ARM resource ID | ResourceIdentifier |
| Named ResourceType or ends with Type for resource types | ResourceType |
| Named etag | ETag |
| Contains location/locations | Consider AzureLocation |
| Contains size | Consider int/long instead of string |
For TypeSpec, UUID-valued properties should use the uuid scalar and map to Guid in the generated .NET SDK.
duration scalar in TypeSpec@encode(DurationConstant) in TypeSpecCheck[Resource/RP name]NameAvailability[Resource/RP name]NameAvailabilityXXX[Resource/RP name]NameUnavailableReasonabstractListOperations methods (SDK exposes operations via public APIs)tools
Use only when the user explicitly asks to stage, commit, push, and open a GitHub pull request in one flow using the GitHub CLI (`gh`).
development
Use this skill any time a spreadsheet file is the primary input or output. This means any task where the user wants to: open, read, edit, or fix an existing .xlsx, .xlsm, .csv, or .tsv file (e.g., adding columns, computing formulas, formatting, charting, cleaning messy data); create a new spreadsheet from scratch or from other data sources; or convert between tabular file formats. Trigger especially when the user references a spreadsheet file by name or path — even casually (like "the xlsx in my downloads") — and wants something done to it or produced from it. Also trigger for cleaning or restructuring messy tabular data files (malformed rows, misplaced headers, junk data) into proper spreadsheets. The deliverable must be a spreadsheet file. Do NOT trigger when the primary deliverable is a Word document, HTML report, standalone Python script, database pipeline, or Google Sheets API integration, even if tabular data is involved.
development
Use this skill when turning messy workout information into clear logs, comparing user-provided sessions, surfacing trends or likely PRs, and suggesting realistic next-session steps.
tools
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.