Skip to content

Add agent dev skill for search#45972

Merged
xiangyan99 merged 8 commits into
mainfrom
search_agent_dev_skill
Apr 14, 2026
Merged

Add agent dev skill for search#45972
xiangyan99 merged 8 commits into
mainfrom
search_agent_dev_skill

Conversation

@xiangyan99

Copy link
Copy Markdown
Member

Description

Add an agent dev skill for the search-documents package

Please add an informative description that covers that changes made by the pull request and link all relevant issues.

If an SDK is being regenerated based on a new API spec, a link to the pull request containing these API spec changes should be included above.

All SDK Contribution checklist:

  • The pull request does not introduce [breaking changes]
  • CHANGELOG is updated for new features, bug fixes or other significant changes.
  • I have read the contribution guidelines.

General Guidelines and Best Practices

  • Title of the pull request is clear and informative.
  • There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

  • Pull request includes test coverage for the included changes.

@xiangyan99 xiangyan99 marked this pull request as ready for review March 27, 2026 22:27
@xiangyan99 xiangyan99 requested review from a team, benbp, l0lawrence and laiapat as code owners March 27, 2026 22:27
Copilot AI review requested due to automatic review settings March 27, 2026 22:27

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a package-specific “agent dev skill” for azure-search-documents to guide post-TypeSpec-regeneration validation and re-application of hand-authored _patch.py customizations, and registers it in the repo-wide package skill registry.

Changes:

  • Added a search-documents skill (SKILL.md) describing regeneration verification steps and customization patterns.
  • Added a references/customizations.md inventory of _patch.py customizations and their generated-code dependencies.
  • Updated the central find-package-skill registry to include azure-search-documents.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

File Description
sdk/search/azure-search-documents/.github/skills/search-documents/references/customizations.md New checklist documenting each customization file’s defined symbols and regeneration verification points.
sdk/search/azure-search-documents/.github/skills/search-documents/SKILL.md New skill guide for post-tsp-client update regeneration verification and customization re-checks.
.github/skills/find-package-skill/SKILL.md Registers the azure-search-documents package skill in the central skill lookup table.

Comment thread .github/skills/find-package-skill/SKILL.md Outdated
xiangyan99 and others added 2 commits March 27, 2026 15:57
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Comment thread sdk/search/azure-search-documents/.github/skills/search-documents/SKILL.md Outdated
samvaity added a commit to samvaity/azure-sdk-for-java that referenced this pull request Mar 31, 2026
Add the find-package-skill discovery skill at .github/skills/, matching the
pattern established in azure-sdk-for-js, azure-sdk-for-python, and
azure-sdk-for-net. This skill serves as a routing table that tells AI agents
to check for package-specific domain knowledge before modifying any SDK package.

The package skills table is currently empty — package teams can register their
skills here as they create them (e.g., azure-search-documents).

Related PRs:
- JS: Azure/azure-sdk-for-js#37484
- Python: Azure/azure-sdk-for-python#45972
- .NET: Azure/azure-sdk-for-net#57580

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
maorleger added a commit to Azure/azure-sdk-for-net that referenced this pull request Mar 31, 2026
)

## What

This PR adds support for **package-specific skills** — tribal knowledge that agents load before modifying SDK packages. Two files:

1. **`.github/skills/find-package-skill/SKILL.md`** — a discovery skill that teaches agents how to find package-specific skills by checking for `.github/skills/` inside the package directory they're modifying. No hardcoded lookup table — the directory structure IS the source of truth.

2. **`sdk/search/Azure.Search.Documents/.github/skills/search-documents/SKILL.md`** — placeholder skill for Search with scaffolded sections for domain experts to fill in.

## Related PRs

- Azure/azure-sdk-for-js#37484
- Azure/azure-sdk-for-python#45972

## Callouts

- @efrainretana is working on the contents of the Search skill for dotnet — this placeholder provides the hook for it to be picked up correctly.
- Other language repos (JS, Python) currently use a registry table approach. If directory inference works well here, we could bring it to those repos too.
Comment thread sdk/search/azure-search-documents/.github/skills/search-documents/SKILL.md Outdated
Comment thread sdk/search/azure-search-documents/.github/skills/search-documents/SKILL.md Outdated
xiangyan99 and others added 3 commits April 1, 2026 09:12
…nts/references/customizations.md

