A collection of small, focused .NET developer tools. The repository currently ships ArtifactClean, the
artclean .NET global tool, which resets a .NET workspace to a clean state in one command: dotnet clean,
delete every bin and obj directory, then dotnet restore.
- One-step reset. Runs
dotnet clean, removesbinandobjdirectories recursively, and runsdotnet restore. - Safe traversal. Skips symbolic links, junctions and other reparse points, and skips directories it cannot read.
- Script-friendly. Exits with
0on success and1on any failure, while still finishing the remaining steps. - Quiet by default. Prints a short summary;
--verboseshows each deleted directory and thedotnetoutput. - Fast startup. Published packages include Native AOT assets for Windows, Linux and macOS on x64 and ARM64.
Install the latest published version as a global tool:
dotnet tool install --global Invex.Tools.ArtifactCleanUpdate an existing installation:
dotnet tool update --global Invex.Tools.ArtifactCleanThe tool targets .NET 10 and needs the dotnet command on PATH. The workspaces it cleans can target any
.NET version.
From the root of the workspace you want to clean:
artclean'dotnet clean' completed successfully.
Deleted 12 'bin' / 'obj' directories.
'dotnet restore' completed successfully.
Warning
ArtifactClean permanently deletes every bin and obj directory below the selected path. Select the root path carefully.
artclean --path "path/to/workspace"dotnet clean and dotnet restore run with the selected directory as their working directory. See
ArtifactClean.
artclean --no-restore
artclean --verboseThe complete command syntax is:
artclean [options]
-p, --path <directory> Root directory to clean (default: current directory)
-n, --no-restore Do not run dotnet restore after cleaning
-v, --verbose Show detailed cleanup and dotnet command output
The tool exits with code 1 when the path does not exist, dotnet clean or dotnet restore fails, or a
bin or obj directory cannot be deleted. A failed dotnet clean does not stop the cleanup. See
Exit codes.
Full documentation: https://invex-games.github.io/tools/
| Guide | Contents |
|---|---|
| Introduction | What the tools are for, when to use ArtifactClean and when not to |
| Getting Started | Install artclean and run your first cleanup |
| ArtifactClean | Command reference: options, behavior, exit codes, platforms |
The repository requires the .NET 10 SDK (see global.json).
dotnet build Invex.Tools.slnx
dotnet test Invex.Tools.slnxWarning
Do not run artclean from the repository root while developing: it deletes the build output you are testing.
Preview the documentation site with the Atom build definition:
atom BuildDocs
atom ServeDocs
# equivalently
dotnet run --project _atom/_atom.csproj -- ServeDocs| Path | Purpose |
|---|---|
src/Invex.Tools.ArtifactClean |
Source for the artclean tool |
tests/Invex.Tools.ArtifactClean.Tests |
NUnit tests for the cleanup logic |
_atom |
Atom build definition used to generate CI and release workflows |
docs |
DocFX source for the project documentation |
Invex.Tools.slnx |
Repository solution |
This project is available under the MIT License.