Graphify: Fra kaotisk kodebase til en søgbar hjerne for AI-assistenter
Graphify: Giv din AI-assistent et kort over din kode
Lad os være ærlige: De fleste af os har åbnet en kodebase, vi ikke har rørt i måneder, og mærket den velkendte uro. Du ved, filerne er der. Du husker vagt arkitekturen. Men at forbinde prikkerne? Det er et arkæologiprojekt.
Graphify vil ændre det – specifikt for AI coding assistants.
Hvad er Graphify egentlig?
Graphify er et open-source værktøj, der bygger en søgbar vidensgraf fra din samlede kodebase. Vi taler kildekode, dokumentation, forskningsartikler og endda diagrammer – alt sammen flettet ind i én enkelt, søgbar graf, der forklarer både hvad din kode gør og hvorfor den er designet, som den er.
Tænk på det som at give din AI-assistent et kort over dit projekt i stedet for bare en bunke filer.
Værktøjet blev skabt af Safi Shamsi og udgivet under MIT-licensen. Det bygger på solide, veletablerede grundpiller: NetworkX til grafoperationer og Tree-sitter til statisk kodeanalyse.
Den multi-modale magi
Det, der gør Graphify interessant, er at det ikke bare parser kode. Det håndterer flere inputtyper:
- Kilkode (.py, .js, .go, .java og mere) — Tree-sitter udtrækker abstract syntax trees, call graphs og docstrings
- Markdown og PDF'er — LLM-drevet udtrækning henter koncepter fra prose
- Diagrammer og billeder — Vision-modeller læser faktisk dine arkitekturdiagrammer
Denne multi-modale tilgang betyder, at du ikke bare får et call graph. Du får semantiske relationer mellem koncepter på tværs af forskellige filtyper og formater.
Fra kaotisk repo til interaktiv graf
Pipeline'en er ligetil, men kraftfuld:
- Detect & Collect — Find alle relevante filer
- Extract — Træk ASTs og semantiske noder/kanter ud
- Build — Opret en NetworkX-graf
- Cluster — Anvend Leiden-algoritmen til community detection
- Analyze — Identificer "god nodes" (filer med høj centralitet) og uventede forbindelser
- Report — Generer læsbar output
Community detection-delen er særligt smart. I stedet for at stole på vektor-embeddings (som kan være dyrt og upræcist), bruger Graphify Leiden-algoritmen til at gruppere relateret kode i semantiske klynger. Ingen embedding-model påkrævet.
God Nodes og "overraskelser"
En funktion, der fangede min opmærksomhed: Graphify identificerer det, den kalder "god nodes" – filer eller komponenter med den højeste forbindelse i din graf. Det er typisk dine kerneklasser, hovedentry points eller kritiske delte utilities.
Endnu mere interessant er det, at den markerer "overraskelser" – uventede tværfil- eller tværdomæne-forbindelser, der kan indikere designproblemer, udokumenterede afhængigheder eller områder, der er værd at undersøge nærmere.
I et af deres worked examples med httpx-biblioteket fandt Graphify en overraskende forbindelse mellem DigestAuth og Response. Den slags relationer er ikke oplagte, når man læser individuelle filer, men bliver krystalklare, når de visualiseres som en graf.
Token-effektivitetsargumentet
Her er et tal, der er værd at huske: i deres mixed corpus benchmark (GPT framework-repos plus forskningspapirer) opnåede Graphify en 71,5× reduktion i token-forbrug sammenlignet med naive context injection-tilgange.
Det er ikke ligegyldigt. Når du betaler per token for AI API-kald, betyder det noget at skære query-omkostninger med den margin. Og det handler ikke kun om penge – mindre context windows betyder hurtigere svar og mindre hallucinationsrisiko.
Sikkerhed, der ikke bliver ignoreret
Open-source værktøjer, der henter URLs og behandler kode, er nødt til at tage sikkerhed alvorligt. Graphify ser ud til at gøre det:
- Kun http/https URLs tilladt
- Størrelses- og timeout-begrænsninger på downloads
- Sti-begrænsningstjek (ingen directory traversal)
- HTML-escaping på alle node-labels
- Ingen telemetri eller tredjeparts dataopsamling
Din kode forlader aldrig dit miljø. Graphify sender kun semantiske beskrivelser (ikke rå kildekode) til din konfigurerede AI-model.
Hvordan det integrerer med AI-assistents
Graphify kommer med simple kommandoer til Claude Code, Codex og OpenCode:
/graphify— Byg en ny graf/graphify query <spørgsmål>— Stil spørgsmål om din kodebase/graphify path <fil>— Fokuser på specifikke stier/graphify explain— Få forklaringer på grafstrukturen
Output inkluderer en interaktiv graph.html-visualisering, en graph.json til programmatisk adgang og en GRAPH_REPORT.md-auditfil.
Installation
Hvis du vil prøve det:
pip install graphifyy
graphify install
graphify ./your-project
Krav: Python 3.10+ og en API-nøgle konfigureret til din foretrukne AI-model (Claude, OpenAI osv.).
Hvor Graphify passer ind i økosystemet
Det forsøger ikke at erstatte Sourcegraph's enterprise kode-søgning eller Neo4j's general-purpose grafdatabase. I stedet indtager Graphify et interessant mellemområde:
- Mere semantisk end statiske analyseværktøjer
- Mere struktureret end vektor-baseret retrieval
- Purpose-built til AI assistant context injection
For udviklere, der arbejder med AI coding assistants på komplekse projekter – især mixed codebases med dokumentation og forskning – fylder det et reelt hul.
Det store billede
Værktøjer som Graphify repræsenterer en bredere trend: AI-assistenter, der ikke bare genererer kode, men faktisk forstår de systemer, de arbejder med. En vidensgraf er ikke bare en visualiseringsfidus – det er en ræsonneringsstruktur, der kan understøtte mere præcise, kontekstbevidste forslag.
Om Graphify bliver standarden for AI-kodeforståelse, gjenstår at se. Men problemet, det løser, er virkeligt. Kodebaser er komplekse, sammenkoblede systemer. Måske fortjener de graf-baserede værktøjer i stedet for filtræ-navigatorer.
Hvis du har kæmpet med at få AI-assistenter til at forstå dit projects arkitektur, er Graphify måske værd at bruge en eftermiddag på at eksperimentere med.
Har du prøvet vidensgraf-værktøjer til kodeforståelse? Del din erfaring i kommentarerne.