Bisakah ChattyBox merayapi situs Docusaurus?
Ya. ChattyBox dapat merayapi halaman dokumentasi Docusaurus publik atau menggunakan URL peta situs untuk menemukan konten dokumen.
Ubah dokumen Docusaurus Anda menjadi asisten dukungan AI yang mengutip halaman persis yang digunakannya. Simpan tumpukan dokumen Anda, tambahkan satu widget yang dapat disematkan.
Beberapa alat pendukung AI mengharuskan Anda memesan demo bahkan sebelum Anda dapat menguji produknya. ChattyBox bersifat mandiri: tambahkan situs Anda, jelajahi dokumen Anda, uji chatbot, dan sematkan saat Anda siap.
ChattyBox merayapi dokumentasi Anda yang ada, mengindeks konten untuk diambil, dan menyematkan chatbot yang menjawab menggunakan dokumen Anda, bukan memori model umum.
Pilih sitemap Docusaurus produksi atau kumpulan jalur dokumentasi terkini, berversi, dan terlokalisasi yang ditentukan secara sengaja.
Lakukan crawling pada jalur yang dipilih, lalu uji pertanyaan terhadap rilis dan locale persis yang digunakan pengunjung Anda.
Instal satu loader persisten di src/theme/Root.tsx dan izinkan origin skrip serta API-nya dalam Content Security Policy Anda.
Navigasikan antarhalaman dokumentasi tanpa memuat ulang dan verifikasi satu instance widget, kutipan yang berfungsi, serta tidak adanya kesalahan konsol atau CSP.
Peluncuran tiga langkah
Docusaurus merender aplikasi React persisten saat terjadi perubahan jalur di sisi klien. Karena itu, wrapper Root yang diuji membuat satu loader, mengenali mount berikutnya berdasarkan ID, dan mempertahankan loader alih-alih menghapus widget yang masih aktif saat remount dalam pengembangan.
Periksa kembali siklus hidup Root, output sitemap, dan origin CSP setelah upgrade mayor Docusaurus atau perubahan endpoint widget.
| Aspek Docusaurus | Keputusan implementasi | Verifikasi |
|---|---|---|
| Root dan navigasi klien | Buat skrip async sekali berdasarkan ID stabil. Jangan kembalikan cleanup dari effect karena Root dan widget dimaksudkan untuk tetap ada di seluruh jalur. | Buka dua tautan dokumentasi internal dan pastikan document.querySelectorAll("#chattybox-widget").length bernilai 1. |
| Kebijakan Keamanan Konten | Izinkan chattybox.ai di script-src, origin API yang dikonfigurasi di connect-src, fonts.googleapis.com di style-src, dan fonts.gstatic.com di font-src. Widget saat ini menyisipkan CSS komponennya sendiri, sehingga style-src yang ketat juga memerlukan 'unsafe-inline' sampai build berbasis nonce atau stylesheet eksternal tersedia. | Muat ulang dengan DevTools terbuka dan pastikan tidak ada permintaan script, style, font, fetch, atau WebSocket yang diblokir. |
| Versi, locale, dan cakupan sitemap | Periksa sitemap yang telah di-deploy sebelum crawling. Sertakan hanya jalur rilis dan locale yang didukung, atau gunakan sumber terpisah jika audiens tidak boleh menerima jawaban lintas versi. | Ajukan pertanyaan khusus rilis yang sama di setiap locale terindeks dan periksa bahwa setiap kutipan mempertahankan prefiks jalur yang diharapkan. |
| Widget hilang atau duplikat | Periksa kunci API, ID loader, pesan konsol CSP, respons skrip, dan apakah komponen tema lain juga menyisipkan widget. | Uji build produksi, bukan hanya hot reload, dan periksa panel Elements serta Network setelah navigasi. |
Pengujian penerimaan yang berguna menanyakan pengaturan yang jawabannya dapat berbeda menurut rilis, lalu membuka kutipan untuk memverifikasi klaim dan URL berversi.
Buat komponen Root tema Docusaurus, tambahkan skrip widget setelah dokumen Anda dikikis, dan terapkan. Pengunjung Anda kemudian dapat mengajukan pertanyaan dari halaman dokumen mana pun.
import React, { useEffect, type ReactNode } from 'react';
const WIDGET_ID = 'chattybox-widget';
export default function Root({ children }: { children: ReactNode }) {
useEffect(() => {
if (document.getElementById(WIDGET_ID)) return;
const script = document.createElement('script');
script.id = WIDGET_ID;
script.src = 'https://chattybox.ai/widget.js';
script.async = true;
script.dataset.apiKey = 'YOUR_API_KEY';
script.dataset.apiUrl = 'https://adorable-woodpecker-629.convex.site/chat';
script.dataset.chattyboxWidget = 'true';
document.body.appendChild(script);
}, []);
return <>{children}</>;
}Lihat cara kerja jawaban yang dikutip sumber di seluruh situs dan platform dokumentasi teknis.
Bantu pengembang menyelesaikan pertanyaan penyiapan, SDK, API, dan kesalahan dari panduan Anda dengan lebih cepat.
Bandingkan alur kerja yang dikutip sumber yang sama untuk situs MkDocs dan Material untuk MkDocs.
Temukan panduan pengaturan untuk VitePress, Starlight, Nextra, Mintlify, ReadMe, Hugo, dan platform dokumen lainnya.
Ya. ChattyBox dapat merayapi halaman dokumentasi Docusaurus publik atau menggunakan URL peta situs untuk menemukan konten dokumen.
Tidak. Anda menyematkan ChattyBox dengan tag skrip, sehingga dapat berfungsi bersamaan dengan tema dan penerapan Docusaurus yang ada.
Ya. Jawaban dapat menyertakan kutipan yang mengarahkan pengguna kembali ke halaman dokumentasi persis yang digunakan untuk tanggapan.
Ya. Anda dapat menguji konten yang diambil di dasbor sebelum menyalin cuplikan widget ke situs Docusaurus Anda.
Tidak perlu kartu kredit. Konten Anda tidak digunakan untuk pelatihan model.
Paket gratis. Tanpa kartu.