Skip to content

Add the AI infrastructure for coding agents - #1

Closed
xperiandri wants to merge 8 commits into
mainfrom
ai-infrastructure
Closed

xperiandri wants to merge 8 commits into
mainfrom
ai-infrastructure

Conversation

@xperiandri

@xperiandri xperiandri commented Oct 26, 2026 •

Copy link
Copy Markdown
Owner

Proposed Changes

The repository gets one set of instructions for AI agents: .github/copilot-instructions.md is the single source for GitHub Copilot, Claude Code and other agents, and CLAUDE.md and AGENTS.md point to it. It describes the build and test commands, the project structure, how the adornments are created, the parts that belong to the original author and the rules for Visual Studio extensions. Around it come the MCP servers in .mcp.json, the vs-extension-expert agent, six Visual Studio extension skills from madskristensen/vs-agent-plugins together with the plugin for Claude Code, the setup steps of the Copilot coding agent and a prompt that writes pull request descriptions. The extension code and the project files do not change.

Types of changes

Put an x in the boxes that apply

  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

None of these: the change adds repository tooling and documentation, not extension code.

Checklist

  • The solution builds locally without new warnings (built before and after the change with full rebuilds, with the MSBuild of Visual Studio 2026 and -p:TargetFrameworkVersion=v4.8, because the .NET Framework 4.8.1 targeting pack is not installed on that machine: no errors, the same 26 distinct warnings, the VSIX has the same size)
  • The tests pass (4 of 4 with vstest.console.exe, before and after the change)
  • The change was verified in the Visual Studio Experimental instance (the extension code did not change)
  • I have updated README.md and CHANGELOG.md (if appropriate) (nothing user-visible changed)

Further comments

The branch has eight commits that can be reviewed one by one. StringResourceVisualizer.sln changes together with the files it lists, so the solution names only existing files in every commit.

  • CI: the existing Build workflow runs on this pull request. Its build, test run and artifact upload succeed. The later step Publish Test Results fails, because the third-party action EnricoMi/publish-unit-test-result-action/windows@v2 finds no Python interpreter on the windows-2022 runner image (No python3 interpreter found), and the badge steps after it are skipped. This change touches no file that the workflow uses, but the workflow was not run without it; an actions/setup-python step before the failing one is the usual fix and is not part of this pull request.
  • Third-party content: the skills are copied unchanged from madskristensen/vs-agent-plugins at commit e971073e2163d4bc66d3e455e102c316e01c94c6 (Apache License 2.0, included next to them); .claude/settings.json enables the same catalogue as a Claude Code plugin.
  • Parts of the original author: the instructions tell agents to leave the publisher identity, the sponsorship message, the telemetry and the signing of the release build alone unless a task asks for it.
  • Copilot setup steps run on windows-2022, like the CI build, because the extension targets Visual Studio 2022: GitHub states that the integrated firewall of the Copilot coding agent is not compatible with Windows, so the agent runs without it. Its run passes.
  • Existing warnings: the build reports the NuGet audit warnings NU1902 and NU1903 for MessagePack 2.5.192, VSTHRD110 and the TODO comment; the change adds none.
  • GitHub Copilot in Visual Studio reads the instructions when custom instructions are enabled in Tools > Options > GitHub > Copilot > Copilot Chat. Claude Code asks once to approve the project MCP servers from .mcp.json.
  • Not part of this change: the migration to .slnx and changes to the existing CI workflow.

🤖 Generated with Claude Code

xperiandri and others added 8 commits October 26, 2026 01:40
`.github/copilot-instructions.md` is the single source for GitHub Copilot, Claude Code and other agents: the build and test commands, the structure, how the adornments work, the parts that belong to the original author, the rules for Visual Studio extensions and the C# guidelines. `CLAUDE.md` imports it and `AGENTS.md` points to it.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
`create-pr-description.prompt.md` compares the branch with `origin/main` and fills in the pull request template. This repository has no template, so the prompt falls back to a default structure.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
A custom agent for the extension code, based on `madskristensen/CustomAgents`. It refers to the project instructions and to the skills instead of repeating them.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Six skills of `madskristensen/vs-agent-plugins` (commit e971073e2163d4bc66d3e455e102c316e01c94c6) that apply to this extension: `handling-async-threading`, `handling-extension-errors`, `adding-editor-adornments`, `listening-text-view-events`, `adding-options-settings` and `handling-solution-events`. The content is unchanged. The Apache License 2.0 of the upstream repository comes with them, and `README.md` names the source.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Git cannot store a Windows junction, so `Directory.Build.targets` creates it when Visual Studio loads the project, and `.gitignore` excludes it. A command-line build skips the target. `Directory.Build.targets` is a solution item.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
`.claude/settings.json` registers the `vs-agent-plugins` marketplace and enables `vs-extensibility-skills`, the whole catalogue of 40 skills. If Claude Code does not offer to install it, `claude plugin install vs-extensibility-skills@vs-agent-plugins --scope project` does.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
The job runs on `windows-2022`: the VSIX builds only with the MSBuild of Visual Studio, and the extension targets Visual Studio 2022. The integrated firewall of the agent is not compatible with Windows, so the agent runs without it.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
`.mcp.json` lists `GitHub` for Visual Studio and Claude Code, and `Microsoft Learn` for Claude Code only, because Visual Studio bundles that server itself.

The GitHub server does not support the OAuth dynamic client registration that Claude Code needs, so `.claude/scripts/github-mcp-headers.ps1` passes it the token that Git Credential Manager already stores. `.mcp.json` is a solution item.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@xperiandri

Copy link
Copy Markdown
Owner Author

Superseded by mrlacey#50: the same change, opened in the original repository.

@xperiandri xperiandri closed this Oct 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant