Hopp til innhold
cd /languages
Monorepo-standardProgrammeringFull grafstøtte

TypeScript-støtte i Maguyva: Bedre kontekst for monorepositorier

Maguyva støtter TypeScript med AST-parsing og symbolutvinning, slik at AI-agenter kan spore grensesnitt, implementasjoner, delte pakker og JSX-tung applikasjonskode på tvers av monorepositorier.

Hvorfor TypeScript-sider betyr noe

TypeScript er språket der mange team forventer at AI-støttet refaktorering endelig skal føles trygt. Typesystemet hjelper, men det fjerner ikke det egentlige problemet: delte pakker, DTO-er, genererte klienter, React-komponenter, tester og applikasjonskode som alle trekker på de samme navnene på tvers av et stort repositorium.

For TypeScript er standarden høyere enn «den forstår syntaks». Agenten må følge kontrakten fra definisjon til implementasjon til påvirkningsradius før den redigerer en delt type, hook eller klient.

Hva Maguyva faktisk trekker ut i TypeScript

Maguyva trekker ut klasser, metoder, grensesnitt og typealiaser på tvers av .ts, .mts, .cts og de vanlige TypeScript-filvariantene rundt tester og stories. Medlemsprefikser normaliseres, men klassekvalifiserte identifikatorer bevares, noe som hjelper når et repositorium har både et rent hjelpefunksjonsnavn og en klasseomsluttet metode med samme siste segment.

JSX behandles som et ekte strukturelt signal snarere enn løs markering, og symbolforventninger hopper eksplisitt over mange test-, story- og konfigurasjonsstier. Det betyr noe i monorepositorier fordi agenten ellers bruker for mye tid på å gjenoppdage stillas i stedet for den faktiske implementasjonsflaten.

Nyttige MCP-arbeidsflyter for TypeScript-repositorier

Tre startmønstre er som regel nok:

  • Bruk find_symbol når du allerede kjenner navnet på grensesnittet, typealiaset, hooken eller tjenesten.
  • Bruk dependency_search før du endrer delte typer eller klienter som kan spre seg på tvers av pakker.
  • Bruk structural_search når du trenger en kodeform, ikke et nøkkelordtreff, for eksempel gjentakende komponent- eller metodemønstre.

For konseptuelle spørsmål som «følg innsendingsstien for kassen», er get_task_context ofte et bedre første hopp enn et rått søk.

Hvor denne siden er mest relevant

Denne siden er sterkest for web- og plattformmonorepositorier der TypeScript er koordineringslaget for flere pakker. Hvis repositoriet ditt fortsatt inkluderer mye eldre JS, les JavaScript-guiden. Hvis spørsmålet ditt egentlig er «kan agenten holde applikasjonskode og infrastrukturkontekst sammen?» kombiner dette med Terraform.

Best egnet

  • >Produkt- og plattformteam som kjører Next.js, Node-tjenester, delte pakker og verktøy inne i ett TypeScript-repositorium.
  • >Repositorier der grensesnitt, DTO-er, skjemaer og React-komponenter beveger seg sammen, men bor i forskjellige mapper.
  • >Team som prøver å gi AI-agenter trygg kontekst før de rører delte typer eller pakkegrenser.

Agent-arbeidsflyter

  • >Følg en type, et grensesnitt eller en komponent fra definisjonen til kodestiene som faktisk bruker den.
  • >Sammenlign implementasjoner på tvers av pakker før du endrer en delt hjelpefunksjon eller API-kontrakt.
  • >Kartlegg den sannsynlige påvirkningsradiusen ved å redigere en delt type, hjelpefunksjon eller tjenestemodul.

Motordetaljer

  • >TypeScript trekker ut klasser, metoder, grensesnitt og typealias i stedet for å flate alt ut til generiske symboler.
  • >Medlemsprefikser fjernes, men klassekvalifiserte identifikatorer bevares, noe som hjelper å skille `CheckoutService.create` fra en bar `create`.
  • >JSX-elementer telles som instansieringer, og test-/story-/konfig-stier hoppes eksplisitt over i symbolforventninger for å redusere støy.

Nyttige MCP-inngangspunkter

  • find_symbol

    Start her når du kjenner det delte grensesnittet, typealiaset, hooken eller tjenesten du vil undersøke.

  • dependency_search

    Bruk det før du endrer en delt DTO eller klient, for å få en realistisk påvirkningsradius på tvers av pakker.

  • structural_search

    Bruk AST-nivå-søk når du trenger et mønster, ikke et strengtreff, for eksempel gjentatte komponent- eller metodeformer.