Integrasi ACP
Hubungkan editor apa pun yang kompatibel dengan ACP ke Bob Shell sebagai AI assistant kelas satu.
Bob Shell dapat berjalan sebagai server Agent Client Protocol (ACP). Saat terhubung, editor mengelola antarmuka thread, dialog izin, dan diff, sementara Bob mengelola runtime: akses model, tool, server MCP, dan eksekusi shell.
ACP memainkan peran yang sama bagi agen coding seperti Language Server Protocol bagi tooling bahasa: satu kontrak JSON-RPC, banyak editor, banyak agen. Agen lokal berkomunikasi dengan editor melalui stdin dan stdout.
Editor yang didukung
Editor berikut mendukung koneksi ACP ke Bob Shell:
- Zed
- IntelliJ IDEA
- Neovim
Memulai
Jalankan Bob Shell sebagai server ACP:
bob acpProses menunggu JSON-RPC pada stdin. Jalankan melalui konfigurasi ACP editor-mu; menjalankannya langsung di terminal terlihat seperti hang.
Ikuti instruksi konfigurasi ACP editor-mu untuk terhubung ke proses bob acp. Untuk informasi lebih lanjut tentang protokol, lihat spesifikasi ACP.
Autentikasi
Bob melakukan autentikasi saat inisialisasi ACP. Jika BOBSHELL_API_KEY diatur di environment yang menjalankan bob acp, Bob menggunakan kunci tersebut dan tidak diperlukan tindakan lebih lanjut.
Tanpa API key atau token yang tersimpan, editor-mu meminta kamu untuk autentikasi melalui SSO. Selesaikan alur browser sekali; Bob menyimpan token sehingga sesi ACP berikutnya di mesin yang sama dapat menggunakannya kembali.
Kepercayaan workspace
Bob memeriksa kepercayaan workspace sebelum membuat sesi. Workspace yang tidak dipercaya menyebabkan pembuatan sesi gagal. Untuk mempercayai workspace, buka terminal di direktori tersebut dan jalankan Bob Shell secara interaktif:
cd /path/to/project
bobSetelah kepercayaan tercatat, keluar dan sambungkan kembali melalui editor.
Untuk environment sementara atau sekali pakai, berikan --trust dalam argumen ACP-mu. Untuk pertimbangannya, lihat Opsi perintah.
Server MCP
Baik editor maupun Bob dapat menyediakan server MCP ke sesi. Kedua kumpulan server diinisialisasi dalam harness sesi Bob yang sama, sehingga konfigurasi duplikat mudah terlewatkan.
Pilih satu pemilik untuk setiap server MCP. Jika suatu tool MCP tidak ada secara tiba-tiba, periksa pengaturan MCP editor-mu dan konfigurasi MCP native Bob.
Setiap sesi ACP membuat harness-nya sendiri dengan server MCP yang dikonfigurasi. Server MCP lokal dapat berjalan sekali per thread Bob yang aktif. Pantau penggunaan resource sebelum membuka banyak thread paralel, terutama ketika server menjalankan JVM, container, atau model lokal.
Bob Shell dibandingkan dengan terminal editor
Bob Shell mengeksekusi perintah di proses anak-nya sendiri, bukan di terminal editor-mu. Perintah yang berfungsi di terminal editor mungkin gagal untuk Bob Shell jika proses bob acp mewarisi PATH, direktori kerja, atau environment yang berbeda.
Perubahan yang kamu buat di terminal editor yang sedang berjalan, seperti cd atau export, tidak mencapai Bob Shell. Jika kamu memperbarui environment peluncuran, restart thread ACP.
Opsi perintah
Mulai dengan bob acp dan tambahkan opsi hanya untuk alasan tertentu:
| Opsi | Deskripsi |
|---|---|
--log-level <level> | Mengatur tingkat verbositas log: debug, info, warn, error, atau silent. Juga dapat dikonfigurasi melalui variabel environment BOB_LOG_LEVEL. |
--trust | Mempercayai setiap workspace yang dibuka oleh server ACP ini. Opsi ini menghapus batas di tingkat proyek; jangan sertakan dalam konfigurasi editor permanen. |
--auto-approve | Menyetujui setiap panggilan tool tanpa menampilkan dialog izin. Opsi ini lebih luas daripada memilih Selalu izinkan untuk satu tool. |
--disable-mcp | Melewati inisialisasi server MCP. Gunakan opsi ini untuk mengisolasi kegagalan startup sesi. |
--disable-subagents | Menghilangkan registrasi tool subagen Bob saat tugas tidak memerlukan delegasi. |
--accept-license | Mencatat penerimaan lisensi sebelum server dimulai. Tinjau file lisensi terlebih dahulu dengan menjalankan bob --show-license acp. |
Menggunakan --trust dan --auto-approve bersama-sama menghapus baik gerbang workspace maupun persetujuan per-tool. Prompt dapat bertindak di workspace mana pun yang dibuka server tanpa konfirmasi lebih lanjut. Jangan sertakan kedua opsi dalam konfigurasi editor default-mu.