Co-authored-by: McCoy Patiño <39780829+mccoyp@users.noreply.github.com>
@xiangyan99 xiangyan99 requested review from laiapat and maorleger April 1, 2026 20:55
@xiangyan99 xiangyan99 marked this pull request as draft April 1, 2026 22:10
@xiangyan99 xiangyan99 marked this pull request as ready for review April 8, 2026 22:35
Comment thread .github/skills/find-package-skill/SKILL.md
@xiangyan99 xiangyan99 merged commit 0b97526 into main Apr 14, 2026
23 checks passed
@xiangyan99 xiangyan99 deleted the search_agent_dev_skill branch April 14, 2026 20:35
@github-project-automation github-project-automation Bot moved this from Untriaged to Done in Azure SDK for Search Apr 14, 2026
@hizixin

hizixin commented Apr 14, 2026

Copy link
Copy Markdown
Member

I also have a skill for this package in my branch that covers the end-to-end release workflow (phases 0–7: regen, sync patch files, tests, lint, changelog, samples, versioning). I'll send a follow-up PR after this merges to integrate the two.

samvaity added a commit to samvaity/azure-sdk-for-java that referenced this pull request Apr 16, 2026
Adds the infrastructure for service teams to create, validate, and maintain
package-specific Copilot skills -- the tribal knowledge that helps AI agents
work correctly on their SDK packages.

## What's included

### 1. find-package-skill (discovery registry)
Routes agents to package-specific skills before modifying any SDK package.
Matches the pattern from JS, Python, and .NET repos.

### 2. create-package-skill (bootstrap wizard)
Interactive wizard that walks service teams through creating a skill:
- Phase 0: Scan package (detect architecture, customizations, key files)
- Phase 1: Scaffold SKILL.md (common pitfalls, error categorization, patterns)
- Phase 2: Generate references (architecture.md, customizations.md)
- Phase 3: Validate (vally lint + anchor checker)
- Phase 4: Register in find-package-skill table

### 3. azure-search-documents (first package skill)
Created using the wizard as a dogfood. Covers:
- Error categorization table (generated/@generated vs hand-written)
- SearchCustomizations.java fragility patterns
- ServiceVersion dedup guards
- Breaking change detection
- Clear MCP tool handoff (activates after generate-sdk-locally shared skill)

### 4. validate_skill_anchors.py (staleness checker)
Extracts code references from skill markdown and verifies they still exist
in the codebase. Catches renamed methods, deleted files, cross-language
pollution. Tested: 22/22 anchors pass for search skill.

## Key design decisions
- Skill name = Maven artifactId (azure-search-documents, not search-documents)
- No version numbers in skills -- keep content static
- TypeSpec-first customization guardrail
- Skills activate after MCP tools have been tried -- no duplication
- Based on eval data: 1/3 -> 4/4 correct fix locations with skill

## Related
- JS: Azure/azure-sdk-for-js#37484
- Python: Azure/azure-sdk-for-python#45972
- .NET: Azure/azure-sdk-for-net#57580
- Gist: https://gist.github.com/samvaity/4981de850ce51a29fdeb7a7d063ebddc

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
samvaity added a commit to samvaity/azure-sdk-for-java that referenced this pull request Apr 16, 2026
Adds the infrastructure for service teams to create, validate, and maintain
package-specific Copilot skills -- the tribal knowledge that helps AI agents
work correctly on their SDK packages.

## What's included

### 1. find-package-skill (discovery registry)
Routes agents to package-specific skills before modifying any SDK package.
Matches the pattern from JS, Python, and .NET repos.

### 2. create-package-skill (bootstrap wizard)
Interactive wizard that walks service teams through creating a skill:
- Phase 0: Scan package (detect architecture, customizations, key files)
- Phase 1: Scaffold SKILL.md (common pitfalls, error categorization, patterns)
- Phase 2: Generate references (architecture.md, customizations.md)
- Phase 3: Validate (vally lint)
- Phase 4: Register in find-package-skill table

### 3. azure-search-documents (first package skill)
Created using the wizard as a dogfood. Covers:
- Error categorization table (generated/@generated vs hand-written)
- SearchCustomizations.java fragility patterns
- ServiceVersion dedup guards
- Breaking change detection
- Clear MCP tool handoff (activates after generate-sdk-locally shared skill)

