Pular para o conteúdo
Skillpedia
APIs e servidores (backend)40 mil · #5253

nuget-manager

Ajuda seu agente a gerenciar pacotes NuGet em projetos .NET. Ele garante o uso correto da linha de comando `dotnet` para adicionar, remover ou atualizar pacotes.

O que ela faz

Este agente ajuda a gerenciar pacotes em projetos de programação .NET. Ele garante que você adicione, remova ou atualize pacotes de forma segura usando as ferramentas corretas.

Quando usar

  • ✓Quando você precisa adicionar um novo pacote de código.
  • ✓Quando você precisa remover um pacote que não está mais em uso.
  • ✓Quando você precisa atualizar um pacote para uma nova versão.

Exemplo do que pedir para a IA

“Adicione o pacote 'Newtonsoft.Json' ao projeto 'MeuProjeto'”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/github/awesome-copilot/blob/main/skills/nuget-manager/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/github/awesome-copilot/blob/main/skills/nuget-manager/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Ele usa comandos específicos do .NET para gerenciar pacotes, evitando edições manuais que podem quebrar o projeto. Para atualizações, ele verifica se a nova versão existe e restaura o projeto para garantir que tudo funcione.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add github/awesome-copilot --skill nuget-manager

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/nuget-manager/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Gerenciador NuGet

Visão Geral

Esta habilidade garante o gerenciamento consistente e seguro de pacotes NuGet em projetos .NET. Ela prioriza o uso da CLI dotnet para manter a integridade do projeto e impõe um fluxo de trabalho rigoroso de verificação e restauração para atualizações de versão.

Pré-requisitos

  • SDK do .NET instalado (geralmente .NET 8.0 SDK ou posterior, ou uma versão compatível com a solução alvo).
  • CLI dotnet disponível em seu PATH.
  • jq (processador JSON) OU PowerShell (para verificação de versão usando dotnet package search).

Regras Principais

  1. NUNCA edite diretamente os arquivos .csproj, .props ou Directory.Packages.props para adicionar ou remover pacotes. Sempre use os comandos dotnet add package e dotnet remove package.
  2. A EDIÇÃO DIRETA é permitida APENAS para alterar versões de pacotes existentes.
  3. ATUALIZAÇÕES DE VERSÃO devem seguir o fluxo de trabalho obrigatório:
    • Verifique se a versão alvo existe no NuGet.
    • Determine se as versões são gerenciadas por projeto (.csproj) ou centralmente (Directory.Packages.props).
    • Atualize a string de versão no arquivo apropriado.
    • Execute imediatamente dotnet restore para verificar a compatibilidade.

Fluxos de Trabalho

Adicionando um Pacote

Use dotnet add [<PROJECT>] package <PACKAGE_NAME> [--version <VERSION>]. Exemplo: dotnet add src/MyProject/MyProject.csproj package Newtonsoft.Json

Removendo um Pacote

Use dotnet remove [<PROJECT>] package <PACKAGE_NAME>. Exemplo: dotnet remove src/MyProject/MyProject.csproj package Newtonsoft.Json

Atualizando Versões de Pacotes

Ao atualizar uma versão, siga estas etapas:

  1. Verificar Existência da Versão: Verifique se a versão existe usando o comando dotnet package search com correspondência exata e formatação JSON. Usando jq: dotnet package search <PACKAGE_NAME> --exact-match --format json | jq -e '.searchResult[].packages[] | select(.version == "<VERSION>")' Usando PowerShell: (dotnet package search <PACKAGE_NAME> --exact-match --format json | ConvertFrom-Json).searchResult.packages | Where-Object { $_.version -eq "<VERSION>" }

  2. Determinar Gerenciamento de Versão:

    • Procure por Directory.Packages.props na raiz da solução. Se presente, as versões devem ser gerenciadas lá via <PackageVersion Include="Package.Name" Version="1.2.3" />.
    • Se ausente, verifique os arquivos individuais de .csproj para <PackageReference Include="Package.Name" Version="1.2.3" />.
  3. Aplicar Alterações: Modifique o arquivo identificado com a nova string de versão.

  4. Verificar Estabilidade: Execute dotnet restore no projeto ou na solução. Se ocorrerem erros, reverta a alteração e investigue.

Exemplos

Usuário: "Adicionar Serilog ao projeto WebApi"

Ação: Executar dotnet add src/WebApi/WebApi.csproj package Serilog.

Usuário: "Atualizar Newtonsoft.Json para 13.0.3 em toda a solução"

Ação:

  1. Verificar se 13.0.3 existe: dotnet package search Newtonsoft.Json --exact-match --format json (e analisar a saída para confirmar que "13.0.3" está presente).
  2. Encontrar onde está definido (por exemplo, Directory.Packages.props).
  3. Editar o arquivo para atualizar a versão.
  4. Executar dotnet restore.
Perguntas frequentes

Posso editar os arquivos do projeto diretamente para adicionar ou remover pacotes?

Não, para adicionar ou remover pacotes, você deve sempre usar os comandos `dotnet add package` e `dotnet remove package`. A edição direta só é permitida para atualizar versões.

O que acontece se a atualização de um pacote causar erros?

Se ocorrerem erros após uma atualização, o agente irá reverter a mudança e você precisará investigar o problema.

Como ele sabe onde atualizar a versão do pacote?

Ele verifica se as versões são gerenciadas em um arquivo central (`Directory.Packages.props`) ou em arquivos individuais de projeto (`.csproj`) e aplica a atualização no local correto.

Detalhes

Descrição original do autor

Manage NuGet packages in .NET projects/solutions. Use this skill when adding, removing, or updating NuGet package versions. It enforces using `dotnet` CLI for package management and provides strict procedures for direct file edits only when updating versions.

repo: github/awesome-copilot

Popularidade

Estrelas no GitHub
40 mil
Posição no ranking
#5253
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas