IoCTools.Tools.Cli 1.9.1

dotnet tool install --global IoCTools.Tools.Cli --version 1.9.1
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local IoCTools.Tools.Cli --version 1.9.1
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=IoCTools.Tools.Cli&version=1.9.1
                    
nuke :add-package IoCTools.Tools.Cli --version 1.9.1
                    

IoCTools.Tools.Cli

IoCTools.Tools.Cli is the developer-facing inspection tool for IoCTools. Install it as a dotnet tool and point it at a real project to inspect generated constructors, registrations, diagnostics, configuration bindings, validators, and migration posture.

Install

dotnet tool install --global IoCTools.Tools.Cli

To install from a local build:

dotnet pack IoCTools.Tools.Cli/IoCTools.Tools.Cli.csproj -c Release -o ./artifacts
dotnet tool install --global --add-source ./artifacts IoCTools.Tools.Cli

Key Commands

ioc-tools evidence --project MyProject.csproj --json
ioc-tools evidence --project tests/MyApp.Tests.csproj --test-fixtures --production-project src/MyApp.csproj --json
ioc-tools suppress --project MyProject.csproj --codes IOC035,IOC092 --json
ioc-tools validator-graph --project MyProject.csproj --why MyValidator --json
  • evidence emits one correlated bundle across registrations, diagnostics, configuration, validators, migration hints, and generated artifacts.
  • evidence --test-fixtures --production-project <csproj> scans a test project for hand-wired Mock<T> fields, manual new Service(...) helpers, and Options.Create(...) boilerplate that can move to [Cover<T>]. Each candidate is classified as safe migration, partial migration, already covered, not a target, or unknown/manual review. See docs/testing.md → CLI Fixture Evidence for the before/after example.
  • evidence --baseline <dir> --output <dir> --json adds stable artifact fingerprints and structured compare deltas with added, removed, changed, and unchanged status.
  • suppress --json emits structured suppression metadata alongside the .editorconfig recipe.
  • validator-graph --json and validator-graph --why --json emit structured contracts for validator topology and lifetime reasoning.

Do not replace [Cover<T>] compile-time fixture generation with runtime scanning/reflection. That pathway is rejected by IoCTools doctrine — file an issue against IoCTools if you hit a gap in the generator instead of working around it.

Authoring Guidance

  • Never use [Inject] in new code.
  • Never use InjectConfiguration in new code.
  • Prefer [DependsOn<T>] for service dependencies.
  • Prefer [DependsOnConfiguration<T>] or [DependsOnOptions<T>] for configuration dependencies.

See the repo docs for the full reference:

  • docs/cli-reference.md
  • docs/diagnostics.md
  • docs/attributes.md
Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
1.9.1 72 5/23/2026
1.8.0 100 5/12/2026
1.7.3 95 5/6/2026
1.7.2 91 5/6/2026
1.7.1 87 5/6/2026
1.6.1 118 4/29/2026
1.6.0 98 4/29/2026
1.5.1 118 4/12/2026

v1.9.0: version-coherence rebuild — no functional changes in this package. The 1.9.0 feature work landed in IoCTools.Testing / IoCTools.Testing.Abstractions ([Cover<T>] ConcreteHandling knob, TestFixturePipeline namespace-exact match, FixtureEmitter static-mutable purge). Carries forward the 1.8.0 [InjectConfiguration] null-fallback behavior change. See CHANGELOG.md.