## Key design decisions
- Skill name = Maven artifactId (azure-search-documents)
- No version numbers in skills -- keep content static
- TypeSpec-first customization guardrail
- Skills activate after MCP tools have been tried -- no duplication
- Based on eval data: 1/3 -> 4/4 correct fix locations with skill

## Related
- JS: Azure/azure-sdk-for-js#37484
- Python: Azure/azure-sdk-for-python#45972
- .NET: Azure/azure-sdk-for-net#57580

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
samvaity added a commit to samvaity/azure-sdk-for-java that referenced this pull request Apr 16, 2026
Adds the infrastructure for service teams to create, validate, and maintain
package-specific Copilot skills -- the tribal knowledge that helps AI agents
work correctly on their SDK packages.

## What's included

### 1. find-package-skill (discovery registry)
Routes agents to package-specific skills before modifying any SDK package.
Matches the pattern from JS, Python, and .NET repos.

### 2. create-package-skill (bootstrap wizard)
Interactive wizard that walks service teams through creating a skill:
- Phase 0: Scan package (detect architecture, customizations, key files)
- Phase 1: Scaffold SKILL.md (common pitfalls, error categorization, patterns)
- Phase 2: Generate references (architecture.md, customizations.md)
- Phase 3: Validate (vally lint)
- Phase 4: Register in find-package-skill table

### 3. azure-search-documents (first package skill)
Created using the wizard as a dogfood. Covers:
- Error categorization table (generated/@generated vs hand-written)
- SearchCustomizations.java fragility patterns
- ServiceVersion dedup guards
- Breaking change detection
- Clear MCP tool handoff (activates after generate-sdk-locally shared skill)

## Key design decisions
- Skill name = Maven artifactId (azure-search-documents)
- No version numbers in skills -- keep content static
- TypeSpec-first customization guardrail
- Skills activate after MCP tools have been tried -- no duplication
- Based on eval data: 1/3 -> 4/4 correct fix locations with skill

## Related
- JS: Azure/azure-sdk-for-js#37484
- Python: Azure/azure-sdk-for-python#45972
- .NET: Azure/azure-sdk-for-net#57580

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
samvaity added a commit to samvaity/azure-sdk-for-java that referenced this pull request Apr 16, 2026
Adds the infrastructure for service teams to create, validate, and maintain
package-specific Copilot skills -- the tribal knowledge that helps AI agents
work correctly on their SDK packages.

## What's included

### 1. find-package-skill (discovery registry)
Routes agents to package-specific skills before modifying any SDK package.
Matches the pattern from JS, Python, and .NET repos.

### 2. create-package-skill (bootstrap wizard)
Interactive wizard that walks service teams through creating a skill:
- Phase 0: Scan package (detect architecture, customizations, key files)
- Phase 1: Scaffold SKILL.md (common pitfalls, error categorization, patterns)
- Phase 2: Generate references (architecture.md, customizations.md)
- Phase 3: Validate (vally lint)
- Phase 4: Register in find-package-skill table

### 3. azure-search-documents (first package skill)
Created using the wizard as a dogfood. Covers:
- Error categorization table (generated/@generated vs hand-written)
- SearchCustomizations.java fragility patterns
- ServiceVersion dedup guards
- Breaking change detection
- Clear MCP tool handoff (activates after generate-sdk-locally shared skill)

## Key design decisions
- Skill name = Maven artifactId (azure-search-documents)
- No version numbers in skills -- keep content static
- TypeSpec-first customization guardrail
- Skills activate after MCP tools have been tried -- no duplication
- Based on eval data: 1/3 -> 4/4 correct fix locations with skill

## Related
- JS: Azure/azure-sdk-for-js#37484
- Python: Azure/azure-sdk-for-python#45972
- .NET: Azure/azure-sdk-for-net#57580

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
samvaity added a commit to samvaity/azure-sdk-for-java that referenced this pull request Apr 16, 2026
Adds the infrastructure for service teams to create, validate, and maintain
package-specific Copilot skills -- the tribal knowledge that helps AI agents
work correctly on their SDK packages.

## What's included

