@Dennis You know how in Python you use venv for individual projects, and then pin your packages to a specific version? .NET core assumes that's the only way you'd want to do it and does it for you.
Even though packages are installed "globally" in ~/.nuget, that's only a cache and there's not actually such a thing as a global installation.
So upgrading packages is done manually.
If TIO's C# was based on csproj and not csopts.txt, it would autodetect the path though.