>_ DevTrendsnl

Taal

Home

Talen

Secties

Frontend Backend Mobiel DevOps AI / ML GameDev Blockchain Embedded Beveiliging
TypeScript

Stop met het Voeden van Neurale Netwerken met Gigabytes aan Code en Verander je Repository in een Grafiek

Elke keer dat ik een onbekende repository met enkele tienduizenden regels code open en AI wil betrekken bij refactoring, gebeurt hetzelfde. De assistent begint gretig door bestanden te greppen, vult het contextvenster met ongerelateerde codefragmenten, raakt in de war over aanroepen en produceert uiteindelijk een hallucinatie in plaats van een werkende patch. We besteden tonnen tokens, maar het model begrijpt nooit hoe de delen van het systeem met elkaar verbonden zijn.

Onlangs stuitte ik op een interessant project genaamd Ix. De auteurs kozen voor een andere aanpak: in plaats van rauwe tekst aan neurale netwerken te voeren, bouwen ze een lokale afhankelijkheidsgrafiek van de codebase.

Wat Ix Doet

In essentie is het een CLI-hulpprogramma en lokale backend die de repository parseert met behulp van een tree-sitter parser. Het hulpprogramma ondersteunt 26 programmeertalen, waaronder TypeScript, Go, Rust, Python, Java, C++, Ruby en Elixir, en herkent ook configuratiebestanden zoals YAML, SQL en Dockerfile.

Tijdens het scannen haalt het hulpprogramma de structuur eruit: functies, klassen, import-punten en aanroepketens. Dit alles wordt opgeslagen in een lokale ArangoDB-graafdatabase die draait in Docker. Het resultaat is dat in plaats van eindeloos bestanden lezen en giswerk, de ontwikkelaar en LLM een interactieve kaart van het project krijgen die met gerichte commando's kan worden opgevraagd.

Context blijft behouden tussen sessies. Als je de terminal sluit of de editor herstart, verdwijnen de opgebouwde verbindingen niet.

Vier Commando's in Plaats van Eindeloos Zoeken

Alle werkzaamheden met het hulpprogramma draaien rond vier basisscenario's.

1. Een Kaart Bouwen

Eerst scannen we de huidige codebase:

ix map .

De parser doorloopt bestanden, parseert syntaxisbomen en bouwt de initiële afhankelijkheidsgrafiek.

2. Een Component Uitleggen

Als je snel wilt begrijpen waar een specifieke module verantwoordelijk voor is en waarmee deze verbonden is, roep je explain aan:

ix explain IngestionService

Het commando geeft een korte samenvatting voor het symbool, samen met een lijst van inkomende en uitgaande verbindingen.

3. Stromen Traceren

Als je een gegevensverwerkingsketen traceert, is het trace commando handig:

ix trace user_login_flow

Het doorloopt de graafknopen en toont de aanroepvolgorde van het startpunt tot de eindhandler.

4. De Impact van Wijzigingen Beoordelen

Voordat je een gedeelde functie of dataschema bewerkt, is het de moeite waard om te controleren wat er zou kunnen breken:

ix impact verify_token

Het hulpprogramma vindt alle plaatsen die direct of indirect afhangen van het geselecteerde symbool. Volgens de auteurs bespaart deze gerichte structuurzoektocht tussen 30% en 99% van de tokens bij ontwikkeltaken.

Verbinding Maken met Editors via MCP

De CLI heeft al een Model Context Protocol (MCP) server ingebouwd. Dit betekent dat het hulpprogramma gemakkelijk kan worden verbonden met elk modern AI-hulpmiddel: Cursor, VS Code, Claude Code, Codex, Gemini CLI of OpenClaw.

Automatische installatie van alle gedetecteerde clients wordt gestart met één commando:

ix mcp install

Het script controleert de configuraties op de machine en voegt zorgvuldig de ix mcp serverstart toe. Het maakt ook reservekopieën van configuraties met de .bak extensie en overschrijft niet blindelings bestaande instellingen.

Als je een client handmatig moet registreren (bijvoorbeeld Codex), voer je gewoon uit:

codex mcp add ix-memory -- ix mcp

Wanneer een agent een taak voltooit, opent het de lokale graaf direct via MCP-tools, in plaats van blind door honderden bestanden te greppen.

Installatie en Systeemvereisten

Je hebt Node.js 22+, Git, ripgrep en een werkende Docker met Docker Compose nodig (het draait ArangoDB op de achtergrond).

Op macOS en Linux is de installatie één regel:

curl -fsSL https://ix-infra.com/install.sh | sh

Voor Windows is er een PowerShell-script:

irm https://ix-infra.com/install.ps1 | iex

Na de installatie controleer je de servicestatus:

ix status
ix docker start
ix doctor

Als de database nog niet draait, zal ix docker start de ArangoDB-container op de achtergrond starten.

Conclusie

Het project is momenteel in vroege alfa, dus commando-gedrag en API kunnen nog veranderen. Documentatie is momenteel minimaal, en de afhankelijkheid van een lokale Docker-container voegt wat overhead toe bij de eerste start.

Wie zou het project moeten proberen:

  • Ontwikkelaars die regelmatig door grote onbekende repositories navigeren.
  • Degenen die actief Claude Code, Cursor of Codex gebruiken en genoeg hebben van context-overloop.
  • Teams die een lokale kennisbank van verbindingen binnen microservices nodig hebben zonder broncode naar servers van derden te sturen.

Als je op zoek bent naar een manier om orde te brengen in hoe AI interageert met je codebase, bekijk dan de GitHub-repository van het project en test ix map op je eigen project.

Gerelateerde projecten