Um dos novos recursos que chegaram ao .NET Core 2.1 Preview foram as Ferramentas Globais (Global Tools). Essas ferramentas permitem criar aplicações console em .NET Core para serem empacotadas e distribuídas via NuGet. Se uma aplicação está executando em uma determinada plataforma, será instalado um pacote adequado do Global Tools. Os desenvolvedores JavaScript podem achar interessante o fato dessa ferramenta ter sido diretamente inspirada no NPM.
O .NET Core Global Tools terá suporte a instalação direta no diretório local do usuário. No entanto, na versão atual, a ferramenta deve ser instalada globalmente para todos os usuários do sistema. A instalação de uma ferramenta global é feita pelo seguinte comando:
dotnet install tool -g example
Para remover uma ferramenta já instalada, deve-se deletá-la manualmente em seu diretório de instalação. No Windows é:
%USERPROFILE%\.dotnet\tools
E no Linux:
~/.dotnet/tools
A Microsoft disponibilizou exemplos de uma ferramenta global no repositório do .NET, incluindo o dotnetsay.
. Para um exemplo mais detalhado, Alexander Tsvetkov publicou um passo-a-passo para criar uma ferramenta global desde o início, o que também mostra o porquê das ferramentas globais serem úteis: no caso, um arquivo estático de web server é combinado e pode ser executado a partir de qualquer diretório (algo útil em ambientes de desenvolvimento).
Para as versões futuras, estão planejadas: a instalação das ferramentas em um único perfil de usuário e a desinstalação de versões anteriores. Observando o que o npm global tools oferece, é plausível que futuramente o .NET Core ganhe a habilidade de atualizar ferramentas instaladas.
O Global Tools pode ser testado ao instalar o .NET Core 2.1 Preview.