Lompat ke konten
cd /languages
Default monorepoProgrammingDukungan graph penuh

Dukungan TypeScript di Maguyva: Konteks yang Lebih Baik untuk Monorepo

Maguyva mendukung TypeScript dengan parsing AST dan ekstraksi simbol sehingga agen AI dapat menelusuri interface, implementasi, package bersama, dan kode aplikasi yang sarat JSX di seluruh monorepo.

Mengapa halaman TypeScript itu penting

TypeScript adalah bahasa tempat banyak tim berharap refactoring berbantuan AI akhirnya terasa aman. Sistem type-nya membantu, tetapi tidak menghilangkan masalah sesungguhnya: package bersama, DTO, client hasil generate, komponen React, test, dan kode aplikasi semuanya menarik nama yang sama di seluruh repo besar.

Untuk TypeScript, standarnya lebih tinggi daripada sekadar “memahami sintaks.” Agen perlu mengikuti kontrak dari definisi ke implementasi hingga radius dampak sebelum mengedit type, hook, atau client bersama.

Apa yang sebenarnya diekstraksi Maguyva dari TypeScript

Maguyva mengekstraksi class, method, interface, dan type alias di seluruh .ts, .mts, .cts, dan varian file TypeScript umum di seputar test dan story. Awalan member dinormalkan, tetapi identifier yang dikualifikasi class tetap dipertahankan, yang membantu saat sebuah repo memiliki nama helper polos sekaligus method yang terlingkup class dengan segmen akhir yang sama.

JSX diperlakukan sebagai sinyal struktural sungguhan, bukan markup yang tercecer, dan ekspektasi simbol secara eksplisit melewati banyak jalur test, story, dan config. Ini penting dalam monorepo karena kalau tidak, agen akan menghabiskan terlalu banyak waktu menemukan ulang scaffolding alih-alih permukaan implementasi yang sebenarnya.

Alur kerja MCP yang berguna untuk repo TypeScript

Tiga pola awal biasanya sudah cukup:

  • Gunakan find_symbol saat Anda sudah tahu nama interface, type alias, hook, atau service.
  • Gunakan dependency_search sebelum mengubah type atau client bersama yang mungkin merambat ke banyak package.
  • Gunakan structural_search saat Anda butuh bentuk kode, bukan kecocokan kata kunci, misalnya pola komponen atau method yang berulang.

Untuk pertanyaan konseptual seperti “telusuri jalur pengiriman checkout,” get_task_context sering menjadi lompatan awal yang lebih baik daripada pencarian mentah.

Di mana halaman ini paling relevan

Halaman ini paling kuat untuk monorepo web dan platform tempat TypeScript menjadi lapisan koordinasi untuk banyak package. Jika repo Anda masih mencakup banyak JS lama, baca panduan JavaScript. Jika pertanyaan Anda sebenarnya “bisakah agen memegang konteks kode aplikasi dan infra secara bersamaan?” padukan ini dengan Terraform.

Paling cocok untuk

  • >Tim produk dan platform yang menjalankan Next.js, service Node, package bersama, dan tooling di dalam satu repo TypeScript.
  • >Repo tempat interface, DTO, schema, dan komponen React bergerak bersamaan tetapi berada di direktori yang berbeda.
  • >Tim yang berusaha memberi agen AI konteks yang aman sebelum menyentuh type bersama atau batas package.

Workflow agent

  • >Mengikuti sebuah type, interface, atau komponen dari definisinya hingga ke jalur kode yang benar-benar menggunakannya.
  • >Membandingkan implementasi lintas package sebelum mengubah helper bersama atau kontrak API.
  • >Memetakan radius dampak yang mungkin timbul dari mengedit type, utilitas, atau service module bersama.

Detail engine

  • >TypeScript mengekstrak class, method, interface, dan type alias alih-alih meratakan semuanya jadi simbol generik.
  • >Prefix member dihilangkan, tapi identifier yang dikualifikasi class tetap dipertahankan, yang membantu membedakan `CheckoutService.create` dari `create` yang berdiri sendiri.
  • >Elemen JSX dihitung sebagai instantiation, dan path test/story/config secara eksplisit dilewati dalam ekspektasi simbol untuk mengurangi noise.

Titik masuk MCP yang berguna

  • find_symbol

    Mulai dari sini kalau kamu sudah tahu interface bersama, type alias, hook, atau service yang ingin kamu periksa.

  • dependency_search

    Gunakan sebelum mengubah DTO atau client bersama untuk mendapat radius dampak yang realistis lintas package.

  • structural_search

    Gunakan pencarian tingkat AST kalau kamu butuh sebuah pola, bukan kecocokan string, misalnya bentuk component atau method yang berulang.