Token导航 LogoToken导航TokenDH.com
Dotnet Developer AI Setup logo
开发工具未说明官方级别未说明来源级核验

Dotnet Developer AI Setup

MCP Server

为VS Code中的GitHub Copilot提供自动化配置和统一编码标准的开发环境设置工具,支持多语言技术栈和MCP服务器集成。

工具数

6

提示词数

0

GitHub Stars

7

资源数

0
GitHub CopilotJavaScriptVS CodeVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

AndreasKarz

提供方

AndreasKarz

最后核验

2026/5/17 20:23

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Vibe编码开发设置

介绍

此存储库包含的完整开发人员设置。NET后端 使用GitHub Copilot进行vibe编码 在VS代码中。它解决了两个问题:

  1. 自动安装和配置MCP服务器 --单个脚本设置所有必需的MCP服务器(模型上下文协议),以便Copilot可以访问Azure DevOps、数据库、Microsoft文档和其他服务。
  2. 为AI代理提供统一的编码标准 --指令、技能、代理和提示 .github/ 文件夹控制 *如何* Copilot生成代码,对其进行审查和测试。

结果:您打开VS Code,在中启动Copilot聊天 代理模式,并立即拥有一个了解您的项目约定、可以访问ADO工作项并根据您的标准生成代码的代理。

