XrmToolSuite.AiSolutionReviewer 1.2026.7.12

dotnet add package XrmToolSuite.AiSolutionReviewer --version 1.2026.7.12
                    
NuGet\Install-Package XrmToolSuite.AiSolutionReviewer -Version 1.2026.7.12
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="XrmToolSuite.AiSolutionReviewer" Version="1.2026.7.12" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="XrmToolSuite.AiSolutionReviewer" Version="1.2026.7.12" />
                    
Directory.Packages.props
<PackageReference Include="XrmToolSuite.AiSolutionReviewer" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add XrmToolSuite.AiSolutionReviewer --version 1.2026.7.12
                    
#r "nuget: XrmToolSuite.AiSolutionReviewer, 1.2026.7.12"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package XrmToolSuite.AiSolutionReviewer@1.2026.7.12
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=XrmToolSuite.AiSolutionReviewer&version=1.2026.7.12
                    
Install as a Cake Addin
#tool nuget:?package=XrmToolSuite.AiSolutionReviewer&version=1.2026.7.12
                    
Install as a Cake Tool

πŸ€– AI Solution Reviewer

An XrmToolBox plugin that performs an AI-assisted architecture review of a Dataverse solution. Four UI-free collectors gather structured facts, the suite ScoreCalculator projects them onto a shared report model with a 0–100 concern score and band, and an AI layer turns the anonymized facts into a professional review. AI is opt-in with a deterministic offline fallback; the tool is read-only.

Features

Area What it does
Fact collection Four solution-scoped, UI-free collectors β€” plugins (synchronous unfiltered steps, heavy step footprint, no-step assemblies), JavaScript (deprecated client APIs Xrm.Page/crmForm//2011/Organization.svc/getServerUrl, heavy scripting), automation (classic workflows and sprawl), and ALM/governance (unmanaged solutions, default new_ prefix, version). Each degrades query failures to informational findings.
Concern score Findings score into a 0–100 concern score and band, with an Observations total plus a per-category metric row; grid and headline labels colour by band.
AI review A principal-architect review covering six sections β€” executive summary, architecture recommendations, modernization guidance, refactoring suggestions, a prioritized backlog, and a sprint plan β€” landing in the report's AI summary field.
Offline fallback With no key/consent, a deterministic templated generator produces the review and labels it offline.

Exports

  • Word (.docx, via OpenXML)
  • PDF (native, MigraDoc/PdfSharp-GDI)
  • HTML dashboard
  • Markdown
  • JSON

Each export embeds the AI (or offline) review narrative.

Help & Support

A right-aligned Help button on the toolbar opens a Help & Support dialog (Documentation, Report an issue, and a support link, each opened in the browser). The tool implements IHelpPlugin and IGitHubPlugin pointing at repository kkora/XrmToolSuite.

Build & install

This tool is not single-DLL β€” it ships the Excel/PDF export dependency chain (ClosedXML + PdfSharp/MigraDoc-GDI; the Word exporter reuses the OpenXML assembly from that chain) into the Plugins root next to the tool DLL. The one-step build copies the whole chain automatically:

dotnet build src\Tools\XrmToolSuite.AiSolutionReviewer\XrmToolSuite.AiSolutionReviewer.csproj -c Release -p:DeployToXTB=true

Restart XrmToolBox and open AI Solution Reviewer. For a manual copy to another machine, copy every DLL from the tool's bin\Release\net48\ folder β€” flat in the Plugins root, never a subfolder, or XrmToolBox silently drops the tool. See ./DEPLOYMENT.md and the suite guide Deployment_Guide_XrmToolBox.md.

Usage

  1. Connect to your Dataverse environment.
  2. Open AI Solution Reviewer and pick a solution (solutions load off the UI thread).
  3. Run the review β€” collectors run on a background worker with progress and cancellation.
  4. Review the concern score, per-area metrics, and the review narrative (AI-authored or offline).
  5. Export to Word / PDF / HTML / Markdown / JSON.

Notes & limitations

  • Read-only β€” no destructive operations; collectors and the report projection stay UI-free and degrade missing metadata to informational findings.
  • AI is opt-in. It only calls a provider β€” Anthropic / OpenAI / Google (cloud, via raw HTTPS) or Ollama (local) β€” when the provider is configured and the user approves a payload-preview consent dialog naming the provider/host/model. Only the anonymized summary payload (finding metadata + headline metrics β€” no record data, credentials or environment names) is sent; for cloud providers the session-only API key is held in memory and never persisted; any error falls back to the offline template.

Local models (Ollama) β€” no API key, nothing leaves the machine

Run the review against a local model instead of a cloud API. This is the full setup (Windows).

1. Download & install Ollama

winget install Ollama.Ollama          # or download the installer from https://ollama.com/download

After install, Ollama runs a background server automatically at http://localhost:11434 (opening that URL shows "Ollama is running"). If it isn't running, start it with:

ollama serve

2. Pull the model(s) you want (downloads once, then cached):

ollama pull qwen2.5:7b          # general reasoning β€” good default for solution review
ollama pull qwen2.5-coder:7b    # code-heavy solutions
ollama pull gemma3:4b           # faster / lighter
ollama pull llama3.2:3b         # smallest / fastest

3. (Optional) Preload / test a model β€” the tool loads it on demand, but you can warm it up:

ollama run qwen2.5:7b "hello"   # loads the model and prints a reply (proves it works)

4. Check what you have and what's loaded:

ollama list                     # models installed on disk
ollama ps                       # models currently loaded in memory (with expiry)
ollama stop qwen2.5:7b          # unload a model to free RAM/VRAM

5. In the tool: AI options β–Έ AI settings… β†’ Provider = Ollama (local), put the model id in Model (e.g. qwen2.5:7b, or click a Suggested button), leave API key blank (it's disabled for local). Then Generate AI review and approve the consent preview.

Notes: the first request loads the model and can take a while (the tool waits up to 5 minutes); later requests are fast. If Ollama isn't running or the model isn't pulled, the tool reports it and falls back to the offline summary. Bigger models (7B) give better reviews but need more RAM/VRAM; 3–4B are faster on modest machines. nomic-embed-text is an embedding model (for RAG) β€” it won't work here; use a chat model like qwen2.5, gemma3, or llama3.2.

Product Compatible and additional computed target framework versions.
.NET Framework net48 is compatible.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.2026.7.12 133 7/11/2026
1.2026.7.11 97 7/11/2026
1.2026.7.10 103 7/11/2026
1.2026.7.9 98 7/11/2026
1.2026.7.8 102 7/11/2026
1.2026.7.7 97 7/11/2026
1.2026.7.6 114 7/10/2026
1.2026.7.5 105 7/9/2026
1.2026.7.3 104 7/7/2026
1.2026.7.2 104 7/5/2026

1.2026.7.12: The AI review now renders with proper line breaks (was one run-on paragraph).