Seorang pengembang telah meluncurkan peta basis kode tiga lapis yang memungkinkan agen pengodean AI mempertahankan pemahaman konteks di berbagai sesi.

Mengapa agen AI membutuhkan peta

Asisten pengodean berbasis obrolan membangun model mental repositori hanya selama jendela perintah (prompt) tetap terbuka. Saat jendela konteks ditutup, model tersebut menguap, memaksa agen untuk menemukan kembali simbol, impor, dan hubungan antarberkas dari awal. Proses bolak-balik ini membuang siklus komputasi dan membuat agen menjadi kurang membantu saat pengembang berpindah antarberkas atau kembali ke sebuah proyek setelah istirahat.

Tiga lapisan yang membentuk peta

  • Lapisan struktural – katalog simbol, panggilan fungsi, dan pernyataan impor. Lapisan ini menjawab pertanyaan statis "apa memanggil apa."
  • Lapisan temporal – sinyal turunan git seperti tingkat perubahan berkas (file churn rates) dan riwayat kepemilikan. Ini menunjukkan bagian kode mana yang paling sering berubah dan siapa yang cenderung mengubahnya.
  • Lapisan perilaku – pola penggunaan dunia nyata yang diekstraksi dari riwayat pengeditan dan navigasi agen itu sendiri. Ini mengungkapkan berkas mana yang sebenarnya dibuka bersamaan selama sesi pengodean, mengungkap "tetangga sejati" yang terlewatkan oleh analisis statis.

Lapisan perilaku memiliki bobot paling besar karena mencerminkan bagaimana pengembang (dan agen) benar-benar bekerja, bukan sekadar bagaimana kode tersebut terhubung.

Dua cara untuk memberikan peta kepada agen

  1. Ambient Path – ringkasan ringkas yang disuntikkan ke dalam setiap interaksi. Ini memberikan gambaran instan kepada agen seperti "Anda berada di modul X, simbol-simbol ini ada di dekatnya" tanpa panggilan tambahan apa pun.
  2. Deep Path – alat kueri sesuai permintaan yang dapat dipanggil agen saat membutuhkan detail yang lebih kaya, seperti daftar berkas yang sering berubah bersamaan atau lini masa kepemilikan terbaru.

Memisahkan informasi ambient dari informasi deep menjaga perintah rutin tetap ringan namun tetap menawarkan kedalaman saat diperlukan.

Aturan desain agar sistem tetap ramping

  • Lewati language server yang berat. Peta ini mengandalkan shallow parsing daripada inferensi tipe penuh. Tujuannya bukan untuk menandingi analis statis yang sudah matang, melainkan untuk melengkapinya dengan wawasan perilaku.
  • Batasi graf per proyek. Sistem ini tidak menyatukan graf dependensi global di seluruh repositori. Pembatasan ini mengurangi jejak memori dan mempercepat pembaruan.
  • Gunakan kembali penyimpanan memori yang ada. Log perubahan berkas berasal dari memori panggilan alat milik agen itu sendiri, menghindari penyimpanan duplikat dan menjaga konsistensi sumber data.

Membangun peta dalam praktik

  1. Kumpulkan data struktural dengan pemindaian cepat pada berkas sumber, mengekstraksi simbol dan baris impor.
  2. Ambil metrik temporal dari riwayat git repositori, mencatat berkas mana yang paling banyak menerima commit dan siapa penulisnya.
  3. Panen sinyal perilaku dengan mencatat tindakan buka-berkas, edit, dan navigasi agen selama sesi pengodean nyata. Log ini menjadi dasar bagi matriks "co-occurrence" yang menentukan tetangga perilaku.
  4. Isi Ambient Path dengan daftar singkat dan terurut dari simbol serta berkas yang paling relevan untuk tugas saat ini.
  5. Sediakan Deep Path sebagai sekumpulan fungsi kueri ringan (misalnya, "daftar berkas yang diedit bersama dalam sesi terbaru").

Hook cepat menangkap setiap pengeditan saat terjadi; pemindaian latar belakang yang lebih lambat menghitung ulang statistik churn. Bersama-sama, keduanya menjaga peta tetap mutakhir tanpa menghambat alur kerja pengembang.

Pelajaran yang dipetik

  • Pisahkan ambient dari on-demand. Menjaga ringkasan yang selalu ada tetap kecil mencegah pembengkakan token, sementara kueri yang lebih kaya tetap bersifat opsional.
  • Prioritaskan konteks berdasarkan tugas. Mengurutkan simbol ambient sesuai dengan fokus pengeditan saat ini akan menghasilkan saran yang lebih berguna.
  • Segarkan secara agresif tetapi cerdas. Hook cepat menangkap perubahan frekuensi tinggi; pemindaian berkala menangani churn frekuensi rendah dan pergeseran kepemilikan.
  • Parsing dangkal unggul dalam kecepatan. Analisis tipe yang mendalam menambah latensi tanpa memberikan wawasan perilaku yang menjadi keunggulan peta ini.

Kesimpulan: Dengan menyusun lapisan struktur statis, riwayat turunan git, dan penggunaan dunia nyata ke dalam model akses dua tingkat yang ringkas, pengembang dapat memberikan peta basis kode yang tahan lama kepada agen pengodean AI. Menjaga ringkasan yang selalu ada tetap kecil mencegah pembengkakan token.