Repository navigation
Improve starting guidance for coding agents - #10818
Kristen Womack (kristenwomack) wants to merge 5 commits into
Conversation
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
|
Azure Pipelines: Successfully started running 9 pipeline(s). 18 pipeline(s) were filtered out due to trigger conditions. There may be pipelines that require an authorized user to comment /azp run to run. |
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
🟡 Changes recommended
The revised guides omit CI safeguard and reviewer-skill routing, conflict on extension-only variable documentation, and apply Go 1.26 guidance to a Go 1.22 module.
4 open issues
What changed in this PR
This PR improves how coding agents discover azd guidance across platforms and work areas, addressing #10801.
Changes:
- Replace the root symlink with a Markdown entry point, requiring full CLI-handbook reading only for core CLI and Microsoft-authored extension work.
- Consolidate shared extension and VS Code rules while retaining local contracts and exceptions.
- Add scoped instruction frontmatter and retain mandatory extension contract review.
Extension user-contract audit: blocked by unavailable review history (8 extension files inspected; 0 new contract comments; existing-thread count unavailable).
| File | Description |
|---|---|
ext/vscode/AGENTS.md |
Route agents to authoritative VS Code instructions. |
ext/vscode/.github/copilot-instructions.md |
Consolidate VS Code conventions and validation checks. |
cli/azd/extensions/azure.ai.toolboxes/AGENTS.md |
Link shared guidance; remove duplicated dependency and Go rules. |
cli/azd/extensions/azure.ai.skills/AGENTS.md |
Link shared guidance and core-dependency policy. |
cli/azd/extensions/azure.ai.routines/AGENTS.md |
Link shared guidance; remove duplicated Go and tenant rules. |
cli/azd/extensions/azure.ai.projects/AGENTS.md |
Link shared guidance while retaining project-specific rules. |
cli/azd/extensions/azure.ai.inspector/AGENTS.md |
Link shared guidance and core-dependency policy. |
cli/azd/extensions/azure.ai.connections/AGENTS.md |
Replace duplicated dependency and Go guidance with shared links. |
cli/azd/extensions/azure.ai.agents/AGENTS.md |
Link shared guidance while retaining agent-specific requirements. |
cli/azd/extensions/AGENTS.md |
Centralize extension security, review, dependency, and validation rules. |
cli/azd/AGENTS.md |
Route mandatory extension review to the shared guide. |
.github/instructions/go.instructions.md |
Correct frontmatter and link authoritative Go conventions. |
.github/instructions/extensions.instructions.md |
Correct frontmatter and route to shared and local guides. |
.github/instructions/documentation.instructions.md |
Apply documentation-maintenance guidance repository-wide. |
.github/copilot-instructions.md |
Replace blanket handbook loading with a root-guide pointer. |
Review effort: Max
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
🟡 Changes recommended
Deleting go.instructions.md drops core CLI review rules for input precedence, ignored flags, and location-bound model/quota data without preserving them in the handbook.
2 open issues
3 resolved since last review
Review effort: Max
Remove duplicate entry for new environment variable documentation. Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Clarify CLI behavior regarding argument precedence and filtering. Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
🔵 Needs a closer look
The consolidation removes core CLI review rules for input precedence, ignored flags, and location-scoped model/quota data without preserving them elsewhere or documenting an intentional policy change.
No open issues 🎉
2 resolved since last review
Review effort: Max
Richard Park (richardpark-msft)
left a comment
There was a problem hiding this comment.
Seems fine enough, but I realize we don't have much in the way of testing around this.
VSCode Extension Installation Instructions
|
azure.ai.agents PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/10818/azure-ai-agents.zip"
|
azure.ai.inspector PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/10818/azure-ai-inspector.zip"
|
azure.ai.routines PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/10818/azure-ai-routines.zip"
|
azure.ai.toolboxes PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/10818/azure-ai-toolboxes.zip"
|
azure.ai.skills PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/10818/azure-ai-skills.zip"
|
azure.ai.connections PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/10818/azure-ai-connections.zip"
|
azure.ai.projects PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/10818/azure-ai-projects.zip"
|
JeffreyCA
left a comment
There was a problem hiding this comment.
Thank you, looks great! Just a couple of comments
| For `azure.ai.agents`, `azure.ai.connections`, `azure.ai.inspector`, | ||
| `azure.ai.projects`, `azure.ai.routines`, `azure.ai.skills`, and | ||
| `azure.ai.toolboxes`, use two PRs when an extension needs a new core change: |
There was a problem hiding this comment.
This should be the general guidance for all extensions not just these specific ones
There was a problem hiding this comment.
This kind of relates to my other comment, we should also encourage the use of stacked PRs for larger changes that build on top of each other, especially if touching both azd core and extension code. Makes reviewing much easier
The one limitation we may want to call out is that they require PRs to be opened from Azure/azure-dev - PRs from fork repos are not supported.


Summary
Intentional policy change
Agents must read the full CLI handbook for core CLI and Microsoft-authored extension work, rather than for every repository task. Repository-wide requirements and applicable path-specific guidance remain explicit.
The existing instruction-update automation still references the removed files and may propose recreating them; updating the automation is outside this PR's scope.
Discovery checks
**scope.git checkout-indexwithcore.symlinks=falseproduces a regular Markdown root file. Git records it as mode100644.git diff --checkpassed.cli/azd/extensions/AGENTS.mdafter adding file-scoped terminology exceptions.Copilot desktop observation
In a fresh Copilot desktop session based on this branch, the agent-visible initial context contained unlabeled instruction blocks matching the repository pointer, root guidance, and documentation-maintenance guidance. At that revision, the client also listed Go and extension instruction files for the agent to read, but did not inject their contents in that initial context. The Go instruction file and root Copilot pointer were removed later in response to review. Reading representative core Go, extension, VS Code, and documentation files did not visibly deliver additional instruction blocks.
This observation does not establish source attribution for unlabeled blocks, hidden client state, or behavior in other clients. It also does not prove that linked local or scoped instructions load automatically; the root guide explicitly directs agents to read applicable instructions.
Closes #10801