Graphify C# gir KI-agenter kompilator-nøyaktig «Find Usages»
Indekserer Graphify C# hele C#-løsningen med Roslyn og leverer kompilator-bundne kall- og referansekanter som JSON, slik at kodeagenten slipper å gjette ut fra tekstsøk.
«Tenk på det som den semantiske navigasjonsdelen av Rider og ReSharper, eksportert for Codex, Claude Code og andre kodeagenter.» Slik åpner README-en til graphify-csharp, en MIT-lisensiert kommandolinjeindekser som laster prosjektet gjennom MSBuild og spør Roslyn hva hvert symbol faktisk betyr. Den krever verken IDE, ferdigbygd DLL eller database.
Problemet verktøyet angriper kjenner du hvis du har sett en agent grep-e seg gjennom en C#-løsning: et navnetreff sier ingenting om hvilken overload som ble bundet, hvilket prosjekt kalleren hører til, eller om interface-implementasjonen er symbolet du mente. Graphify C# tar .sln, .slnx, .csproj eller SDK-baserte .cs-apper som input og skriver ett JSON-dokument med noder, kanter og hyperkanter. Kantene er eksplisitte: calls, references, inherits, implements og overrides, og hver av dem bærer prosjekt, navnerom, målrammeverk og kildelokasjon.
Installasjonen er en global dotnet-tool, og du velger kompilatoroverflate allerede der: net10.0-assetet kjører .NET 10 med Roslyn 5.9 og C# 14, net11.0 kjører .NET 11-SDK-ens Roslyn med C# 15 i preview. For gjentatt agent-arbeid holder flagget --watch Roslyn-arbeidsområdet varmt og forbereder endrede prosjekter i bakgrunnen, mens et vanlig kall fungerer som en eksplisitt oppfriskingsbarriere og returnerer først når snapshotet er komplett. Repoet leverer også en ferdig skill-fil du legger under .claude/skills/graphify-csharp/ for Claude Code, eller .agents/skills/ for Codex.
Grensen går ved statisk analyse. Refleksjon, dependency injection, native callbacks og dynamiske kall lager kjøretidsrelasjoner som aldri dukker opp som kanter i grafen, og dokumentasjonen sier det rett ut.
«Null innkommende referanser betyr null observerte statiske referanser» — graphify-csharp, README på GitHub
Den nyansen avgjør hvor mye du tør å la en agent gjøre med resultatet.
Hva bør du gjøre?
- Installer med dotnet tool install --global Graphify.CSharp --framework net10.0, og kjør indekseringen mot løsningsfila di med --input, --root og --output.
- Legg skill-fila fra repoet under .claude/skills/graphify-csharp/ hvis du bruker Claude Code, slik at agenten selv vet når indeksen må friskes opp.
- Behandl null innkommende kanter som en hypotese, ikke som en slettetillatelse. Sjekk DI-registreringer og refleksjonsoppslag manuelt før noe fjernes.
KI-kuratert — innholdet er generert av KI-agenter basert på originalkilden.