Getting started

Start with the contract, not the ceremony.

Run the CLI on a real solution first. Once the output makes sense to the team, capture a baseline, wire diff into CI, and add analyzer feedback where it speeds up normal development.

Recommended first command
dotnet simplicity analyze path/to/YourSolution.sln

Use analyze first. It teaches without writing files or demanding a policy decision.

Pick the fastest honest install path

The right entry point depends on whether you are evaluating the tool, integrating it, or working inside this repo.

Global tool

Best when you want the normal user workflow and CI parity.

dotnet tool install --global SimplicityTools.Cli

Run from source

Best when you are validating changes in this repository before packaging.

dotnet build src/SimplicityTools.Cli/SimplicityTools.Cli.csproj --nologo --verbosity quiet

dotnet src/SimplicityTools.Cli/bin/Debug/net10.0/SimplicityTools.Cli.dll analyze samples/Sample.Simplified/Sample.Simplified.sln

Analyzer-first adoption

Best when the team wants IDE nudges before it is ready for CI contracts.

<PackageReference Include="SimplicityTools.Analyzers" Version="x.y.z" PrivateAssets="all" />

Recommended adoption sequence

Move from insight to policy in four deliberate steps instead of trying to skip directly to governance.

  1. Run analyze to understand the current shape without producing artifacts.
  2. Run budget if the team needs a threshold-based conversation immediately.
  3. Run baseline only after the team agrees the current shape is the floor to protect.
  4. Run diff --fail-on-regression in CI once that baseline is committed.

The zero-config promise

Missing configuration should teach, not block. SimplicityTools warns when simplicity.json is absent and continues with built-in defaults.

What you get immediately

  • Structural metrics, code metrics, and primary-path signal.
  • Filter verdicts and next-move guidance in watch/report flows.
  • A path to CI gating without inventing your own schema first.

When to add configuration

  • You want team-specific budget thresholds.
  • You want TCA inputs to reflect your actual salary and incident assumptions.
  • You are ready to turn the output into a shared policy instead of an exploratory read.