Hopp til innhold
cd /languages
  • Monorepo-standard
  • Programmering
  • AST- og symbolstø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 trygg. Typesystemet hjelper, men det fjerner ikke det egentlige problemet: delte pakker, DTO-er, genererte klienter, React-komponenter, tester og applikasjonskode som alle refererer til 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. I indekserte TypeScript-filer er tester, stories og konfigurasjon fortsatt tilgjengelige sammen med applikasjonskode, slik at en agent kan sjekke brukseksempler og oppsett før den endrer en delt komponent eller tjeneste.

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 flyten for innsending av en bestilling i 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 mest nyttig 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 `create` uten klasseprefiks.
  • > JSX-elementer regnes som instansieringer. I indekserte TypeScript-filer er tester, stories og konfigurasjon fortsatt tilgjengelige som kontekst sammen med applikasjonskode.

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.