使用不同的技术栈? 此设置是为而构建的。NET,但它可以适用于任何堆栈。看 定制.md 逐步迁移示例(REST代替GraphQL,Jira代替Azure DevOps,Java代替C#等等)。

______________________________________________________________________

先决条件

在运行安装程序之前,请确保以下工具已安装且可用:

工具最低版本检查命令注意
Node.js20.0.0node --version推荐LTS版本
npm(使用Node.js)npm --version需要 npx
VS CodeVS代码内部人员必须安装当前--副驾驶扩展
GitHub Copilot当前--需要许可证(个人、企业或企业)
Git当前git --version用于符号链接和仓库管理

环境变量(可选)

一些MCP服务器需要连接字符串作为环境变量。您可以在启动VS Code之前设置这些:

变量目的示例
MDB_MCP_CONNECTION_STRINGMongoDB MCP服务器的MongoDB连接mongodb://localhost:27017
MSSQL_MCP_CONNECTION_STRINGMSSQL MCP服务器的SQL Server连接Server=localhost;Database=mydb;...
提示: 通过Windows系统环境变量或 .env 在您的个人资料中添加文件,以便每次VS Code启动时都可以使用。

______________________________________________________________________

初始设置

为什么要设置脚本?

代理模式下的GitHub Copilot可以通过以下方式访问外部工具和服务 模型上下文协议(MCP)。每个MCP服务器都必须在VS代码配置中注册(mcp.json).手动维护它容易出错且耗时,尤其是当多个具有二进制文件、Docker容器和NPX包的服务器需要协同工作时。

安装脚本一次性处理所有内容:

  • 预加载NPX包 --因此,MCP服务器的首次启动速度很快
  • 生成并合并 mcp.json --VS代码 *和* VS代码内部人员,不覆盖现有条目

运行安装程序

# Clone the repository
git clone  C:\Repos\Vibe-Coding-Dev-Setup
cd C:\Repos\Vibe-Coding-Dev-Setup

# Run once
npm run setup-mcp

该脚本会自动检测您是在Windows还是macOS上,并相应地调整路径和二进制文件。

选项

命令描述
npm run setup-mcp完整设置(所有MCP服务器+缓存)
npm run setup-mcp:dry-run显示将要执行的操作 没有 进行任何更改
npm run setup-mcp:quick跳过缓存预热——快速重新设置

也可以跳过单个步骤:

node setup-mcp-servers.mjs --skip-cache-warm      # No NPX cache warming

安装了什么?

设置后,配置以下MCP服务器:

#服务器类型用途
1azure devopsnpx、stdio在Azure DevOps中访问工作项、仓库、管道、维基
2顺序思维npx,stdio复杂问题解决的结构化思维
3微软学习HTTP(远程)搜索和检索Microsoft官方文档
4记忆npx,stdio持久代理内存的知识图
5MongoDBnpx、stdio直接访问MongoDB数据库
6微软SQLnpx、stdio直接访问SQL Server数据库

配置将写入这些文件:

  • VS代码: %APPDATA%\Code\User\mcp.json
  • VS代码内幕人士: %APPDATA%\Code - Insiders\User\mcp.json
重要提示: 安装后重新启动VS Code。首次在代理模式下打开Copilot Chat时,在下激活所需的MCP服务器 “选择工具”Azure DevOps服务器将在首次使用时要求提供组织名称。

MonoRepos的设置

在MonoRepo设置中(例如。, My-Backend/),您想使用 .github/ 人工制品(指令、技能、代理、提示) 无需将它们复制到每个存储库解决方案: 符号链接(Symlinks).

为什么选择Symlinks?

  • 单一事实来源 --指令或技能的更改集中保存在此存储库中
  • 无多重记录 --存储库之间没有手动同步
  • Git兼容 --符号链接由Git跟踪(在Windows上,开发人员模式必须处于活动状态或Git配置为 core.symlinks=true)

创建符号链接

打开一个 管理PowerShell (或确保Windows开发人员模式处于活动状态)并在目标存储库中创建符号链接:

# In the target repository (e.g., My-Backend)
cd C:\Repos\My-Backend

# Symlink for the entire .github folder
New-Item -ItemType SymbolicLink -Path ".github" -Target "C:\Repos\Vibe-Coding-Dev-Setup\.github"

如果目标存储库已经有 .github 文件夹(例如,带有工作流),仅链接相关子文件夹:

# Link only agent-specific folders
New-Item -ItemType SymbolicLink -Path ".github\instructions" -Target "C:\Repos\Vibe-Coding-Dev-Setup\.github\instructions"
New-Item -ItemType SymbolicLink -Path ".github\skills"       -Target "C:\Repos\Vibe-Coding-Dev-Setup\.github\skills"
New-Item -ItemType SymbolicLink -Path ".github\agents"       -Target "C:\Repos\Vibe-Coding-Dev-Setup\.github\agents"
New-Item -ItemType SymbolicLink -Path ".github\prompts"      -Target "C:\Repos\Vibe-Coding-Dev-Setup\.github\prompts"

# Optional: AGENTS.md in root
New-Item -ItemType SymbolicLink -Path ".github\AGENTS.md"    -Target "C:\Repos\Vibe-Coding-Dev-Setup\.github\AGENTS.md"

验证

# Verify symlink
Get-Item ".github\instructions" | Select-Object Name, LinkTarget
Windows上Git的注意事项: 确保 git config core.symlinks true 设置为正确检出符号链接。Symlinks在Windows开发人员模式下无需管理员权限即可工作(设置→ 开发者)。

______________________________________________________________________

与代理人合作

一旦设置就绪,就到了做实际工作的时候了。本章解释了人工智能配置的结构以及如何有效地使用它。

架构概述

下图显示了组件如何交互:

flowchart TB
    User["Developer (VS Code)"]
    Chat["Copilot Chat\n(Agent Mode)"]

    subgraph gh [".github/ — AI Configuration"]
        AGENTS["AGENTS.md\n(Main Agent)"]
        Instructions["instructions/\ngeneral · graphql · worker · tests"]
        Agents["agents/\nC# · Debug · DevOps\nMongoDB · MSSQL\nAPI Stitching · HotChocolate"]
        Skills["skills/\nbackend-developer\ncode-reviewer\ndatabase-specialist\ndevops-specialist\nservice-scaffolder\n..."]
        Prompts["prompts/\nImplement_from_PBI"]
    end

    subgraph mcp ["MCP Servers"]
        ADO["Azure DevOps"]
        Mongo["MongoDB"]
        MSSQL["SQL Server"]
        MSLearn["Microsoft Learn"]
        Memory["Memory\n(Graph Memory)"]
        SeqThink["Sequential\nThinking"]
    end

    User --> Chat
    Chat --> AGENTS
    AGENTS --> Instructions
    AGENTS --> Agents
    AGENTS --> Skills
    Chat --> Prompts
    Chat --> mcp

结构

所有与AI相关的工件都在 .github/ 文件夹,并由VS代码/副本自动识别:

.github/
├── AGENTS.md                      # Main agent definition (always loaded)
├── instructions/                  # Coding standards and conventions
│   ├── general.instructions.md    #   → Applies to all files (**)
│   ├── graphql.instructions.md    #   → Applies to GraphQL layer (**/GraphQL/**/*.cs)
│   ├── worker.instructions.md     #   → Applies to Worker layer (**/Worker/**/*.cs)
│   └── tests.instructions.md      #   → Applies only to test files (**/test/**/*Tests.cs)
├── agents/                        # Specialized agents
│   ├── APIStitchingExpert.agent.md #   → Schema stitching, query delegation
│   ├── CSharpExpert.agent.md      #   → C#/.NET design, patterns, performance
│   ├── DebugExpert.agent.md       #   → Build errors, runtime exceptions
│   ├── DevOpsExpert.agent.md      #   → Pipelines, Docker, Kubernetes
│   ├── HotChocolateExpert.agent.md #  → Advanced HotChocolate v15, schema design
│   ├── MongoDBExpert.agent.md     #   → Schema design, indexing, queries
│   └── MSSQLExpert.agent.md       #   → Stored procedures, execution plans
├── skills/                        # Domain-specific knowledge
│   ├── backend-developer/         #   → HotChocolate, MassTransit, MongoDB repos
│   ├── code-reviewer/             #   → Code review per project standards
│   ├── database-specialist/       #   → Data pipeline implementation
│   ├── devops-specialist/         #   → Pipeline templates, Helm, K8s patterns
│   ├── service-scaffolder/        #   → Scaffold new microservices end-to-end
│   ├── prompt-creator/            #   → Write and optimize prompts
│   └── ...                        #   → other skills (docx, pdf, xlsx, pptx, ...)
└── prompts/                       # Reusable prompt workflows
    └── Implement_from_PBI.prompt.md  # → Implement feature end-to-end from ADO PBI

什么是什么?

工件描述装载时?
代理商.md定义主要代理:角色、信任边界、不可协商的模式、工作流程和向专业代理的委托始终(在每次聊天中)
说明Copilot在生成代码时必须遵循的编码标准(例如命名约定、架构规则、测试模式)自动基于 applyTo 图案
代理主代理根据需要委托的专家代理(例如C#问题→ CSharpExpert)根据需要由主代理或直接通过 @agent
技能深入的领域知识,包括项目中的具体代码示例和模式。当副驾驶检测到技能相关时,技能会自动加载在相关上下文中自动加载
提示重复任务的预定义多步骤工作流(例如,从PBI到PR的功能实现)通过提示菜单手动

使用Prompts

提示是您通过Copilot Chat触发的预定义工作流。它们为复杂的任务提供了一种结构化的方法。

使用提示

  1. 打开 副驾驶聊天 在Agent模式下(聊天窗口中的Agent图标)
  2. 类型 / 并从列表中选择所需的提示
  3. 按照提示的说明进行操作——例如,它可能会要求输入PBI号码

示例:从PBI实现功能

Implement_from_PBI prompt将指导您完成整个实施过程:

  1. 第0阶段——识别PBI: 您提供工作项ID
  2. 第一阶段——分析: 代理从Azure DevOps读取PBI、父项、子项和链接项
  3. 第2阶段——代码库分析: 代理检查受影响的域服务及其模式
  4. 第3阶段——实施计划: 创建了一个循序渐进的计划——在编写代码之前确认它
  5. 第4阶段——实施: 一步一步地,编译和测试在每一步之后运行
  6. 第5阶段——编写测试: 根据项目惯例进行单元测试,目标是新代码覆盖率≥82%
  7. 第6阶段——代码审查:code-reviewer 根据项目标准检查技能变化
重要提示: 代理在第3阶段后等待您的明确确认。在生成代码之前,您始终可以控制计划。

无提示工作

你不需要使用提示来提高效率。该代理在免费聊天模式下也很强大,因为 指令和技能会自动加载.

直接对话

只需向代理人提问或给出指示:

"Add a new property 'ExpirationDate' of type DateTimeOffset 
 to the Contract model and adapt all affected layers."

代理人将:

  • 跟随 general.instructions.md (命名、架构规则)
  • 加载 backend-developer 技能(HotChocolate解析器模式,MongoDB存储库)
  • 逐步完成各层(抽象→ Core → 数据访问→ GraphQL)

直接致电专业客服

您也可以直接联系专业代理:

"@CSharpExpert How should I best implement the Repository pattern here 
 with a generic base class?"
"@DebugExpert This MassTransit consumer throws a NullReferenceException. 
 Help me debug it."
"@MongoDBExpert Analyze the indexes on the contracts collection and 
 suggest improvements."

直接使用MCP服务器

MCP服务器自动可供代理使用。您可以要求它积极使用它们:

"Show me the open PBIs in the current sprint."

"Search Microsoft documentation for best practices 
 on HotChocolate DataLoader."

"What does the schema of the 'contracts' collection look like in the database?"

"Create an overview of the last 10 commits in the My-Backend repo."

有效工作的最佳实践

1.提供上下文

你提供的上下文越多,结果就越好:

❌ "Add a field."
✅ "Add a property 'LastModifiedBy' (string, required) to the 
    ConsultationDocument model in the Consultation service. 
    It should be exposed in the GraphQL schema and set 
    in the repository on update."

2.工作递增

将大的变化分解为小的步骤:

Step 1: "Create the new model in Abstractions."
Step 2: "Implement the service in Core."
Step 3: "Add the repository in DataAccess."
Step 4: "Expose it via GraphQL."
Step 5: "Write the unit tests."

3.获取代码评论

更大的变化之后:

"Review my current changes on this branch."

code-reviewer 技能会自动加载并根据项目标准进行检查。

4.验证结果

信任但验证:

  • 代码可以编译吗? --代理应该运行 dotnet build 每一步之后
  • 测试通过了吗? --现有测试不得中断
  • 架构是否正确? -核心层中没有HotChocolate依赖项,API层中没有业务逻辑

______________________________________________________________________

自定义配置

扩展说明

使用说明 .github/instructions/ 根据以下内容自动加载 applyTo 图案。要添加新标准,请执行以下操作:

  1. 创建新 .instructions.md 文件
  2. 在frontmatter中定义它适用于哪些文件:
---
applyTo: "**/src/**/GraphQL/**/*.cs"
---
  1. 将规则写成清晰、强制性的指示

添加技能

一项新技能由以下文件夹组成 .github/skills/ 带着一个 SKILL.md 文件:

.github/skills/my-new-skill/
└── SKILL.md

SKILL.md 包含:

  • 前言 包含名称、描述和触发器关键字
  • 具体领域知识 使用项目中的代码示例
  • 注意事项 根据具体情况
提示: 使用 skill-creator 以结构化的方式创造新技能的技能: *“为\[域\]创建新技能。”*

添加代理

新代理存储为 .agent.md 文件下 .github/agents/每个代理定义:

  • 人物和专业知识 --他们擅长哪个领域
  • 规则和惯例 --他们必须遵循的特定模式
  • 工作流程 --他们如何处理任务
提示: 使用 agent-creator 以结构化方式创建新代理的技能: *“为\[域\]创建新代理。”*

______________________________________________________________________

故障排除

MCP服务器无法启动

  1. 重新启动VS代码 --MCP服务器在启动时初始化
  2. 激活MCP服务器 --在Copilot Chat的“选择工具”下检查服务器是否已启用
  3. 检查日志Ctrl+Shift+P → “输出:显示输出通道”→ 选择“GitHub Copilot聊天”
  4. 检查 mcp.json file --打开文件并确保配置正确:
   %APPDATA%\Code\User\mcp.json

Azure DevOps服务器报告错误

  • 确保您已登录GitHub VS代码中的Azure DevOps
  • 首次使用时,系统会要求您提供ADO组织名称——请提供不带URL前缀的名称(例如。, myorg,不 https://dev.azure.com/myorg)

再次运行安装程序

脚本可以随时再次运行。现有的 mcp.json 条目被合并,而不是被覆盖:

npm run setup-mcp

______________________________________________________________________

结论

此设置为您提供了一个AI编码代理,它:

  • 了解你的惯例 --通过指导和技能 .github/ 文件夹
  • 可以访问您的工具 --Azure DevOps、MongoDB、SQL Server、微软文档
  • 以结构化的方式工作 --通过预定义的重复工作流提示
  • 可以专攻 -通过代理进行C#、调试、DevOps、数据库、API缝合

有效工作的关键: 提供上下文,逐步工作,验证结果。 代理是一个强大的工具,但你仍然是架构师。

______________________________________________________________________

冒烟测试

设置后,在副驾驶聊天(代理模式)中问以下三个问题,验证一切正常:

1.MCP服务器连接

Search Microsoft Learn for "HotChocolate DataLoader best practices".

预期:代理使用 microsoft-learn MCP服务器并返回文档结果。

2.代理和技能加载

Review the coding standards that apply to test files in this project.

预期:代理引用 tests.instructions.md 并总结了测试约定(xUnit、Moq、FluentAttractions、命名模式 MethodName_Scenario_ExpectedBehavior).

3.顺序思维

Break down the steps needed to add a new "Notes" property (string, optional) 
to an existing entity in the Consultation service.

预期:代理使用顺序思维生成分层计划(抽象→ Core → 数据访问→ 图查询语言→ 测试)。

如果这三种方法都产生了有意义的结果,则表明您的设置工作正常。

______________________________________________________________________

许可证

该项目根据 GNU通用公共许可证v3.0 有两个第7节附加条款:

  1. 专利授权 --贡献者授予作品不可撤销的专利许可
  2. 归因要求(第7b节) --所有副本和衍生作品中必须保留原作者和源代码库:

> 原作者: 安德烈亚斯 · 卡尔茨 来源:

许可证 全文。

第三方技能

一些技能捆绑在 .github/skills/ 是具有自己许可证的第三方作品:

技能许可证许可证文件
docx, pdf, pptx, xlsxAnthropic专有LICENSE.txt 在每个技能文件夹中
skill-creator, agent-creator, prompt-creatorApache许可证2.0LICENSE.txt 在每个技能文件夹中

所有其他技能、代理、说明和提示都属于存储库的GPLv3+专利授权许可。

______________________________________________________________________

架构审查总结

检验过的: 全部4个指令,7个代理,17个技能,1个提示,agents.md,许可证 观点: 高级架构审查(初步审查后的第二轮审核+所有发现的实施)

判决:批准——生产准备就绪

.github/ 代理配置架构良好、一致,可以用作模板存储库。

已验证的内容

类别状态详细信息
信任边界集中式单一定义 general.instructions.md,所有7个代理+agents.md通过一行引用它——零重复
特定层说明完成4个正确的指令文件 applyTo 模式: ** (一般), **/GraphQL/**/*.cs, **/Worker/**/*.cs, **/test/**/*Tests.cs
试剂尺寸适当的MongoDBExpert和MSSQLExpert已调整为快速参考+技能指针;没有代理超过250行特定于域的内容
技能——代理分离清洁代理进行诊断和协调;技能提供实施知识;无角色重叠
参见项一致的AGENTS.md中的委派表和所有代理都与实际技能/代理清单匹配
许可证结构正确GPLv3+专利回购授权;Apache 2.0 LICENSE.txt的创建者技能;办公技能专有许可证.txt;前言 license 现场(如适用)
快速架构清洁Implement_from_PBI.prompt.md 引用AGENTS.md作为角色——无需重新声明
依赖关系规则单一来源层依赖关系图定义一次 general.instructions.md;DebugExpert引用它而不是复制它

建筑优势

  1. 代币效率 --集中的信任边界和重复数据消除的层规则使每个代理都保持精简。代理级上下文与特定于域的内容保持在约200-250行范围内。
  2. 明确区分关注点 --指令设置约定,代理编排和诊断,技能提供深入的实现知识。三者之间没有角色冲突。
  3. 自我学习代理 --HotChocolateExpert和DevOpsExpert在采取行动之前获取最新文档,从而降低过时知识的风险。
  4. 可组合设计 --Symlink支持使 .github/ 文件夹,为来自单一真实来源的多个存储库提供服务。
  5. 安全态势 --信任边界是全面的(12个不受信任的源类别,包括DB结果、管道YAML和GraphQL模式),具有明确的注入检测指导。

目录标签

目录标签

GitHub CopilotJavaScriptVS CodeGitHubCopilot本地部署VSCode扩展自动化配置编码标准MCP服务器

支持客户端

VS Code

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP