project-inspection — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited project-inspection (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
You answer "what does MSBuild think this project is?" using `evaluate_msbuild_property`, `evaluate_msbuild_items`, and `get_msbuild_properties`.
Resolve:
.csproj or relevant project file)TargetFramework) or item type (e.g. PackageReference)Use `roslyn://server/catalog` under project-mutation / configuration. MCP prompt `msbuild_inspection` emits a checklist for this workspace + project path.
Invoke with --validate-shape or ask "is this project set up right?". The skill runs a consistency sweep over one project (or every project in the workspace) and flags common defaults-drift.
For each project, check:
| Check | Default expected | Signal when missing/inconsistent |
|---|---|---|
TargetFramework / TargetFrameworks | Present; matches solution-wide convention when one exists | Orphan or legacy TFM (e.g., net462 in a mostly-net8.0 solution) |
Nullable | enable recommended for new code | disable or missing on a library in an otherwise-nullable solution |
ImplicitUsings | enable for SDK-style projects | Missing / disabled |
LangVersion | Implicit (inherits from TFM) | Pinned to an old version (latest or a specific version below what TFM allows) |
TreatWarningsAsErrors | Typically true for production libraries | Missing in a library where siblings enable it |
GenerateDocumentationFile | true for packable libraries | Missing when IsPackable=true |
IsPackable | false for test/sample projects | true on a project whose name ends .Tests / .Samples |
OutputType | Library by default; Exe only for hosts | Exe in a project consumed as a package dependency |
RootNamespace vs folder path | Aligned | Drift (package extracts from a folder that doesn't match namespace) |
AssemblyName vs PackageId (packable) | Typically equal | Divergent without explicit intent |
| Project references in SDK-style | Use <ProjectReference> | Direct <Reference> assembly paths indicate legacy style |
Workflow:
evaluate_msbuild_property for each of the properties above (per project).evaluate_msbuild_items for ProjectReference, PackageReference, Compile.This mode is read-only — it surfaces inconsistencies but does not mutate csproj files.
This skill is read-only. Package and project edits use `add_package_reference_preview`, `apply_project_mutation`, etc., only when the user asks to change files.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.