Knowledge sources and RAG
Knowledge sources are the controlled context that NaviBot can use when answering visitor questions. They are separate from the OpenAI account.
Open:
/app/knowledge-sources
Supported source types
| Source | Use case |
|---|---|
| Markdown / docs | Product docs, FAQ, onboarding text, pasted knowledge |
| Notion | Client-managed pages or databases |
| SeaTable | Structured knowledge tables and operational records |
Document states
Documents are stored as RAG documents. Only documents with ready status are
used by OpenAI context.
| Status | Meaning |
|---|---|
pending | loaded but not ready yet |
ready | can be used by the assistant |
disabled | visible in the UI, not used by the assistant |
error | indexing failed |
Notion setup
Use:
NOTION_API_KEYNOTION_DATABASE_ID
The API key should be stored in encrypted integration credentials. The RAG source
config should keep safe values only, such as database id, limit, and
integration_id.
File selection
After loading files from Notion or another source, the client should be able to select which files are used. Disabled files stay visible but are not included in OpenAI context.
Current limitation
Indexing is currently synchronous. This is acceptable for small sources. Large Notion or SeaTable bases should later move to a background job queue.