Skip to content
Development
Skill

/dotnet-techne-synopsis

Use when you need blast-radius analysis, dependency graphs, cross-repo impact, breaking-change diff, or architectural overview of .NET workspaces. Keywords: blast radius, dependency graph, impact analysis, cross-repo, call graph, endpoint map, EF Core lineage, breaking change,

From plugin
dotnet-episteme-skills
1214 skills13 agents3 commands3 hooks
+1
Install
$ npx -y skills add Metalnib/dotnet-episteme-skills --skill dotnet-techne-synopsis --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/dotnet-techne-synopsis

Context preview

The summary Claude sees to decide when to auto-load this skill.

Use when you need blast-radius analysis, dependency graphs, cross-repo impact, breaking-change diff, or architectural overview of .NET workspaces. Keywords: blast radius, dependency graph, impact analysis, cross-repo, call graph, endpoint map, EF Core lineage, breaking change,

SKILL.md

dotnet-techne-synopsis.SKILL.md
name: dotnet-techne-synopsis
description: "Use when you need blast-radius analysis, dependency graphs, cross-repo impact, breaking-change diff, or architectural overview of .NET workspaces. Keywords: blast radius, dependency graph, impact analysis, cross-repo, call graph, endpoint map, EF Core lineage, breaking change, daemon, reindex."
disable-model-invocation: false
user-invocable: true
license: MIT
compatibility: Pre-built binaries for osx-arm64, osx-x64, win-x64, win-arm64, linux-x64, linux-arm64. No SDK required.
metadata:
  author: Metalnib
  version: "1.6.0"
  trigger_keywords:
    - blast radius
    - dependency graph
    - impact analysis
    - cross-repo dependencies
    - call graph
    - endpoint map
    - ef core lineage
    - what does this change affect
    - architectural overview
    - breaking change diff
    - reindex repository
    - daemon mode

Synopsis - .NET Workspace Dependency & Blast-Radius Explorer

Static analysis tool that scans .NET workspaces via Roslyn, builds a dependency graph, and answers blast-radius and breaking-change queries. Supports both one-shot CLI use and long-running daemon mode for multi-repo workspaces.

Requirements

No SDK or manual installation needed. The detect script auto-downloads the correct binary on first use.

| Platform | Binary | Downloaded from | |---|---|---| | macOS Apple Silicon | `bin/osx-arm64/synopsis` | GitHub Release `synopsis-osx-arm64.tar.gz` | | macOS Intel | `bin/osx-x64/synopsis` | GitHub Release `synopsis-osx-x64.tar.gz` | | Windows x64 | `bin/win-x64/synopsis.exe` | GitHub Release `synopsis-win-x64.zip` | | Windows arm64 | `bin/win-arm64/synopsis.exe` | GitHub Release `synopsis-win-arm64.zip` | | Linux x64 | `bin/linux-x64/synopsis` | GitHub Release `synopsis-linux-x64.tar.gz` | | Linux arm64 | `bin/linux-arm64/synopsis` | GitHub Release `synopsis-linux-arm64.tar.gz` |

External dependencies for auto-download:

  • **macOS/Linux:** `curl` (pre-installed) or `wget`
  • **Windows:** PowerShell 5+ (built-in `System.Net.Http`)

When a .NET 10 SDK is installed, the detect script downloads the slim framework-dependent build (`synopsis-<RID>-slim`, ~7x smaller) instead of the self-contained one. No SDK - self-contained build, no difference in behaviour.

Install (optional - build from source)

Only needed if you want to rebuild or no GitHub Release is available. Requires .NET 10+ SDK.

**Bash (Linux/macOS):**

./skills/dotnet-techne-synopsis/scripts/install.sh

**PowerShell (Windows):**

.\skills\dotnet-techne-synopsis\scripts\install.ps1

When to use this skill

Use when the user asks to:

  • Analyze blast radius of a code change
  • Map dependencies across .NET repos
  • Find what endpoints/services are affected by a change
  • Trace call chains from controller to database
  • Review cross-repo boundaries
  • Audit ambiguous/unresolved dependencies
  • Compare architecture between two snapshots (diff)
  • Classify breaking changes between two snapshots
  • Scope a PR's impact via git diff
  • Run a persistent daemon serving multiple repos under one graph
  • Find all callers of an HTTP endpoint across repos (`endpoint_callers`)
  • Find which services depend on a NuGet package and at what version (`package_dependents`)
  • Find HTTP endpoints that write to a specific database table (`table_entry_points`)
  • Get a service-to-service HTTP call dependency map (`repo_dependency_matrix`)

Workflow

Step 0: Detect tool

**Claude Code (plugin install):** if `mcp__plugin_dotnet-episteme-skills_synopsis__*` tools are visible, use them directly - the plugin already runs the MCP server with persistent state, so skip detection and the CLI steps below entirely. The CLI path remains for every other tool and for one-shot commands (`scan`, `diff`, `breaking-diff`).

**Bash:**

./skills/dotnet-techne-synopsis/scripts/detect-tool.sh

**PowerShell:**

.\skills\dotnet-techne-synopsis\scripts\detect-tool.ps1

Step 1: Scan a workspace

synopsis scan /path/to/workspace -o graph.json

This produces `graph.json` containing all nodes (repos, projects, controllers, methods, endpoints, HTTP clients, DB contexts, entities, tables, NuGet packages) and edges (calls, injects, implements, cross-repo, depends-on-package, etc.).

Step 2: Query the graph

**Blast radius of a symbol:**

synopsis query symbol --fqn "OrdersController" --blast-radius --graph graph.json
synopsis query symbol --fqn "IOrderRepository" --blast-radius --direction upstream --graph graph.json

**Impact analysis:**

synopsis query impact --node "OrdersController" --direction downstream --graph graph.json --json
synopsis query impact --node "Orders" --direction upstream --graph graph.json --json

**Find paths between nodes:**

synopsis query paths --from "OrdersController" --to "Orders" --graph graph.json --json

**Audit ambiguous edges:**

synopsis query ambiguous --graph graph.json --json

Step 3: Git-aware analysis

Scope analysis to files changed in a PR:

synopsis git-scan /path/to/workspace --base main --json

Step 4: Diff two scans

Compare architecture before/after a change:

synopsis diff before.json after.json --json

Step 5: Breaking-change classification

Classify typed breaking changes between two snapshots:

synopsis breaking-diff before.json after.json --json
synopsis breaking-diff before.json after.json -o report.json

Produces typed `BreakingChangeKind` values:

  • **Paired changes:** `NugetVersionBump`, `EndpointRouteChange`, `EndpointVerbChange`, `ApiSignatureChange`, `TableRename`
  • **Removals:** `PackageRemoved`, `EndpointRemoved`, `ApiRemoved`, `TableRemoved`

Heuristic pairings carry `Ambiguous` certainty; unmatched nodes flow into removal kinds.

Step 6: MCP daemon mode (multi-repo)

For persistent AI agent integration over multiple repositories. The daemon holds a `CombinedGraph` that merges per-rep

Read more
Ships withdotnet-episteme-skills

DotNet Episteme Skills - a curated, manual-first .NET AI skills library rooted in systematic knowledge (episteme) and shaped by disciplined craft (techne), designed for engineers who prioritise precision over hype.

Get the whole plugin

Other skills on dotnet-episteme-skills.