### 1. find-package-skill (discovery registry)
Routes agents to package-specific skills before modifying any SDK package.
Matches the pattern from JS, Python, and .NET repos.

### 2. create-package-skill (bootstrap wizard)
Interactive wizard that walks service teams through creating a skill:
- Phase 0: Scan package (detect architecture, customizations, key files)
- Phase 1: Scaffold SKILL.md (common pitfalls, error categorization, patterns)
- Phase 2: Generate references (architecture.md, customizations.md)
- Phase 3: Validate (vally lint)
- Phase 4: Register in find-package-skill table

### 3. azure-search-documents (first package skill)
Created using the wizard as a dogfood. Covers:
- Error categorization table (generated/@generated vs hand-written)
- SearchCustomizations.java fragility patterns
- ServiceVersion dedup guards
- Breaking change detection
- Clear MCP tool handoff (activates after generate-sdk-locally shared skill)

## Key design decisions
- Skill name = Maven artifactId (azure-search-documents)
- No version numbers in skills -- keep content static
- TypeSpec-first customization guardrail
- Skills activate after MCP tools have been tried -- no duplication
- Based on eval data: 1/3 -> 4/4 correct fix locations with skill

## Related
- JS: Azure/azure-sdk-for-js#37484
- Python: Azure/azure-sdk-for-python#45972
- .NET: Azure/azure-sdk-for-net#57580

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
samvaity added a commit to samvaity/azure-sdk-for-java that referenced this pull request Apr 16, 2026
Adds the infrastructure for service teams to create, validate, and maintain
package-specific Copilot skills -- the tribal knowledge that helps AI agents
work correctly on their SDK packages.

## What's included

### 1. find-package-skill (discovery registry)
Routes agents to package-specific skills before modifying any SDK package.
Matches the pattern from JS, Python, and .NET repos.

### 2. create-package-skill (bootstrap wizard)
Interactive wizard that walks service teams through creating a skill:
- Phase 0: Scan package (detect architecture, customizations, key files)
- Phase 1: Scaffold SKILL.md (common pitfalls, error categorization, patterns)
- Phase 2: Generate references (architecture.md, customizations.md)
- Phase 3: Validate (vally lint)
- Phase 4: Register in find-package-skill table

### 3. azure-search-documents (first package skill)
Created using the wizard as a dogfood. Covers:
- Error categorization table (generated/@generated vs hand-written)
- SearchCustomizations.java fragility patterns
- ServiceVersion dedup guards
- Breaking change detection
- Clear MCP tool handoff (activates after generate-sdk-locally shared skill)

## Key design decisions
- Skill name = Maven artifactId (azure-search-documents)
- No version numbers in skills -- keep content static
- TypeSpec-first customization guardrail
- Skills activate after MCP tools have been tried -- no duplication
- Based on eval data: 1/3 -> 4/4 correct fix locations with skill

## Related
- JS: Azure/azure-sdk-for-js#37484
- Python: Azure/azure-sdk-for-python#45972
- .NET: Azure/azure-sdk-for-net#57580

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
samvaity added a commit to samvaity/azure-sdk-for-java that referenced this pull request Apr 17, 2026
Adds the infrastructure for service teams to create, validate, and maintain
package-specific Copilot skills -- the tribal knowledge that helps AI agents
work correctly on their SDK packages.

## What's included

### 1. find-package-skill (discovery registry)
Routes agents to package-specific skills before modifying any SDK package.
Matches the pattern from JS, Python, and .NET repos.

### 2. create-package-skill (bootstrap wizard)
Interactive wizard that walks service teams through creating a skill:
- Phase 0: Scan package (detect architecture, customizations, key files)
- Phase 1: Scaffold SKILL.md (common pitfalls, error categorization, patterns)
- Phase 2: Generate references (architecture.md, customizations.md)
- Phase 3: Validate (vally lint)
- Phase 4: Register in find-package-skill table

### 3. azure-search-documents (first package skill)
Created using the wizard as a dogfood. Covers:
- Error categorization table (generated/@generated vs hand-written)
- SearchCustomizations.java fragility patterns
- ServiceVersion dedup guards
- Breaking change detection
- Clear MCP tool handoff (activates after generate-sdk-locally shared skill)

