Add Copilot CLI skill definitions for azure-ai packages#48270
Conversation
Add reusable skill files under sdk/ai/.skills/ to provide Copilot CLI agents with domain-specific guidance for common Azure SDK for Java workflows including TypeSpec codegen, test execution, release notes, duplicate class verification, and secret management. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Adds a set of reusable Copilot CLI skill definition markdown files under sdk/ai/.skills/ to provide domain-specific guidance for common Azure SDK for Java workflows (TypeSpec codegen/customization, testing, release notes, GitHub CLI usage, etc.).
Changes:
- Introduces multiple
SKILL.mddefinitions for AI-related developer workflows (TypeSpec generation/customization, test execution, release note drafting). - Adds skills for operational tooling (GitHub
gh, test-proxy publishing, Maven local repo inspection, Key Vault work-resources secret management). - Adds a skill for comparing generated models vs
openai-javamodel shapes.
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| sdk/ai/.skills/codegen/SKILL.md | Skill instructions for tsp-client update/sync/generate workflows. |
| sdk/ai/.skills/dup-classes/SKILL.md | Skill instructions for field-by-field model shape comparison vs openai-java. |
| sdk/ai/.skills/github/SKILL.md | Skill instructions for GitHub interactions via gh CLI. |
| sdk/ai/.skills/release-notes/SKILL.md | Skill instructions for drafting/updating CHANGELOG/README content from a PR. |
| sdk/ai/.skills/run-tests/SKILL.md | Skill instructions for running Maven tests (modes, secrets, troubleshooting). |
| sdk/ai/.skills/search-m2/SKILL.md | Skill instructions for locating classes/JARs in ~/.m2/repository. |
| sdk/ai/.skills/test-proxy/SKILL.md | Skill instructions for pushing test-proxy recordings/assets. |
| sdk/ai/.skills/tsp-naming-collision/SKILL.md | Skill instructions for resolving TypeSpec → Java codegen naming collisions (suffix 1). |
| sdk/ai/.skills/tsp-type-override/SKILL.md | Skill instructions for @@alternateType overrides and validation/testing guidance. |
| sdk/ai/.skills/wr-load/SKILL.md | Skill instructions for managing secrets via work-resources (wr-*) CLI. |
|
Hi @jpalvarezl, One thing I wanted to flag is that some of these skills overlap with work we are doing as part of the Azure SDK Tools Agent effort. We are currently defining a shared set of skills that will be pushed across Azure SDK repos and designed to work with the tools agent. The goal is for those skills to be language-agnostic, while the agent itself handles the language-specific logic. Because of that, we want to avoid having overlapping skills in individual repos that could potentially confuse coding agents. At first glance, the following look like they may overlap with the shared skills we are defining:
@samvaity, can you look over the others as well and follow up if any additional ones overlap with our skills or MCP tools? For context, here is the documentation for the tools agent: And here is the current PR where we are defining the shared skills: It would probably be good for us to align on these before we land repo-specific versions so we do not end up with multiple competing skills for the same workflows. |
|
We've renamed the container folder to prevent this from being presented as any form of "default skills" for this project to any consuming agent, hopefully avoiding confusion. That being said, if things should break in the future, we are more than happy to consolidate with the general tooling. However, as currently defined, the skills in this PR are specifically designed for our use case and make certain assumptions in our setup which, as far as I understand, may not apply to the majority of other client libraries in this repository. |
* Add Copilot CLI skill definitions for azure-ai packages Add reusable skill files under sdk/ai/.skills/ to provide Copilot CLI agents with domain-specific guidance for common Azure SDK for Java workflows including TypeSpec codegen, test execution, release notes, duplicate class verification, and secret management. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * cspell * path * path * fix * Skill polish * Moved files to avoid using reserved word for name * Skill update * More word exceptions * Polish union-type-wrappers: change BinaryData getter/setter to package-private --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Gerardo Lecaros <10088504+glecaros@users.noreply.github.com>
This pull request introduces new workflow documentation files for several developer skills related to code generation, model de-duplication, duplicate class verification, and GitHub CLI usage. These documents provide step-by-step guides, best practices, and troubleshooting advice for working with TypeSpec codegen, suppressing duplicate Java models, comparing generated classes to openai-java models, and interacting with GitHub via the
ghCLI. The most important changes are grouped by theme below.TypeSpec code generation and workflow documentation:
SKILL.mdfor thecodegenskill, detailing how to runtsp-clientworkflows, update commit hashes, and handle errors when generating code from TypeSpec definitions.Model de-duplication and duplicate class verification:
SKILL.mdfor thededup-openaiskill, providing a comprehensive guide for suppressing generated Java classes that duplicate openai-java models, including step-by-step instructions, serialization bridge patterns, codegen survival rules, and common pitfalls.SKILL.mdfor thedup-classesskill, describing how to verify whether generated Java classes duplicate openai-java models by comparing fields and types, and categorizing matches for actionable suppression.GitHub CLI integration:
SKILL.mdfor thegithubskill, documenting how to use theghCLI for PRs, issues, workflow runs, advanced API queries, installation, authentication, and structured output filtering.Spell checking configuration:
cspell.yamlfor workflow docs, importing the global cspell config and adding custom words relevant to the documentation and skills.