Konfigurasi

Mengabaikan file

Kendalikan file mana yang dapat diakses Bob dengan membuat file `.bobignore` di proyekmu.

Apa itu .bobignore?

  • Tujuan: Untuk melindungi informasi sensitif, mencegah perubahan yang tidak disengaja pada artefak build atau aset besar, dan secara umum mendefinisikan cakupan operasional Bob di dalam workspace-mu.
  • Cara menggunakan: Buat file bernama .bobignore di direktori workspace-mu. Daftarkan pola di file ini untuk memberi tahu Bob file dan direktori mana yang harus diabaikan.

Bob secara aktif memantau file .bobignore. Perubahan apa pun yang kamu buat dimuat ulang secara otomatis, memastikan Bob selalu menggunakan aturan terbaru. File .bobignore itu sendiri selalu diabaikan secara implisit, sehingga Bob tidak bisa mengubah aturan aksesnya sendiri.

Sintaks pola

Sintaks untuk .bobignore identik dengan .gitignore. Berikut contoh-contoh umum:

ContohDeskripsi
node_modules/Mengabaikan seluruh direktori node_modules
*.logMengabaikan semua file yang berakhiran .log
config/secrets.jsonMengabaikan file tertentu
!important.logPengecualian; Bob tidak akan mengabaikan file ini, meskipun ada pola yang lebih luas seperti *.log
build/Mengabaikan direktori build
docs/**/*.mdMengabaikan semua file Markdown di direktori docs dan subdirektorinya

Untuk mempelajari sintaks, lihat dokumentasi Git resmi tentang .gitignore.

Cara alat Bob berinteraksi dengan .bobignore

Aturan .bobignore diberlakukan di berbagai alat Bob:

Penegakan ketat (baca & tulis)

Alat-alat ini langsung memeriksa .bobignore sebelum operasi file apa pun. Jika file diabaikan, operasi diblokir:

  • read_file: Tidak akan membaca file yang diabaikan.
  • write_file: Tidak akan menulis ke atau membuat file baru yang diabaikan.
  • apply_diff: Tidak akan menerapkan diff ke file yang diabaikan.
  • GetSymbolsOverview: Tidak akan mengurai file yang diabaikan untuk simbol kode.

Alat pengeditan file (potensi bypass penulisan)

Alat insert_content dan search_and_replace menggunakan komponen internal untuk mengelola perubahan. Penting: Saat ini, operasi penulisan akhir yang dilakukan oleh alat-alat ini mungkin melewati aturan .bobignore. Meskipun upaya baca awal mungkin diblokir, tindakan penyimpanan itu sendiri tidak memiliki pemeriksaan eksplisit.

Penemuan dan daftar file

  • Alat list_files: Saat Bob mendaftarkan file, file yang diabaikan biasanya dihilangkan atau ditandai dengan simbol 🔒 (lihat "Pengalaman Pengguna" di bawah).
  • Detail lingkungan: Informasi tentang workspace-mu (seperti tab yang terbuka dan struktur proyek) yang diberikan kepada Bob difilter untuk mengecualikan atau menandai item yang diabaikan.

Eksekusi perintah

  • Alat execute_command: Alat ini memeriksa apakah perintah (dari daftar yang telah ditentukan seperti cat atau grep) menargetkan file yang diabaikan. Jika ya, menjalankan perintah akan diblokir.

Keterbatasan dan cakupan utama

  • Berpusat pada workspace: Aturan .bobignore berlaku hanya untuk file dan direktori di dalam root workspace Bob saat ini. File di luar cakupan ini tidak terpengaruh.
  • Kekhususan execute_command: Perlindungan untuk execute_command terbatas pada daftar perintah baca file yang telah ditentukan. Skrip khusus atau utilitas yang tidak umum mungkin tidak tertangkap.
  • Operasi penulisan via insert_content & search_and_replace: Seperti yang dicatat, alat-alat ini mungkin bisa menulis ke file yang diabaikan karena keterbatasan saat ini dalam mekanisme penyimpanannya.
  • Bukan sandbox penuh: .bobignore adalah alat yang powerful untuk mengendalikan akses file Bob melalui alatnya, tetapi tidak menciptakan sandbox tingkat sistem.

Pengalaman pengguna dan notifikasi

  • Isyarat visual (🔒): Dalam daftar file, file yang diabaikan oleh .bobignore mungkin ditandai dengan simbol gembok (🔒), tergantung pada pengaturan showbobignoredFiles (default-nya true).
  • Pesan error: Jika operasi alat diblokir, Bob menerima error: "Akses ke [file_path] diblokir oleh pengaturan file .bobignore. Kamu harus mencoba melanjutkan tugas tanpa menggunakan file ini, atau meminta pengguna untuk memperbarui file .bobignore."
  • Notifikasi chat: Kamu biasanya akan melihat notifikasi di antarmuka chat Bob ketika tindakan diblokir karena .bobignore.

Panduan ini membantu kamu memahami fitur .bobignore, kemampuannya, dan keterbatasannya saat ini, sehingga kamu dapat mengelola interaksi Bob dengan codebase-mu secara efektif.

Bagaimana topik ini?