## Key design decisions
- Skill name = Maven artifactId (azure-search-documents)
- No version numbers in skills -- keep content static
- TypeSpec-first customization guardrail
- Skills activate after MCP tools have been tried -- no duplication
- Based on eval data: 1/3 -> 4/4 correct fix locations with skill

## Related
- JS: Azure/azure-sdk-for-js#37484
- Python: Azure/azure-sdk-for-python#45972
- .NET: Azure/azure-sdk-for-net#57580

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
samvaity added a commit to samvaity/azure-sdk-for-java that referenced this pull request Apr 17, 2026
Adds the infrastructure for service teams to create, validate, and maintain
package-specific Copilot skills -- the tribal knowledge that helps AI agents
work correctly on their SDK packages.

## What's included

### 1. find-package-skill (discovery registry)
Routes agents to package-specific skills before modifying any SDK package.
Matches the pattern from JS, Python, and .NET repos.

### 2. create-package-skill (bootstrap wizard)
Interactive wizard that walks service teams through creating a skill:
- Phase 0: Scan package (detect architecture, customizations, key files)
- Phase 1: Scaffold SKILL.md (common pitfalls, error categorization, patterns)
- Phase 2: Generate references (architecture.md, customizations.md)
- Phase 3: Validate (vally lint)
- Phase 4: Register in find-package-skill table

### 3. azure-search-documents (first package skill)
Created using the wizard as a dogfood. Covers:
- Error categorization table (generated/@generated vs hand-written)
- SearchCustomizations.java fragility patterns
- ServiceVersion dedup guards
- Breaking change detection
- Clear MCP tool handoff (activates after generate-sdk-locally shared skill)

## Key design decisions
- Skill name = Maven artifactId (azure-search-documents)
- No version numbers in skills -- keep content static
- TypeSpec-first customization guardrail
- Skills activate after MCP tools have been tried -- no duplication
- Based on eval data: 1/3 -> 4/4 correct fix locations with skill

## Related
- JS: Azure/azure-sdk-for-js#37484
- Python: Azure/azure-sdk-for-python#45972
- .NET: Azure/azure-sdk-for-net#57580

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
samvaity added a commit to samvaity/azure-sdk-for-java that referenced this pull request Apr 17, 2026
Adds the infrastructure for service teams to create, validate, and maintain
package-specific Copilot skills -- the tribal knowledge that helps AI agents
work correctly on their SDK packages.

## What's included

### 1. find-package-skill (discovery registry)
Routes agents to package-specific skills before modifying any SDK package.
Matches the pattern from JS, Python, and .NET repos.

### 2. create-package-skill (bootstrap wizard)
Interactive wizard that walks service teams through creating a skill:
- Phase 0: Scan package (detect architecture, customizations, key files)
- Phase 1: Scaffold SKILL.md (common pitfalls, error categorization, patterns)
- Phase 2: Generate references (architecture.md, customizations.md)
- Phase 3: Validate (vally lint)
- Phase 4: Register in find-package-skill table

### 3. azure-search-documents (first package skill)
Created using the wizard as a dogfood. Covers:
- Error categorization table (generated/@generated vs hand-written)
- SearchCustomizations.java fragility patterns
- ServiceVersion dedup guards
- Breaking change detection
- Clear MCP tool handoff (activates after generate-sdk-locally shared skill)

## Key design decisions
- Skill name = Maven artifactId (azure-search-documents)
- No version numbers in skills -- keep content static
- TypeSpec-first customization guardrail
- Skills activate after MCP tools have been tried -- no duplication
- Based on eval data: 1/3 -> 4/4 correct fix locations with skill

## Related
- JS: Azure/azure-sdk-for-js#37484
- Python: Azure/azure-sdk-for-python#45972
- .NET: Azure/azure-sdk-for-net#57580

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
fafhrd91 pushed a commit to fafhrd91/azure-sdk-for-python that referenced this pull request Apr 28, 2026
* Add agent dev skill for search

* Update .github/skills/find-package-skill/SKILL.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* update

* Update sdk/search/azure-search-documents/.github/skills/search-documents/references/customizations.md

Co-authored-by: McCoy Patiño <39780829+mccoyp@users.noreply.github.com>

* updates

* shorten the description

* updates

* clean up for 12.0.0

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: McCoy Patiño <39780829+mccoyp@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

5 participants