From d088490f41ffcda1b4a8dd0f4a29fa1a2d797133 Mon Sep 17 00:00:00 2001 From: "Rodrigo Rodriguez (Pragmatismo)" Date: Wed, 3 Dec 2025 19:59:27 -0300 Subject: [PATCH] - botbook extracted from. --- Cargo.lock | 16 + Cargo.toml | 4 + docs/GAP_ANALYSIS.md | 240 -- docs/book.toml | 19 - docs/src/README.md | 124 - docs/src/SUMMARY.md | 370 -- docs/src/appendix-15/README.md | 52 - docs/src/appendix-15/relationships.md | 180 - docs/src/appendix-15/schema.md | 126 - docs/src/appendix-15/tables.md | 275 -- .../conversation-examples.md | 235 -- docs/src/appendix-env-vars/README.md | 136 - docs/src/appendix-external-services/README.md | 94 - .../attendance-queue.md | 78 - .../src/appendix-external-services/catalog.md | 273 -- .../appendix-external-services/channels.md | 1 - .../src/appendix-external-services/console.md | 114 - .../appendix-external-services/directory.md | 1 - .../llm-providers.md | 437 -- .../appendix-external-services/multimodal.md | 143 - docs/src/appendix-external-services/nvidia.md | 76 - .../src/appendix-external-services/storage.md | 1 - .../appendix-external-services/timeseries.md | 85 - .../src/appendix-external-services/weather.md | 318 -- docs/src/assets/api-comparison-matrix.svg | 207 - docs/src/assets/architecture-overview.svg | 234 -- docs/src/assets/architecture.svg | 226 -- docs/src/assets/architecture.svg.backup | 79 - docs/src/assets/botmodels-architecture.svg | 182 - .../assets/chapter-01/bootstrap-process.svg | 98 - .../chapter-01/quick-start-bootstrap-wide.svg | 188 - .../chapter-01/quick-start-bootstrap.svg | 188 - .../src/assets/chapter-01/session-manager.svg | 103 - docs/src/assets/chapter-01/session-states.svg | 79 - .../assets/chapter-01/tool-execution-flow.svg | 105 - .../assets/chapter-02/package-structure.svg | 132 - .../chapter-02/template-deployment-flow.svg | 83 - .../chapter-03/caching-architecture.svg | 173 - docs/src/assets/chapter-03/context-window.svg | 205 - .../chapter-03/kb-architecture-pipeline.svg | 150 - .../src/assets/chapter-03/search-pipeline.svg | 165 - .../assets/chapter-03/storage-breakdown.svg | 235 -- .../chapter-03/storage-multiplication.svg | 127 - .../src/assets/chapter-03/technical-specs.svg | 157 - .../assets/chapter-04/analytics-interface.svg | 195 - .../assets/chapter-04/calendar-interface.svg | 211 - .../chapter-04/compliance-interface.svg | 200 - .../assets/chapter-04/designer-interface.svg | 258 -- .../src/assets/chapter-04/drive-interface.svg | 155 - docs/src/assets/chapter-04/mail-interface.svg | 147 - docs/src/assets/chapter-04/meet-interface.svg | 139 - .../src/assets/chapter-04/paper-interface.svg | 179 - .../assets/chapter-04/research-interface.svg | 168 - .../assets/chapter-04/sources-interface.svg | 206 - .../assets/chapter-04/suite-main-layout.svg | 82 - .../src/assets/chapter-04/tasks-interface.svg | 151 - .../chapter-06/basic-execution-flow.svg | 175 - docs/src/assets/chapter-07/data-flow.svg | 139 - .../assets/chapter-07/data-traceability.svg | 306 -- .../assets/chapter-07/module-data-flow.svg | 135 - .../assets/chapter-07/module-dependency.svg | 133 - .../assets/chapter-07/system-architecture.svg | 155 - .../assets/chapter-10/api-architecture.svg | 205 - .../assets/chapter-10/api-request-flow.svg | 224 -- docs/src/assets/conversation-flow.svg | 216 - docs/src/assets/conversation-flow.svg.backup | 59 - docs/src/assets/directory-tree.svg | 143 - docs/src/assets/feature-parity-flow.svg | 261 -- docs/src/assets/gb-decorative-header.svg | 124 - docs/src/assets/icons/gb-bot.svg | 16 - docs/src/assets/icons/gb-chart.svg | 27 - docs/src/assets/icons/gb-check.svg | 21 - docs/src/assets/icons/gb-database.svg | 29 - docs/src/assets/icons/gb-folder.svg | 20 - docs/src/assets/icons/gb-gear.svg | 4 - docs/src/assets/icons/gb-globe.svg | 32 - docs/src/assets/icons/gb-lightbulb.svg | 20 - docs/src/assets/icons/gb-lock.svg | 43 - docs/src/assets/icons/gb-note.svg | 16 - docs/src/assets/icons/gb-package.svg | 13 - docs/src/assets/icons/gb-palette.svg | 32 - docs/src/assets/icons/gb-rocket.svg | 31 - docs/src/assets/icons/gb-search.svg | 18 - docs/src/assets/icons/gb-signal.svg | 33 - docs/src/assets/icons/gb-target.svg | 16 - docs/src/assets/icons/gb-tree.svg | 42 - docs/src/assets/icons/gb-warning.svg | 25 - .../assets/infrastructure-architecture.svg | 248 -- docs/src/assets/migration-architecture.svg | 366 -- docs/src/assets/observability-flow.svg | 255 -- docs/src/assets/package-system-flow.svg | 205 - .../src/assets/package-system-flow.svg.backup | 95 - .../assets/platform-comparison-summary.svg | 329 -- docs/src/assets/script-execution-flow.svg | 239 -- docs/src/assets/suite/analytics-flow.svg | 313 -- docs/src/assets/suite/analytics-screen.svg | 228 -- docs/src/assets/suite/app-launcher.svg | 214 - docs/src/assets/suite/calendar-flow.svg | 291 -- docs/src/assets/suite/calendar-screen.svg | 265 -- docs/src/assets/suite/chat-flow.svg | 239 -- docs/src/assets/suite/chat-screen.svg | 182 - docs/src/assets/suite/compliance-flow.svg | 289 -- docs/src/assets/suite/compliance-screen.svg | 279 -- docs/src/assets/suite/designer-flow.svg | 289 -- docs/src/assets/suite/designer-screen.svg | 279 -- docs/src/assets/suite/drive-flow.svg | 269 -- docs/src/assets/suite/drive-screen.svg | 187 - .../assets/suite/live-monitoring-organism.svg | 521 --- docs/src/assets/suite/mail-flow.svg | 302 -- docs/src/assets/suite/mail-screen.svg | 192 - docs/src/assets/suite/meet-flow.svg | 299 -- docs/src/assets/suite/meet-screen.svg | 185 - docs/src/assets/suite/paper-flow.svg | 332 -- docs/src/assets/suite/paper-screen.svg | 209 - docs/src/assets/suite/player-flow.svg | 113 - docs/src/assets/suite/player-screen.svg | 203 - docs/src/assets/suite/research-flow.svg | 307 -- docs/src/assets/suite/research-screen.svg | 160 - docs/src/assets/suite/sources-flow.svg | 302 -- docs/src/assets/suite/sources-screen.svg | 248 -- docs/src/assets/suite/suite-layout.svg | 136 - docs/src/assets/suite/suite-screen.svg | 220 - docs/src/assets/suite/tasks-flow.svg | 280 -- docs/src/assets/suite/tasks-screen.svg | 211 - docs/src/assets/technical-specs.svg | 146 - docs/src/assets/wa-chat.css | 209 - docs/src/chapter-01/README.md | 44 - .../assets/bootstrap-process.svg.backup | 129 - .../assets/quick-start-bootstrap.svg.backup | 142 - .../assets/session-manager.svg.backup | 130 - .../assets/session-states.svg.backup | 108 - .../assets/tool-execution-flow.svg.backup | 150 - docs/src/chapter-01/first-conversation.md | 193 - docs/src/chapter-01/installation.md | 147 - docs/src/chapter-01/overview.md | 178 - docs/src/chapter-01/quick-start.md | 357 -- docs/src/chapter-01/sessions.md | 219 - docs/src/chapter-02/README.md | 78 - .../assets/package-structure.svg.backup | 163 - .../template-deployment-flow.svg.backup | 114 - docs/src/chapter-02/gbai.md | 288 -- docs/src/chapter-02/gbdialog.md | 276 -- docs/src/chapter-02/gbdrive.md | 219 - docs/src/chapter-02/gbkb.md | 67 - docs/src/chapter-02/gbot.md | 63 - docs/src/chapter-02/gbtheme.md | 75 - docs/src/chapter-02/summary.md | 22 - docs/src/chapter-02/template-analytics.md | 431 -- docs/src/chapter-02/template-api-client.md | 466 --- docs/src/chapter-02/template-bi.md | 272 -- docs/src/chapter-02/template-crawler.md | 330 -- docs/src/chapter-02/template-crm-contacts.md | 303 -- docs/src/chapter-02/template-crm.md | 481 --- docs/src/chapter-02/template-law.md | 352 -- docs/src/chapter-02/template-llm-server.md | 423 -- docs/src/chapter-02/template-llm-tools.md | 450 --- docs/src/chapter-02/template-marketing.md | 446 --- docs/src/chapter-02/template-office.md | 394 -- docs/src/chapter-02/template-reminder.md | 417 -- docs/src/chapter-02/template-samples.md | 700 ---- docs/src/chapter-02/template-template.md | 352 -- docs/src/chapter-02/templates.md | 326 -- docs/src/chapter-03/README.md | 80 - .../assets/caching-architecture.svg.backup | 125 - .../assets/context-window.svg.backup | 204 - .../kb-architecture-pipeline.svg.backup | 137 - .../assets/search-pipeline.svg.backup | 138 - .../assets/storage-breakdown.svg.backup | 218 - .../assets/storage-multiplication.svg.backup | 118 - .../assets/technical-specs.svg.backup | 161 - docs/src/chapter-03/caching.md | 146 - docs/src/chapter-03/episodic-memory.md | 160 - docs/src/chapter-03/indexing.md | 84 - docs/src/chapter-03/kb-and-tools.md | 290 -- docs/src/chapter-03/semantic-search.md | 99 - docs/src/chapter-03/summary.md | 23 - docs/src/chapter-03/vector-collections.md | 85 - docs/src/chapter-04-gbui/README.md | 55 - docs/src/chapter-04-gbui/apps/README.md | 167 - docs/src/chapter-04-gbui/apps/analytics.md | 417 -- docs/src/chapter-04-gbui/apps/calendar.md | 263 -- docs/src/chapter-04-gbui/apps/chat.md | 234 -- .../chapter-04-gbui/apps/compliance-api.md | 691 ---- docs/src/chapter-04-gbui/apps/compliance.md | 408 -- docs/src/chapter-04-gbui/apps/designer.md | 407 -- docs/src/chapter-04-gbui/apps/drive.md | 296 -- docs/src/chapter-04-gbui/apps/mail.md | 313 -- docs/src/chapter-04-gbui/apps/meet.md | 316 -- docs/src/chapter-04-gbui/apps/paper.md | 572 --- docs/src/chapter-04-gbui/apps/player.md | 273 -- docs/src/chapter-04-gbui/apps/research.md | 411 -- docs/src/chapter-04-gbui/apps/sources.md | 356 -- docs/src/chapter-04-gbui/apps/suite.md | 214 - docs/src/chapter-04-gbui/apps/tasks.md | 230 -- docs/src/chapter-04-gbui/console-mode.md | 107 - docs/src/chapter-04-gbui/how-to/README.md | 253 -- .../how-to/add-kb-documents.md | 531 --- .../how-to/connect-whatsapp.md | 749 ---- .../how-to/create-first-bot.md | 481 --- .../how-to/monitor-sessions.md | 504 --- .../how-to/write-first-dialog.md | 695 ---- docs/src/chapter-04-gbui/htmx-architecture.md | 535 --- docs/src/chapter-04-gbui/monitoring.md | 259 -- docs/src/chapter-04-gbui/single-gbui.md | 173 - docs/src/chapter-04-gbui/suite-manual.md | 902 ----- docs/src/chapter-04-gbui/ui-structure.md | 194 - docs/src/chapter-05-gbtheme/README.md | 64 - docs/src/chapter-05-gbtheme/css.md | 427 -- docs/src/chapter-05-gbtheme/structure.md | 226 -- docs/src/chapter-06-gbdialog/README.md | 96 - .../assets/basic-execution-flow.svg.backup | 137 - .../basic-vs-automation-tools.md | 225 -- docs/src/chapter-06-gbdialog/basics.md | 92 - .../examples-consolidated.md | 777 ---- .../chapter-06-gbdialog/keyword-add-bot.md | 56 - .../chapter-06-gbdialog/keyword-add-member.md | 68 - .../keyword-add-suggestion.md | 82 - .../chapter-06-gbdialog/keyword-aggregate.md | 1 - docs/src/chapter-06-gbdialog/keyword-book.md | 305 -- .../keyword-bot-reflection.md | 240 -- docs/src/chapter-06-gbdialog/keyword-card.md | 200 - .../chapter-06-gbdialog/keyword-clear-kb.md | 83 - .../keyword-clear-tools.md | 26 - .../chapter-06-gbdialog/keyword-compress.md | 1 - docs/src/chapter-06-gbdialog/keyword-copy.md | 1 - .../keyword-create-draft.md | 26 - .../keyword-create-site.md | 34 - .../keyword-create-task.md | 146 - .../keyword-delegate-to-bot.md | 219 - .../keyword-delete-file.md | 158 - .../keyword-delete-http.md | 1 - .../src/chapter-06-gbdialog/keyword-delete.md | 1 - .../chapter-06-gbdialog/keyword-download.md | 1 - .../chapter-06-gbdialog/keyword-exit-for.md | 35 - .../chapter-06-gbdialog/keyword-extract.md | 1 - docs/src/chapter-06-gbdialog/keyword-fill.md | 204 - .../src/chapter-06-gbdialog/keyword-filter.md | 166 - docs/src/chapter-06-gbdialog/keyword-find.md | 293 -- docs/src/chapter-06-gbdialog/keyword-first.md | 30 - .../chapter-06-gbdialog/keyword-for-each.md | 42 - .../src/chapter-06-gbdialog/keyword-format.md | 82 - .../keyword-generate-pdf.md | 1 - .../keyword-get-bot-memory.md | 216 - .../keyword-get-user-memory.md | 191 - docs/src/chapter-06-gbdialog/keyword-get.md | 74 - .../chapter-06-gbdialog/keyword-graphql.md | 1 - .../chapter-06-gbdialog/keyword-group-by.md | 130 - docs/src/chapter-06-gbdialog/keyword-hear.md | 398 -- .../src/chapter-06-gbdialog/keyword-insert.md | 1 - docs/src/chapter-06-gbdialog/keyword-instr.md | 150 - .../chapter-06-gbdialog/keyword-is-numeric.md | 214 - docs/src/chapter-06-gbdialog/keyword-join.md | 132 - .../keyword-kb-collection-stats.md | 1 - .../keyword-kb-documents-added-since.md | 1 - .../keyword-kb-documents-count.md | 1 - .../keyword-kb-list-collections.md | 1 - .../keyword-kb-statistics.md | 1 - .../keyword-kb-storage-size.md | 1 - docs/src/chapter-06-gbdialog/keyword-last.md | 30 - docs/src/chapter-06-gbdialog/keyword-list.md | 1 - docs/src/chapter-06-gbdialog/keyword-map.md | 151 - .../chapter-06-gbdialog/keyword-merge-pdf.md | 1 - docs/src/chapter-06-gbdialog/keyword-merge.md | 198 - .../keyword-model-route.md | 83 - docs/src/chapter-06-gbdialog/keyword-move.md | 1 - docs/src/chapter-06-gbdialog/keyword-on.md | 42 - docs/src/chapter-06-gbdialog/keyword-patch.md | 1 - docs/src/chapter-06-gbdialog/keyword-pivot.md | 121 - docs/src/chapter-06-gbdialog/keyword-play.md | 315 -- docs/src/chapter-06-gbdialog/keyword-post.md | 1 - docs/src/chapter-06-gbdialog/keyword-print.md | 108 - docs/src/chapter-06-gbdialog/keyword-put.md | 1 - .../src/chapter-06-gbdialog/keyword-qrcode.md | 190 - docs/src/chapter-06-gbdialog/keyword-read.md | 1 - .../keyword-reference-complete.md | 645 --- .../chapter-06-gbdialog/keyword-remember.md | 210 - .../chapter-06-gbdialog/keyword-run-code.md | 340 -- docs/src/chapter-06-gbdialog/keyword-save.md | 188 - .../chapter-06-gbdialog/keyword-send-mail.md | 274 -- .../keyword-send-template.md | 107 - .../keyword-set-bot-memory.md | 165 - .../keyword-set-context.md | 71 - .../chapter-06-gbdialog/keyword-set-header.md | 1 - .../keyword-set-schedule.md | 302 -- .../keyword-set-user-memory.md | 150 - .../chapter-06-gbdialog/keyword-set-user.md | 62 - docs/src/chapter-06-gbdialog/keyword-set.md | 257 -- docs/src/chapter-06-gbdialog/keyword-sms.md | 302 -- docs/src/chapter-06-gbdialog/keyword-soap.md | 1 - .../src/chapter-06-gbdialog/keyword-switch.md | 249 -- .../keyword-synchronize.md | 123 - docs/src/chapter-06-gbdialog/keyword-table.md | 223 -- docs/src/chapter-06-gbdialog/keyword-talk.md | 248 -- .../src/chapter-06-gbdialog/keyword-update.md | 1 - .../src/chapter-06-gbdialog/keyword-upload.md | 1 - .../src/chapter-06-gbdialog/keyword-use-kb.md | 130 - .../chapter-06-gbdialog/keyword-use-model.md | 185 - .../chapter-06-gbdialog/keyword-use-tool.md | 74 - .../keyword-use-website.md | 65 - docs/src/chapter-06-gbdialog/keyword-wait.md | 67 - .../chapter-06-gbdialog/keyword-weather.md | 35 - .../chapter-06-gbdialog/keyword-webhook.md | 687 ---- docs/src/chapter-06-gbdialog/keyword-write.md | 1 - docs/src/chapter-06-gbdialog/keywords-data.md | 1 - docs/src/chapter-06-gbdialog/keywords-file.md | 1 - docs/src/chapter-06-gbdialog/keywords-http.md | 1 - .../keywords-kb-statistics.md | 364 -- .../keywords-lead-scoring.md | 342 -- .../src/chapter-06-gbdialog/keywords-media.md | 143 - .../keywords-multi-agent.md | 276 -- .../keywords-social-media.md | 259 -- docs/src/chapter-06-gbdialog/keywords.md | 441 -- docs/src/chapter-06-gbdialog/prompt-blocks.md | 426 -- .../script-execution-flow.md | 484 --- .../template-enrollment.md | 97 - .../src/chapter-06-gbdialog/template-start.md | 195 - .../chapter-06-gbdialog/template-summary.md | 201 - .../chapter-06-gbdialog/template-variables.md | 249 -- docs/src/chapter-06-gbdialog/templates.md | 118 - .../templates/ai-search.md | 338 -- .../templates/analytics-dashboard.md | 283 -- .../templates/announcements.md | 415 -- .../src/chapter-06-gbdialog/templates/auth.md | 433 -- .../chapter-06-gbdialog/templates/backup.md | 451 --- .../src/chapter-06-gbdialog/templates/bank.md | 421 -- .../templates/broadcast.md | 433 -- .../chapter-06-gbdialog/templates/default.md | 402 -- docs/src/chapter-06-gbdialog/templates/edu.md | 555 --- .../templates/employees.md | 695 ---- .../templates/enrollment.md | 400 -- docs/src/chapter-06-gbdialog/templates/erp.md | 521 --- .../chapter-06-gbdialog/templates/helpdesk.md | 599 --- .../chapter-06-gbdialog/templates/privacy.md | 578 --- .../templates/sales-pipeline.md | 734 ---- .../chapter-06-gbdialog/templates/start.md | 274 -- .../chapter-06-gbdialog/templates/store.md | 589 --- .../templates/talk-to-data.md | 560 --- .../chapter-06-gbdialog/templates/whatsapp.md | 469 --- .../chapter-06-gbdialog/tools-data-sync.md | 1028 ----- .../universal-messaging.md | 131 - docs/src/chapter-07-gbapp/README.md | 69 - docs/src/chapter-07-gbapp/architecture.md | 218 - .../assets/data-flow.svg.backup | 158 - .../assets/module-data-flow.svg.backup | 146 - .../assets/module-dependency.svg.backup | 148 - .../assets/system-architecture.svg.backup | 186 - docs/src/chapter-07-gbapp/building.md | 532 --- docs/src/chapter-07-gbapp/containers.md | 140 - docs/src/chapter-07-gbapp/crates.md | 81 - docs/src/chapter-07-gbapp/custom-keywords.md | 318 -- docs/src/chapter-07-gbapp/dependencies.md | 458 --- .../src/chapter-07-gbapp/docker-deployment.md | 215 - docs/src/chapter-07-gbapp/example-gbapp.md | 354 -- docs/src/chapter-07-gbapp/infrastructure.md | 542 --- .../chapter-07-gbapp/keyword-refactoring.md | 1 - docs/src/chapter-07-gbapp/observability.md | 77 - docs/src/chapter-07-gbapp/philosophy.md | 221 - docs/src/chapter-07-gbapp/scaling.md | 672 ---- docs/src/chapter-07-gbapp/services.md | 155 - docs/src/chapter-08-config/README.md | 116 - docs/src/chapter-08-config/config-csv.md | 80 - docs/src/chapter-08-config/context-config.md | 339 -- docs/src/chapter-08-config/drive.md | 1 - docs/src/chapter-08-config/llm-config.md | 212 - docs/src/chapter-08-config/minio.md | 133 - docs/src/chapter-08-config/multimodal.md | 247 -- docs/src/chapter-08-config/parameters.md | 499 --- .../chapter-08-config/secrets-management.md | 543 --- docs/src/chapter-09-api/README.md | 68 - docs/src/chapter-09-api/compilation.md | 122 - docs/src/chapter-09-api/external-apis.md | 258 -- docs/src/chapter-09-api/get-integration.md | 188 - docs/src/chapter-09-api/llm-rest-server.md | 243 -- docs/src/chapter-09-api/mcp-format.md | 220 - docs/src/chapter-09-api/nvidia-gpu-setup.md | 287 -- docs/src/chapter-09-api/openai-format.md | 252 -- docs/src/chapter-09-api/param-declaration.md | 91 - docs/src/chapter-09-api/tool-definition.md | 339 -- docs/src/chapter-10-api/README.md | 64 - docs/src/chapter-10-api/admin-api.md | 51 - docs/src/chapter-10-api/ai-api.md | 47 - docs/src/chapter-10-api/analytics-api.md | 45 - .../assets/api-architecture.svg.backup | 186 - .../assets/api-request-flow.svg.backup | 180 - docs/src/chapter-10-api/backup-api.md | 44 - docs/src/chapter-10-api/calendar-api.md | 190 - docs/src/chapter-10-api/calls-api.md | 209 - docs/src/chapter-10-api/compliance-api.md | 60 - docs/src/chapter-10-api/conversations-api.md | 219 - .../src/chapter-10-api/document-processing.md | 556 --- docs/src/chapter-10-api/email-api.md | 399 -- docs/src/chapter-10-api/examples.md | 417 -- docs/src/chapter-10-api/files-api.md | 639 --- docs/src/chapter-10-api/group-membership.md | 598 --- docs/src/chapter-10-api/groups-api.md | 219 - docs/src/chapter-10-api/ml-api.md | 53 - docs/src/chapter-10-api/monitoring-api.md | 50 - docs/src/chapter-10-api/notifications-api.md | 490 --- .../chapter-10-api/opensource-components.md | 121 - docs/src/chapter-10-api/reports-api.md | 48 - docs/src/chapter-10-api/security-api.md | 59 - docs/src/chapter-10-api/storage-api.md | 344 -- docs/src/chapter-10-api/tasks-api.md | 508 --- docs/src/chapter-10-api/user-security.md | 642 --- docs/src/chapter-10-api/users-api.md | 451 --- docs/src/chapter-10-api/whiteboard-api.md | 216 - docs/src/chapter-11-features/README.md | 43 - docs/src/chapter-11-features/ai-llm.md | 206 - docs/src/chapter-11-features/automation.md | 111 - docs/src/chapter-11-features/channels.md | 89 - docs/src/chapter-11-features/conversation.md | 93 - docs/src/chapter-11-features/core-features.md | 118 - docs/src/chapter-11-features/drive-monitor.md | 118 - docs/src/chapter-11-features/editions.md | 375 -- docs/src/chapter-11-features/email.md | 224 -- docs/src/chapter-11-features/hybrid-search.md | 120 - .../src/chapter-11-features/knowledge-base.md | 67 - .../chapter-11-features/m365-comparison.md | 294 -- .../chapter-11-features/memory-management.md | 454 --- .../chapter-11-features/multi-agent-design.md | 3550 ----------------- .../multi-agent-orchestration.md | 561 --- .../platform-comparison.md | 175 - docs/src/chapter-11-features/projects.md | 348 -- docs/src/chapter-11-features/storage.md | 111 - docs/src/chapter-11-features/whats-new.md | 24 - docs/src/chapter-12-auth/README.md | 70 - docs/src/chapter-12-auth/api-endpoints.md | 109 - docs/src/chapter-12-auth/bot-auth.md | 121 - .../compliance-requirements.md | 562 --- docs/src/chapter-12-auth/password-security.md | 289 -- .../chapter-12-auth/permissions-compliance.md | 1 - .../src/chapter-12-auth/permissions-matrix.md | 93 - docs/src/chapter-12-auth/security-features.md | 157 - docs/src/chapter-12-auth/security-policy.md | 440 -- docs/src/chapter-12-auth/user-auth.md | 583 --- .../chapter-12-auth/user-system-context.md | 292 -- docs/src/chapter-13-community/README.md | 73 - .../code-of-conduct-pt-br.md | 48 - .../chapter-13-community/code-of-conduct.md | 49 - docs/src/chapter-13-community/community.md | 26 - .../contributing-guidelines.md | 84 - .../src/chapter-13-community/documentation.md | 289 -- .../chapter-13-community/ide-extensions.md | 251 -- .../src/chapter-13-community/pull-requests.md | 141 - docs/src/chapter-13-community/setup.md | 395 -- docs/src/chapter-13-community/standards.md | 312 -- docs/src/chapter-13-community/testing.md | 423 -- docs/src/chapter-14-migration/README.md | 85 - docs/src/chapter-14-migration/automation.md | 58 - docs/src/chapter-14-migration/botpress.md | 461 --- .../chapter-14-migration/common-concepts.md | 77 - .../chapter-14-migration/comparison-matrix.md | 200 - docs/src/chapter-14-migration/dialogflow.md | 476 --- .../chapter-14-migration/google-workspace.md | 138 - docs/src/chapter-14-migration/intercom.md | 427 -- docs/src/chapter-14-migration/kb-migration.md | 55 - .../src/chapter-14-migration/microsoft-365.md | 105 - docs/src/chapter-14-migration/n8n.md | 361 -- docs/src/chapter-14-migration/notion.md | 416 -- docs/src/chapter-14-migration/overview.md | 17 - docs/src/chapter-14-migration/perplexity.md | 406 -- docs/src/chapter-14-migration/resources.md | 202 - docs/src/chapter-14-migration/validation.md | 61 - docs/src/chapter-14-migration/zapier-make.md | 489 --- docs/src/contact/README.md | 67 - docs/src/custom.css | 438 -- docs/src/executive-vision.md | 196 - docs/src/favicon.png | Bin 25670 -> 0 bytes docs/src/glossary.md | 343 -- docs/src/introduction.md | 266 -- docs/src/theme-sync.js | 115 - docs/src/whatsapp-chat.css | 447 --- src/console/wizard.rs | 4 +- src/core/bot/manager.rs | 2 +- src/core/bot/multimedia.rs | 8 +- src/core/shared/branding.rs | 395 -- src/core/shared/message_types.rs | 82 - src/core/shared/mod.rs | 68 +- src/core/shared/models.rs | 530 +-- src/core/shared/schema.rs | 305 ++ src/core/shared/version.rs | 514 --- 481 files changed, 588 insertions(+), 104858 deletions(-) delete mode 100644 docs/GAP_ANALYSIS.md delete mode 100644 docs/book.toml delete mode 100644 docs/src/README.md delete mode 100644 docs/src/SUMMARY.md delete mode 100644 docs/src/appendix-15/README.md delete mode 100644 docs/src/appendix-15/relationships.md delete mode 100644 docs/src/appendix-15/schema.md delete mode 100644 docs/src/appendix-15/tables.md delete mode 100644 docs/src/appendix-docs-style/conversation-examples.md delete mode 100644 docs/src/appendix-env-vars/README.md delete mode 100644 docs/src/appendix-external-services/README.md delete mode 100644 docs/src/appendix-external-services/attendance-queue.md delete mode 100644 docs/src/appendix-external-services/catalog.md delete mode 100644 docs/src/appendix-external-services/channels.md delete mode 100644 docs/src/appendix-external-services/console.md delete mode 100644 docs/src/appendix-external-services/directory.md delete mode 100644 docs/src/appendix-external-services/llm-providers.md delete mode 100644 docs/src/appendix-external-services/multimodal.md delete mode 100644 docs/src/appendix-external-services/nvidia.md delete mode 100644 docs/src/appendix-external-services/storage.md delete mode 100644 docs/src/appendix-external-services/timeseries.md delete mode 100644 docs/src/appendix-external-services/weather.md delete mode 100644 docs/src/assets/api-comparison-matrix.svg delete mode 100644 docs/src/assets/architecture-overview.svg delete mode 100644 docs/src/assets/architecture.svg delete mode 100644 docs/src/assets/architecture.svg.backup delete mode 100644 docs/src/assets/botmodels-architecture.svg delete mode 100644 docs/src/assets/chapter-01/bootstrap-process.svg delete mode 100644 docs/src/assets/chapter-01/quick-start-bootstrap-wide.svg delete mode 100644 docs/src/assets/chapter-01/quick-start-bootstrap.svg delete mode 100644 docs/src/assets/chapter-01/session-manager.svg delete mode 100644 docs/src/assets/chapter-01/session-states.svg delete mode 100644 docs/src/assets/chapter-01/tool-execution-flow.svg delete mode 100644 docs/src/assets/chapter-02/package-structure.svg delete mode 100644 docs/src/assets/chapter-02/template-deployment-flow.svg delete mode 100644 docs/src/assets/chapter-03/caching-architecture.svg delete mode 100644 docs/src/assets/chapter-03/context-window.svg delete mode 100644 docs/src/assets/chapter-03/kb-architecture-pipeline.svg delete mode 100644 docs/src/assets/chapter-03/search-pipeline.svg delete mode 100644 docs/src/assets/chapter-03/storage-breakdown.svg delete mode 100644 docs/src/assets/chapter-03/storage-multiplication.svg delete mode 100644 docs/src/assets/chapter-03/technical-specs.svg delete mode 100644 docs/src/assets/chapter-04/analytics-interface.svg delete mode 100644 docs/src/assets/chapter-04/calendar-interface.svg delete mode 100644 docs/src/assets/chapter-04/compliance-interface.svg delete mode 100644 docs/src/assets/chapter-04/designer-interface.svg delete mode 100644 docs/src/assets/chapter-04/drive-interface.svg delete mode 100644 docs/src/assets/chapter-04/mail-interface.svg delete mode 100644 docs/src/assets/chapter-04/meet-interface.svg delete mode 100644 docs/src/assets/chapter-04/paper-interface.svg delete mode 100644 docs/src/assets/chapter-04/research-interface.svg delete mode 100644 docs/src/assets/chapter-04/sources-interface.svg delete mode 100644 docs/src/assets/chapter-04/suite-main-layout.svg delete mode 100644 docs/src/assets/chapter-04/tasks-interface.svg delete mode 100644 docs/src/assets/chapter-06/basic-execution-flow.svg delete mode 100644 docs/src/assets/chapter-07/data-flow.svg delete mode 100644 docs/src/assets/chapter-07/data-traceability.svg delete mode 100644 docs/src/assets/chapter-07/module-data-flow.svg delete mode 100644 docs/src/assets/chapter-07/module-dependency.svg delete mode 100644 docs/src/assets/chapter-07/system-architecture.svg delete mode 100644 docs/src/assets/chapter-10/api-architecture.svg delete mode 100644 docs/src/assets/chapter-10/api-request-flow.svg delete mode 100644 docs/src/assets/conversation-flow.svg delete mode 100644 docs/src/assets/conversation-flow.svg.backup delete mode 100644 docs/src/assets/directory-tree.svg delete mode 100644 docs/src/assets/feature-parity-flow.svg delete mode 100644 docs/src/assets/gb-decorative-header.svg delete mode 100644 docs/src/assets/icons/gb-bot.svg delete mode 100644 docs/src/assets/icons/gb-chart.svg delete mode 100644 docs/src/assets/icons/gb-check.svg delete mode 100644 docs/src/assets/icons/gb-database.svg delete mode 100644 docs/src/assets/icons/gb-folder.svg delete mode 100644 docs/src/assets/icons/gb-gear.svg delete mode 100644 docs/src/assets/icons/gb-globe.svg delete mode 100644 docs/src/assets/icons/gb-lightbulb.svg delete mode 100644 docs/src/assets/icons/gb-lock.svg delete mode 100644 docs/src/assets/icons/gb-note.svg delete mode 100644 docs/src/assets/icons/gb-package.svg delete mode 100644 docs/src/assets/icons/gb-palette.svg delete mode 100644 docs/src/assets/icons/gb-rocket.svg delete mode 100644 docs/src/assets/icons/gb-search.svg delete mode 100644 docs/src/assets/icons/gb-signal.svg delete mode 100644 docs/src/assets/icons/gb-target.svg delete mode 100644 docs/src/assets/icons/gb-tree.svg delete mode 100644 docs/src/assets/icons/gb-warning.svg delete mode 100644 docs/src/assets/infrastructure-architecture.svg delete mode 100644 docs/src/assets/migration-architecture.svg delete mode 100644 docs/src/assets/observability-flow.svg delete mode 100644 docs/src/assets/package-system-flow.svg delete mode 100644 docs/src/assets/package-system-flow.svg.backup delete mode 100644 docs/src/assets/platform-comparison-summary.svg delete mode 100644 docs/src/assets/script-execution-flow.svg delete mode 100644 docs/src/assets/suite/analytics-flow.svg delete mode 100644 docs/src/assets/suite/analytics-screen.svg delete mode 100644 docs/src/assets/suite/app-launcher.svg delete mode 100644 docs/src/assets/suite/calendar-flow.svg delete mode 100644 docs/src/assets/suite/calendar-screen.svg delete mode 100644 docs/src/assets/suite/chat-flow.svg delete mode 100644 docs/src/assets/suite/chat-screen.svg delete mode 100644 docs/src/assets/suite/compliance-flow.svg delete mode 100644 docs/src/assets/suite/compliance-screen.svg delete mode 100644 docs/src/assets/suite/designer-flow.svg delete mode 100644 docs/src/assets/suite/designer-screen.svg delete mode 100644 docs/src/assets/suite/drive-flow.svg delete mode 100644 docs/src/assets/suite/drive-screen.svg delete mode 100644 docs/src/assets/suite/live-monitoring-organism.svg delete mode 100644 docs/src/assets/suite/mail-flow.svg delete mode 100644 docs/src/assets/suite/mail-screen.svg delete mode 100644 docs/src/assets/suite/meet-flow.svg delete mode 100644 docs/src/assets/suite/meet-screen.svg delete mode 100644 docs/src/assets/suite/paper-flow.svg delete mode 100644 docs/src/assets/suite/paper-screen.svg delete mode 100644 docs/src/assets/suite/player-flow.svg delete mode 100644 docs/src/assets/suite/player-screen.svg delete mode 100644 docs/src/assets/suite/research-flow.svg delete mode 100644 docs/src/assets/suite/research-screen.svg delete mode 100644 docs/src/assets/suite/sources-flow.svg delete mode 100644 docs/src/assets/suite/sources-screen.svg delete mode 100644 docs/src/assets/suite/suite-layout.svg delete mode 100644 docs/src/assets/suite/suite-screen.svg delete mode 100644 docs/src/assets/suite/tasks-flow.svg delete mode 100644 docs/src/assets/suite/tasks-screen.svg delete mode 100644 docs/src/assets/technical-specs.svg delete mode 100644 docs/src/assets/wa-chat.css delete mode 100644 docs/src/chapter-01/README.md delete mode 100644 docs/src/chapter-01/assets/bootstrap-process.svg.backup delete mode 100644 docs/src/chapter-01/assets/quick-start-bootstrap.svg.backup delete mode 100644 docs/src/chapter-01/assets/session-manager.svg.backup delete mode 100644 docs/src/chapter-01/assets/session-states.svg.backup delete mode 100644 docs/src/chapter-01/assets/tool-execution-flow.svg.backup delete mode 100644 docs/src/chapter-01/first-conversation.md delete mode 100644 docs/src/chapter-01/installation.md delete mode 100644 docs/src/chapter-01/overview.md delete mode 100644 docs/src/chapter-01/quick-start.md delete mode 100644 docs/src/chapter-01/sessions.md delete mode 100644 docs/src/chapter-02/README.md delete mode 100644 docs/src/chapter-02/assets/package-structure.svg.backup delete mode 100644 docs/src/chapter-02/assets/template-deployment-flow.svg.backup delete mode 100644 docs/src/chapter-02/gbai.md delete mode 100644 docs/src/chapter-02/gbdialog.md delete mode 100644 docs/src/chapter-02/gbdrive.md delete mode 100644 docs/src/chapter-02/gbkb.md delete mode 100644 docs/src/chapter-02/gbot.md delete mode 100644 docs/src/chapter-02/gbtheme.md delete mode 100644 docs/src/chapter-02/summary.md delete mode 100644 docs/src/chapter-02/template-analytics.md delete mode 100644 docs/src/chapter-02/template-api-client.md delete mode 100644 docs/src/chapter-02/template-bi.md delete mode 100644 docs/src/chapter-02/template-crawler.md delete mode 100644 docs/src/chapter-02/template-crm-contacts.md delete mode 100644 docs/src/chapter-02/template-crm.md delete mode 100644 docs/src/chapter-02/template-law.md delete mode 100644 docs/src/chapter-02/template-llm-server.md delete mode 100644 docs/src/chapter-02/template-llm-tools.md delete mode 100644 docs/src/chapter-02/template-marketing.md delete mode 100644 docs/src/chapter-02/template-office.md delete mode 100644 docs/src/chapter-02/template-reminder.md delete mode 100644 docs/src/chapter-02/template-samples.md delete mode 100644 docs/src/chapter-02/template-template.md delete mode 100644 docs/src/chapter-02/templates.md delete mode 100644 docs/src/chapter-03/README.md delete mode 100644 docs/src/chapter-03/assets/caching-architecture.svg.backup delete mode 100644 docs/src/chapter-03/assets/context-window.svg.backup delete mode 100644 docs/src/chapter-03/assets/kb-architecture-pipeline.svg.backup delete mode 100644 docs/src/chapter-03/assets/search-pipeline.svg.backup delete mode 100644 docs/src/chapter-03/assets/storage-breakdown.svg.backup delete mode 100644 docs/src/chapter-03/assets/storage-multiplication.svg.backup delete mode 100644 docs/src/chapter-03/assets/technical-specs.svg.backup delete mode 100644 docs/src/chapter-03/caching.md delete mode 100644 docs/src/chapter-03/episodic-memory.md delete mode 100644 docs/src/chapter-03/indexing.md delete mode 100644 docs/src/chapter-03/kb-and-tools.md delete mode 100644 docs/src/chapter-03/semantic-search.md delete mode 100644 docs/src/chapter-03/summary.md delete mode 100644 docs/src/chapter-03/vector-collections.md delete mode 100644 docs/src/chapter-04-gbui/README.md delete mode 100644 docs/src/chapter-04-gbui/apps/README.md delete mode 100644 docs/src/chapter-04-gbui/apps/analytics.md delete mode 100644 docs/src/chapter-04-gbui/apps/calendar.md delete mode 100644 docs/src/chapter-04-gbui/apps/chat.md delete mode 100644 docs/src/chapter-04-gbui/apps/compliance-api.md delete mode 100644 docs/src/chapter-04-gbui/apps/compliance.md delete mode 100644 docs/src/chapter-04-gbui/apps/designer.md delete mode 100644 docs/src/chapter-04-gbui/apps/drive.md delete mode 100644 docs/src/chapter-04-gbui/apps/mail.md delete mode 100644 docs/src/chapter-04-gbui/apps/meet.md delete mode 100644 docs/src/chapter-04-gbui/apps/paper.md delete mode 100644 docs/src/chapter-04-gbui/apps/player.md delete mode 100644 docs/src/chapter-04-gbui/apps/research.md delete mode 100644 docs/src/chapter-04-gbui/apps/sources.md delete mode 100644 docs/src/chapter-04-gbui/apps/suite.md delete mode 100644 docs/src/chapter-04-gbui/apps/tasks.md delete mode 100644 docs/src/chapter-04-gbui/console-mode.md delete mode 100644 docs/src/chapter-04-gbui/how-to/README.md delete mode 100644 docs/src/chapter-04-gbui/how-to/add-kb-documents.md delete mode 100644 docs/src/chapter-04-gbui/how-to/connect-whatsapp.md delete mode 100644 docs/src/chapter-04-gbui/how-to/create-first-bot.md delete mode 100644 docs/src/chapter-04-gbui/how-to/monitor-sessions.md delete mode 100644 docs/src/chapter-04-gbui/how-to/write-first-dialog.md delete mode 100644 docs/src/chapter-04-gbui/htmx-architecture.md delete mode 100644 docs/src/chapter-04-gbui/monitoring.md delete mode 100644 docs/src/chapter-04-gbui/single-gbui.md delete mode 100644 docs/src/chapter-04-gbui/suite-manual.md delete mode 100644 docs/src/chapter-04-gbui/ui-structure.md delete mode 100644 docs/src/chapter-05-gbtheme/README.md delete mode 100644 docs/src/chapter-05-gbtheme/css.md delete mode 100644 docs/src/chapter-05-gbtheme/structure.md delete mode 100644 docs/src/chapter-06-gbdialog/README.md delete mode 100644 docs/src/chapter-06-gbdialog/assets/basic-execution-flow.svg.backup delete mode 100644 docs/src/chapter-06-gbdialog/basic-vs-automation-tools.md delete mode 100644 docs/src/chapter-06-gbdialog/basics.md delete mode 100644 docs/src/chapter-06-gbdialog/examples-consolidated.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-add-bot.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-add-member.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-add-suggestion.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-aggregate.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-book.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-bot-reflection.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-card.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-clear-kb.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-clear-tools.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-compress.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-copy.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-create-draft.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-create-site.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-create-task.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-delegate-to-bot.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-delete-file.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-delete-http.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-delete.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-download.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-exit-for.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-extract.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-fill.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-filter.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-find.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-first.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-for-each.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-format.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-generate-pdf.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-get-bot-memory.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-get-user-memory.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-get.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-graphql.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-group-by.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-hear.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-insert.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-instr.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-is-numeric.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-join.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-kb-collection-stats.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-kb-documents-added-since.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-kb-documents-count.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-kb-list-collections.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-kb-statistics.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-kb-storage-size.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-last.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-list.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-map.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-merge-pdf.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-merge.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-model-route.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-move.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-on.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-patch.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-pivot.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-play.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-post.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-print.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-put.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-qrcode.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-read.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-reference-complete.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-remember.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-run-code.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-save.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-send-mail.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-send-template.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-set-bot-memory.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-set-context.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-set-header.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-set-schedule.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-set-user-memory.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-set-user.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-set.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-sms.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-soap.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-switch.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-synchronize.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-table.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-talk.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-update.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-upload.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-use-kb.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-use-model.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-use-tool.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-use-website.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-wait.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-weather.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-webhook.md delete mode 100644 docs/src/chapter-06-gbdialog/keyword-write.md delete mode 100644 docs/src/chapter-06-gbdialog/keywords-data.md delete mode 100644 docs/src/chapter-06-gbdialog/keywords-file.md delete mode 100644 docs/src/chapter-06-gbdialog/keywords-http.md delete mode 100644 docs/src/chapter-06-gbdialog/keywords-kb-statistics.md delete mode 100644 docs/src/chapter-06-gbdialog/keywords-lead-scoring.md delete mode 100644 docs/src/chapter-06-gbdialog/keywords-media.md delete mode 100644 docs/src/chapter-06-gbdialog/keywords-multi-agent.md delete mode 100644 docs/src/chapter-06-gbdialog/keywords-social-media.md delete mode 100644 docs/src/chapter-06-gbdialog/keywords.md delete mode 100644 docs/src/chapter-06-gbdialog/prompt-blocks.md delete mode 100644 docs/src/chapter-06-gbdialog/script-execution-flow.md delete mode 100644 docs/src/chapter-06-gbdialog/template-enrollment.md delete mode 100644 docs/src/chapter-06-gbdialog/template-start.md delete mode 100644 docs/src/chapter-06-gbdialog/template-summary.md delete mode 100644 docs/src/chapter-06-gbdialog/template-variables.md delete mode 100644 docs/src/chapter-06-gbdialog/templates.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/ai-search.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/analytics-dashboard.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/announcements.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/auth.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/backup.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/bank.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/broadcast.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/default.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/edu.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/employees.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/enrollment.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/erp.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/helpdesk.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/privacy.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/sales-pipeline.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/start.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/store.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/talk-to-data.md delete mode 100644 docs/src/chapter-06-gbdialog/templates/whatsapp.md delete mode 100644 docs/src/chapter-06-gbdialog/tools-data-sync.md delete mode 100644 docs/src/chapter-06-gbdialog/universal-messaging.md delete mode 100644 docs/src/chapter-07-gbapp/README.md delete mode 100644 docs/src/chapter-07-gbapp/architecture.md delete mode 100644 docs/src/chapter-07-gbapp/assets/data-flow.svg.backup delete mode 100644 docs/src/chapter-07-gbapp/assets/module-data-flow.svg.backup delete mode 100644 docs/src/chapter-07-gbapp/assets/module-dependency.svg.backup delete mode 100644 docs/src/chapter-07-gbapp/assets/system-architecture.svg.backup delete mode 100644 docs/src/chapter-07-gbapp/building.md delete mode 100644 docs/src/chapter-07-gbapp/containers.md delete mode 100644 docs/src/chapter-07-gbapp/crates.md delete mode 100644 docs/src/chapter-07-gbapp/custom-keywords.md delete mode 100644 docs/src/chapter-07-gbapp/dependencies.md delete mode 100644 docs/src/chapter-07-gbapp/docker-deployment.md delete mode 100644 docs/src/chapter-07-gbapp/example-gbapp.md delete mode 100644 docs/src/chapter-07-gbapp/infrastructure.md delete mode 100644 docs/src/chapter-07-gbapp/keyword-refactoring.md delete mode 100644 docs/src/chapter-07-gbapp/observability.md delete mode 100644 docs/src/chapter-07-gbapp/philosophy.md delete mode 100644 docs/src/chapter-07-gbapp/scaling.md delete mode 100644 docs/src/chapter-07-gbapp/services.md delete mode 100644 docs/src/chapter-08-config/README.md delete mode 100644 docs/src/chapter-08-config/config-csv.md delete mode 100644 docs/src/chapter-08-config/context-config.md delete mode 100644 docs/src/chapter-08-config/drive.md delete mode 100644 docs/src/chapter-08-config/llm-config.md delete mode 100644 docs/src/chapter-08-config/minio.md delete mode 100644 docs/src/chapter-08-config/multimodal.md delete mode 100644 docs/src/chapter-08-config/parameters.md delete mode 100644 docs/src/chapter-08-config/secrets-management.md delete mode 100644 docs/src/chapter-09-api/README.md delete mode 100644 docs/src/chapter-09-api/compilation.md delete mode 100644 docs/src/chapter-09-api/external-apis.md delete mode 100644 docs/src/chapter-09-api/get-integration.md delete mode 100644 docs/src/chapter-09-api/llm-rest-server.md delete mode 100644 docs/src/chapter-09-api/mcp-format.md delete mode 100644 docs/src/chapter-09-api/nvidia-gpu-setup.md delete mode 100644 docs/src/chapter-09-api/openai-format.md delete mode 100644 docs/src/chapter-09-api/param-declaration.md delete mode 100644 docs/src/chapter-09-api/tool-definition.md delete mode 100644 docs/src/chapter-10-api/README.md delete mode 100644 docs/src/chapter-10-api/admin-api.md delete mode 100644 docs/src/chapter-10-api/ai-api.md delete mode 100644 docs/src/chapter-10-api/analytics-api.md delete mode 100644 docs/src/chapter-10-api/assets/api-architecture.svg.backup delete mode 100644 docs/src/chapter-10-api/assets/api-request-flow.svg.backup delete mode 100644 docs/src/chapter-10-api/backup-api.md delete mode 100644 docs/src/chapter-10-api/calendar-api.md delete mode 100644 docs/src/chapter-10-api/calls-api.md delete mode 100644 docs/src/chapter-10-api/compliance-api.md delete mode 100644 docs/src/chapter-10-api/conversations-api.md delete mode 100644 docs/src/chapter-10-api/document-processing.md delete mode 100644 docs/src/chapter-10-api/email-api.md delete mode 100644 docs/src/chapter-10-api/examples.md delete mode 100644 docs/src/chapter-10-api/files-api.md delete mode 100644 docs/src/chapter-10-api/group-membership.md delete mode 100644 docs/src/chapter-10-api/groups-api.md delete mode 100644 docs/src/chapter-10-api/ml-api.md delete mode 100644 docs/src/chapter-10-api/monitoring-api.md delete mode 100644 docs/src/chapter-10-api/notifications-api.md delete mode 100644 docs/src/chapter-10-api/opensource-components.md delete mode 100644 docs/src/chapter-10-api/reports-api.md delete mode 100644 docs/src/chapter-10-api/security-api.md delete mode 100644 docs/src/chapter-10-api/storage-api.md delete mode 100644 docs/src/chapter-10-api/tasks-api.md delete mode 100644 docs/src/chapter-10-api/user-security.md delete mode 100644 docs/src/chapter-10-api/users-api.md delete mode 100644 docs/src/chapter-10-api/whiteboard-api.md delete mode 100644 docs/src/chapter-11-features/README.md delete mode 100644 docs/src/chapter-11-features/ai-llm.md delete mode 100644 docs/src/chapter-11-features/automation.md delete mode 100644 docs/src/chapter-11-features/channels.md delete mode 100644 docs/src/chapter-11-features/conversation.md delete mode 100644 docs/src/chapter-11-features/core-features.md delete mode 100644 docs/src/chapter-11-features/drive-monitor.md delete mode 100644 docs/src/chapter-11-features/editions.md delete mode 100644 docs/src/chapter-11-features/email.md delete mode 100644 docs/src/chapter-11-features/hybrid-search.md delete mode 100644 docs/src/chapter-11-features/knowledge-base.md delete mode 100644 docs/src/chapter-11-features/m365-comparison.md delete mode 100644 docs/src/chapter-11-features/memory-management.md delete mode 100644 docs/src/chapter-11-features/multi-agent-design.md delete mode 100644 docs/src/chapter-11-features/multi-agent-orchestration.md delete mode 100644 docs/src/chapter-11-features/platform-comparison.md delete mode 100644 docs/src/chapter-11-features/projects.md delete mode 100644 docs/src/chapter-11-features/storage.md delete mode 100644 docs/src/chapter-11-features/whats-new.md delete mode 100644 docs/src/chapter-12-auth/README.md delete mode 100644 docs/src/chapter-12-auth/api-endpoints.md delete mode 100644 docs/src/chapter-12-auth/bot-auth.md delete mode 100644 docs/src/chapter-12-auth/compliance-requirements.md delete mode 100644 docs/src/chapter-12-auth/password-security.md delete mode 100644 docs/src/chapter-12-auth/permissions-compliance.md delete mode 100644 docs/src/chapter-12-auth/permissions-matrix.md delete mode 100644 docs/src/chapter-12-auth/security-features.md delete mode 100644 docs/src/chapter-12-auth/security-policy.md delete mode 100644 docs/src/chapter-12-auth/user-auth.md delete mode 100644 docs/src/chapter-12-auth/user-system-context.md delete mode 100644 docs/src/chapter-13-community/README.md delete mode 100644 docs/src/chapter-13-community/code-of-conduct-pt-br.md delete mode 100644 docs/src/chapter-13-community/code-of-conduct.md delete mode 100644 docs/src/chapter-13-community/community.md delete mode 100644 docs/src/chapter-13-community/contributing-guidelines.md delete mode 100644 docs/src/chapter-13-community/documentation.md delete mode 100644 docs/src/chapter-13-community/ide-extensions.md delete mode 100644 docs/src/chapter-13-community/pull-requests.md delete mode 100644 docs/src/chapter-13-community/setup.md delete mode 100644 docs/src/chapter-13-community/standards.md delete mode 100644 docs/src/chapter-13-community/testing.md delete mode 100644 docs/src/chapter-14-migration/README.md delete mode 100644 docs/src/chapter-14-migration/automation.md delete mode 100644 docs/src/chapter-14-migration/botpress.md delete mode 100644 docs/src/chapter-14-migration/common-concepts.md delete mode 100644 docs/src/chapter-14-migration/comparison-matrix.md delete mode 100644 docs/src/chapter-14-migration/dialogflow.md delete mode 100644 docs/src/chapter-14-migration/google-workspace.md delete mode 100644 docs/src/chapter-14-migration/intercom.md delete mode 100644 docs/src/chapter-14-migration/kb-migration.md delete mode 100644 docs/src/chapter-14-migration/microsoft-365.md delete mode 100644 docs/src/chapter-14-migration/n8n.md delete mode 100644 docs/src/chapter-14-migration/notion.md delete mode 100644 docs/src/chapter-14-migration/overview.md delete mode 100644 docs/src/chapter-14-migration/perplexity.md delete mode 100644 docs/src/chapter-14-migration/resources.md delete mode 100644 docs/src/chapter-14-migration/validation.md delete mode 100644 docs/src/chapter-14-migration/zapier-make.md delete mode 100644 docs/src/contact/README.md delete mode 100644 docs/src/custom.css delete mode 100644 docs/src/executive-vision.md delete mode 100644 docs/src/favicon.png delete mode 100644 docs/src/glossary.md delete mode 100644 docs/src/introduction.md delete mode 100644 docs/src/theme-sync.js delete mode 100644 docs/src/whatsapp-chat.css delete mode 100644 src/core/shared/branding.rs delete mode 100644 src/core/shared/message_types.rs delete mode 100644 src/core/shared/version.rs diff --git a/Cargo.lock b/Cargo.lock index a6bd9849..585f97ed 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1058,6 +1058,21 @@ dependencies = [ "tokio", ] +[[package]] +name = "botlib" +version = "6.1.0" +dependencies = [ + "anyhow", + "chrono", + "diesel", + "log", + "serde", + "serde_json", + "thiserror 2.0.17", + "toml 0.8.23", + "uuid", +] + [[package]] name = "botserver" version = "6.1.0" @@ -1075,6 +1090,7 @@ dependencies = [ "axum 0.7.9", "axum-server", "base64 0.22.1", + "botlib", "bytes", "calamine", "chrono", diff --git a/Cargo.toml b/Cargo.toml index 2f75c7fe..87f27f2c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -38,6 +38,10 @@ description = "General Bots Server - Open-source bot platform by Pragmatismo.com license = "AGPL-3.0" repository = "https://github.com/GeneralBots/BotServer" +[dependencies.botlib] +path = "../botlib" +features = ["database"] + [features] # ===== DEFAULT FEATURE SET ===== default = ["console", "chat", "automation", "tasks", "drive", "llm", "redis-cache", "progress-bars", "directory"] diff --git a/docs/GAP_ANALYSIS.md b/docs/GAP_ANALYSIS.md deleted file mode 100644 index da11604d..00000000 --- a/docs/GAP_ANALYSIS.md +++ /dev/null @@ -1,240 +0,0 @@ -# Documentation vs Source Code Gap Analysis - -> Generated analysis comparing `botserver/src/` with `botserver/docs/` - -## Summary - -| Category | Documented | Implemented | Gap | -|----------|------------|-------------|-----| -| BASIC Keywords | ~65 | ~80+ | ~15 undocumented | -| Source Modules | 18 | 24 | 6 undocumented | -| Suite Apps | 14 | 14 | ✅ Complete | -| REST APIs | 22 | 22 | ✅ Complete | - ---- - -## 1. Undocumented BASIC Keywords - -The following keywords exist in `src/basic/keywords/` but lack dedicated documentation pages: - -### High Priority (Commonly Used) - -| Keyword | Source File | Description | -|---------|-------------|-------------| -| `QR CODE` | `qrcode.rs` | Generates QR code images from data | -| `SEND SMS` | `sms.rs` | Sends SMS messages via Twilio/AWS SNS/Vonage | -| `PLAY` | `play.rs` | Opens content projector for videos, images, docs | -| `REMEMBER` | `remember.rs` | Stores user memories with expiration | -| `BOOK` | `book.rs` | Schedules calendar meetings/appointments | -| `WEATHER` | `weather.rs` | Gets weather data (API documented, keyword not) | - -### Medium Priority (Advanced Features) - -| Keyword | Source File | Description | -|---------|-------------|-------------| -| `A2A` | `a2a_protocol.rs` | Agent-to-Agent communication protocol | -| `ADD BOT` | `add_bot.rs` | Dynamically adds bots to session | -| `ADD MEMBER` | `add_member.rs` | Adds members to groups/teams | -| `ADD SUGGESTION` | `add_suggestion.rs` | Adds response suggestions | -| `HUMAN APPROVAL` | `human_approval.rs` | Human-in-the-loop workflow | -| `MODEL ROUTE` | `model_routing.rs` | Routes requests to different LLM models | -| `SEND TEMPLATE` | `send_template.rs` | Sends WhatsApp/channel templates | -| `SET USER` | `set_user.rs` | Sets current user context | - -### Low Priority (Internal/Advanced) - -| Keyword | Source File | Description | -|---------|-------------|-------------| -| `EPISODIC MEMORY` | `episodic_memory.rs` | Long-term episodic memory storage | -| `KNOWLEDGE GRAPH` | `knowledge_graph.rs` | Knowledge graph operations | -| `LLM` | `llm_keyword.rs` | Direct LLM invocation | -| `MULTIMODAL` | `multimodal.rs` | Image/audio processing | -| `PROCEDURE` | `procedures.rs` | BASIC procedure definitions | -| `ON FORM SUBMIT` | `on_form_submit.rs` | Form submission handlers | -| `IMPORT/EXPORT` | `import_export.rs` | Data import/export operations | - ---- - -## 2. Undocumented Source Modules - -### Modules Without Dedicated Documentation - -| Module | Path | Purpose | Priority | -|--------|------|---------|----------| -| `attendance` | `src/attendance/` | Queue management for human attendants | Medium | -| `timeseries` | `src/timeseries/` | InfluxDB 3 integration for metrics | Medium | -| `weba` | `src/weba/` | Placeholder for web app features | Low | -| `nvidia` | `src/nvidia/` | GPU acceleration (partially documented) | Low | -| `multimodal` | `src/multimodal/` | Image/video processing | Medium | -| `console` | `src/console/` | Admin console backend | Low | - -### Modules With Partial Documentation - -| Module | Missing Docs | -|--------|--------------| -| `llm` | LLM keyword syntax, model routing details | -| `calendar` | CalDAV integration details, recurrence rules | -| `meet` | WebRTC/LiveKit integration details | - ---- - -## 3. Documentation Accuracy Issues - -### Incorrect or Outdated References - -1. **keyword-remember.md** - Referenced but file doesn't exist in SUMMARY.md -2. **keyword-book.md** - Referenced in keyword-create-task.md but no file exists -3. **keyword-weather.md** - API documented but keyword syntax not documented - -### Missing from SUMMARY.md - -These keyword files exist but aren't linked in SUMMARY.md: - -- `keyword-synchronize.md` -- `keyword-reference-complete.md` -- Several template files - ---- - -## 4. API Endpoint Gaps - -### Suite App Backend APIs (Recently Implemented) - -| App | Endpoints | Status | -|-----|-----------|--------| -| Analytics | 12 endpoints | ✅ Implemented | -| Paper | 20+ endpoints | ✅ Implemented | -| Research | 8 endpoints | ✅ Implemented | -| Sources | 7 endpoints | ✅ Implemented | -| Designer | 5 endpoints | ✅ Implemented | - -### Undocumented Internal APIs - -| API | Path | Purpose | -|-----|------|---------| -| Queue API | `/api/queue/*` | Human attendant queue management | -| TimeSeries API | N/A | Metrics ingestion (internal only) | - ---- - -## 5. Recommended Documentation Additions - -### Immediate Priority - -1. **Create `keyword-qrcode.md`** - ```basic - ' Generate QR code - path = QR CODE "https://example.com" - SEND FILE path - - ' With custom size - path = QR CODE "data", 512 - ``` - -2. **Create `keyword-sms.md`** - ```basic - ' Send SMS - SEND SMS "+1234567890", "Hello!" - - ' With provider - SEND SMS phone, message, "twilio" - ``` - -3. **Create `keyword-play.md`** - ```basic - ' Play video - PLAY "video.mp4" - - ' With options - PLAY "presentation.pptx" WITH OPTIONS "fullscreen" - ``` - -4. **Create `keyword-remember.md`** - ```basic - ' Remember with expiration - REMEMBER "user_preference", "dark_mode", "30 days" - - ' Recall later - pref = RECALL "user_preference" - ``` - -5. **Create `keyword-book.md`** - ```basic - ' Book a meeting - BOOK "Team Standup" WITH user1, user2 AT "2025-01-20 10:00" FOR 30 - ``` - -### Medium Priority - -1. **Document TimeSeries module** - Add to appendix or chapter-11 -2. **Document Attendance/Queue system** - Add to chapter-10 APIs -3. **Expand Multimodal docs** - Add keyword reference -4. **Create A2A Protocol guide** - Multi-agent communication - -### Low Priority - -1. Add advanced LLM routing documentation -2. Document internal console APIs -3. Add GPU acceleration tuning guide - ---- - -## 6. Consistency Issues - -### Naming Conventions - -| Issue | Location | Fix | -|-------|----------|-----| -| `keyword-for-each.md` vs `for_next.rs` | Inconsistent naming | Document both FOR EACH and FOR/NEXT | -| `keyword-delete-http.md` vs `DELETE` | Overlap | Clarify HTTP DELETE vs data DELETE | - -### Missing Cross-References - -- Paper app docs don't reference .gbusers storage (FIXED) -- Calendar docs don't reference BOOK keyword -- Meet docs don't reference video/audio keywords - ---- - -## 7. Action Items - -### High Priority -- [ ] Create 5 missing keyword docs (QR CODE, SMS, PLAY, REMEMBER, BOOK) -- [ ] Add WEATHER keyword syntax to weather.md -- [ ] Fix broken references in existing docs - -### Medium Priority -- [ ] Document attendance/queue module -- [ ] Add timeseries module to appendix -- [ ] Create A2A protocol guide -- [ ] Add multimodal keyword reference - -### Low Priority -- [ ] Document internal console APIs -- [ ] Add advanced configuration examples -- [ ] Create video tutorials references - ---- - -## 8. Verification Commands - -```bash -# List all keyword files in src -ls botserver/src/basic/keywords/*.rs | wc -l - -# List all keyword docs -ls botserver/docs/src/chapter-06-gbdialog/keyword-*.md | wc -l - -# Find references to undocumented keywords -grep -r "QRCODE\|QR CODE\|SEND SMS\|PLAY\|REMEMBER\|BOOK" botserver/docs/ - -# Check for broken links in SUMMARY.md -grep -oP '\./[^)]+\.md' botserver/docs/src/SUMMARY.md | while read f; do - [ ! -f "botserver/docs/src/$f" ] && echo "Missing: $f" -done -``` - ---- - -*Last updated: 2025-01-20* -*Analyzed modules: 24 source directories, 100+ documentation files* \ No newline at end of file diff --git a/docs/book.toml b/docs/book.toml deleted file mode 100644 index 1ab88b9e..00000000 --- a/docs/book.toml +++ /dev/null @@ -1,19 +0,0 @@ -[book] -title = "General Bots Documentation" -authors = ["General Bots Team"] -language = "en" -multilingual = false -src = "src" - -[build] -build-dir = "book" - -[output.html] -default-theme = "light" -preferred-dark-theme = "navy" -smart-punctuation = true -additional-css = ["src/custom.css", "src/whatsapp-chat.css"] -additional-js = ["src/theme-sync.js"] - -[output.html.favicon] -png = "favicon.png" diff --git a/docs/src/README.md b/docs/src/README.md deleted file mode 100644 index a090bddf..00000000 --- a/docs/src/README.md +++ /dev/null @@ -1,124 +0,0 @@ -
- General Bots -
- -# General Bots Documentation - -Welcome to the General Bots documentation. This guide explains how to install, configure, extend, and deploy conversational AI bots using General Bots' template-based package system and BASIC scripting language. - - -## About This Documentation - -This documentation has been recently updated to accurately reflect the actual implementation of General Bots version 6.0.8. - -The following chapters now contain accurate, verified documentation: Chapter 02 covering the package system with its template-based `.gbai` structure, Chapter 06 documenting the Rust architecture including the single-crate structure and module overview, Chapter 09 explaining core features, and the Introduction providing architecture and capabilities overview. - -Several areas have partial documentation that continues to improve. Chapter 05 on BASIC keywords includes working examples though the full reference needs expansion. Chapter 08 on tool integration has concepts documented while implementation details are being added. Chapter 11 on authentication reflects the implemented functionality but needs additional detail. - -Documentation work continues on several modules. The UI module in `src/ui/`, the UI tree module in `src/ui_tree/`, the Riot compiler module in `src/riot_compiler/`, and the prompt manager in `src/prompt_manager/` all need comprehensive documentation. API endpoints, UI server routes, Drive integration details for S3-compatible storage, and LiveKit video conferencing integration are also being documented. - - -## What is General Bots? - -General Bots is an open-source conversational AI platform written in Rust. The platform enables users to create intelligent chatbots through several integrated capabilities. - -BASIC Scripting provides simple `.bas` scripts for defining conversation flows without requiring traditional programming expertise. Template Packages organize bots as `.gbai` directories containing dialogs, knowledge bases, and configuration in a portable structure. Vector Search enables semantic document retrieval using Qdrant for intelligent information access. LLM Integration connects to local models, cloud APIs, and custom providers for natural language understanding. Auto-Bootstrap handles automated installation of PostgreSQL, cache, drive storage, and other dependencies. Multi-Bot Hosting allows running multiple isolated bots on a single server instance. - - -## Quick Start - -Getting started with General Bots follows a straightforward path. Begin with installation by following Chapter 01 on Run and Talk. Then explore the templates directory, particularly `templates/announcements.gbai/`, to see working examples. Create your own bot by copying a template and modifying it to suit your needs. Learn the BASIC scripting language through Chapter 05's reference documentation. Configure your bot by editing the `config.csv` file in your `.gbot/` directory. Finally, deploy by restarting General Bots to activate your changes. - - -## Table of Contents - -### Part I - Getting Started - -Chapter 01 on Run and Talk covers installation and your first conversation with a bot. - -### Part II - Package System - -Chapter 02 on About Packages provides an overview of the template-based package system. This includes the `.gbai` Architecture explaining package structure and lifecycle, `.gbdialog` Dialogs for BASIC scripts, `.gbkb` Knowledge Base for document collections, `.gbot` Configuration for bot parameters, `.gbtheme` UI Theming for web interface customization, and `.gbdrive` File Storage for S3-compatible drive integration. - -### Part III - Knowledge Base - -Chapter 03 on gbkb Reference covers semantic search and vector database functionality. - -### Part IV - User Interface - -Chapter 04 on .gbui Interface Reference documents HTML templates and UI components. - -### Part V - Themes and Styling - -Chapter 05 on gbtheme CSS Reference explains CSS-based theme customization. - -### Part VI - BASIC Dialogs - -Chapter 06 on gbdialog Reference provides the complete BASIC scripting reference including keywords like TALK, HEAR, LLM, SET CONTEXT, USE KB, and many more. - -### Part VII - Extending General Bots - -Chapter 07 on gbapp Architecture Reference documents the internal architecture. This includes the Architecture Overview explaining the bootstrap process, Building from Source for compilation and features, Module Structure describing single-crate organization, Service Layer with module descriptions, Creating Custom Keywords for extending BASIC, and Adding Dependencies for Cargo.toml management. - -### Part VIII - Bot Configuration - -Chapter 08 on gbot Reference covers configuration and parameters. - -### Part IX - Tools and Integration - -Chapter 09 on API and Tooling explains function calling and tool integration. - -### Part X - Feature Deep Dive - -Chapter 10 on Feature Reference provides the complete feature list including Core Features documenting platform capabilities. - -### Part XI - Community - -Chapter 11 on Contributing provides development and contribution guidelines. - -### Part XII - Authentication and Security - -Chapter 12 on Authentication documents security features. - -### Appendices - -Appendix I on Database Model provides schema reference. The Glossary defines terms used throughout the documentation. - - -## Architecture Overview - -General Bots is a monolithic Rust application organized as a single crate with clearly defined modules serving different purposes. - -### Core Modules - -The core modules handle fundamental bot functionality. The auth module provides Argon2 password hashing and session token management. The bot module manages bot lifecycle and coordination. The session module maintains persistent conversation state across interactions. The basic module implements the BASIC interpreter powered by the Rhai scripting engine. The llm and llm_models modules handle LLM provider integration for multiple backends. The context module manages conversation memory and context window optimization. - -### Infrastructure Modules - -Infrastructure modules provide the foundation for bot operations. The bootstrap module handles auto-installation of all required components. The package_manager module manages PostgreSQL, cache, drive storage, and other services. The web_server module implements the Axum HTTP REST API. The drive module integrates S3-compatible storage and vector database access. The config module handles environment configuration loading and validation. - -### Feature Modules - -Feature modules add specific capabilities to the platform. The automation module provides cron scheduling and event-driven processing. The email module offers optional IMAP and SMTP integration. The meet module enables LiveKit video conferencing. The channels module supports multi-channel deployment across different platforms. The file module handles document processing for PDF and other formats. The drive_monitor module watches file system changes for automatic updates. - - -## Technology Stack - -General Bots is built on a modern Rust technology stack. The application uses Rust 2021 edition for safety and performance. Web handling uses Axum combined with Tower middleware and Tokio async runtime. Database access uses the Diesel ORM with PostgreSQL as the backing store. Caching uses a Redis-compatible cache component for session and data caching. Storage uses the AWS SDK for S3-compatible drive operations. Vector database functionality uses Qdrant for semantic search when enabled. Scripting uses the Rhai engine to power the BASIC interpreter. Security uses Argon2 for password hashing and AES-GCM for encryption. Optional desktop deployment uses Tauri for native applications. - - -## Project Information - -The current version is 6.0.8 released under the AGPL-3.0 license. The source repository is available at https://github.com/GeneralBots/botserver. The project is maintained by open-source contributors from Pragmatismo.com.br and the broader community. - - -## Documentation Status - -This documentation is a living document that evolves alongside the codebase. Contributions are welcome from anyone who wants to improve it. - -If you find inaccuracies or gaps in the documentation, the best approach is to check the source code in `src/` for the ground truth implementation. Submit documentation improvements via pull requests on GitHub. Report issues through the GitHub issue tracker so they can be tracked and addressed. - - -## Next Steps - -Start with the Introduction for a comprehensive overview of General Bots concepts and capabilities. Alternatively, jump directly to Chapter 01 on Run and Talk to install and run General Bots immediately. \ No newline at end of file diff --git a/docs/src/SUMMARY.md b/docs/src/SUMMARY.md deleted file mode 100644 index 6b22d197..00000000 --- a/docs/src/SUMMARY.md +++ /dev/null @@ -1,370 +0,0 @@ -# Summary - -[Executive Vision](./executive-vision.md) -[Introduction](./introduction.md) - -# Part I - Getting Started - -- [Chapter 01: Run and Talk](./chapter-01/README.md) - - [Overview](./chapter-01/overview.md) - - [Quick Start](./chapter-01/quick-start.md) - - [Installation](./chapter-01/installation.md) - - [First Conversation](./chapter-01/first-conversation.md) - - [Sessions and Channels](./chapter-01/sessions.md) - -# Part II - Package System - -- [Chapter 02: About Packages](./chapter-02/README.md) - - [.gbai Architecture](./chapter-02/gbai.md) - - [.gbdialog Dialogs](./chapter-02/gbdialog.md) - - [.gbkb Knowledge Base](./chapter-02/gbkb.md) - - [.gbot Bot Configuration](./chapter-02/gbot.md) - - [.gbtheme UI Theming](./chapter-02/gbtheme.md) - - [.gbdrive File Storage](./chapter-02/gbdrive.md) - - [Bot Templates](./chapter-02/templates.md) - - [Template Samples & Conversations](./chapter-02/template-samples.md) - - [Template: Business Intelligence](./chapter-02/template-bi.md) - - [Template: Web Crawler](./chapter-02/template-crawler.md) - - [Template: Legal Documents](./chapter-02/template-law.md) - - [Template: LLM Server](./chapter-02/template-llm-server.md) - - [Template: LLM Tools](./chapter-02/template-llm-tools.md) - - [Template: API Client](./chapter-02/template-api-client.md) - - [Template: Platform Analytics](./chapter-02/template-analytics.md) - - [Template: Office Automation](./chapter-02/template-office.md) - - [Template: Reminders](./chapter-02/template-reminder.md) - - [Template: Sales CRM](./chapter-02/template-crm.md) - - [Template: CRM Contacts](./chapter-02/template-crm-contacts.md) - - [Template: Marketing](./chapter-02/template-marketing.md) - - [Template: Creating Templates](./chapter-02/template-template.md) - -# Part III - Knowledge Base - -- [Chapter 03: gbkb Reference](./chapter-03/README.md) - - [KB and Tools System](./chapter-03/kb-and-tools.md) - - [Vector Collections](./chapter-03/vector-collections.md) - - [Document Indexing](./chapter-03/indexing.md) - - [Semantic Search](./chapter-03/semantic-search.md) - - [Episodic Memory](./chapter-03/episodic-memory.md) - - [Semantic Caching](./chapter-03/caching.md) - -# Part IV - User Interface - -- [Chapter 04: .gbui Interface Reference](./chapter-04-gbui/README.md) - - [Suite User Manual](./chapter-04-gbui/suite-manual.md) - - [UI Structure](./chapter-04-gbui/ui-structure.md) - - [single.gbui - Simple Chat](./chapter-04-gbui/single-gbui.md) - - [Console Mode](./chapter-04-gbui/console-mode.md) - - [Monitoring Dashboard](./chapter-04-gbui/monitoring.md) - - [HTMX Architecture](./chapter-04-gbui/htmx-architecture.md) - - [Suite Applications](./chapter-04-gbui/apps/README.md) - - [Suite - Full Desktop](./chapter-04-gbui/apps/suite.md) - - [Chat - AI Assistant](./chapter-04-gbui/apps/chat.md) - - [Drive - File Management](./chapter-04-gbui/apps/drive.md) - - [Tasks - To-Do Lists](./chapter-04-gbui/apps/tasks.md) - - [Mail - Email Client](./chapter-04-gbui/apps/mail.md) - - [Calendar - Scheduling](./chapter-04-gbui/apps/calendar.md) - - [Meet - Video Calls](./chapter-04-gbui/apps/meet.md) - - [Player - Media Viewer](./chapter-04-gbui/apps/player.md) - - [Paper - AI Writing](./chapter-04-gbui/apps/paper.md) - - [Research - AI Search](./chapter-04-gbui/apps/research.md) - - [Analytics - Dashboards](./chapter-04-gbui/apps/analytics.md) - - [Designer - Visual Builder](./chapter-04-gbui/apps/designer.md) - - [Sources - Prompts & Templates](./chapter-04-gbui/apps/sources.md) - - [Compliance - Security Scanner](./chapter-04-gbui/apps/compliance.md) - - [Compliance API Reference](./chapter-04-gbui/apps/compliance-api.md) - - [How-To Tutorials](./chapter-04-gbui/how-to/README.md) - - [Create Your First Bot](./chapter-04-gbui/how-to/create-first-bot.md) - - [Write Your First Dialog](./chapter-04-gbui/how-to/write-first-dialog.md) - - [Add Documents to Knowledge Base](./chapter-04-gbui/how-to/add-kb-documents.md) - - [Connect WhatsApp](./chapter-04-gbui/how-to/connect-whatsapp.md) - - [Monitor Your Bot](./chapter-04-gbui/how-to/monitor-sessions.md) - -# Part V - Themes and Styling - -- [Chapter 05: gbtheme CSS Reference](./chapter-05-gbtheme/README.md) - - [Theme Structure](./chapter-05-gbtheme/structure.md) - - [CSS Customization](./chapter-05-gbtheme/css.md) - -# Part VI - BASIC Dialogs - -- [Chapter 06: gbdialog Reference](./chapter-06-gbdialog/README.md) - - [Dialog Basics](./chapter-06-gbdialog/basics.md) - - [Universal Messaging & Multi-Channel](./chapter-06-gbdialog/universal-messaging.md) - - [BASIC vs n8n/Zapier/Make](./chapter-06-gbdialog/basic-vs-automation-tools.md) - - [Template Variables](./chapter-06-gbdialog/template-variables.md) - - [Template Examples](./chapter-06-gbdialog/templates.md) - - [start.bas](./chapter-06-gbdialog/templates/start.md) - - [enrollment.bas](./chapter-06-gbdialog/templates/enrollment.md) - - [auth.bas](./chapter-06-gbdialog/templates/auth.md) - - [ai-search.bas](./chapter-06-gbdialog/templates/ai-search.md) - - [analytics-dashboard.bas](./chapter-06-gbdialog/templates/analytics-dashboard.md) - - [announcements.bas](./chapter-06-gbdialog/templates/announcements.md) - - [backup.bas](./chapter-06-gbdialog/templates/backup.md) - - [bank.bas](./chapter-06-gbdialog/templates/bank.md) - - [broadcast.bas](./chapter-06-gbdialog/templates/broadcast.md) - - [default.bas](./chapter-06-gbdialog/templates/default.md) - - [edu.bas](./chapter-06-gbdialog/templates/edu.md) - - [employees.bas](./chapter-06-gbdialog/templates/employees.md) - - [erp.bas](./chapter-06-gbdialog/templates/erp.md) - - [helpdesk.bas](./chapter-06-gbdialog/templates/helpdesk.md) - - [privacy.bas](./chapter-06-gbdialog/templates/privacy.md) - - [sales-pipeline.bas](./chapter-06-gbdialog/templates/sales-pipeline.md) - - [store.bas](./chapter-06-gbdialog/templates/store.md) - - [talk-to-data.bas](./chapter-06-gbdialog/templates/talk-to-data.md) - - [whatsapp.bas](./chapter-06-gbdialog/templates/whatsapp.md) - - [Consolidated Examples](./chapter-06-gbdialog/examples-consolidated.md) - - [Data Sync Tools](./chapter-06-gbdialog/tools-data-sync.md) - - [Keywords Reference](./chapter-06-gbdialog/keywords.md) - - [TALK](./chapter-06-gbdialog/keyword-talk.md) - - [HEAR](./chapter-06-gbdialog/keyword-hear.md) - - [SET CONTEXT](./chapter-06-gbdialog/keyword-set-context.md) - - [GET BOT MEMORY](./chapter-06-gbdialog/keyword-get-bot-memory.md) - - [SET BOT MEMORY](./chapter-06-gbdialog/keyword-set-bot-memory.md) - - [GET USER MEMORY](./chapter-06-gbdialog/keyword-get-user-memory.md) - - [SET USER MEMORY](./chapter-06-gbdialog/keyword-set-user-memory.md) - - [REMEMBER / RECALL](./chapter-06-gbdialog/keyword-remember.md) - - [BOOK / BOOK_MEETING](./chapter-06-gbdialog/keyword-book.md) - - [WEATHER / FORECAST](./chapter-06-gbdialog/keyword-weather.md) - - [ADD BOT](./chapter-06-gbdialog/keyword-add-bot.md) - - [ADD MEMBER](./chapter-06-gbdialog/keyword-add-member.md) - - [ADD SUGGESTION](./chapter-06-gbdialog/keyword-add-suggestion.md) - - [MODEL ROUTE](./chapter-06-gbdialog/keyword-model-route.md) - - [SEND TEMPLATE](./chapter-06-gbdialog/keyword-send-template.md) - - [SET USER](./chapter-06-gbdialog/keyword-set-user.md) - - [USE MODEL](./chapter-06-gbdialog/keyword-use-model.md) - - [DELEGATE TO BOT](./chapter-06-gbdialog/keyword-delegate-to-bot.md) - - [BOT REFLECTION](./chapter-06-gbdialog/keyword-bot-reflection.md) - - [RUN PYTHON / JAVASCRIPT / BASH](./chapter-06-gbdialog/keyword-run-code.md) - - [USE KB](./chapter-06-gbdialog/keyword-use-kb.md) - - [CLEAR KB](./chapter-06-gbdialog/keyword-clear-kb.md) - - [USE WEBSITE](./chapter-06-gbdialog/keyword-use-website.md) - - [USE TOOL](./chapter-06-gbdialog/keyword-use-tool.md) - - [CLEAR TOOLS](./chapter-06-gbdialog/keyword-clear-tools.md) - - [GET](./chapter-06-gbdialog/keyword-get.md) - - [SET](./chapter-06-gbdialog/keyword-set.md) - - [ON](./chapter-06-gbdialog/keyword-on.md) - - [SET SCHEDULE](./chapter-06-gbdialog/keyword-set-schedule.md) - - [CREATE SITE](./chapter-06-gbdialog/keyword-create-site.md) - - [CREATE DRAFT](./chapter-06-gbdialog/keyword-create-draft.md) - - [CREATE TASK](./chapter-06-gbdialog/keyword-create-task.md) - - [PRINT](./chapter-06-gbdialog/keyword-print.md) - - [WAIT](./chapter-06-gbdialog/keyword-wait.md) - - [FORMAT](./chapter-06-gbdialog/keyword-format.md) - - [FIRST](./chapter-06-gbdialog/keyword-first.md) - - [LAST](./chapter-06-gbdialog/keyword-last.md) - - [FOR EACH](./chapter-06-gbdialog/keyword-for-each.md) - - [EXIT FOR](./chapter-06-gbdialog/keyword-exit-for.md) - - [SEND MAIL](./chapter-06-gbdialog/keyword-send-mail.md) - - [FIND](./chapter-06-gbdialog/keyword-find.md) - - [INSTR](./chapter-06-gbdialog/keyword-instr.md) - - [IS NUMERIC](./chapter-06-gbdialog/keyword-is-numeric.md) - - [SWITCH](./chapter-06-gbdialog/keyword-switch.md) - - [WEBHOOK](./chapter-06-gbdialog/keyword-webhook.md) - - [TABLE](./chapter-06-gbdialog/keyword-table.md) - - [KB Statistics Keywords](./chapter-06-gbdialog/keywords-kb-statistics.md) - - [KB STATISTICS](./chapter-06-gbdialog/keyword-kb-statistics.md) - - [KB COLLECTION STATS](./chapter-06-gbdialog/keyword-kb-collection-stats.md) - - [KB DOCUMENTS COUNT](./chapter-06-gbdialog/keyword-kb-documents-count.md) - - [KB DOCUMENTS ADDED SINCE](./chapter-06-gbdialog/keyword-kb-documents-added-since.md) - - [KB LIST COLLECTIONS](./chapter-06-gbdialog/keyword-kb-list-collections.md) - - [KB STORAGE SIZE](./chapter-06-gbdialog/keyword-kb-storage-size.md) - - [Multi-Agent Keywords](./chapter-06-gbdialog/keywords-multi-agent.md) - - [Social Media Keywords](./chapter-06-gbdialog/keywords-social-media.md) - - [Lead Scoring Keywords](./chapter-06-gbdialog/keywords-lead-scoring.md) - - [HTTP & API Operations](./chapter-06-gbdialog/keywords-http.md) - - [POST](./chapter-06-gbdialog/keyword-post.md) - - [PUT](./chapter-06-gbdialog/keyword-put.md) - - [PATCH](./chapter-06-gbdialog/keyword-patch.md) - - [DELETE HTTP](./chapter-06-gbdialog/keyword-delete-http.md) - - [SET HEADER](./chapter-06-gbdialog/keyword-set-header.md) - - [GRAPHQL](./chapter-06-gbdialog/keyword-graphql.md) - - [SOAP](./chapter-06-gbdialog/keyword-soap.md) - - [Data Operations](./chapter-06-gbdialog/keywords-data.md) - - [SAVE](./chapter-06-gbdialog/keyword-save.md) - - [INSERT](./chapter-06-gbdialog/keyword-insert.md) - - [UPDATE](./chapter-06-gbdialog/keyword-update.md) - - [DELETE](./chapter-06-gbdialog/keyword-delete.md) - - [MERGE](./chapter-06-gbdialog/keyword-merge.md) - - [FILL](./chapter-06-gbdialog/keyword-fill.md) - - [MAP](./chapter-06-gbdialog/keyword-map.md) - - [FILTER](./chapter-06-gbdialog/keyword-filter.md) - - [AGGREGATE](./chapter-06-gbdialog/keyword-aggregate.md) - - [JOIN](./chapter-06-gbdialog/keyword-join.md) - - [PIVOT](./chapter-06-gbdialog/keyword-pivot.md) - - [GROUP BY](./chapter-06-gbdialog/keyword-group-by.md) - - [Media & Messaging](./chapter-06-gbdialog/keywords-media.md) - - [PLAY](./chapter-06-gbdialog/keyword-play.md) - - [QR CODE](./chapter-06-gbdialog/keyword-qrcode.md) - - [SEND SMS](./chapter-06-gbdialog/keyword-sms.md) - - [File Operations](./chapter-06-gbdialog/keywords-file.md) - - [READ](./chapter-06-gbdialog/keyword-read.md) - - [WRITE](./chapter-06-gbdialog/keyword-write.md) - - [DELETE FILE](./chapter-06-gbdialog/keyword-delete-file.md) - - [COPY](./chapter-06-gbdialog/keyword-copy.md) - - [MOVE](./chapter-06-gbdialog/keyword-move.md) - - [LIST](./chapter-06-gbdialog/keyword-list.md) - - [COMPRESS](./chapter-06-gbdialog/keyword-compress.md) - - [EXTRACT](./chapter-06-gbdialog/keyword-extract.md) - - [UPLOAD](./chapter-06-gbdialog/keyword-upload.md) - - [DOWNLOAD](./chapter-06-gbdialog/keyword-download.md) - - [GENERATE PDF](./chapter-06-gbdialog/keyword-generate-pdf.md) - - [MERGE PDF](./chapter-06-gbdialog/keyword-merge-pdf.md) - -# Part VII - Extending General Bots - -- [Chapter 07: gbapp Architecture Reference](./chapter-07-gbapp/README.md) - - [Architecture Overview](./chapter-07-gbapp/architecture.md) - - [Building from Source](./chapter-07-gbapp/building.md) - - [Container Deployment (LXC)](./chapter-07-gbapp/containers.md) - - [Docker Deployment](./chapter-07-gbapp/docker-deployment.md) - - [Scaling and Load Balancing](./chapter-07-gbapp/scaling.md) - - [Infrastructure Design](./chapter-07-gbapp/infrastructure.md) - - [Observability](./chapter-07-gbapp/observability.md) - - [Philosophy](./chapter-07-gbapp/philosophy.md) - - [Example gbapp](./chapter-07-gbapp/example-gbapp.md) - - [Module Structure](./chapter-07-gbapp/crates.md) - - [Service Layer](./chapter-07-gbapp/services.md) - - [Creating Custom Keywords](./chapter-07-gbapp/custom-keywords.md) - - [Adding Dependencies](./chapter-07-gbapp/dependencies.md) - -# Part VIII - Bot Configuration - -- [Chapter 08: gbot Reference](./chapter-08-config/README.md) - - [config.csv Format](./chapter-08-config/config-csv.md) - - [Bot Parameters](./chapter-08-config/parameters.md) - - [LLM Configuration](./chapter-08-config/llm-config.md) - - [Context Configuration](./chapter-08-config/context-config.md) - - [Drive Integration](./chapter-08-config/drive.md) - - [Multimodal Configuration](./chapter-08-config/multimodal.md) - - [Secrets Management](./chapter-08-config/secrets-management.md) - -# Part IX - Tools and Integration - -- [Chapter 09: API and Tooling](./chapter-09-api/README.md) - - [Tool Definition](./chapter-09-api/tool-definition.md) - - [PARAM Declaration](./chapter-09-api/param-declaration.md) - - [Tool Compilation](./chapter-09-api/compilation.md) - - [MCP Format](./chapter-09-api/mcp-format.md) - - [Tool Format](./chapter-09-api/openai-format.md) - - [GET Keyword Integration](./chapter-09-api/get-integration.md) - - [External APIs](./chapter-09-api/external-apis.md) - - [LLM REST Server](./chapter-09-api/llm-rest-server.md) - - [NVIDIA GPU Setup for LXC](./chapter-09-api/nvidia-gpu-setup.md) - -- [Chapter 10: REST API Reference](./chapter-10-api/README.md) - - [Files API](./chapter-10-api/files-api.md) - - [Document Processing API](./chapter-10-api/document-processing.md) - - [Users API](./chapter-10-api/users-api.md) - - [User Security API](./chapter-10-api/user-security.md) - - [Groups API](./chapter-10-api/groups-api.md) - - [Group Membership API](./chapter-10-api/group-membership.md) - - [Conversations API](./chapter-10-api/conversations-api.md) - - [Calls API](./chapter-10-api/calls-api.md) - - [Whiteboard API](./chapter-10-api/whiteboard-api.md) - - [Email API](./chapter-10-api/email-api.md) - - [Notifications API](./chapter-10-api/notifications-api.md) - - [Calendar API](./chapter-10-api/calendar-api.md) - - [Tasks API](./chapter-10-api/tasks-api.md) - - [Storage API](./chapter-10-api/storage-api.md) - - [Backup API](./chapter-10-api/backup-api.md) - - [Analytics API](./chapter-10-api/analytics-api.md) - - [Reports API](./chapter-10-api/reports-api.md) - - [Admin API](./chapter-10-api/admin-api.md) - - [Monitoring API](./chapter-10-api/monitoring-api.md) - - [AI API](./chapter-10-api/ai-api.md) - - [ML API](./chapter-10-api/ml-api.md) - - [Security API](./chapter-10-api/security-api.md) - - [Compliance API](./chapter-10-api/compliance-api.md) - - [Example Integrations](./chapter-10-api/examples.md) - -# Part X - Feature Deep Dive - -- [Chapter 11: Feature Reference](./chapter-11-features/README.md) - - [Feature Editions](./chapter-11-features/editions.md) - - [Core Features](./chapter-11-features/core-features.md) - - [Conversation Management](./chapter-11-features/conversation.md) - - [AI and LLM](./chapter-11-features/ai-llm.md) - - [Knowledge Base](./chapter-11-features/knowledge-base.md) - - [Automation](./chapter-11-features/automation.md) - - [Email Integration](./chapter-11-features/email.md) - - [Storage and Data](./chapter-11-features/storage.md) - - [Multi-Channel Support](./chapter-11-features/channels.md) - - [Drive Monitor](./chapter-11-features/drive-monitor.md) - - [Platform Capabilities](./chapter-11-features/platform-comparison.md) - - [Enterprise Platform Migration](./chapter-11-features/m365-comparison.md) - - [Projects](./chapter-11-features/projects.md) - - [Multi-Agent Office Suite Design](./chapter-11-features/multi-agent-design.md) - - [What's New: Multi-Agent Features](./chapter-11-features/whats-new.md) - - [Multi-Agent Orchestration](./chapter-11-features/multi-agent-orchestration.md) - - [Memory Management](./chapter-11-features/memory-management.md) - - [Hybrid RAG Search](./chapter-11-features/hybrid-search.md) - -# Part XI - Security - -- [Chapter 12: Authentication & Permissions](./chapter-12-auth/README.md) - - [User Authentication](./chapter-12-auth/user-auth.md) - - [Password Security](./chapter-12-auth/password-security.md) - - [API Endpoints](./chapter-12-auth/api-endpoints.md) - - [Bot Authentication](./chapter-12-auth/bot-auth.md) - - [Security Features](./chapter-12-auth/security-features.md) - - [Security Policy](./chapter-12-auth/security-policy.md) - - [Compliance Requirements](./chapter-12-auth/compliance-requirements.md) - - [Permissions Matrix](./chapter-12-auth/permissions-matrix.md) - - [User Context vs System Context](./chapter-12-auth/user-system-context.md) - -# Part XII - Community - -- [Chapter 13: Contributing](./chapter-13-community/README.md) - - [Development Setup](./chapter-13-community/setup.md) - - [Testing Guide](./chapter-13-community/testing.md) - - [Documentation](./chapter-13-community/documentation.md) - - [Pull Requests](./chapter-13-community/pull-requests.md) - - [Community Guidelines](./chapter-13-community/community.md) - - [IDEs](./chapter-13-community/ide-extensions.md) - -# Part XIII - Migration - -- [Chapter 14: Migration Guide](./chapter-14-migration/README.md) - - [Migration Overview](./chapter-14-migration/overview.md) - - [Platform Comparison Matrix](./chapter-14-migration/comparison-matrix.md) - - [Migration Resources](./chapter-14-migration/resources.md) - - [Common Concepts](./chapter-14-migration/common-concepts.md) - - [Knowledge Base Migration](./chapter-14-migration/kb-migration.md) - - [Cloud Productivity Migration](./chapter-14-migration/google-workspace.md) - - [Enterprise Platform Migration](./chapter-14-migration/microsoft-365.md) - - [n8n Migration](./chapter-14-migration/n8n.md) - - [Notion Migration](./chapter-14-migration/notion.md) - - [Perplexity Migration](./chapter-14-migration/perplexity.md) - - [Zapier and Make Migration](./chapter-14-migration/zapier-make.md) - - [Intercom Migration](./chapter-14-migration/intercom.md) - - [Dialogflow Migration](./chapter-14-migration/dialogflow.md) - - [Botpress Migration](./chapter-14-migration/botpress.md) - - [Automation Migration](./chapter-14-migration/automation.md) - - [Validation and Testing](./chapter-14-migration/validation.md) - -# Appendices - -- [Appendix A: Database Model](./appendix-15/README.md) - - [Schema Overview](./appendix-15/schema.md) - - [Tables](./appendix-15/tables.md) - - [Relationships](./appendix-15/relationships.md) - -- [Appendix B: External Services](./appendix-external-services/README.md) - - [Service Catalog](./appendix-external-services/catalog.md) - - [LLM Providers](./appendix-external-services/llm-providers.md) - - [Weather API](./appendix-external-services/weather.md) - - [Channel Integrations](./appendix-external-services/channels.md) - - [Storage Services](./appendix-external-services/storage.md) - - [Directory Services](./appendix-external-services/directory.md) - - [Attendance Queue](./appendix-external-services/attendance-queue.md) - - [Time-Series Database](./appendix-external-services/timeseries.md) - - [NVIDIA GPU](./appendix-external-services/nvidia.md) - - [Multimodal](./appendix-external-services/multimodal.md) - - [Console (XtreeUI)](./appendix-external-services/console.md) - -- [Appendix C: Environment Variables](./appendix-env-vars/README.md) - -- [Appendix D: Documentation Style](./appendix-docs-style/conversation-examples.md) - -[Glossary](./glossary.md) -[Contact](./contact/README.md) \ No newline at end of file diff --git a/docs/src/appendix-15/README.md b/docs/src/appendix-15/README.md deleted file mode 100644 index 59373cf3..00000000 --- a/docs/src/appendix-15/README.md +++ /dev/null @@ -1,52 +0,0 @@ -## Appendix I – Database Model - -Database Schema Overview - -The core database schema for GeneralBots is defined in `src/shared/models.rs`. It uses **Diesel** with PostgreSQL and includes the following primary tables: - -| Table | Description | -|-------|-------------| -| `users` | Stores user accounts, authentication tokens, and profile data. | -| `sessions` | Tracks active `BotSession` instances, their start/end timestamps, and associated user. | -| `knowledge_bases` | Metadata for each `.gbkb` collection (name, vector store configuration, creation date). | -| `messages` | Individual chat messages (role = user/assistant, content, timestamp, linked to a session). | -| `tools` | Registered custom tools per session (name, definition JSON, activation status). | -| `files` | References to files managed by the `.gbdrive` package (path, size, MIME type, storage location). | - -### Relationships -- **User ↔ Sessions** – One‑to‑many: a user can have many sessions. -- **Session ↔ Messages** – One‑to‑many: each session contains a sequence of messages. -- **Session ↔ KnowledgeBase** – Many‑to‑one: a session uses a single knowledge base at a time. -- **Session ↔ Tools** – One‑to‑many: tools are scoped to the session that registers them. -- **File ↔ KnowledgeBase** – Optional link for documents stored in a knowledge base. - -### Key Tables - -**User Table** -- id: Integer primary key -- username: String -- email: String -- password_hash: String -- created_at: Timestamp - -**Session Table** -- id: Integer primary key -- user_id: Foreign key to User -- started_at: Timestamp -- last_active: Timestamp -- knowledge_base_id: Integer - -**Message Table** -- id: Integer primary key -- session_id: Foreign key to Session -- role: String ("user" or "assistant") -- content: Text -- timestamp: Timestamp - -The schema is automatically migrated when the server starts. - ---- - -
- General Bots -
diff --git a/docs/src/appendix-15/relationships.md b/docs/src/appendix-15/relationships.md deleted file mode 100644 index 72c6774a..00000000 --- a/docs/src/appendix-15/relationships.md +++ /dev/null @@ -1,180 +0,0 @@ -# Database Relationships - -This document describes the relationships between tables in the General Bots database schema. - -## Entity Relationship Overview - -The database follows a hierarchical structure with organizations at the top, containing bots, which in turn manage users, sessions, and content. - -## Primary Relationships - -### Organization Hierarchy - -``` -organizations - bots (1:N) - bot_configuration (1:N) - bot_memories (1:N) - kb_collections (1:N) - kb_documents (1:N) - basic_tools (1:N) - system_automations (1:N) -``` - -Each organization can have multiple bots, and each bot has its own configuration, memories, knowledge bases, tools, and automations. Cascade delete behavior means that deleting an organization removes all associated bots and their data. - -### User and Session Management - -``` -users - user_sessions (1:N) - message_history (1:N) - clicks (1:N) - user_kb_associations (1:N) - session_tool_associations (1:N) - user_login_tokens (1:N) - user_preferences (1:1) - user_email_accounts (1:N) - email_drafts (1:N) - email_folders (1:N) - folder_messages (1:N) -``` - -Users can have multiple active sessions across different bots. Each session maintains its own message history and associations. Sessions link to both users and bots, forming a many-to-many relationship through the sessions table. - -### Bot-User Interaction - -``` -bots ←→ user_sessions ←→ users - - user_sessions: - message_history - user_kb_associations → kb_collections - session_tool_associations → basic_tools - - bots: - kb_collections - basic_tools -``` - -Users interact with bots through sessions. Sessions dynamically associate with knowledge bases and tools as needed. Message history preserves the conversation context for continuity across interactions. - -## Foreign Key Constraints - -### Strong Relationships (CASCADE DELETE) - -These relationships enforce referential integrity with cascade deletion. - -The organizations to bots relationship means deleting an organization removes all its bots, with `bots.org_id` referencing `organizations.org_id`. - -The bots to bot_configuration relationship means deleting a bot removes all its configuration, with `bot_configuration.bot_id` referencing `bots.id`. - -The bots to bot_memories relationship means deleting a bot removes all its memories, with `bot_memories.bot_id` referencing `bots.id`. - -The user_sessions to message_history relationship means ending a session removes its message history, with `message_history.session_id` referencing `user_sessions.id`. - -### Weak Relationships (SET NULL/RESTRICT) - -These relationships maintain data integrity without cascade deletion. - -The users to user_sessions relationship sets `session.user_id` to NULL when a user is deleted, preserving conversation history for audit purposes while making the session anonymous. - -The kb_collections to kb_documents relationship restricts deletion if documents exist, requiring explicit document deletion first to prevent accidental data loss. - -The user_email_accounts to email_drafts relationship preserves drafts when an email account is deleted, allowing draft recovery or reassignment to other accounts. - -## Many-to-Many Relationships - -### Sessions ↔ Knowledge Bases - -``` -user_sessions ←→ user_kb_associations ←→ kb_collections -``` - -The `user_kb_associations` junction table allows dynamic KB activation per session. Multiple knowledge bases can be active simultaneously, enabling conversations that draw from several information sources. - -### Sessions ↔ Tools - -``` -user_sessions ←→ session_tool_associations ←→ basic_tools -``` - -The `session_tool_associations` junction table enables tools to be loaded per session as needed. This supports dynamic tool discovery where available capabilities vary based on context. - -## Relationship Cardinality - -One-to-one relationships exist between users and user_preferences, where each user has exactly one preferences record. - -One-to-many relationships include organizations to bots, bots to bot_configuration, bots to kb_collections, kb_collections to kb_documents, users to user_sessions, user_sessions to message_history, and user_email_accounts to email_drafts. - -Many-to-many relationships exist between user_sessions and kb_collections through user_kb_associations, between user_sessions and basic_tools through session_tool_associations, and between users and bots through user_sessions. - -## Referential Integrity Rules - -### Insert Order - -When inserting data, follow this sequence: organizations first, then bots, then bot_configuration. For user data, insert users first, then user_sessions, then message_history. Knowledge base data requires kb_collections before kb_documents. Tools require basic_tools before session_tool_associations. - -### Delete Order (reverse of insert) - -When deleting data, reverse the insert order: message_history first, then user_sessions, then users. For tools, delete session_tool_associations before basic_tools. For knowledge bases, delete kb_documents before kb_collections. For organizational data, delete bot_configuration, then bots, then organizations. - -## Orphan Prevention - -### Automatic Cleanup - -Sessions expire based on the `expires_at` timestamp. Orphaned associations are cleaned by background jobs that run periodically. Temporary data has TTL settings that trigger automatic removal. - -### Manual Cleanup Required - -Some data requires manual cleanup. Unused kb_documents should be periodically reviewed and removed. Old message_history should be cleared based on retention policy. Expired user_login_tokens should be purged. - -## Performance Implications - -### Hot Paths - -These relationships are frequently traversed and should be optimized. - -The user_sessions to message_history path benefits from an index on `(session_id, created_at DESC)` and is used for conversation display. - -The bots to bot_memories path benefits from an index on `(bot_id, key)` and is used by GET BOT MEMORY and SET BOT MEMORY operations. - -The kb_collections to kb_documents path benefits from an index on `(collection_id, indexed)` and is used for semantic search. - -### Join Optimization - -Common join patterns benefit from composite indexes. - -User session context queries join user_sessions with users on `user_sessions.user_id = users.id` and with bots on `user_sessions.bot_id = bots.id`. - -Knowledge base loading joins user_kb_associations with kb_collections on `user_kb_associations.collection_id = kb_collections.id` and kb_documents on `kb_collections.id = kb_documents.collection_id`. - -Tool discovery joins session_tool_associations with basic_tools on `session_tool_associations.tool_id = basic_tools.id` filtered by session_id and bot_id. - -## Data Consistency Patterns - -### Transaction Boundaries - -Certain operations must be atomic. - -Session creation requires inserting the user_session record, initializing default associations, and creating the initial message all within a single transaction. - -Tool registration requires inserting the basic_tool record, updating bot_configuration, and refreshing active sessions together. - -Document upload requires inserting the kb_document record, triggering the indexing job, and updating collection metadata atomically. - -### Eventual Consistency - -Some operations can be eventually consistent. - -Vector embeddings allow document upload to complete first, with asynchronous indexing creating embeddings afterward. Search becomes available after processing completes. - -Email synchronization saves account configuration immediately, then background sync fetches emails asynchronously. Folders and counts update as sync progresses. - -## Best Practices - -Always use foreign keys for data integrity to catch relationship violations at the database level. Index foreign key columns for join performance to avoid full table scans on relationship traversals. Use transactions for related updates to maintain consistency across multiple tables. - -Implement soft deletes for audit trails where regulations require historical data retention. Monitor constraint violations in logs to catch application bugs early. Plan cascade paths carefully to avoid unintended data deletion. - -Document relationship changes in migrations so the team understands schema evolution over time. \ No newline at end of file diff --git a/docs/src/appendix-15/schema.md b/docs/src/appendix-15/schema.md deleted file mode 100644 index 02063636..00000000 --- a/docs/src/appendix-15/schema.md +++ /dev/null @@ -1,126 +0,0 @@ -# Database Schema Overview - -General Bots uses PostgreSQL as its primary database with Diesel ORM for type-safe database operations. The schema is designed to support multi-tenant bot hosting with comprehensive session management, user authentication, and content storage. - -## Core Architecture - -The database schema follows several key design principles. All tables use UUID primary keys for globally unique identifiers that work across distributed systems. Created and updated timestamps provide audit trails for tracking data changes. Foreign key relationships maintain referential integrity between related entities. JSON fields offer flexible storage for dynamic configuration and metadata that doesn't fit rigid schema definitions. - -## Database Schema Diagram - -## Entity Relationship Overview - -Database Schema Overview - -### Core Tables Structure -## Detailed Schema - -Database Entity Details - -## Schema Categories - -### Organization & Bot Management - -The `organizations` table provides multi-tenant organization support, isolating data between different customers or deployments. The `bots` table stores bot instances and their configurations. The `bot_configuration` table contains bot-specific settings and parameters. The `bot_memories` table provides persistent key-value storage for bots to maintain state across sessions. - -### User & Authentication - -The `users` table stores user accounts with secure password storage using Argon2 hashing. The `user_sessions` table tracks active user sessions with authentication tokens. The `user_login_tokens` table manages authentication tokens for login flows. The `user_preferences` table contains user-specific settings and customizations. - -### Conversation & Messaging - -The `message_history` table maintains complete conversation history between users and bots. The `clicks` table tracks user interaction events for analytics. The `system_automations` table stores scheduled tasks and automation rules that run without user intervention. - -### Knowledge Base - -The `kb_collections` table defines knowledge base collection containers. The `kb_documents` table stores documents within those collections. The `user_kb_associations` table manages user access permissions to knowledge bases. The `session_tool_associations` table tracks which tools are available within specific sessions. - -### Tools & Integration - -The `basic_tools` table stores BASIC script tool definitions compiled from `.bas` files. The `user_email_accounts` table manages email integration accounts for users. The `email_drafts` table stores draft emails being composed. The `email_folders` table organizes email folder structures. - -## Table Relationships - -### Session Flow - -Session Flow Diagram - -### Knowledge Base Access - -Knowledge Base Access - -### Primary Relationships - -The bot hierarchy establishes that organizations contain multiple bots in a one-to-many relationship. Each bot has multiple configuration entries and memories associated with it. - -User sessions connect users to bots through the session table. Users can have multiple sessions, and each session maintains its own message history. Bots also connect to sessions, enabling the many-to-many relationship between users and bots. - -Knowledge management links bots to knowledge base collections, with each collection containing multiple documents. Sessions associate with knowledge bases through the user_kb_associations table. - -Tool associations connect bots to their defined tools, and sessions link to available tools through the session_tool_associations junction table. - -## Data Types - -The schema uses several PostgreSQL data types throughout. UUID fields serve as primary keys and foreign key references for globally unique identification. Text fields store variable-length string data without length constraints. Varchar fields hold fixed-length strings for codes and identifiers. Timestamptz fields store timestamps with timezone information for accurate time tracking across regions. Jsonb fields provide JSON storage with indexing capabilities for flexible schemas. Boolean fields represent binary flags and settings. Integer fields store counters and numeric values. - -## Indexing Strategy - -Primary indexes exist on all id fields serving as primary keys. Foreign key relationships receive indexes for efficient joins. Timestamp fields are indexed to support time-based queries. Session tokens have indexes for fast authentication lookups. - -Composite indexes optimize common query patterns. The combination of bot_id and user_id enables efficient session lookup. Collection_id with document_id accelerates knowledge retrieval. User_id paired with created_at supports history queries ordered by time. - -## Migration Management - -Database migrations are managed through Diesel's migration system. Migrations reside in the `migrations/` directory with each migration containing both up.sql and down.sql files for applying and reverting changes. Version tracking occurs in the `__diesel_schema_migrations` table. The bootstrap process automatically applies pending migrations on startup. - -## Performance Considerations - -### Connection Pooling - -The default connection pool maintains 10 connections to balance resource usage with concurrency. Pool size is configurable via environment variables for different deployment scales. Automatic connection recycling prevents stale connections from causing issues. - -### Query Optimization - -Prepared statements cache query plans for repeated queries, improving performance. Batch operations handle bulk inserts efficiently rather than individual row insertions. Lazy loading defers loading of related entities until needed. Pagination limits result sets to manageable sizes for large tables. - -### Data Retention - -Message history retention is configurable to balance storage costs with historical needs. Automatic cleanup removes expired sessions to free resources. An archival strategy moves old conversations to cold storage while maintaining accessibility. - -## Security Features - -### Data Protection - -Password hashing uses the Argon2 algorithm for strong protection against brute-force attacks. AES-GCM encryption protects sensitive fields at rest. Secure random token generation creates unpredictable session identifiers. Diesel's parameterized queries prevent SQL injection attacks. - -### Access Control - -Row-level security is implemented through application logic that filters queries by user context. User isolation ensures sessions only access their own data. Bot isolation separates data by organization to prevent cross-tenant access. Audit logging records sensitive operations for compliance and security review. - -## Backup Strategy - -### Backup Types - -Full database dumps capture complete point-in-time snapshots. Incremental WAL archiving provides continuous backup with minimal storage overhead. Point-in-time recovery support enables restoration to any moment within the retention window. Cross-region replication offers disaster recovery capabilities for critical deployments. - -### Restore Procedures - -Automated restore testing validates backup integrity on a regular schedule. Version compatibility checks ensure backups restore correctly to the current schema. Data integrity validation confirms restored data matches expected checksums. Zero-downtime migration support enables schema changes without service interruption. - -## Monitoring - -### Key Metrics - -Connection pool usage indicates whether the pool size needs adjustment. Query execution time reveals slow queries requiring optimization. Table sizes and growth rates inform capacity planning. Index effectiveness metrics show whether indexes are being utilized. Lock contention monitoring identifies concurrency bottlenecks. - -### Health Checks - -Database connectivity verification ensures the connection pool can reach PostgreSQL. Migration status checks confirm all migrations have been applied. Replication lag monitoring applies to deployments with read replicas. Storage usage tracking prevents disk space exhaustion. - -## Best Practices - -Always use migrations for schema changes rather than manual DDL to maintain consistency across environments. Never modify production data directly through SQL clients to avoid bypassing application logic. Test migrations in development first to catch issues before they affect production. Monitor performance metrics regularly to identify degradation early. Plan capacity based on growth projections to avoid emergency scaling. Document changes in migration files with comments explaining the purpose of each change. Use transactions for data consistency when multiple tables must be updated together. Implement retry logic for transient failures like connection timeouts or deadlocks. - -## Future Considerations - -Partitioning for large tables like message_history would improve query performance and enable efficient data archival. Read replicas could scale read-heavy workloads across multiple database instances. Time-series optimization for metrics data would support analytics features. Full-text search indexes would enable natural language queries against stored content. Graph relationships could support advanced queries for interconnected data like conversation flows. \ No newline at end of file diff --git a/docs/src/appendix-15/tables.md b/docs/src/appendix-15/tables.md deleted file mode 100644 index e0262f00..00000000 --- a/docs/src/appendix-15/tables.md +++ /dev/null @@ -1,275 +0,0 @@ -# Database Tables - -This section documents all database tables in General Bots, their structures, and purposes. - -## Core Tables - -### organizations -Stores organization/tenant information for multi-tenant deployments. - -| Column | Type | Description | -|--------|------|-------------| -| org_id | UUID | Primary key | -| name | TEXT | Organization name | -| slug | TEXT | URL-friendly identifier | -| created_at | TIMESTAMPTZ | Creation timestamp | - -### bots -Bot instances and their basic configuration. - -| Column | Type | Description | -|--------|------|-------------| -| id | UUID | Primary key | -| name | TEXT | Bot name | -| org_id | UUID | Foreign key to organizations | -| created_at | TIMESTAMPTZ | Creation timestamp | -| updated_at | TIMESTAMPTZ | Last update timestamp | - -### bot_configuration -Stores bot-specific configuration parameters from config.csv. - -| Column | Type | Description | -|--------|------|-------------| -| id | UUID | Primary key | -| bot_id | UUID | Foreign key to bots | -| key | TEXT | Configuration key | -| value | TEXT | Configuration value | -| created_at | TIMESTAMPTZ | Creation timestamp | -| updated_at | TIMESTAMPTZ | Last update timestamp | - -### bot_memories -Persistent key-value storage for bots (used by GET BOT MEMORY/SET BOT MEMORY). - -| Column | Type | Description | -|--------|------|-------------| -| id | UUID | Primary key | -| bot_id | UUID | Foreign key to bots | -| key | TEXT | Memory key | -| value | TEXT | Memory value | -| created_at | TIMESTAMPTZ | Creation timestamp | -| updated_at | TIMESTAMPTZ | Last update timestamp | - -## User Management Tables - -### users -User accounts with authentication credentials. - -| Column | Type | Description | -|--------|------|-------------| -| id | UUID | Primary key | -| username | TEXT | Unique username | -| email | TEXT | Email address | -| password_hash | TEXT | Argon2 hashed password | -| active | BOOLEAN | Account status | -| created_at | TIMESTAMPTZ | Registration timestamp | -| updated_at | TIMESTAMPTZ | Last update timestamp | - -### user_sessions -Active user sessions for authentication and state management. - -| Column | Type | Description | -|--------|------|-------------| -| id | UUID | Primary key | -| user_id | UUID | Foreign key to users | -| bot_id | UUID | Foreign key to bots | -| session_token | TEXT | Unique session identifier | -| expires_at | TIMESTAMPTZ | Session expiration | -| created_at | TIMESTAMPTZ | Session start | -| updated_at | TIMESTAMPTZ | Last activity | - -### user_login_tokens -Authentication tokens for login flows. - -| Column | Type | Description | -|--------|------|-------------| -| id | UUID | Primary key | -| user_id | UUID | Foreign key to users | -| token | TEXT | Login token | -| expires_at | TIMESTAMPTZ | Token expiration | -| used | BOOLEAN | Whether token was used | -| created_at | TIMESTAMPTZ | Token creation | - -### user_preferences -User-specific settings and preferences. - -| Column | Type | Description | -|--------|------|-------------| -| id | UUID | Primary key | -| user_id | UUID | Foreign key to users | -| preferences | JSONB | Preferences data | -| created_at | TIMESTAMPTZ | Creation timestamp | -| updated_at | TIMESTAMPTZ | Last update | - -## Conversation Tables - -### message_history -Complete conversation history between users and bots. - -| Column | Type | Description | -|--------|------|-------------| -| id | UUID | Primary key | -| session_id | UUID | Foreign key to user_sessions | -| user_id | UUID | Foreign key to users | -| bot_id | UUID | Foreign key to bots | -| message | TEXT | Message content | -| sender | TEXT | 'user' or 'bot' | -| created_at | TIMESTAMPTZ | Message timestamp | - -### clicks -Tracks user interactions with UI elements. - -| Column | Type | Description | -|--------|------|-------------| -| id | UUID | Primary key | -| session_id | UUID | Foreign key to user_sessions | -| element_id | TEXT | UI element identifier | -| timestamp | TIMESTAMPTZ | Click timestamp | - -### system_automations -Scheduled tasks and automation rules. - -| Column | Type | Description | -|--------|------|-------------| -| id | UUID | Primary key | -| bot_id | UUID | Foreign key to bots | -| name | TEXT | Automation name | -| schedule | TEXT | Cron expression | -| script | TEXT | BASIC script to execute | -| active | BOOLEAN | Whether automation is active | -| created_at | TIMESTAMPTZ | Creation timestamp | -| updated_at | TIMESTAMPTZ | Last update | - -## Knowledge Base Tables - -### kb_collections -Knowledge base collection definitions. - -| Column | Type | Description | -|--------|------|-------------| -| id | TEXT | Primary key (collection name) | -| bot_id | UUID | Foreign key to bots | -| name | TEXT | Collection display name | -| description | TEXT | Collection description | -| metadata | JSONB | Additional metadata | -| created_at | TIMESTAMPTZ | Creation timestamp | -| updated_at | TIMESTAMPTZ | Last update | - -### kb_documents -Documents stored in knowledge base collections. - -| Column | Type | Description | -|--------|------|-------------| -| id | TEXT | Primary key (document ID) | -| collection_id | TEXT | Foreign key to kb_collections | -| bot_id | UUID | Foreign key to bots | -| name | TEXT | Document name | -| content | TEXT | Document content | -| metadata | JSONB | Document metadata | -| embedding_id | TEXT | Vector embedding reference | -| indexed | BOOLEAN | Whether document is indexed | -| created_at | TIMESTAMPTZ | Upload timestamp | -| updated_at | TIMESTAMPTZ | Last update | - -### user_kb_associations -Links user sessions to available knowledge bases. - -| Column | Type | Description | -|--------|------|-------------| -| id | TEXT | Primary key | -| session_id | UUID | Foreign key to user_sessions | -| collection_id | TEXT | Foreign key to kb_collections | -| created_at | TIMESTAMPTZ | Association timestamp | - -## Tool Tables - -### basic_tools -BASIC script tool definitions. - -| Column | Type | Description | -|--------|------|-------------| -| id | TEXT | Primary key (tool name) | -| bot_id | UUID | Foreign key to bots | -| name | TEXT | Tool display name | -| description | TEXT | Tool description | -| parameters | JSONB | Parameter definitions | -| script | TEXT | BASIC script implementation | -| metadata | JSONB | Additional metadata | -| created_at | TIMESTAMPTZ | Creation timestamp | -| updated_at | TIMESTAMPTZ | Last update | - -### session_tool_associations -Links sessions to available tools. - -| Column | Type | Description | -|--------|------|-------------| -| id | TEXT | Primary key | -| session_id | UUID | Foreign key to user_sessions | -| tool_id | TEXT | Foreign key to basic_tools | -| created_at | TIMESTAMPTZ | Association timestamp | - -## Email Integration Tables - -### user_email_accounts -Email accounts configured for users. - -| Column | Type | Description | -|--------|------|-------------| -| id | UUID | Primary key | -| user_id | UUID | Foreign key to users | -| email_address | TEXT | Email address | -| imap_server | TEXT | IMAP server address | -| imap_port | INTEGER | IMAP port | -| smtp_server | TEXT | SMTP server address | -| smtp_port | INTEGER | SMTP port | -| encrypted_password | TEXT | Encrypted email password | -| active | BOOLEAN | Account status | -| created_at | TIMESTAMPTZ | Configuration timestamp | -| updated_at | TIMESTAMPTZ | Last update | - -### email_drafts -Draft emails created by users or bots. - -| Column | Type | Description | -|--------|------|-------------| -| id | UUID | Primary key | -| user_id | UUID | Foreign key to users | -| account_id | UUID | Foreign key to user_email_accounts | -| to_addresses | TEXT[] | Recipient addresses | -| cc_addresses | TEXT[] | CC addresses | -| bcc_addresses | TEXT[] | BCC addresses | -| subject | TEXT | Email subject | -| body | TEXT | Email body | -| attachments | JSONB | Attachment metadata | -| created_at | TIMESTAMPTZ | Draft creation | -| updated_at | TIMESTAMPTZ | Last edit | - -### email_folders -Email folder organization. - -| Column | Type | Description | -|--------|------|-------------| -| id | UUID | Primary key | -| account_id | UUID | Foreign key to user_email_accounts | -| name | TEXT | Folder name | -| path | TEXT | IMAP folder path | -| parent_id | UUID | Parent folder ID | -| message_count | INTEGER | Number of messages | -| unread_count | INTEGER | Unread messages | -| created_at | TIMESTAMPTZ | Folder creation | -| updated_at | TIMESTAMPTZ | Last sync | - -## Indexes - -### Primary Indexes -- All `id` columns have primary key indexes -- All foreign key columns have indexes for joins - -### Performance Indexes -- `user_sessions.session_token` - for session lookup -- `message_history.created_at` - for time-based queries -- `kb_documents.collection_id` - for collection queries -- `bot_memories(bot_id, key)` - composite for memory lookup - -### Full-Text Search Indexes -- `kb_documents.content` - for document search (when enabled) -- `message_history.message` - for conversation search (when enabled) \ No newline at end of file diff --git a/docs/src/appendix-docs-style/conversation-examples.md b/docs/src/appendix-docs-style/conversation-examples.md deleted file mode 100644 index 12f0e5e1..00000000 --- a/docs/src/appendix-docs-style/conversation-examples.md +++ /dev/null @@ -1,235 +0,0 @@ -# Conversation Examples Style Guide - -> **Standard format for displaying bot-user conversations in documentation** - -## Overview - -All conversation examples in General Bots documentation use a WhatsApp-style chat format. This provides a consistent, familiar, and readable way to show bot interactions. - -## CSS Include - -The styling is defined in `/assets/wa-chat.css`. Include it in your mdBook or HTML output. - ---- - -## Basic Structure - -```html -
- - -
-``` - ---- - -## Message Types - -### Bot Message - -```html -
- -
-``` - -### User Message - -```html -
- -
-``` - ---- - -## Formatting Within Messages - -### Multiple Paragraphs - -```html -
-

You have 2 meetings scheduled:

-

• 2:00 PM - Team Standup (30 min)

-

• 4:00 PM - Project Review (1 hour)

- -
-``` - -### Bold Text - -```html -

Name: John Smith

-

Email: john@example.com

-``` - -### Emoji Usage - -Emojis are encouraged to make conversations more expressive: - -| Purpose | Emoji Examples | -|---------|----------------| -| Success | ✅ ✓ 🎉 | -| Warning | ⚠️ ⚡ | -| Error | ❌ 🔴 | -| Info | ℹ️ 📋 | -| File | 📄 📁 📎 | -| Calendar | 📅 🗓️ | -| Email | 📧 ✉️ | -| Person | 👤 👥 | -| Time | 🕐 ⏱️ | - -### File Attachments - -```html -
- -
-``` - -### Action Buttons (visual representation) - -```html -

[📧 Send] [✏️ Edit] [🗑 Discard]

-``` - ---- - -## Complete Example - -```html -
- - -
-``` - -**Rendered Output:** - -
- - -
- ---- - -## Variants - -### Full Width - -Add `wa-full-width` class for wider conversations: - -```html -
- ... -
-``` - -### Compact - -Add `wa-compact` class for tighter spacing: - -```html -
- ... -
-``` - -### Hide Timestamps - -Add `wa-no-time` class to hide timestamps: - -```html -
- ... -
-``` - ---- - -## Best Practices - -1. **Keep messages concise** - Break long bot responses into multiple paragraphs -2. **Use consistent timestamps** - Use realistic times (10:30, 10:31, etc.) -3. **Start with user context** - Show what the user asked before the bot response -4. **Include visual feedback** - Use emojis for status (✅, ❌, 📋) -5. **Show realistic flows** - Include multi-turn conversations when appropriate -6. **Use semantic formatting** - Bold for labels, lists for options - ---- - -## Files Using This Format - -This format is used throughout the documentation: - -- `chapter-02/template-crm-contacts.md` -- `chapter-04-gbui/apps/*.md` -- `chapter-06-gbdialog/basic-vs-automation-tools.md` -- And many more... - ---- - -## See Also - -- [UI Structure](../chapter-04-gbui/ui-structure.md) -- [Chat App Documentation](../chapter-04-gbui/apps/chat.md) - - \ No newline at end of file diff --git a/docs/src/appendix-env-vars/README.md b/docs/src/appendix-env-vars/README.md deleted file mode 100644 index a5bd61f2..00000000 --- a/docs/src/appendix-env-vars/README.md +++ /dev/null @@ -1,136 +0,0 @@ -# Appendix C: Environment Variables - -General Bots uses a minimal set of environment variables. All configuration is managed through `config.csv` files within each bot's `.gbot` folder, with secrets stored securely in Vault. - -## Required Environment Variables - -Only Vault-related environment variables are used by General Bots: - -### VAULT_* Variables - -**Purpose**: HashiCorp Vault integration for secure secrets management. - -| Variable | Description | Example | -|----------|-------------|---------| -| `VAULT_ADDR` | Vault server URL | `http://localhost:8200` | -| `VAULT_TOKEN` | Authentication token | Auto-generated during bootstrap | -| `VAULT_NAMESPACE` | Vault namespace (optional) | `admin` | - -**Example**: -```bash -VAULT_ADDR=http://localhost:8200 -VAULT_TOKEN=hvs.your-vault-token -``` - -## Auto-Managed Services - -The following services are automatically configured through Vault: - -| Service | Management | -|---------|------------| -| PostgreSQL | Connection credentials in Vault | -| S3-Compatible Storage | Access keys in Vault | -| Cache | Connection managed via Vault | -| Email (Stalwart) | Credentials in Vault | -| LLM API Keys | Stored in Vault | - -You do **not** need to set environment variables for these services. Vault handles credential distribution and rotation automatically. - -## What NOT to Use Environment Variables For - -**All application configuration belongs in `config.csv`**: - -| Configuration | Where to Configure | -|--------------|-------------------| -| Database connection | Managed by Vault | -| Storage credentials | Managed by Vault | -| LLM API keys | Managed by Vault | -| LLM provider | `config.csv`: `llm-url` | -| Email settings | `config.csv`: `email-*` | -| Channel tokens | `config.csv`: `whatsapp-*`, etc. | -| Bot settings | `config.csv`: all bot-specific settings | -| Feature flags | `config.csv`: various keys | - -## Configuration Philosophy - -General Bots follows these principles: - -1. **Vault-First**: All secrets are managed by Vault -2. **Minimal Environment**: Only Vault address and token use environment variables -3. **config.csv for Settings**: All application configuration is in `config.csv` -4. **Per-Bot Configuration**: Each bot has its own `config.csv` in its `.gbot` folder -5. **No Hardcoded Secrets**: Never store secrets in code or config files - -## Setting Environment Variables - -### Linux/macOS - -```bash -export VAULT_ADDR=http://localhost:8200 -export VAULT_TOKEN=hvs.your-vault-token -``` - -### Systemd Service - -```ini -[Service] -Environment="VAULT_ADDR=http://localhost:8200" -Environment="VAULT_TOKEN=hvs.your-vault-token" -``` - -### LXC Container - -When using LXC deployment, environment variables are set in the container configuration: - -```bash -lxc config set container-name environment.VAULT_ADDR="http://localhost:8200" -lxc config set container-name environment.VAULT_TOKEN="hvs.your-vault-token" -``` - -## Security Notes - -1. **Never commit tokens**: Use `.env` files (gitignored) or secrets management -2. **Rotate regularly**: Vault tokens should be rotated periodically -3. **Limit access**: Only the botserver process needs these variables -4. **Use TLS**: Always use HTTPS for Vault in production - -## Bootstrap Process - -During bootstrap, General Bots: - -1. Connects to Vault using `VAULT_*` variables -2. Retrieves credentials for all managed services -3. Configures database, storage, cache, and other services -4. Stores service endpoints securely - -This eliminates the need for manual credential management. - -## Troubleshooting - -### Vault Connection Failed - -``` -Error: Failed to connect to Vault -``` - -Verify: -- `VAULT_ADDR` is set correctly -- Vault server is running and accessible -- `VAULT_TOKEN` is valid and not expired -- Network allows connection to Vault host - -### Service Not Available - -If a managed service (database, storage, cache) is unavailable: - -1. Check Vault is running and unsealed -2. Verify secrets exist in Vault -3. Check service container/process status -4. Review logs for connection errors - -## See Also - -- [config.csv Format](../chapter-08-config/config-csv.md) - Bot configuration -- [Secrets Management](../chapter-08-config/secrets-management.md) - Vault integration details -- [Drive Integration](../chapter-08-config/drive.md) - Storage setup -- [Authentication](../chapter-12-auth/README.md) - Security features \ No newline at end of file diff --git a/docs/src/appendix-external-services/README.md b/docs/src/appendix-external-services/README.md deleted file mode 100644 index 4dc0e657..00000000 --- a/docs/src/appendix-external-services/README.md +++ /dev/null @@ -1,94 +0,0 @@ -# Appendix B: External Services - -This appendix catalogs all external services that General Bots integrates with, including their configuration requirements, associated BASIC keywords, and API endpoints. - -## Overview - -General Bots connects to external services for extended functionality. All service credentials should be stored in `config.csv` within the bot's `.gbot` folder - never hardcoded in scripts. - -Infrastructure services (database, storage, cache) are automatically managed by the Directory service (Zitadel). - -## Service Categories - -| Category | Services | Configuration Location | -|----------|----------|----------------------| -| LLM Providers | OpenAI, Groq, Anthropic, Azure OpenAI | `config.csv` | -| Weather | OpenWeatherMap | `config.csv` | -| Messaging Channels | WhatsApp, Teams, Instagram, Telegram | `config.csv` | -| Storage | S3-Compatible (MinIO, etc.) | Vault (automatic) | -| Directory | Zitadel | `VAULT_*` environment variables | -| Email | Stalwart / IMAP/SMTP | Vault (automatic) | -| Calendar | CalDAV servers | `config.csv` | -| Database | PostgreSQL | Vault (automatic) | -| Cache | Redis-compatible | Vault (automatic) | - -## Quick Reference - -### BASIC Keywords That Call External Services - -| Keyword | Service | Config Key | -|---------|---------|-----------| -| `LLM` | LLM Provider | `llm-provider`, `llm-api-key` | -| `WEATHER` | OpenWeatherMap | `weather-api-key` | -| `SEND MAIL` | SMTP Server | Managed by Directory service | -| `SEND WHATSAPP` | WhatsApp Business API | `whatsapp-api-key`, `whatsapp-phone-number-id` | -| `SEND TEAMS` | Microsoft Teams | `teams-app-id`, `teams-app-password` | -| `SEND INSTAGRAM` | Instagram Graph API | `instagram-access-token`, `instagram-page-id` | -| `GET` (with http/https URL) | Any HTTP endpoint | N/A | -| `IMAGE` | BotModels (local) | `botmodels-enabled`, `botmodels-url` | -| `VIDEO` | BotModels (local) | `botmodels-enabled`, `botmodels-url` | -| `AUDIO` | BotModels (local) | `botmodels-enabled`, `botmodels-url` | -| `SEE` | BotModels (local) | `botmodels-enabled`, `botmodels-url` | -| `FIND` | Qdrant (local) | Internal service | -| `USE WEBSITE` | Web crawling | N/A | - -## Service Configuration Template - -Add these to your `config.csv`: - -```csv -key,value -llm-provider,openai -llm-api-key,YOUR_API_KEY -llm-model,gpt-4o -weather-api-key,YOUR_OPENWEATHERMAP_KEY -whatsapp-api-key,YOUR_WHATSAPP_KEY -whatsapp-phone-number-id,YOUR_PHONE_ID -teams-app-id,YOUR_TEAMS_APP_ID -teams-app-password,YOUR_TEAMS_PASSWORD -instagram-access-token,YOUR_INSTAGRAM_TOKEN -instagram-page-id,YOUR_PAGE_ID -botmodels-enabled,true -botmodels-url,http://localhost:5000 -``` - -## Auto-Managed Services - -The following services are automatically configured by the Directory service (Zitadel): - -| Service | What's Managed | -|---------|----------------| -| PostgreSQL | Connection credentials, database creation | -| S3-Compatible Storage | Access keys, bucket policies | -| Cache | Connection credentials | -| Stalwart Email | User accounts, SMTP/IMAP access | - -You do **not** need to configure these services manually. The Directory service handles credential provisioning and rotation. - -## Security Notes - -1. **Never hardcode credentials** - Always use `config.csv` or `GET BOT MEMORY` -2. **Rotate keys regularly** - Update `config.csv` and restart the bot -3. **Use least privilege** - Only grant permissions needed by the bot -4. **Audit access** - Monitor external API usage through logs -5. **Infrastructure credentials** - Managed automatically by Directory service - -## See Also - -- [Service Catalog](./catalog.md) - Detailed service documentation -- [LLM Providers](./llm-providers.md) - AI model configuration -- [Weather API](./weather.md) - Weather service setup -- [Channel Integrations](./channels.md) - Messaging platform setup -- [Storage Services](./storage.md) - S3-compatible storage -- [Directory Services](./directory.md) - User authentication -- [Environment Variables](../appendix-env-vars/README.md) - DIRECTORY_* configuration \ No newline at end of file diff --git a/docs/src/appendix-external-services/attendance-queue.md b/docs/src/appendix-external-services/attendance-queue.md deleted file mode 100644 index d893354b..00000000 --- a/docs/src/appendix-external-services/attendance-queue.md +++ /dev/null @@ -1,78 +0,0 @@ -# Attendance Queue Module - -Human-attendant queue management for hybrid bot/human support workflows. - -## Overview - -The attendance queue module manages handoffs from bot to human agents, tracking conversation queues, attendant availability, and real-time assignment. - -## Configuration - -Create `attendant.csv` in your bot's `.gbai` folder: - -```csv -id,name,channel,preferences -att-001,John Smith,whatsapp,sales -att-002,Jane Doe,web,support -att-003,Bob Wilson,all,technical -``` - -## Queue Status - -| Status | Description | -|--------|-------------| -| `waiting` | User waiting for attendant | -| `assigned` | Attendant assigned, not yet active | -| `active` | Conversation in progress | -| `resolved` | Conversation completed | -| `abandoned` | User left before assignment | - -## Attendant Status - -| Status | Description | -|--------|-------------| -| `online` | Available for new conversations | -| `busy` | Currently handling conversations | -| `away` | Temporarily unavailable | -| `offline` | Not working | - -## REST API Endpoints - -### GET /api/queue -List conversations in queue. - -### POST /api/queue/assign -Assign conversation to attendant. - -```json -{ - "session_id": "uuid", - "attendant_id": "uuid" -} -``` - -### POST /api/queue/transfer -Transfer conversation between attendants. - -```json -{ - "session_id": "uuid", - "from_attendant_id": "uuid", - "to_attendant_id": "uuid", - "reason": "Specialist needed" -} -``` - -### GET /api/attendants -List all attendants with stats. - -## BASIC Keywords - -```basic -TRANSFER TO HUMAN "sales" -TRANSFER TO HUMAN "support", "high" -``` - -## See Also - -- [Human Approval](../chapter-06-gbdialog/keyword-human-approval.md) \ No newline at end of file diff --git a/docs/src/appendix-external-services/catalog.md b/docs/src/appendix-external-services/catalog.md deleted file mode 100644 index 0f4c5991..00000000 --- a/docs/src/appendix-external-services/catalog.md +++ /dev/null @@ -1,273 +0,0 @@ -# Service Catalog - -This catalog provides detailed information about every external service that General Bots integrates with. - -## LLM Providers - -### OpenAI - -| Property | Value | -|----------|-------| -| **Service URL** | `https://api.openai.com/v1` | -| **Config Key** | `llm-provider=openai` | -| **API Key Config** | `llm-api-key` | -| **Documentation** | [platform.openai.com/docs](https://platform.openai.com/docs) | -| **BASIC Keywords** | `LLM` | -| **Supported Models** | `gpt-4o`, `gpt-4o-mini`, `gpt-4-turbo`, `gpt-3.5-turbo` | - -### Groq - -| Property | Value | -|----------|-------| -| **Service URL** | `https://api.groq.com/openai/v1` | -| **Config Key** | `llm-provider=groq` | -| **API Key Config** | `llm-api-key` | -| **Documentation** | [console.groq.com/docs](https://console.groq.com/docs) | -| **BASIC Keywords** | `LLM` | -| **Supported Models** | `llama-3.1-70b-versatile`, `llama-3.1-8b-instant`, `mixtral-8x7b-32768` | - -### Anthropic - -| Property | Value | -|----------|-------| -| **Service URL** | `https://api.anthropic.com/v1` | -| **Config Key** | `llm-provider=anthropic` | -| **API Key Config** | `llm-api-key` | -| **Documentation** | [docs.anthropic.com](https://docs.anthropic.com) | -| **BASIC Keywords** | `LLM` | -| **Supported Models** | `claude-3-5-sonnet`, `claude-3-opus`, `claude-3-haiku` | - -### Azure OpenAI - -| Property | Value | -|----------|-------| -| **Service URL** | `https://{resource}.openai.azure.com/` | -| **Config Key** | `llm-provider=azure` | -| **API Key Config** | `llm-api-key`, `azure-openai-endpoint` | -| **Documentation** | [learn.microsoft.com/azure/ai-services/openai](https://learn.microsoft.com/azure/ai-services/openai) | -| **BASIC Keywords** | `LLM` | - ---- - -## Weather Services - -### OpenWeatherMap - -| Property | Value | -|----------|-------| -| **Service URL** | `https://api.openweathermap.org/data/2.5` | -| **Config Key** | `weather-api-key` | -| **Documentation** | [openweathermap.org/api](https://openweathermap.org/api) | -| **BASIC Keywords** | `WEATHER` | -| **Free Tier** | 1,000 calls/day | -| **Required Plan** | Free or higher | - -**Example Usage:** -```basic -weather = WEATHER "Seattle" -TALK weather -``` - ---- - -## Messaging Channels - -### WhatsApp Business API - -| Property | Value | -|----------|-------| -| **Service URL** | `https://graph.facebook.com/v17.0` | -| **Config Keys** | `whatsapp-api-key`, `whatsapp-phone-number-id`, `whatsapp-business-account-id` | -| **Documentation** | [developers.facebook.com/docs/whatsapp](https://developers.facebook.com/docs/whatsapp) | -| **BASIC Keywords** | `SEND WHATSAPP`, `SEND FILE` (WhatsApp) | -| **Webhook URL** | `/api/channels/whatsapp/webhook` | - -### Microsoft Teams - -| Property | Value | -|----------|-------| -| **Service URL** | `https://smba.trafficmanager.net/apis` | -| **Config Keys** | `teams-app-id`, `teams-app-password`, `teams-tenant-id` | -| **Documentation** | [learn.microsoft.com/microsoftteams/platform](https://learn.microsoft.com/microsoftteams/platform) | -| **BASIC Keywords** | `SEND TEAMS`, `SEND FILE` (Teams) | -| **Webhook URL** | `/api/channels/teams/messages` | - -### Instagram Messaging - -| Property | Value | -|----------|-------| -| **Service URL** | `https://graph.facebook.com/v17.0` | -| **Config Keys** | `instagram-access-token`, `instagram-page-id`, `instagram-account-id` | -| **Documentation** | [developers.facebook.com/docs/instagram-api](https://developers.facebook.com/docs/instagram-api) | -| **BASIC Keywords** | `SEND INSTAGRAM` | -| **Webhook URL** | `/api/channels/instagram/webhook` | - -### Telegram - -| Property | Value | -|----------|-------| -| **Service URL** | `https://api.telegram.org/bot{token}` | -| **Config Keys** | `telegram-bot-token` | -| **Documentation** | [core.telegram.org/bots/api](https://core.telegram.org/bots/api) | -| **BASIC Keywords** | `SEND TELEGRAM` | -| **Webhook URL** | `/api/channels/telegram/webhook` | - ---- - -## Storage Services - -### S3-Compatible Storage - -General Bots uses S3-compatible object storage. Configuration is **automatically managed** by the Directory service (Zitadel). - -| Property | Value | -|----------|-------| -| **Local Default** | MinIO on port 9000 | -| **Management** | Directory service (automatic) | -| **Console Port** | 9001 (when using MinIO) | -| **BASIC Keywords** | `GET` (file retrieval) | - -**Compatible Services:** -- MinIO (default local installation) -- Backblaze B2 -- Wasabi -- DigitalOcean Spaces -- Cloudflare R2 -- Any S3-compatible provider - -Storage credentials are provisioned and rotated automatically by the Directory service. No manual configuration required. - ---- - -## Directory Services - -### Zitadel (Identity Provider) - -| Property | Value | -|----------|-------| -| **Local Default** | Port 8080 | -| **Environment Variables** | `DIRECTORY_URL`, `DIRECTORY_CLIENT_ID`, `DIRECTORY_CLIENT_SECRET` | -| **Documentation** | [zitadel.com/docs](https://zitadel.com/docs) | -| **Purpose** | User authentication, SSO, OAuth2/OIDC, service credential management | - -The Directory service manages: -- User authentication -- Service credentials (database, storage, cache) -- OAuth applications -- Role-based access control - ---- - -## Email Services - -### Stalwart Mail Server - -| Property | Value | -|----------|-------| -| **Ports** | 25 (SMTP), 993 (IMAPS), 587 (Submission) | -| **Management** | Directory service (automatic) | -| **Documentation** | [stalw.art/docs](https://stalw.art/docs) | -| **BASIC Keywords** | `SEND MAIL` | - -Email accounts are created and managed through the Directory service. - -### External IMAP/SMTP - -| Property | Value | -|----------|-------| -| **Config Keys** | `smtp-server`, `smtp-port`, `imap-server`, `imap-port`, `email-username`, `email-password` | -| **BASIC Keywords** | `SEND MAIL` | -| **Supported Providers** | Gmail, Outlook, custom SMTP/IMAP | - -**Gmail Configuration Example (in config.csv):** -```csv -smtp-server,smtp.gmail.com -smtp-port,587 -imap-server,imap.gmail.com -imap-port,993 -``` - ---- - -## Local Services (BotModels) - -### Image Generation - -| Property | Value | -|----------|-------| -| **Service URL** | `http://localhost:5000` (default) | -| **Config Keys** | `botmodels-enabled`, `botmodels-url` | -| **BASIC Keywords** | `IMAGE` | -| **Requires** | BotModels service running | - -### Video Generation - -| Property | Value | -|----------|-------| -| **Service URL** | `http://localhost:5000` (default) | -| **Config Keys** | `botmodels-enabled`, `botmodels-url` | -| **BASIC Keywords** | `VIDEO` | -| **Requires** | BotModels service running, GPU recommended | - -### Audio Generation (TTS) - -| Property | Value | -|----------|-------| -| **Service URL** | `http://localhost:5000` (default) | -| **Config Keys** | `botmodels-enabled`, `botmodels-url` | -| **BASIC Keywords** | `AUDIO` | -| **Requires** | BotModels service running | - -### Vision/Captioning - -| Property | Value | -|----------|-------| -| **Service URL** | `http://localhost:5000` (default) | -| **Config Keys** | `botmodels-enabled`, `botmodels-url` | -| **BASIC Keywords** | `SEE` | -| **Requires** | BotModels service running | - ---- - -## Internal Services - -These services are deployed locally as part of the General Bots stack. All are managed by the Directory service: - -| Service | Default Port | Purpose | Management | -|---------|-------------|---------|------------| -| PostgreSQL | 5432 | Primary database | Vault | -| Qdrant | 6333 | Vector storage for KB | Vault | -| Cache | 6379 | Caching | Vault | -| Stalwart | 25, 993 | Email server (optional) | Vault | -| BotModels | 5000 | AI model inference | config.csv | - ---- - -## Service Health Checks - -All services can be checked via the monitoring API: - -``` -GET /api/monitoring/services -``` - -Response includes status for all configured external services. - ---- - -## Troubleshooting - -### Common Issues - -1. **API Key Invalid** - Verify key in `config.csv`, ensure no trailing whitespace -2. **Rate Limited** - Check service quotas, implement caching with `SET BOT MEMORY` -3. **Connection Timeout** - Verify network access to external URLs -4. **Service Unavailable** - Check service status pages - -### Debug Logging - -Enable trace logging to see external API calls: - -```bash -RUST_LOG=trace ./botserver -``` diff --git a/docs/src/appendix-external-services/channels.md b/docs/src/appendix-external-services/channels.md deleted file mode 100644 index e12e4984..00000000 --- a/docs/src/appendix-external-services/channels.md +++ /dev/null @@ -1 +0,0 @@ -# Channel Integrations diff --git a/docs/src/appendix-external-services/console.md b/docs/src/appendix-external-services/console.md deleted file mode 100644 index b2373536..00000000 --- a/docs/src/appendix-external-services/console.md +++ /dev/null @@ -1,114 +0,0 @@ -# Console Module (XtreeUI) - -Terminal-based admin interface for managing General Bots instances. - -## Overview - -XtreeUI is a TUI (Terminal User Interface) for administering bots directly from the command line. It provides file browsing, log viewing, chat testing, and status monitoring in a single terminal window. - -## Feature Flag - -Enabled via Cargo feature: - -```toml -[features] -console = [] -``` - -## Panels - -| Panel | Key | Description | -|-------|-----|-------------| -| File Tree | `1` | Browse bot files and packages | -| Editor | `2` | View/edit configuration files | -| Status | `3` | System status and metrics | -| Logs | `4` | Real-time log viewer | -| Chat | `5` | Test bot conversations | - -## Keyboard Navigation - -| Key | Action | -|-----|--------| -| `1-5` | Switch between panels | -| `Tab` | Cycle panels | -| `↑/↓` | Navigate within panel | -| `Enter` | Select/open item | -| `q` | Quit console | -| `?` | Show help | - -## Components - -### File Tree - -Browse `.gbai` folder structure: -- View packages (.gbkb, .gbdialog, .gbtheme) -- Open config.csv for editing -- Navigate bot resources - -### Status Panel - -Real-time system metrics: -- CPU/memory usage -- Active connections -- Bot status -- Database connectivity - -### Log Panel - -Live log streaming with filtering: -- Error highlighting -- Log level filtering -- Search functionality - -### Chat Panel - -Interactive bot testing: -- Send messages to bot -- View responses -- Debug conversation flow - -### Editor - -Basic file editing: -- Syntax highlighting -- Save/reload files -- Config validation - -## Starting the Console - -```bash -./botserver --console -``` - -Or programmatically: - -```rust -let mut ui = XtreeUI::new(); -ui.set_app_state(app_state); -ui.start_ui()?; -``` - -## Progress Channel - -Monitor background tasks: - -```rust -let (tx, rx) = tokio::sync::mpsc::channel(100); -ui.set_progress_channel(rx); - -// Send progress updates -tx.send(ProgressUpdate::new("Loading KB...", 50)).await; -``` - -## Use Cases - -- Server administration without web UI -- SSH-based remote management -- Development and debugging -- Headless server deployments -- Quick configuration changes - -## See Also - -- [Building from Source](../chapter-07-gbapp/building.md) -- [Bot Configuration](../chapter-08-config/README.md) \ No newline at end of file diff --git a/docs/src/appendix-external-services/directory.md b/docs/src/appendix-external-services/directory.md deleted file mode 100644 index 6382340e..00000000 --- a/docs/src/appendix-external-services/directory.md +++ /dev/null @@ -1 +0,0 @@ -# Directory Services diff --git a/docs/src/appendix-external-services/llm-providers.md b/docs/src/appendix-external-services/llm-providers.md deleted file mode 100644 index 8e42ca32..00000000 --- a/docs/src/appendix-external-services/llm-providers.md +++ /dev/null @@ -1,437 +0,0 @@ -# LLM Providers - -General Bots supports multiple Large Language Model (LLM) providers, both cloud-based services and local deployments. This guide helps you choose the right provider for your use case. - -## Overview - -LLMs are the intelligence behind General Bots' conversational capabilities. You can configure: - -- **Cloud Providers** - External APIs (OpenAI, Anthropic, Groq, etc.) -- **Local Models** - Self-hosted models via llama.cpp -- **Hybrid** - Use local for simple tasks, cloud for complex reasoning - -## Cloud Providers - -### OpenAI (GPT Series) - -The most widely known LLM provider, offering GPT-4 and GPT-4o models. - -| Model | Context | Best For | Speed | -|-------|---------|----------|-------| -| GPT-4o | 128K | General purpose, vision | Fast | -| GPT-4o-mini | 128K | Cost-effective tasks | Very Fast | -| GPT-4 Turbo | 128K | Complex reasoning | Medium | -| o1-preview | 128K | Advanced reasoning, math | Slow | -| o1-mini | 128K | Code, logic tasks | Medium | - -**Configuration:** - -```csv -llm-provider,openai -llm-api-key,sk-xxxxxxxxxxxxxxxxxxxxxxxx -llm-model,gpt-4o -``` - -**Strengths:** -- Excellent general knowledge -- Strong code generation -- Good instruction following -- Vision capabilities (GPT-4o) - -**Considerations:** -- API costs can add up -- Data sent to external servers -- Rate limits apply - -### Anthropic (Claude Series) - -Known for safety, helpfulness, and large context windows. - -| Model | Context | Best For | Speed | -|-------|---------|----------|-------| -| Claude 3.5 Sonnet | 200K | Best balance of capability/speed | Fast | -| Claude 3.5 Haiku | 200K | Quick, everyday tasks | Very Fast | -| Claude 3 Opus | 200K | Most capable, complex tasks | Slow | - -**Configuration:** - -```csv -llm-provider,anthropic -llm-api-key,sk-ant-xxxxxxxxxxxxxxxx -llm-model,claude-3-5-sonnet-20241022 -``` - -**Strengths:** -- Largest context window (200K tokens) -- Excellent at following complex instructions -- Strong coding abilities -- Better at refusing harmful requests - -**Considerations:** -- Premium pricing -- No vision in all models -- Newer provider, smaller ecosystem - -### Groq - -Ultra-fast inference using custom LPU hardware. Offers open-source models at high speed. - -| Model | Context | Best For | Speed | -|-------|---------|----------|-------| -| Llama 3.3 70B | 128K | Complex reasoning | Very Fast | -| Llama 3.1 8B | 128K | Quick responses | Extremely Fast | -| Mixtral 8x7B | 32K | Balanced performance | Very Fast | -| Gemma 2 9B | 8K | Lightweight tasks | Extremely Fast | - -**Configuration:** - -```csv -llm-provider,groq -llm-api-key,gsk_xxxxxxxxxxxxxxxx -llm-model,llama-3.3-70b-versatile -``` - -**Strengths:** -- Fastest inference speeds (500+ tokens/sec) -- Competitive pricing -- Open-source models -- Great for real-time applications - -**Considerations:** -- Limited model selection -- Rate limits on free tier -- Models may be less capable than GPT-4/Claude - -### Google (Gemini Series) - -Google's multimodal AI models with strong reasoning capabilities. - -| Model | Context | Best For | Speed | -|-------|---------|----------|-------| -| Gemini 1.5 Pro | 2M | Extremely long documents | Medium | -| Gemini 1.5 Flash | 1M | Fast multimodal | Fast | -| Gemini 2.0 Flash | 1M | Latest capabilities | Fast | - -**Configuration:** - -```csv -llm-provider,google -llm-api-key,AIzaxxxxxxxxxxxxxxxx -llm-model,gemini-1.5-pro -``` - -**Strengths:** -- Largest context window (2M tokens) -- Native multimodal (text, image, video, audio) -- Strong at structured data -- Good coding abilities - -**Considerations:** -- Newer ecosystem -- Some features region-limited -- API changes more frequently - -### Mistral AI - -European AI company offering efficient, open-weight models. - -| Model | Context | Best For | Speed | -|-------|---------|----------|-------| -| Mistral Large | 128K | Complex tasks | Medium | -| Mistral Medium | 32K | Balanced performance | Fast | -| Mistral Small | 32K | Cost-effective | Very Fast | -| Codestral | 32K | Code generation | Fast | - -**Configuration:** - -```csv -llm-provider,mistral -llm-api-key,xxxxxxxxxxxxxxxx -llm-model,mistral-large-latest -``` - -**Strengths:** -- European data sovereignty (GDPR) -- Excellent code generation (Codestral) -- Open-weight models available -- Competitive pricing - -**Considerations:** -- Smaller context than competitors -- Less brand recognition -- Fewer fine-tuning options - -### DeepSeek - -Chinese AI company known for efficient, capable models. - -| Model | Context | Best For | Speed | -|-------|---------|----------|-------| -| DeepSeek-V3 | 128K | General purpose | Fast | -| DeepSeek-R1 | 128K | Reasoning, math | Medium | -| DeepSeek-Coder | 128K | Programming | Fast | - -**Configuration:** - -```csv -llm-provider,deepseek -llm-api-key,sk-xxxxxxxxxxxxxxxx -llm-model,deepseek-chat -llm-server-url,https://api.deepseek.com -``` - -**Strengths:** -- Extremely cost-effective -- Strong reasoning (R1 model) -- Excellent code generation -- Open-weight versions available - -**Considerations:** -- Data processed in China -- Newer provider -- May have content restrictions - -## Local Models - -Run models on your own hardware for privacy, cost control, and offline operation. - -### Setting Up Local LLM - -General Bots uses **llama.cpp** server for local inference: - -```csv -llm-provider,local -llm-server-url,https://localhost:8081 -llm-model,DeepSeek-R1-Distill-Qwen-1.5B -``` - -### Recommended Local Models - -#### For High-End GPU (24GB+ VRAM) - -| Model | Size | VRAM | Quality | -|-------|------|------|---------| -| GPT-OSS 120B Q4 | 70GB | 48GB+ | Excellent | -| Llama 3.1 70B Q4 | 40GB | 48GB+ | Excellent | -| DeepSeek-R1 32B Q4 | 20GB | 24GB | Very Good | -| Qwen 2.5 72B Q4 | 42GB | 48GB+ | Excellent | - -#### For Mid-Range GPU (12-16GB VRAM) - -| Model | Size | VRAM | Quality | -|-------|------|------|---------| -| GPT-OSS 20B F16 | 40GB | 16GB | Very Good | -| Llama 3.1 8B Q8 | 9GB | 12GB | Good | -| DeepSeek-R1-Distill 14B Q4 | 8GB | 12GB | Good | -| Mistral Nemo 12B Q4 | 7GB | 10GB | Good | - -#### For Small GPU or CPU (8GB VRAM or less) - -| Model | Size | VRAM | Quality | -|-------|------|------|---------| -| DeepSeek-R1-Distill 1.5B Q4 | 1GB | 4GB | Basic | -| Phi-3 Mini 3.8B Q4 | 2.5GB | 6GB | Acceptable | -| Gemma 2 2B Q8 | 3GB | 6GB | Acceptable | -| Qwen 2.5 3B Q4 | 2GB | 4GB | Basic | - -### Model Download URLs - -Add models to `installer.rs` data_download_list: - -```rust -// GPT-OSS 20B - Recommended for small GPU -"https://huggingface.co/unsloth/gpt-oss-20b-GGUF/resolve/main/gpt-oss-20b-F16.gguf" - -// DeepSeek R1 Distill - For CPU or minimal GPU -"https://huggingface.co/unsloth/DeepSeek-R1-Distill-Qwen-1.5B-GGUF/resolve/main/DeepSeek-R1-Distill-Qwen-1.5B-Q4_K_M.gguf" - -// Llama 3.1 8B - Good balance -"https://huggingface.co/bartowski/Meta-Llama-3.1-8B-Instruct-GGUF/resolve/main/Meta-Llama-3.1-8B-Instruct-Q4_K_M.gguf" -``` - -### Embedding Models - -For vector search, you need an embedding model: - -```csv -embedding-provider,local -embedding-server-url,https://localhost:8082 -embedding-model,bge-small-en-v1.5 -``` - -Recommended embedding models: - -| Model | Dimensions | Size | Quality | -|-------|------------|------|---------| -| bge-small-en-v1.5 | 384 | 130MB | Good | -| bge-base-en-v1.5 | 768 | 440MB | Better | -| bge-large-en-v1.5 | 1024 | 1.3GB | Best | -| nomic-embed-text | 768 | 550MB | Good | - -## Hybrid Configuration - -Use different models for different tasks: - -```csv -# Primary model for complex conversations -llm-provider,anthropic -llm-model,claude-3-5-sonnet-20241022 - -# Fast model for simple tasks -llm-fast-provider,groq -llm-fast-model,llama-3.1-8b-instant - -# Local fallback for offline operation -llm-fallback-provider,local -llm-fallback-model,DeepSeek-R1-Distill-Qwen-1.5B - -# Embeddings always local -embedding-provider,local -embedding-model,bge-small-en-v1.5 -``` - -## Model Selection Guide - -### By Use Case - -| Use Case | Recommended | Why | -|----------|-------------|-----| -| Customer support | Claude 3.5 Sonnet | Best at following guidelines | -| Code generation | DeepSeek-Coder, GPT-4o | Specialized for code | -| Document analysis | Gemini 1.5 Pro | 2M context window | -| Real-time chat | Groq Llama 3.1 8B | Fastest responses | -| Privacy-sensitive | Local DeepSeek-R1 | No external data transfer | -| Cost-sensitive | DeepSeek-V3, Local | Lowest cost per token | -| Complex reasoning | Claude 3 Opus, o1 | Best reasoning ability | - -### By Budget - -| Budget | Recommended Setup | -|--------|-------------------| -| Free | Local models only | -| Low ($10-50/mo) | Groq + Local fallback | -| Medium ($50-200/mo) | GPT-4o-mini + Claude Haiku | -| High ($200+/mo) | GPT-4o + Claude Sonnet | -| Enterprise | Private deployment + premium APIs | - -## Configuration Reference - -### Environment Variables - -```bash -# Primary LLM -LLM_PROVIDER=openai -LLM_API_KEY=sk-xxx -LLM_MODEL=gpt-4o -LLM_SERVER_URL=https://api.openai.com - -# Local LLM Server -LLM_LOCAL_URL=https://localhost:8081 -LLM_LOCAL_MODEL=DeepSeek-R1-Distill-Qwen-1.5B - -# Embedding -EMBEDDING_PROVIDER=local -EMBEDDING_URL=https://localhost:8082 -EMBEDDING_MODEL=bge-small-en-v1.5 -``` - -### config.csv Parameters - -| Parameter | Description | Example | -|-----------|-------------|---------| -| `llm-provider` | Provider name | `openai`, `anthropic`, `local` | -| `llm-api-key` | API key for cloud providers | `sk-xxx` | -| `llm-model` | Model identifier | `gpt-4o` | -| `llm-server-url` | API endpoint | `https://api.openai.com` | -| `llm-server-ctx-size` | Context window size | `128000` | -| `llm-temperature` | Response randomness (0-2) | `0.7` | -| `llm-max-tokens` | Maximum response length | `4096` | -| `llm-cache-enabled` | Enable semantic caching | `true` | -| `llm-cache-ttl` | Cache time-to-live (seconds) | `3600` | - -## Security Considerations - -### Cloud Providers - -- API keys should be stored in environment variables or secrets manager -- Consider data residency requirements (EU: Mistral, US: OpenAI) -- Review provider data retention policies -- Use separate keys for production/development - -### Local Models - -- All data stays on your infrastructure -- No internet required after model download -- Full control over model versions -- Consider GPU security for sensitive deployments - -## Performance Optimization - -### Caching - -Enable semantic caching to reduce API calls: - -```csv -llm-cache-enabled,true -llm-cache-ttl,3600 -llm-cache-similarity-threshold,0.92 -``` - -### Batching - -For bulk operations, use batch APIs when available: - -```csv -llm-batch-enabled,true -llm-batch-size,10 -``` - -### Context Management - -Optimize context window usage: - -```csv -llm-context-compaction,true -llm-max-history-turns,10 -llm-summarize-long-contexts,true -``` - -## Troubleshooting - -### Common Issues - -**API Key Invalid** -- Verify key is correct and not expired -- Check if key has required permissions -- Ensure billing is active - -**Model Not Found** -- Check model name spelling -- Verify model is available in your region -- Some models require waitlist access - -**Rate Limits** -- Implement exponential backoff -- Use caching to reduce calls -- Consider upgrading API tier - -**Local Model Slow** -- Check GPU memory usage -- Reduce context size -- Use quantized models (Q4 instead of F16) - -### Logging - -Enable LLM logging for debugging: - -```csv -llm-log-requests,true -llm-log-responses,false -llm-log-timing,true -``` - -## Next Steps - -- [LLM Configuration](../chapter-08-config/llm-config.md) - Detailed configuration guide -- [Semantic Caching](../chapter-03/caching.md) - Cache configuration -- [NVIDIA GPU Setup](../chapter-09-api/nvidia-gpu-setup.md) - GPU configuration for local models \ No newline at end of file diff --git a/docs/src/appendix-external-services/multimodal.md b/docs/src/appendix-external-services/multimodal.md deleted file mode 100644 index 7ce972d8..00000000 --- a/docs/src/appendix-external-services/multimodal.md +++ /dev/null @@ -1,143 +0,0 @@ -# Multimodal Module - -Image, video, and audio generation with vision/captioning capabilities. - -## Overview - -The multimodal module connects to BotModels server for AI-powered media generation and analysis. - -## BASIC Keywords - -| Keyword | Purpose | -|---------|---------| -| `IMAGE` | Generate image from text prompt | -| `VIDEO` | Generate video from text prompt | -| `AUDIO` | Generate speech audio from text | -| `SEE` | Describe/caption an image or video | - -## IMAGE - -Generate an image from a text prompt: - -```basic -url = IMAGE "A sunset over mountains with a lake" -TALK "Here's your image: " + url -``` - -Timeout: 300 seconds (5 minutes) - -## VIDEO - -Generate a video from a text prompt: - -```basic -url = VIDEO "A cat playing with a ball of yarn" -TALK "Here's your video: " + url -``` - -Timeout: 600 seconds (10 minutes) - -## AUDIO - -Generate speech audio from text: - -```basic -url = AUDIO "Welcome to our service. How can I help you today?" -PLAY url -``` - -## SEE - -Get a description of an image or video: - -```basic -description = SEE "path/to/image.jpg" -TALK "I see: " + description -``` - -## Configuration - -Add to `config.csv`: - -```csv -botmodels-enabled,true -botmodels-host,localhost -botmodels-port,5000 -botmodels-api-key,your-api-key -botmodels-use-https,false -``` - -### Image Generation Config - -```csv -botmodels-image-model,stable-diffusion -botmodels-image-steps,20 -botmodels-image-width,512 -botmodels-image-height,512 -``` - -### Video Generation Config - -```csv -botmodels-video-model,text2video -botmodels-video-frames,16 -botmodels-video-fps,8 -``` - -## BotModels Client - -Rust API for direct integration: - -```rust -let client = BotModelsClient::from_state(&state, &bot_id); - -if client.is_enabled() { - let image_url = client.generate_image("A beautiful garden").await?; - let description = client.describe_image("path/to/photo.jpg").await?; -} -``` - -### Available Methods - -| Method | Description | -|--------|-------------| -| `generate_image(prompt)` | Create image from text | -| `generate_video(prompt)` | Create video from text | -| `generate_audio(text)` | Create speech audio | -| `describe_image(path)` | Get image caption | -| `describe_video(path)` | Get video description | -| `speech_to_text(audio_path)` | Transcribe audio | -| `health_check()` | Check BotModels server status | - -## Response Structures - -### GenerationResponse - -```json -{ - "status": "success", - "file_path": "/path/to/generated/file.png", - "generation_time": 12.5, - "error": null -} -``` - -### DescribeResponse - -```json -{ - "description": "A golden retriever playing fetch in a park", - "confidence": 0.92 -} -``` - -## Requirements - -- BotModels server running (separate service) -- GPU recommended for generation tasks -- Sufficient disk space for generated media - -## See Also - -- [NVIDIA Module](./nvidia.md) - GPU monitoring -- [PLAY Keyword](../chapter-06-gbdialog/keyword-play.md) - Play generated audio \ No newline at end of file diff --git a/docs/src/appendix-external-services/nvidia.md b/docs/src/appendix-external-services/nvidia.md deleted file mode 100644 index c45ed487..00000000 --- a/docs/src/appendix-external-services/nvidia.md +++ /dev/null @@ -1,76 +0,0 @@ -# NVIDIA GPU Module - -System monitoring for NVIDIA GPU utilization and performance metrics. - -## Overview - -This module provides GPU monitoring capabilities when NVIDIA hardware is available, useful for tracking resource usage during LLM inference and multimodal generation tasks. - -## Feature Flag - -Enabled via Cargo feature: - -```toml -[features] -nvidia = [] -``` - -## Functions - -### has_nvidia_gpu() - -Check if NVIDIA GPU is available: - -```rust -if nvidia::has_nvidia_gpu() { - // GPU acceleration available -} -``` - -Returns `true` if `nvidia-smi` command succeeds. - -### get_gpu_utilization() - -Get current GPU and memory utilization: - -```rust -let util = nvidia::get_gpu_utilization()?; -let gpu_percent = util.get("gpu"); // GPU compute utilization % -let mem_percent = util.get("memory"); // GPU memory utilization % -``` - -### get_system_metrics() - -Get combined CPU and GPU metrics: - -```rust -let metrics = nvidia::get_system_metrics()?; -println!("CPU: {}%", metrics.cpu_usage); -if let Some(gpu) = metrics.gpu_usage { - println!("GPU: {}%", gpu); -} -``` - -## SystemMetrics Struct - -| Field | Type | Description | -|-------|------|-------------| -| `cpu_usage` | `f32` | CPU utilization percentage | -| `gpu_usage` | `Option` | GPU utilization (None if no NVIDIA GPU) | - -## Requirements - -- NVIDIA GPU with driver installed -- `nvidia-smi` command available in PATH - -## Use Cases - -- Monitor GPU during image/video generation -- Track resource usage for LLM inference -- Capacity planning for bot deployments -- Performance dashboards - -## See Also - -- [Multimodal Module](./multimodal.md) -- [Time-Series Database](./timeseries.md) - Store GPU metrics over time \ No newline at end of file diff --git a/docs/src/appendix-external-services/storage.md b/docs/src/appendix-external-services/storage.md deleted file mode 100644 index 280d8090..00000000 --- a/docs/src/appendix-external-services/storage.md +++ /dev/null @@ -1 +0,0 @@ -# Storage Services diff --git a/docs/src/appendix-external-services/timeseries.md b/docs/src/appendix-external-services/timeseries.md deleted file mode 100644 index 795c8737..00000000 --- a/docs/src/appendix-external-services/timeseries.md +++ /dev/null @@ -1,85 +0,0 @@ -# Time-Series Database Module - -InfluxDB 3 integration for metrics, analytics, and operational data. - -## Overview - -High-performance time-series storage supporting 2.5M+ points/sec ingestion with async batching. - -## Configuration - -Add to `config.csv`: - -```csv -influxdb-url,http://localhost:8086 -influxdb-token,your-token -influxdb-org,pragmatismo -influxdb-bucket,metrics -``` - -Or environment variables: - -```bash -INFLUXDB_URL=http://localhost:8086 -INFLUXDB_TOKEN=your-token -INFLUXDB_ORG=pragmatismo -INFLUXDB_BUCKET=metrics -``` - -## Metric Points - -Structure: - -| Field | Description | -|-------|-------------| -| `measurement` | Metric name (e.g., "messages", "response_time") | -| `tags` | Indexed key-value pairs for filtering | -| `fields` | Actual metric values | -| `timestamp` | When the metric was recorded | - -## Built-in Metrics - -| Measurement | Tags | Fields | -|-------------|------|--------| -| `messages` | bot, channel, user | count | -| `response_time` | bot, endpoint | duration_ms | -| `llm_tokens` | bot, model, type | input, output, total | -| `kb_queries` | bot, collection | count, latency_ms | -| `errors` | bot, type, severity | count | - -## Usage in Rust - -```rust -let client = TimeSeriesClient::new(config).await?; - -client.write_point( - MetricPoint::new("messages") - .tag("bot", "sales-bot") - .tag("channel", "whatsapp") - .field_i64("count", 1) -).await?; -``` - -## Querying - -REST endpoint for analytics: - -``` -GET /api/analytics/timeseries/messages?range=24h -GET /api/analytics/timeseries/response_time?range=7d -``` - -## Installation - -The timeseries_db component is installed via package manager: - -```bash -gb install timeseries_db -``` - -Ports: 8086 (HTTP API), 8083 (RPC) - -## See Also - -- [Analytics Module](../chapter-04-gbui/apps/analytics.md) -- [Observability Setup](./observability.md) \ No newline at end of file diff --git a/docs/src/appendix-external-services/weather.md b/docs/src/appendix-external-services/weather.md deleted file mode 100644 index a227f364..00000000 --- a/docs/src/appendix-external-services/weather.md +++ /dev/null @@ -1,318 +0,0 @@ -# Weather API Integration - -The `WEATHER` and `FORECAST` keywords provide real-time weather information and multi-day forecasts using the OpenWeatherMap API. - -## Keywords Overview - -| Keyword | Purpose | -|---------|---------| -| `WEATHER` | Get current weather conditions for a location | -| `FORECAST` | Get extended weather forecast for multiple days | - -## WEATHER - -Retrieves current weather conditions for a specified location. - -### Syntax - -```basic -result = WEATHER location -``` - -### Parameters - -| Parameter | Type | Description | -|-----------|------|-------------| -| `location` | String | City name, optionally with country code (e.g., "London" or "London,UK") | - -### Return Value - -Returns a formatted string containing: -- Temperature (current and feels-like) -- Weather conditions description -- Humidity percentage -- Wind speed and direction -- Visibility -- Atmospheric pressure - -### Example - -```basic -' Get current weather for London -weather = WEATHER "London" -TALK weather - -' Output: -' Current weather in London: -' 🌡️ Temperature: 15.2°C (feels like 14.5°C) -' ☁️ Conditions: Partly cloudy -' 💧 Humidity: 65% -' 💨 Wind: 3.5 m/s NE -' 🔍 Visibility: 10.0 km -' 📊 Pressure: 1013 hPa -``` - -## FORECAST - -Retrieves an extended weather forecast for multiple days. - -### Syntax - -```basic -result = FORECAST location, days -``` - -### Parameters - -| Parameter | Type | Description | -|-----------|------|-------------| -| `location` | String | City name, optionally with country code | -| `days` | Integer | Number of days to forecast (1-5, default: 5) | - -### Example - -```basic -' Get 5-day forecast for Paris -forecast = FORECAST "Paris,FR", 5 -TALK forecast - -' Output: -' Weather forecast for Paris: -' -' 📅 2024-03-15 -' 🌡️ High: 18.5°C, Low: 12.3°C -' ☁️ Scattered clouds -' ☔ Rain chance: 20% -' -' 📅 2024-03-16 -' 🌡️ High: 20.1°C, Low: 13.0°C -' ☁️ Clear sky -' ☔ Rain chance: 5% -' ... -``` - -## Complete Example: Weather Bot - -```basic -' weather-assistant.bas -' A conversational weather assistant - -TALK "Hello! I can help you with weather information." -TALK "Which city would you like to know about?" - -HEAR city - -TALK "Would you like the current weather or a forecast?" -HEAR choice - -IF INSTR(LOWER(choice), "forecast") > 0 THEN - TALK "How many days? (1-5)" - HEAR days - - IF NOT IS_NUMERIC(days) THEN - days = 5 - END IF - - result = FORECAST city, days - TALK result -ELSE - result = WEATHER city - TALK result -END IF - -TALK "Is there another city you'd like to check?" -``` - -## Weather-Based Automation - -```basic -' weather-alert.bas -' Send alerts based on weather conditions - -cities = ["New York", "London", "Tokyo", "Sydney"] - -FOR EACH city IN cities - weather = WEATHER city - - ' Check for extreme conditions - IF INSTR(weather, "storm") > 0 OR INSTR(weather, "heavy rain") > 0 THEN - SEND MAIL "alerts@company.com", "Weather Alert: " + city, weather - END IF -NEXT -``` - -## Daily Weather Report - -```basic -' daily-weather.bas -' Generate a daily weather report for multiple locations - -locations = ["San Francisco,US", "Austin,US", "Seattle,US"] -report = "☀️ Daily Weather Report\n\n" - -FOR EACH loc IN locations - weather = WEATHER loc - report = report + weather + "\n\n---\n\n" -NEXT - -' Send the compiled report -SEND MAIL "team@company.com", "Daily Weather Update", report -``` - -## Travel Planning Assistant - -```basic -' travel-weather.bas -' Help users plan travel based on weather - -TALK "Where are you planning to travel?" -HEAR destination - -TALK "When are you planning to go? (Please provide a date)" -HEAR travel_date - -' Get forecast for destination -forecast = FORECAST destination, 5 -TALK "Here's the weather forecast for " + destination + ":" -TALK forecast - -TALK "Based on the forecast, would you like packing suggestions?" -HEAR wants_suggestions - -IF LOWER(wants_suggestions) = "yes" THEN - weather = WEATHER destination - - IF INSTR(weather, "rain") > 0 THEN - TALK "🌂 Don't forget to pack an umbrella and rain jacket!" - END IF - - IF INSTR(weather, "Temperature: 2") > 0 OR INSTR(weather, "Temperature: 3") > 0 THEN - TALK "🩳 It's warm! Pack light clothing and sunscreen." - ELSE IF INSTR(weather, "Temperature: 0") > 0 OR INSTR(weather, "Temperature: 1") > 0 THEN - TALK "🧥 It's cool. Bring a light jacket." - ELSE - TALK "🧣 It's cold! Pack warm layers and a coat." - END IF -END IF -``` - -## Weather Data Structure - -The `WeatherData` object returned internally contains: - -| Field | Type | Description | -|-------|------|-------------| -| `location` | String | Resolved location name | -| `temperature` | Float | Current temperature in Celsius | -| `temperature_unit` | String | Temperature unit (°C) | -| `description` | String | Weather condition description | -| `humidity` | Integer | Humidity percentage (0-100) | -| `wind_speed` | Float | Wind speed in m/s | -| `wind_direction` | String | Compass direction (N, NE, E, etc.) | -| `feels_like` | Float | "Feels like" temperature | -| `pressure` | Integer | Atmospheric pressure in hPa | -| `visibility` | Float | Visibility in kilometers | -| `uv_index` | Float (optional) | UV index if available | -| `forecast` | Array | Forecast data (for FORECAST keyword) | - -## Forecast Day Structure - -Each forecast day contains: - -| Field | Type | Description | -|-------|------|-------------| -| `date` | String | Date in YYYY-MM-DD format | -| `temp_high` | Float | Maximum temperature | -| `temp_low` | Float | Minimum temperature | -| `description` | String | Weather conditions | -| `rain_chance` | Integer | Probability of precipitation (0-100%) | - -## Configuration - -To use the weather keywords, configure your OpenWeatherMap API key in `config.csv`: - -| Key | Description | Required | -|-----|-------------|----------| -| `weather-api-key` | OpenWeatherMap API key | Yes | - -### Getting an API Key - -1. Visit [OpenWeatherMap](https://openweathermap.org/api) -2. Create a free account -3. Navigate to "API Keys" in your dashboard -4. Generate a new API key -5. Add to your bot's `config.csv`: - -```csv -weather-api-key,your-api-key-here -``` - -## Wind Direction Compass - -Wind direction is converted from degrees to compass directions: - -| Degrees | Direction | -|---------|-----------| -| 0° | N (North) | -| 45° | NE (Northeast) | -| 90° | E (East) | -| 135° | SE (Southeast) | -| 180° | S (South) | -| 225° | SW (Southwest) | -| 270° | W (West) | -| 315° | NW (Northwest) | - -## Error Handling - -```basic -' Handle weather API errors gracefully -ON ERROR GOTO weather_error - -weather = WEATHER "Unknown City XYZ" -TALK weather -END - -weather_error: - TALK "Sorry, I couldn't get weather information for that location." - TALK "Please check the city name and try again." -END -``` - -## Rate Limits - -The OpenWeatherMap free tier includes: -- 60 calls per minute -- 1,000,000 calls per month - -For higher limits, consider upgrading to a paid plan. - -## Best Practices - -1. **Use country codes**: For accuracy, include country codes (e.g., "Paris,FR" instead of just "Paris"). - -2. **Cache results**: Weather data doesn't change frequently—consider caching results for 10-15 minutes. - -3. **Handle timeouts**: Weather API calls have a 10-second timeout. Handle failures gracefully. - -4. **Validate locations**: Check if the location is valid before making API calls. - -5. **Localization**: Consider user preferences for temperature units (Celsius vs Fahrenheit). - -## Fallback Behavior - -If the OpenWeatherMap API is unavailable, the system will: -1. Log the error -2. Attempt a fallback weather service (if configured) -3. Return a user-friendly error message - -## Related Keywords - -- [GET](../chapter-06-gbdialog/keyword-get.md) - Make custom HTTP requests to weather APIs -- [SET SCHEDULE](../chapter-06-gbdialog/keyword-set-schedule.md) - Schedule regular weather checks -- [SEND MAIL](../chapter-06-gbdialog/keyword-send-mail.md) - Send weather alerts via email -- [SEND SMS](../chapter-06-gbdialog/keyword-sms.md) - Send weather alerts via SMS - -## See Also - -- [OpenWeatherMap API Documentation](https://openweathermap.org/api) -- [API Tool Generator](../chapter-06-gbdialog/keyword-use-tool.md) - Create custom weather integrations \ No newline at end of file diff --git a/docs/src/assets/api-comparison-matrix.svg b/docs/src/assets/api-comparison-matrix.svg deleted file mode 100644 index e4cbecfc..00000000 --- a/docs/src/assets/api-comparison-matrix.svg +++ /dev/null @@ -1,207 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - API Migration Matrix - Enterprise Cloud APIs → General Bots Keywords - - - - - - Cloud Platform - - - - - - General Bots - - - - - MIGRATION PATH - - - - - - - - Email / Mail - Messages, Send, Folders - - SEND MAIL keyword - SEND MAIL TO email SUBJECT s BODY b - - READY - - - - - - - Calendar Events - Events, Scheduling, Free/Busy - - BOOK keyword + Calendar API - BOOK "Meeting" AT datetime - - READY - - - - - - - Cloud Storage / Files - Files, Versions, Sharing - - SeaweedFS + File Keywords - READ, WRITE, LIST, COPY, MOVE, DELETE - - READY - - - - - - - Tasks / Planning - Tasks, Lists, Assignments - - CREATE TASK + Projects - CREATE TASK "title" DUE date IN PROJECT id - - READY - - - - - - - Team Messaging - Chat, Channels, Messages - - TALK + Multi-Channel - Web, WhatsApp, Teams, Slack, Telegram - - READY - - - - - - - Users / Directory - Users, Groups, Permissions - - Zitadel IAM + Users API - OIDC/OAuth2 + SCIM provisioning - - READY - - - - - - - Workflow Automation - Flows, Triggers, Connectors - - BASIC Scripts + SET SCHEDULE - 90+ keywords, webhooks, cron, full logic - - BETTER - - - - - - - 100% - Feature Parity - - - - - 90+ - BASIC Keywords - - - - - $0 - Per-User Licensing - - - - - Self-Hosted - Full Data Sovereignty - - diff --git a/docs/src/assets/architecture-overview.svg b/docs/src/assets/architecture-overview.svg deleted file mode 100644 index 67b998de..00000000 --- a/docs/src/assets/architecture-overview.svg +++ /dev/null @@ -1,234 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - General Bots Architecture - Single binary • Zero dependencies • Production ready - - - - CHANNELS - - - - - W - Web Chat - WebSocket - - - - - WA - WhatsApp - Business API - - - - - T - Teams - Bot Framework - - - - - V - Voice - LiveKit - - - - - - - - - - - - - CORE RUNTIME - - - - - - BotServer (Rust) - - - - Session Manager - Tokio Async Runtime - - - - BASIC Interpreter - 90+ Keywords - - - - LLM Integration - OpenAI, Anthropic, Local - - - - Package Manager - .gbai, .gbkb, .gbdialog - - - - RAG Engine - Qdrant Vectors - - - - Tool Executor - Function Calling - - - - REST API - Axum Server - - - - PostgreSQL - SeaweedFS - Valkey - Zitadel - Stalwart - - - - - - - - - - - - OUTPUT - - - - - 💬 - Conversations - Text, Voice, Rich Media - - - - - - Automations - Webhooks, Schedules - - - - - 📊 - Data & Files - Drive, Mail, Calendar - - - - - - - - - Single Binary - - - - - Self-Hosted - - - - - Open Source - - - - - AI-First - - - - - No Forms - - - diff --git a/docs/src/assets/architecture.svg b/docs/src/assets/architecture.svg deleted file mode 100644 index 05358ed2..00000000 --- a/docs/src/assets/architecture.svg +++ /dev/null @@ -1,226 +0,0 @@ - - - - - - - - - - - - - - - - - - General Bots Architecture - Single binary with everything included - no external dependencies - - - Interface Layer - Core Runtime - Processing - - - - - - - Web Server - - - - Console UI - - - - BASIC Interpreter - - - - LLM Integration - - - - Package Manager - - - - BotModels (AI) - - - - Session Manager (Tokio Async Runtime) - - - - Channels - - - - External API - - - - - PostgreSQL - - - - Valkey Cache - - - - Qdrant Vectors - - - - SeaweedFS - - - - .gbkb (Docs) | .gbdialog (Scripts) | .gbot (Config) - Templates | User Assets - - - - Zitadel (IAM) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Request - Web/Console - - Process - BASIC + LLM - - Decide - AI Routing - - Execute - Tools + APIs - - Respond - Multi-Channel - - - - - Component Types: - - - Interface / Routing - - - Processing / Scripts - - - AI / ML / Decision - - - Execution / Storage - - - Output / Response - - - - - Rust-powered single binary serving web UI, BASIC scripting, LLM orchestration, and multi-channel messaging - - - Auto-installed infrastructure: PostgreSQL, Valkey, Qdrant, SeaweedFS, Zitadel - zero external dependencies - - diff --git a/docs/src/assets/architecture.svg.backup b/docs/src/assets/architecture.svg.backup deleted file mode 100644 index 6ef3e8dd..00000000 --- a/docs/src/assets/architecture.svg.backup +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - BotServer (Single Binary) - - - - - - Web Server - (Axum) - - - - BASIC - Interpreter - (Rhai) - - - - LLM - Integration - - - - - - - - - - - - Session Manager (Tokio) - - - - - - - - - - - - - PostgreSQL - Database - - - - Valkey - Cache - - - - Qdrant - Vectors - - - - - Object Storage (SeaweedFS/S3) - - - - - Documents - - - Templates - - - Assets - - diff --git a/docs/src/assets/botmodels-architecture.svg b/docs/src/assets/botmodels-architecture.svg deleted file mode 100644 index c6146a65..00000000 --- a/docs/src/assets/botmodels-architecture.svg +++ /dev/null @@ -1,182 +0,0 @@ - - - - - - - - - - - - - - - - BotServer ↔ BotModels Integration - Rust backend calling Python AI services over HTTPS - - - - - - botserver (Rust) - - - - BASIC Interpreter - - - LLM Integration - - - - BASIC Keywords - • IMAGE prompt - • VIDEO prompt - • AUDIO text - • SEE image - • HEAR AS AUDIO - - - - config.csv - botmodels-url, botmodels-enabled - - - - botmodels (Python) - - - - Image Service - Stable Diffusion - - - Video Service - Zeroscope - - - Speech Service - TTS / Whisper - - - Vision Service - BLIP2 / QRCode - - - - FastAPI Endpoints - /api/v1/image/generate - /api/v1/video/generate - /api/v1/speech/to-text - /api/v1/vision/describe - - - - - HTTPS - JSON / Binary - - - - outputs/ (Generated Files) - Images, Videos, Audio files served via /outputs - - - - - - - - - - - - - - - - - - - - - - - - BASIC Keyword - HTTP Request - AI Processing - Generate - Return URL - - - - - - Rust Backend - - - Python AI - - - Processing - - - Output - - - Config/API - - - - - BotModels runs as a separate Python service for GPU-accelerated AI inference - - - Enable with: botmodels-enabled=true and botmodels-url=http://localhost:8001 - - diff --git a/docs/src/assets/chapter-01/bootstrap-process.svg b/docs/src/assets/chapter-01/bootstrap-process.svg deleted file mode 100644 index 55bc897e..00000000 --- a/docs/src/assets/chapter-01/bootstrap-process.svg +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - - - Auto-Bootstrap Process - - - - ./botserver - - - - - - - Detect System - (Linux/Mac) - - - - - - - Auto-Bootstrap Process - - - - - - PostgreSQL - 16.2 - ✓ Install - ✓ Configure - ✓ Migrate - - - - Valkey - Cache - ✓ Install - ✓ Configure - ✓ Start - - - - SeaweedFS - Storage - ✓ Install - ✓ Configure - ✓ Start - - - - Qdrant - Vectors - ✓ Install - ✓ Configure - ✓ Start - - - - - LLM Models (Optional) - ✓ Download BGE embeddings - ✓ Download Llama model (if local) - - - - - - - Generate .env file - • Secure passwords - • Connection URLs - • Port assignments - - - - - - - Load Templates - • Scan .gbai dirs - • Create bots - • Index documents - - - - - - - Start Web Server - localhost:8080 - diff --git a/docs/src/assets/chapter-01/quick-start-bootstrap-wide.svg b/docs/src/assets/chapter-01/quick-start-bootstrap-wide.svg deleted file mode 100644 index 4da3ee46..00000000 --- a/docs/src/assets/chapter-01/quick-start-bootstrap-wide.svg +++ /dev/null @@ -1,188 +0,0 @@ - - - - - - - - - - - - - - Bootstrap Flow - - - - - - - ./botserver - - - - - - - - - OS Detection - - - - - - - - - Component Installation - - - - PostgreSQL - - - Valkey - - - SeaweedFS - - - Qdrant - - - - - - - - - - - - - - - - - Configuration & Setup - - - - - - - - - Bot Deployment - - - - Scan templates/ directory - - - - - - - Load .gbai packages - - - - - - - Start Web Server - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Start - Detect - Install & Configure - Deploy - - - - - Automatic bootstrap process: detect OS, install components, configure, and deploy - - - Zero configuration required - everything runs from a single binary - - - - - - - - - - diff --git a/docs/src/assets/chapter-01/quick-start-bootstrap.svg b/docs/src/assets/chapter-01/quick-start-bootstrap.svg deleted file mode 100644 index 4da3ee46..00000000 --- a/docs/src/assets/chapter-01/quick-start-bootstrap.svg +++ /dev/null @@ -1,188 +0,0 @@ - - - - - - - - - - - - - - Bootstrap Flow - - - - - - - ./botserver - - - - - - - - - OS Detection - - - - - - - - - Component Installation - - - - PostgreSQL - - - Valkey - - - SeaweedFS - - - Qdrant - - - - - - - - - - - - - - - - - Configuration & Setup - - - - - - - - - Bot Deployment - - - - Scan templates/ directory - - - - - - - Load .gbai packages - - - - - - - Start Web Server - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Start - Detect - Install & Configure - Deploy - - - - - Automatic bootstrap process: detect OS, install components, configure, and deploy - - - Zero configuration required - everything runs from a single binary - - - - - - - - - - diff --git a/docs/src/assets/chapter-01/session-manager.svg b/docs/src/assets/chapter-01/session-manager.svg deleted file mode 100644 index 26e6bd3a..00000000 --- a/docs/src/assets/chapter-01/session-manager.svg +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - - - - - - - - Session Manager Architecture - - - - User Input - - - - Bot Response - - - - - - - - WebSocket - /HTTP - - - WebSocket - /HTTP - - - - - - - - Session Manager - - - - 1. Validate Token - 2. Load Session - 3. Update State - - 4. Execute BASIC - 5. Generate Response - 6. Save History - - - - - - - - - Valkey - (Cache) - - - PostgreSQL - (Persist) - - - - Sync Every - Message - - - - - 1 - - - 2 - - - 3 - - - 4 - - - 5 - - - - - - Key Features - - - • Real-time WebSocket support - • Automatic session persistence - • Redis-compatible caching - • ACID compliance - - - diff --git a/docs/src/assets/chapter-01/session-states.svg b/docs/src/assets/chapter-01/session-states.svg deleted file mode 100644 index 96fdece8..00000000 --- a/docs/src/assets/chapter-01/session-states.svg +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - - - Session State Flow - - - - Browser - Opens - - - - - - - CREATE - New UUID - Token Gen - - - - - - - ACTIVE - Chatting - Messages - - - - - - - IDLE - No Input - 30min Timer - - - - User Returns - - - - - - - EXPIRE - 7d Anon - Never Auth - - - - Retry - - - - - - - CLEANUP - Archive - Delete - - - - Instant - Active use - 30 minutes - 7 days / Never - Permanent - - diff --git a/docs/src/assets/chapter-01/tool-execution-flow.svg b/docs/src/assets/chapter-01/tool-execution-flow.svg deleted file mode 100644 index dd4b4224..00000000 --- a/docs/src/assets/chapter-01/tool-execution-flow.svg +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - - - Tool Execution Flow - - - - User: "I want to enroll in - Computer Science" - - - - - - - LLM Analyzes - "enrollment need" - Intent detection - - - - - - - Scan Available Tools - - - • enrollment.bas ✓ - • other-tools.bas - - - - - - - - Collect Parameters - - - • name: (ask user) - • email: (ask user) - • course: "Comp Sci" - - - - - - - - Execute enrollment.bas - - - • Save to CSV - • Return confirmation - - - - - - - - "Welcome to Computer Science!" - Confirmation sent to user - - - - - ~100ms - ~50ms - Interactive - ~200ms - Instant - - - Natural language - understanding - - Tool discovery - and matching - - Smart parameter - extraction - - BASIC script - execution - - - - - - enrollment.bas - - - ' Student enrollment tool - PARAM name, email, course - SAVE "enrollments.csv", name, email, course, NOW() - TALK "Welcome to " + course + ", " + name + "!" - - - diff --git a/docs/src/assets/chapter-02/package-structure.svg b/docs/src/assets/chapter-02/package-structure.svg deleted file mode 100644 index 2405ec44..00000000 --- a/docs/src/assets/chapter-02/package-structure.svg +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - - - Package Structure - - - - my-bot.gbai/ - (Package Root) - - - - - - - - - - - - - - - - - - - - .gbdialog - Dialog Scripts - Conversation Logic - - - - .gbkb - Knowledge Base - Documents - - - - .gbot - Configuration - Bot Settings - - - - .gbtheme - (optional) - UI Theme - - - - .gbdrive - (optional) - File Storage - - - - - - - - - - - - - - - - Scripts - .bas files - - - - Docs - PDF/TXT - - - - Config - .csv - - - - Styles - CSS/HTML - - - - Storage - S3 Link - - - - - Example Directory Structure: - - - botname.gbai/ - ├── botname.gbdialog/ - │ ├── start.bas - │ ├── auth.bas - │ └── tools/ - ├── botname.gbkb/ - │ ├── collection1/ - │ └── collection2/ - ├── botname.gbot/ - │ └── config.csv - └── botname.gbtheme/ - └── default.css - - - - - - - Key Points - - - • Folder name = Bot name - • Only .gbdialog is required - • start.bas is the entry point - • Deploy by copying folder - - - diff --git a/docs/src/assets/chapter-02/template-deployment-flow.svg b/docs/src/assets/chapter-02/template-deployment-flow.svg deleted file mode 100644 index a74a2f55..00000000 --- a/docs/src/assets/chapter-02/template-deployment-flow.svg +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - - - Template Deployment Flow - - - - templates/ - Source folder - - - - - - - SCAN - Find all .gbai folders - - - - - - - VALIDATE - Check required structure - • start.bas exists? - • Folders match name? - - - - - - - UPLOAD - Copy to object storage - • Templates → S3/Drive - • Assets → CDN paths - - - - - - - INDEX - Process knowledge base - • Extract text - • Generate embeddings - • Store in Qdrant - - - - - - - REGISTER - Create in database - • Bot record - • Configuration - • URL mapping - - - - - - - ACTIVATE - Start serving - • /bot-name endpoint - • WebSocket ready - • Sessions enabled - - - - - 5-10s - per bot - - diff --git a/docs/src/assets/chapter-03/caching-architecture.svg b/docs/src/assets/chapter-03/caching-architecture.svg deleted file mode 100644 index 80db903d..00000000 --- a/docs/src/assets/chapter-03/caching-architecture.svg +++ /dev/null @@ -1,173 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Semantic Caching Architecture - - - - - User Query - "What's the policy?" - - - - - - - Generate Key - Hash + Embed - - - - - - - Check Valkey - Memory Store - - - - - - - - Hit? - - - - - - - - Embedding Hash - 384D Vector - - - - - - - Semantic Search - Similarity > 0.95 - - - - - ✓ Cache Hit - - - - Miss - - - - Generate New - LLM Response - - - - - - - Store in Valkey - TTL: 3600s - - - - - Performance Metrics - - Hit Rate: ~85% - Latency: <50ms - Cost Reduction: 95% - diff --git a/docs/src/assets/chapter-03/context-window.svg b/docs/src/assets/chapter-03/context-window.svg deleted file mode 100644 index 6060dbda..00000000 --- a/docs/src/assets/chapter-03/context-window.svg +++ /dev/null @@ -1,205 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Vector Database Storage Requirements: The Real Mathematics - - - - - - Original Documents - - - 1 TB Total - - - - - - PDF: 400 GB - - - - - DOCX: 250 GB - - - - - XLSX: 150 GB - - - - - TXT: 100 GB - - - - - HTML: 50 GB - - - - - Other: 50 GB - - - - - - Processing - - - - - - Vector DB Storage - - - ~3.5 TB Required - - - - - - Raw Text Extracted - - - ~800 GB (cleaned) - - - Deduplication reduces 20% - - - - - Vector Embeddings - - - ~1.2 TB (384-dim floats) - - - 4 bytes × 384 × ~800M chunks - - - = 1,228 GB - - - - - HNSW Index - - - ~600 GB - - - Graph structure + links - - - - - Metadata + Positions - - - ~400 GB - - - Doc refs, chunks, offsets - - - - - Cache + Auxiliary - - - ~500 GB - - - Query cache, temp indices - - - - - - Storage Multiplication Factor - - - - Original Documents: 1.0 TB - - - Vector DB Total: 3.5 TB - - - Multiplication Factor: 3.5× - - - - With redundancy/backup: - - - Production Total: 7.0 TB (2× replica) - - - - Reality: You need 3.5-7× your document storage - - - - - - Input - - - - - Storage - - - - - Factor - - diff --git a/docs/src/assets/chapter-03/kb-architecture-pipeline.svg b/docs/src/assets/chapter-03/kb-architecture-pipeline.svg deleted file mode 100644 index bd49456f..00000000 --- a/docs/src/assets/chapter-03/kb-architecture-pipeline.svg +++ /dev/null @@ -1,150 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Knowledge Base Architecture Pipeline - - - - - - Document Ingestion Layer - - - PDF • Word • Excel • Text • HTML • Markdown - - - - - - - - - Preprocessing Pipeline - - - Extraction • Cleaning • Normalization • Validation - - - - - - - - - Intelligent Chunking Engine - - - Semantic Segmentation • Overlap Management • Metadata Preservation - - - - - - - - - Embedding Generation - - - BGE Models • Transformer Architecture • Dimensionality: 384/768 - - - - - - - - - Vector Index Layer - - - HNSW Algorithm • Quantization • Distributed Sharding - - - - - - - - - Semantic Retrieval Engine - - - Cosine Similarity • Hybrid Search • Re-ranking • Context Injection - - - - - - Data Flow Direction - - - - - Raw Docs - Clean Text - Chunks - Vectors - Index - Results - - - - - Pipeline processes ~1000 documents/minute • Query latency <50ms (p99) • 95% semantic accuracy - - diff --git a/docs/src/assets/chapter-03/search-pipeline.svg b/docs/src/assets/chapter-03/search-pipeline.svg deleted file mode 100644 index 85f380f2..00000000 --- a/docs/src/assets/chapter-03/search-pipeline.svg +++ /dev/null @@ -1,165 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Semantic Search Pipeline - - - - - - - - - User Query - "What's the return - policy?" - - - - - - - - - Embedding - Transform to - 384D vector - - - - - - - - - Vector Search - Cosine similarity - in vector space - - - - - - - - - Re-ranking - Score & sort - by relevance - - - - - - Active Collections - policies • procedures • faq - - - - - - - - - Retrieved Context - 1. "Refund policy: 30 days..." (0.92) - 2. "Return procedures..." (0.87) - 3. "Warranty information..." (0.81) - - - - - - - - - Context Injection to LLM - Retrieved chunks provided as context for response generation - - - - - - - - - - Automatic - Process - - - - - - Search latency: ~20ms • Embedding: BGE-small (384D) • Similarity threshold: 0.7 • Top-K: 5 chunks - - diff --git a/docs/src/assets/chapter-03/storage-breakdown.svg b/docs/src/assets/chapter-03/storage-breakdown.svg deleted file mode 100644 index 6ab636f8..00000000 --- a/docs/src/assets/chapter-03/storage-breakdown.svg +++ /dev/null @@ -1,235 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - LLM Context Compression Strategies - - - - - - - - Original Context: 10,000 tokens - - - - - - - - - - - - - - - - - - Compression Level 4 - - - - - - - Compressed Context: 4,096 tokens (fits LLM window) - - - - - - - - - - - - - - - - Compression Techniques (Level 4) - - - - - - - Semantic Deduplication - - - • Remove redundant info - - - • Merge similar chunks - - - • Keep unique facts - - - - Reduction: 30-40% - - - - - - - - - - - - - - - Relevance Scoring - - - • Score by query match - - - • Keep top-k relevant - - - • Drop low scores - - - - Reduction: 40-50% - - - - - - - - - - - - - Hierarchical Summary - - - • Extract key points - - - • Create abstracts - - - • Preserve details - - - - Reduction: 50-60% - - - - - - - - - - - - - - - - - - - Token Optimization - - - • Remove stopwords - - - • Compress phrases - - - • Use abbreviations - - - - Reduction: 20-30% - - - - - ABCDEF → ABC - - - GHIJKL → GHI - - - - - - - - Compression Level 4 achieves 60-75% reduction while maintaining 95%+ information retention - - diff --git a/docs/src/assets/chapter-03/storage-multiplication.svg b/docs/src/assets/chapter-03/storage-multiplication.svg deleted file mode 100644 index 6622aba9..00000000 --- a/docs/src/assets/chapter-03/storage-multiplication.svg +++ /dev/null @@ -1,127 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Storage Components per 1TB of Documents - - - - - - - - - - - - - - - - 0 GB - 250 GB - 500 GB - 750 GB - 1000 GB - - - - Storage Size (GB) - - - - - - 1000 - Original - 1000 GB - - - - 800 - Extracted - 800 GB - - - - 1200 - Embeddings - 1200 GB - - - - 600 - Index - 600 GB - - - - 400 - Metadata - 400 GB - - - - 500 - Cache - 500 GB - - - - - 3.5 TB Total - - - - Components contribute to 3.5× storage multiplication factor - - diff --git a/docs/src/assets/chapter-03/technical-specs.svg b/docs/src/assets/chapter-03/technical-specs.svg deleted file mode 100644 index 18cdb10f..00000000 --- a/docs/src/assets/chapter-03/technical-specs.svg +++ /dev/null @@ -1,157 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - System Technical Specifications - - - - - - - - - - Embedding Configuration - - - - Model: bge-small-en-v1.5-f32.gguf - - - • Dimensions: 384 - - - • Format: GGUF (quantized) - - - • Server: localhost:8082 - - - • Memory: ~200MB loaded - - - - - - - - LLM Configuration - - - - Model: DeepSeek-R1-Distill-Qwen-1.5B - - - • Context Size: 4096 tokens - - - • Max Predict: 1024 tokens - - - • Parallel Requests: 6 - - - • Quantization: Q3_K_M - - - - - - - - Performance Characteristics - - - - - - Vector Index: HNSW Algorithm - - - • M=16, ef_construction=200 - - - • Distance: Cosine Similarity - - - • Build: ~1000 docs/minute - - - - - - - Chunking Strategy - - - • Chunk Size: 512 tokens - - - • Overlap: 50 tokens - - - • Prompt Compact: Level 4 - - - - - - - Runtime Metrics - - - • Query Latency: <50ms p99 - - - • Memory: ~1GB/million chunks - - - • Cache TTL: 3600 seconds - - - - - - - - - - - diff --git a/docs/src/assets/chapter-04/analytics-interface.svg b/docs/src/assets/chapter-04/analytics-interface.svg deleted file mode 100644 index b6186eb2..00000000 --- a/docs/src/assets/chapter-04/analytics-interface.svg +++ /dev/null @@ -1,195 +0,0 @@ - - - - - Analytics - Dashboard Interface - - - - - - - - - - 📊 Analytics Dashboard - - - - - Last 24h ▼ - - - - - - ⟳ Refresh - - - - - - - - - - 1,234 - Messages - ↑ +12% - - - - 89% - Success Rate - ↑ +3% - - - - 2.3s - Avg Response - ↓ -0.2s - - - - 45 - Users Today - ↑ +8 - - - - - - - Messages Over Time - - - - - - - - - - - - - - - - - - - - - - - Mon - Tue - Wed - Thu - Fri - - - - - Top Questions - - - - 1. How do I reset... - - - - 2. What is the status... - - - - 3. Where can I find... - - - - 4. Help with login - - - - - - - - - 📈 Peak Hour: - 2:00 PM - - - - 🔝 Top Intent: - Support Query - - - - ⚡ Avg Session: - 4.2 min - - - - 🎯 Resolution: - 94% - - - - Export - - - - - Metrics: Real-time KPIs - Charts: Trends & Distribution - Time Range: Last 24h, 7d, 30d, Custom - Shortcuts: R = Refresh | E = Export - - diff --git a/docs/src/assets/chapter-04/calendar-interface.svg b/docs/src/assets/chapter-04/calendar-interface.svg deleted file mode 100644 index 7e2664fb..00000000 --- a/docs/src/assets/chapter-04/calendar-interface.svg +++ /dev/null @@ -1,211 +0,0 @@ - - - - - Calendar - Scheduling Interface - - - - - - - - - - - - - - - - - - - March 2024 - - - - - - Day - - - Week - - - Month - - - - - - - - - - Mon - Tue - Wed - Thu - Fri - Sat - Sun - - - - - - - - - - 1 - - 2 - - 3 - - - - - - - 4 - - - 5 - - - Team Meeting - - - 6 - - - 7 - - - 8 - - - 9 - - - 10 - - - - - - 11 - - - 12 - - - 13 - - - Project Review - - - 14 - - - 1:1 Meeting - - - - - 15 - - - 16 - - - 17 - - - - - - 18 - - - 19 - - - 20 - - - 21 - - - 22 - - - 23 - - - 24 - - - - - - - + - - - - - - Today - - - Event - - - Weekend - - Shortcuts: N = New event | T = Today | ← → = Navigate | D/W/M = View - - diff --git a/docs/src/assets/chapter-04/compliance-interface.svg b/docs/src/assets/chapter-04/compliance-interface.svg deleted file mode 100644 index 2fa4d89b..00000000 --- a/docs/src/assets/chapter-04/compliance-interface.svg +++ /dev/null @@ -1,200 +0,0 @@ - - - - - Compliance - Security Scanner Interface - - - - - - - - - - 🛡 Compliance Scanner - - - - - Scan - - - Export - - - - - - - - - - - 2 - Critical - 🔴 Immediate - - - - - 5 - High - 🟠 Priority - - - - - 3 - Medium - 🟡 Review - - - - - 1 - Low - 🟢 Minor - - - - - 0 - Info - ℹ Notes - - - - - - - - - - Severity - Issue - File - Action - - - - - Critical - Hardcoded password detected - start.bas:15 - - Fix - - - - - Critical - API key exposed in code - api.bas:42 - - Fix - - - - - High - SQL injection risk in query - data.bas:28 - - Review - - - - - High - Insecure HTTP endpoint - config.csv:8 - - Review - - - - - Medium - Missing input validation - form.bas:55 - - Review - - - - - Last scan: 2 minutes ago - Files scanned: 24 - Total issues: 11 - - - Showing 1-5 of 11 - - - - - - - - - - Critical - - - High - - - Medium - - - Low - - Fix = Auto-remediate | Review = Manual inspection needed - - LGPD • GDPR • CCPA - - diff --git a/docs/src/assets/chapter-04/designer-interface.svg b/docs/src/assets/chapter-04/designer-interface.svg deleted file mode 100644 index e4218f5d..00000000 --- a/docs/src/assets/chapter-04/designer-interface.svg +++ /dev/null @@ -1,258 +0,0 @@ - - - - - - - - - - - Designer - Visual Builder Interface - - - - - - - - - - - - Toolbox - - - - - - 💬 - TALK - - - - 👂 - HEAR - - - - 📝 - SET - - - - - - - 🔀 - IF - - - - 🔄 - FOR - - - - 🔃 - SWITCH - - - - - - - 📞 - CALL - - - - 📧 - SEND - - - - 💾 - SAVE - - - - - - - - - - - - - - - - - - - - - - - 💬 TALK - "Hello!" - - - - - - - 👂 HEAR - name - - - - - - - 🔀 IF - name = "Jo" - - - Yes - No - - - - - - - - - - 💬 TALK - "Hi Jo!" - - - - 💬 TALK - "Hello!" - - - - - - - - - - Properties - - - - Node: - TALK - - - - Message: - - "Hello!" - - - - Voice: - - Default ▼ - - Delay: - - 0ms - - - - - - Apply - - - Delete - - - - - - + - - - - - - - - 100% - - - ▶ Run - - - - - - Talk - - - Hear - - - Condition - - Drag nodes from Toolbox → Canvas | Connect by dragging - - Shortcuts: Delete | Ctrl+D = Duplicate | Ctrl+Z = Undo - - diff --git a/docs/src/assets/chapter-04/drive-interface.svg b/docs/src/assets/chapter-04/drive-interface.svg deleted file mode 100644 index 1343a497..00000000 --- a/docs/src/assets/chapter-04/drive-interface.svg +++ /dev/null @@ -1,155 +0,0 @@ - - - - - Drive - File Management Interface - - - - - - - - - - - + New ▼ - - - - 🔍 Search files... - - - - - - - - - - - - - - - - - - - - 📁 My Drive - - ⭐ Starred - 🕐 Recent - 🗑 Trash - - - - Labels - - Work - - Personal - - - - 📁 My Drive › Projects › 2024 - - - - - - Name - Size - Modified - - - - - - - - 📁 - Reports - - Today - - - - - 📁 - Presentations - - Yesterday - - - - - 📄 - Budget.xlsx - 245 KB - Mar 15 - - - - - 📄 - Notes.docx - 12 KB - Mar 14 - - - - - 🖼 - Logo.png - 89 KB - Mar 10 - - - - - 📤 Drag files here to upload - or click + New to create - - - - Sidebar: Quick access, Labels - Main: File browser with sort columns - Actions: Upload, Create, Search, View toggle - - diff --git a/docs/src/assets/chapter-04/mail-interface.svg b/docs/src/assets/chapter-04/mail-interface.svg deleted file mode 100644 index 058afd65..00000000 --- a/docs/src/assets/chapter-04/mail-interface.svg +++ /dev/null @@ -1,147 +0,0 @@ - - - - - Mail - Email Client Interface - - - - - - - - - - - ✏ Compose - - - - - - 📥 Inbox - - 3 - - 📤 Sent - 📝 Drafts - 🗑 Trash - - - - - - - - - Inbox - - - - - - - Project Update - from John - 10:30 AM - - - - - - Meeting Notes - from Sarah - Yesterday - - - - - - Invoice #1234 - from Vendor - Mar 15 - - - - - - - - - From: - john@company.com - - Subject: - Project Update - - - - - - - - Hi, - Here's the latest update on our project. - We've completed the first milestone and - are now moving to phase two. - Best, - John - - - - - - Reply - - - Forward - - - Delete - - - - - Sidebar: Folders - List: Email threads - Content: Read and reply - Shortcuts: C = Compose | R = Reply | F = Forward - - diff --git a/docs/src/assets/chapter-04/meet-interface.svg b/docs/src/assets/chapter-04/meet-interface.svg deleted file mode 100644 index ddb39433..00000000 --- a/docs/src/assets/chapter-04/meet-interface.svg +++ /dev/null @@ -1,139 +0,0 @@ - - - - - Meet - Video Calls Interface - - - - - - - - - - Meeting Room - - - 00:15:32 - - - - - - 👥 - 3 - - - - 💬 - - - - - - - - - - - 👤 - You - (Camera) - - - You - - - 🎤 - - - - - 👤 - John - (Camera) - - - John - - - - - 👤 - Sarah - - - Sarah - - - - - - - - - - - 🎤 - - - - 📹 - - - - 🖥 - - - - 🔴 - - - - 📝 - - - - 📞 - - - - - - Active - - - Muted/End - - - Available - - Shortcuts: M = Mute | V = Video | S = Share | Space = Push-to-talk - - diff --git a/docs/src/assets/chapter-04/paper-interface.svg b/docs/src/assets/chapter-04/paper-interface.svg deleted file mode 100644 index 9b89485c..00000000 --- a/docs/src/assets/chapter-04/paper-interface.svg +++ /dev/null @@ -1,179 +0,0 @@ - - - - - Paper - AI Writing Interface - - - - - - - - - - 📄 Notes - - - - - - - Meeting Notes - - Project Plan - Ideas - - - - Quick Start - 📄 Blank - 📋 Meeting - ✓ To-Do - 🔬 Research - - - - - - - - - - - - - - B - - - - I - - - - U - - - - - - - H1 - - - - H2 - - - - - - - - - - - - - - - 🔗 - - - - 📷 - - - - AI ✨ - - - - - - - - - Project Proposal - - - - Introduction - - - - This document outlines our proposal for - the upcoming project. We aim to deliver - a comprehensive solution that addresses - all stakeholder requirements. - - - - - - Key Objectives - • Improve efficiency by 30% - • Reduce costs through automation - • Enhance user experience - - - - - Words: 156 - Characters: 892 - Reading time: 1 min - ✓ Auto-saved 2 min ago - - - - - - AI Assist - - Shortcuts: Ctrl+B = Bold | Ctrl+I = Italic | Ctrl+S = Save | Ctrl+/ = AI - - Markdown supported - - diff --git a/docs/src/assets/chapter-04/research-interface.svg b/docs/src/assets/chapter-04/research-interface.svg deleted file mode 100644 index c69854c3..00000000 --- a/docs/src/assets/chapter-04/research-interface.svg +++ /dev/null @@ -1,168 +0,0 @@ - - - - - Research - AI Search Interface - - - - - - - - - - 🔍 Research - - - - - Focus: - - - - 🌐 All - - 📚 Academic - 💻 Code - 🏠 Internal - - - - - Collections: - 📁 - Project A - 📁 - References - - - - - Recent: - • market size - • competitors - • best practices - - - - - - - - - What are the best practices for... - - - - - - - - - - AI Answer: - - - - Based on multiple sources, here are the key best practices: - - 1. Start with clear requirements and objectives - 2. Use iterative development with frequent feedback - 3. Test early and often with real users - 4. Document decisions and maintain knowledge base - - - - - Sources: - - - - [1] - industry-guide.com - Best practices for software - development in 2024... - - - [2] - techblog.dev - Modern development - methodology overview... - - - [3] - your-docs/guidelines.pdf - 📄 Internal document - Company guidelines... - - - - - - 📁 Save - - - 📤 Share - - - 🔄 Deep Dive - - - 📋 Copy - - - - - - AI Summary - - - Sources - - Focus: Web • Academic • Code • Internal docs - - Enter = Search | Ctrl+S = Save - - diff --git a/docs/src/assets/chapter-04/sources-interface.svg b/docs/src/assets/chapter-04/sources-interface.svg deleted file mode 100644 index 099f9400..00000000 --- a/docs/src/assets/chapter-04/sources-interface.svg +++ /dev/null @@ -1,206 +0,0 @@ - - - - - Sources - Prompts & Templates Interface - - - - - - - - - - Sources - - - - - 🔍 Search... - - - - - - - - - Prompts - - - Templates - - - MCP Servers - - - LLM Tools - - - Models - - - - - - - - - - - - Categories - - - - - 📝 Writing - - 📊 Analysis - 💼 Business - 💻 Code - 🎨 Creative - 🤖 Automation - 📞 Support - - - - - - ⭐ Featured - - - - Customer - Service - - Handle support - inquiries with AI - assistance - - - Use - - - - - - Sales - Assistant - - Qualify leads and - schedule meetings - automatically - - - Use - - - - - - Code - Helper - - Generate and - explain code - snippets - - - Use - - - All Prompts - - - - Meeting Notes - Summarize meetings - - Writing - - Use - - - Data Analyst - Analyze datasets - - Analysis - - Use - - - Email Writer - Draft pro emails - - Business - - Use - - - Story Writer - Creative stories - - Creative - - Use - - - - - Page 1 of 5 - - - - - - - - - Tabs: Prompts, Templates, MCP Servers, LLM Tools, Models - Categories filter content - Click Use to apply prompt/template - - diff --git a/docs/src/assets/chapter-04/suite-main-layout.svg b/docs/src/assets/chapter-04/suite-main-layout.svg deleted file mode 100644 index f0368f61..00000000 --- a/docs/src/assets/chapter-04/suite-main-layout.svg +++ /dev/null @@ -1,82 +0,0 @@ - - - - - Suite - Main Layout - - - - - - - - - - - 🤖 - General Bots - - - - - - ⋮⋮⋮ - - - - 🌙 - - - - U - - - - - - - - - - 💬 - Chat - (Main Area) - - - - Type your message here... - - - - Send - - - - Header: Navigation, Apps Menu, Theme, Profile - Main: AI Chat Interface with Message Input - - diff --git a/docs/src/assets/chapter-04/tasks-interface.svg b/docs/src/assets/chapter-04/tasks-interface.svg deleted file mode 100644 index f3f91c2a..00000000 --- a/docs/src/assets/chapter-04/tasks-interface.svg +++ /dev/null @@ -1,151 +0,0 @@ - - - - - Tasks - To-Do Management Interface - - - - - - - - - - ✓ Tasks - - Total: - 12 - Active: - 5 - Done: - 7 - - - - - - - - - What needs to be done? - - - - Category ▼ - - - - + Add - - - - - - - - - 📋 All (12) - - - ⏳ Active (5) - - - ✓ Completed (7) - - - ⚡ Priority - - - - - - - - - - - Review quarterly report - 📅 Today - - - - - - Call client about proposal - 📅 Today - - - - - - Update project documentation - 📅 Tomorrow - - - - - - - Send meeting notes - ✓ Done - - - - - - Complete expense report - ✓ Done - - - - - Priority: - - High - - Medium - - Low - - Shortcuts: Enter = Add | Space = Toggle | Delete = Remove - - diff --git a/docs/src/assets/chapter-06/basic-execution-flow.svg b/docs/src/assets/chapter-06/basic-execution-flow.svg deleted file mode 100644 index ff3435cd..00000000 --- a/docs/src/assets/chapter-06/basic-execution-flow.svg +++ /dev/null @@ -1,175 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - BASIC LLM Tool Execution Flow - - - - - USER - "What's the policy?" - - - - - - - LLM + CONTEXT - Understands intent + loaded KBs - - - - - - - - - Tool? - - - - - - - - Direct Answer - - - - - - Call Tool - - - - BASIC TOOL - enrollment.bas - PARAM name, course - - - - - - - RESPONSE - Generate natural answer - - - - - - - BOT - "30-day return..." - - - - MEMORY STORE - BOT_MEMORY • Session State • Context - - - - - - - - - LLM decides tool calls • Zero IF/THEN logic • Natural conversation flow • Context-aware responses - - - - - Legend: - - Direct response - - Tool invocation - - diff --git a/docs/src/assets/chapter-07/data-flow.svg b/docs/src/assets/chapter-07/data-flow.svg deleted file mode 100644 index afb9212d..00000000 --- a/docs/src/assets/chapter-07/data-flow.svg +++ /dev/null @@ -1,139 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - BotServer Data Flow Architecture - - - - - User Input Layer - - - - Web UI - - - WhatsApp - - - Teams - - - Email - - - API - - - - - - - - - Core Processing Engine - - - - Session Manager - User Context - - - - BASIC Interpreter - Script Execution - - - - LLM Integration - AI Processing - - - - Knowledge Base - Vector Search - - - - - - - - - Tool System - External APIs & Functions - - - - Cache Layer - Response Optimization - - - - - - - - - Storage & Persistence Layer - - - - Database - User Data - - - - Vector DB - Embeddings - - - - Drive Storage - Files & Assets - - - - Cache - Fast Access - - - - - - - - - - - - - - Data Flow: - - Request/Response - - - Data Access - - - - All components run in async Rust for maximum performance - diff --git a/docs/src/assets/chapter-07/data-traceability.svg b/docs/src/assets/chapter-07/data-traceability.svg deleted file mode 100644 index 27fb7185..00000000 --- a/docs/src/assets/chapter-07/data-traceability.svg +++ /dev/null @@ -1,306 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Data Traceability Diagram - General Bots Architecture - - - - - - Legend - - - User Input Flow - - - LLM Processing - - - Storage Operations - - - Internal Flow - - - - - - CHANNELS - - - - 📱 WhatsApp - - - - ✈️ Telegram - - - - 🌐 Web UI / gbui - - - - 🔌 REST API - - - - 🪝 Webhooks - - - - - - BOTSERVER CORE - - - - BASIC Interpreter - .bas scripts → Rhai engine - - - - Message Router - TALK / HEAR / SEND - - - - Scheduler - SET SCHEDULE "every hour" - - - - Keywords Engine - GET/POST/FIND/SAVE/LLM - - - - Session Manager - user_id → bot_id → org_id - - - - - - LLM PROVIDERS - - - 🧠 Claude Opus 4 - - - 🤖 GPT-4 Turbo - - - 💎 Gemini Pro - - - 🦙 Local: Llama/Mistral - - - - - - STORAGE (MinIO) - - - 📁 /{org}/{botname}/ - Bucket per bot - - - .gbdialog - - - .gbkb - - - .gbot - - - .gbtheme - - - uploads/ | exports/ | cache/ - - - - - - DATABASE - - - 🐘 PostgreSQL - Main database - - - organizations - - - bots - - - users / sessions - - - conversations - - - system_automations - - - 🔴 Redis (cache/queue) - - - - - - - - - - LLM - - - - - - - FILES - - - - FIND/SAVE - - - - - - - - Key Data Flows - - - - - 1. User Message Flow - Channel → Router → Session - → BASIC Script → LLM (if needed) - → Response → Channel - Key: {org}_{bot}_{user}_{session} - - - - - - 2. Scheduled Task Flow - Cron Trigger → Load Script - → Execute Keywords → External APIs - → Save Results → Log - Key: {org}_{bot}_schedule_{name} - - - - - - 3. File Operations Flow - UPLOAD/DOWNLOAD → MinIO - Bucket: /{org}/{botname}/ - → Metadata → PostgreSQL - Path: s3://{org}/{bot}/{path} - - - - - - 4. Knowledge Base Flow - USE KB "docs" → Load .gbkb - → Embed → Vector DB (pgvector) - → Semantic Search → LLM Context - Key: {org}_{bot}_kb_{name} - - - - - - 5. Webhook Flow - External POST → /webhook/{id} - → Validate → Trigger Script - → Process → Response/Notify - Key: {org}_{bot}_webhook_{path} - - - - - - 6. Bot Memory Flow - SET/GET BOT MEMORY → Redis - → Persist → PostgreSQL (backup) - → Scope: global | user | session - Key: {org}_{bot}_mem_{scope}_{key} - - - - - - General Bots Data Traceability - All keys follow pattern: {org}_{botname}_{resource}_{identifier} - - diff --git a/docs/src/assets/chapter-07/module-data-flow.svg b/docs/src/assets/chapter-07/module-data-flow.svg deleted file mode 100644 index 60f47ab5..00000000 --- a/docs/src/assets/chapter-07/module-data-flow.svg +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Data Flow Through Modules - - - - User Input - - - - - - - web_server/ | channels/ - Axum HTTP Server - Route to channel - - - - - - - session/ - Load/Create Session - Validate Token - - - - - - - auth/ - Check Permissions - Apply RBAC - - - - - - - bot/ - Route to Bot Instance - Load Configuration - - - - - - - basic/ - Execute BASIC Script - Parse Keywords - - - - - - - - - - - context/ - Load KB - - - - drive/ - Get Files - - - - database/ - Query DB - - - - llm/ - Call AI - - - - - - - - - - - - - Bot Response - - - - - 1. Input Reception - 2. HTTP Routing - 3. Session Management - 4. Authorization - 5. Bot Routing - 6. Script Execution - 7. Data Processing - 8. Response Generation - - - - All operations are async with Tokio runtime for maximum throughput - diff --git a/docs/src/assets/chapter-07/module-dependency.svg b/docs/src/assets/chapter-07/module-dependency.svg deleted file mode 100644 index e12d67f1..00000000 --- a/docs/src/assets/chapter-07/module-dependency.svg +++ /dev/null @@ -1,133 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - Module Dependency Graph - - - - main.rs - - - - - - - bootstrap/ - - - - - - - - - - package_manager/ - - - - config/ - - - - database/ - - - - - - - - session/ - - - - web_server/ - - - - - - - - - - - - - - - - - channels/ - - - - bot/ - - - - basic/ - - - - auth/ - - - - - - - - - - llm/ - - - - - - - context/ - - - - Layers: - - - Entry Point - - - Core System - - - Services - - - Features - - - - Arrows indicate compile-time dependencies - diff --git a/docs/src/assets/chapter-07/system-architecture.svg b/docs/src/assets/chapter-07/system-architecture.svg deleted file mode 100644 index ed3567fc..00000000 --- a/docs/src/assets/chapter-07/system-architecture.svg +++ /dev/null @@ -1,155 +0,0 @@ - - - - - - - - - BotServer Architecture - Virtual Crates System - - - - - - - BotServer Binary - - - - compiles to - - - - - Core Engine (src/core/) - - - - Bootstrap - System Init - Service Start - - - Package Manager - Component Registry - Module Loader - - - Session Manager - Context Handling - State Management - - - Shared State - AppState - Configuration - - - Utils - Helpers - Common - - - - - - - - - - Virtual Crates (gbapp modules in src/) - - - - basic.gbapp - src/basic/ - - • BASIC Interpreter - • Keywords Registry - • Script Execution - • Rhai Engine - - - - channels.gbapp - src/channels/ - - • WhatsApp - • Teams - • Email - • Web UI - - - - storage.gbapp - src/storage/ - - • Knowledge Base - • Drive Integration - • Vector DB - • Cache - - - - your_feature.gbapp - src/your_feature/ - - • Your Keywords - • Your Services - • Your Models - + Add yours! - - - - - - - - - AI & LLM Integration - - - LLM Service - - - Embeddings - - - Semantic Search - - - - - - Persistence Layer - - - Database - - - Vector DB - - - Drive - - - Cache - - - - - Key Concepts: - - - Virtual Crates = Modules in src/ - - - Your Contribution Space - - All compile to single optimized binary - - - - gbapp virtual crates: The bridge between old Node.js packages and new Rust modules - diff --git a/docs/src/assets/chapter-10/api-architecture.svg b/docs/src/assets/chapter-10/api-architecture.svg deleted file mode 100644 index 7a447974..00000000 --- a/docs/src/assets/chapter-10/api-architecture.svg +++ /dev/null @@ -1,205 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - BotServer API Architecture - - - - - - Client Applications - - - - - - - - - HTTP/HTTPS - - - Port 8080 - - - - - - - - - API Gateway - - - /api/* - - - - - - - - - - - Auth Endpoints - - - /auth/login - - - /auth/logout - - - /auth/token - - - - - - Business Endpoints - - - /files/* • /users/* - - - /groups/* • /tasks/* - - - /sessions/* - - - - - - Admin Endpoints - - - /admin/* - - - /monitoring - - - /analytics - - - - - - - - - - - Service Layer - - - • Session Manager - - - • Auth Service • Bot Service - - - - - - - - - - - PostgreSQL - - - Database - - - Sessions • Users • Config - - - - - - Valkey - - - Cache - - - Semantic • Session • Temp - - - - - - Qdrant - - - Vectors - - - Embeddings • Search - - diff --git a/docs/src/assets/chapter-10/api-request-flow.svg b/docs/src/assets/chapter-10/api-request-flow.svg deleted file mode 100644 index 17f53718..00000000 --- a/docs/src/assets/chapter-10/api-request-flow.svg +++ /dev/null @@ -1,224 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - API Request Flow - - - - - - HTTP Request - - - Client → Server - - - - - - - - - Rate Limit - - - Check request limits - - - - - Pass - - - 429 Too Many - - - - - Auth - - - Validate token/session - - - - - Valid - - - 401 Unauthorized - - - - - Route - - - Match endpoint pattern - - - - - - - 404 Not Found - - - - - Validate - - - Check request body - - - - - Valid - - - 400 Bad Request - - - - - Process - - - Execute business logic - - - - - - - - - Format - - - JSON response - - - - - - - - - HTTP Response - - - Server → Client - - - - - - Error Response - - - - - - Request Pipeline - - - - - - - Success path - - - - - Error path - - diff --git a/docs/src/assets/conversation-flow.svg b/docs/src/assets/conversation-flow.svg deleted file mode 100644 index dc4f518a..00000000 --- a/docs/src/assets/conversation-flow.svg +++ /dev/null @@ -1,216 +0,0 @@ - - - - - - - - - - - - - - - - - - Conversation Flow - How General Bots processes user messages through the AI pipeline - - - - - Input - Script - AI Decision - Execution - Response - - - - - User Input - Web / WhatsApp / Teams - - - - BASIC Script - start.bas / tools - - - - LLM Decision - Intent / Tool Selection - - - - Bot Executor - Run Keywords - - - - Bot Response - TALK / Send - - - Parallel Operations - - - - Vector Search - Qdrant / USE KB - - - - External APIs - GET / POST / GraphQL - - - - Database - TABLE / SAVE - - - - Knowledge Base - .gbkb Documents - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Receive - Parse - Decide - Execute - Respond - - - - - Legend: - - - Main Flow - - - Parallel / Optional - - - Feedback Loop - - - - - The AI handles everything automatically - understanding intent, searching knowledge, - - - executing tools, and generating responses. Zero configuration required. - - - - - - Multi-Channel - - - BASIC Scripting - - - LLM Powered - - - Tool Execution - - - RAG Search - - - Real-time - - diff --git a/docs/src/assets/conversation-flow.svg.backup b/docs/src/assets/conversation-flow.svg.backup deleted file mode 100644 index 676e74e4..00000000 --- a/docs/src/assets/conversation-flow.svg.backup +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - - - - - - User Input - - - - BASIC Script - - - - LLM Decision - - - - Tool Execution - - - - Save to CSV - - - - Search Knowledge - - - - Bot Response - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/directory-tree.svg b/docs/src/assets/directory-tree.svg deleted file mode 100644 index c2c5b856..00000000 --- a/docs/src/assets/directory-tree.svg +++ /dev/null @@ -1,143 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - BAS - - - - - - - - - - - mybot.gbai - - - - - - - - - - - mybot.gbdialog - - - - - - - - - - - start.bas - - - - - - - - auth.bas - - - - - - - - mybot.gbkb - - - - - - - - - - - faq.docx - - - - - - - - mybot.gbot - - - - - - - - - - - config.csv - - diff --git a/docs/src/assets/feature-parity-flow.svg b/docs/src/assets/feature-parity-flow.svg deleted file mode 100644 index e6e67f1e..00000000 --- a/docs/src/assets/feature-parity-flow.svg +++ /dev/null @@ -1,261 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Feature Parity Flow - From Enterprise Cloud Services to Self-Hosted Freedom - - - - - - - Enterprise Cloud - - - - - - Exchange Online - Mail, Calendar, Contacts - - - - - - OneDrive / SharePoint - Files, Versioning, Sharing - - - - - - Teams - Chat, Video, Collaboration - - - - - - Power Automate - Workflows, Triggers - - - - - - Copilot - AI Assistant ($30/user) - - - - - - Azure AD / Entra - Identity, Auth, SSO - - - - - - - - - - - MIGRATE - 100% Parity - - - - - - - - - - - - - - - - - - - - - - General Bots - - - - - - Stalwart Mail - IMAP/SMTP/JMAP + CalDAV - - - - - - SeaweedFS Drive - S3-compatible + Versioning - - - - - - LiveKit Meet - WebRTC + Multi-channel - - - - - - BASIC Scripts - 90+ Keywords + Cron - - - - - - LLM Integration - Any Provider (Free) - - - - - - Zitadel IAM - OIDC/OAuth2 + MFA - - - - - - - - - - - - - Self-Hosted - Full Data Control - - - - - - - $0 - No Per-User Fee - Unlimited Users - - - - - - - AI - Native LLM - Built-in RAG + Tools - - - - - - - OSS - Open Source - AGPL Licensed - - - - - - 90+ - Keywords - - - diff --git a/docs/src/assets/gb-decorative-header.svg b/docs/src/assets/gb-decorative-header.svg deleted file mode 100644 index 54088303..00000000 --- a/docs/src/assets/gb-decorative-header.svg +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-bot.svg b/docs/src/assets/icons/gb-bot.svg deleted file mode 100644 index 48f13140..00000000 --- a/docs/src/assets/icons/gb-bot.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-chart.svg b/docs/src/assets/icons/gb-chart.svg deleted file mode 100644 index b728ec5f..00000000 --- a/docs/src/assets/icons/gb-chart.svg +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-check.svg b/docs/src/assets/icons/gb-check.svg deleted file mode 100644 index e2129bae..00000000 --- a/docs/src/assets/icons/gb-check.svg +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-database.svg b/docs/src/assets/icons/gb-database.svg deleted file mode 100644 index 1b19c5ca..00000000 --- a/docs/src/assets/icons/gb-database.svg +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-folder.svg b/docs/src/assets/icons/gb-folder.svg deleted file mode 100644 index 4b7e5cc9..00000000 --- a/docs/src/assets/icons/gb-folder.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-gear.svg b/docs/src/assets/icons/gb-gear.svg deleted file mode 100644 index 5cb00531..00000000 --- a/docs/src/assets/icons/gb-gear.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/src/assets/icons/gb-globe.svg b/docs/src/assets/icons/gb-globe.svg deleted file mode 100644 index 5cbdbbee..00000000 --- a/docs/src/assets/icons/gb-globe.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-lightbulb.svg b/docs/src/assets/icons/gb-lightbulb.svg deleted file mode 100644 index 502386d6..00000000 --- a/docs/src/assets/icons/gb-lightbulb.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-lock.svg b/docs/src/assets/icons/gb-lock.svg deleted file mode 100644 index a4caab7f..00000000 --- a/docs/src/assets/icons/gb-lock.svg +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-note.svg b/docs/src/assets/icons/gb-note.svg deleted file mode 100644 index 891da20a..00000000 --- a/docs/src/assets/icons/gb-note.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-package.svg b/docs/src/assets/icons/gb-package.svg deleted file mode 100644 index dd0c32b8..00000000 --- a/docs/src/assets/icons/gb-package.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-palette.svg b/docs/src/assets/icons/gb-palette.svg deleted file mode 100644 index 1aa99cc4..00000000 --- a/docs/src/assets/icons/gb-palette.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-rocket.svg b/docs/src/assets/icons/gb-rocket.svg deleted file mode 100644 index b67bb4f1..00000000 --- a/docs/src/assets/icons/gb-rocket.svg +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-search.svg b/docs/src/assets/icons/gb-search.svg deleted file mode 100644 index b66c3a86..00000000 --- a/docs/src/assets/icons/gb-search.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-signal.svg b/docs/src/assets/icons/gb-signal.svg deleted file mode 100644 index 3853530e..00000000 --- a/docs/src/assets/icons/gb-signal.svg +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-target.svg b/docs/src/assets/icons/gb-target.svg deleted file mode 100644 index fd87c8cc..00000000 --- a/docs/src/assets/icons/gb-target.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-tree.svg b/docs/src/assets/icons/gb-tree.svg deleted file mode 100644 index 299c49d9..00000000 --- a/docs/src/assets/icons/gb-tree.svg +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/icons/gb-warning.svg b/docs/src/assets/icons/gb-warning.svg deleted file mode 100644 index b04cd922..00000000 --- a/docs/src/assets/icons/gb-warning.svg +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/src/assets/infrastructure-architecture.svg b/docs/src/assets/infrastructure-architecture.svg deleted file mode 100644 index 19084506..00000000 --- a/docs/src/assets/infrastructure-architecture.svg +++ /dev/null @@ -1,248 +0,0 @@ - - - - - - - - - - - - - - - - - Infrastructure Architecture - Load Balancing, Multi-Tenant Isolation, and Auto-Scaling - - - - - Clients - - - - Web - - - Mobile - - - WhatsApp - - - Teams - - - API - - - - Load Balancer (Caddy) - TLS Termination | Rate Limiting | Health Checks - - - - - - - - - - - - BotServer Instances (Auto-Scaled) - - - BotServer 1 - LXC Container - - - BotServer 2 - LXC Container - - - BotServer 3 - LXC Container - - - BotServer N - Auto-Scale - - - - - - - - - - - Shared Data Layer - - - - PostgreSQL - Relational Data - - - Valkey - Cache + Sessions - - - Qdrant - Vector Search - - - SeaweedFS - Object Storage - - - Zitadel - IAM / Auth - - - LiveKit - Real-time Meet - - - Stalwart - Email Server - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Request - Multi-Channel - - Route - Load Balance - - Process - BotServer - - Store - Data Layer - - - - - Component Types: - - - Client / Interface - - - Load Balancer - - - Compute Instance - - - Data Storage - - - Services - - - - - - Auto-Scaling - - - TLS Everywhere - - - Multi-Tenant - - - Health Checks - - - Zero Downtime - - - LXC Containers - - - - - Production-ready infrastructure with automatic scaling, load balancing, and multi-tenant isolation - - diff --git a/docs/src/assets/migration-architecture.svg b/docs/src/assets/migration-architecture.svg deleted file mode 100644 index cfe67b77..00000000 --- a/docs/src/assets/migration-architecture.svg +++ /dev/null @@ -1,366 +0,0 @@ - - - - - - - - - - - - - - - - - Enterprise Migration Architecture - - - Current State - Migration Process - Target State - - - - - - Big Tech Cloud - - - - M365/Google - - - - OneDrive/ - Google Drive - - - Outlook/ - Gmail - - - Teams/ - Meet - - - SharePoint/ - Sites - - - Copilot/ - Gemini - - - • Vendor Lock-in - • Monthly Costs - - - - - - - Migration Tools - - - - rclone - - - imapsync - - - BASIC Scripts - - - API Migration - - - KB Converter - - - User Import - - - 1. Export Data - 2. Transform Format - 3. Import to GB - 4. Validate - - - - - - - Self-Hosted Stack - - - - General Bots Core - - - - MinIO - - - Stalwart - - - LiveKit - - - Qdrant - - - Local LLM - - - Zitadel - - - ✓ Full Control - ✓ No Vendor Lock-in - - - - - - - - - - - - - - - Cost Comparison - - - Enterprise Cloud - $50-200/user/month - Forever - - - Migration Cost - One-time effort - 1-4 weeks - - - Self-Hosted - Infrastructure only - ~$500/month total - - - - - Typical Migration Timeline - - - - - - - Start - Assessment - - - Week 1 - Infrastructure - - - Week 2 - Data Migration - - - Week 3 - Testing - - - Week 4 - Go Live - - - - - Transform from mega-prompt dependency to true component architecture - - - Your data, your infrastructure, your control - - - - - diff --git a/docs/src/assets/observability-flow.svg b/docs/src/assets/observability-flow.svg deleted file mode 100644 index 525fd0aa..00000000 --- a/docs/src/assets/observability-flow.svg +++ /dev/null @@ -1,255 +0,0 @@ - - - - - - - - - - - - - - - - - Observability Flow - Vector Agent collects logs from BotServer without code changes - - - - - Application - Collection - Processing - Outputs - - - - BotServer Application - - - log::trace!() - log::debug!() - log::info!() - log::warn!() - log::error!() - - - ↓ writes to - - ./botserver-stack/logs/ - - - - Vector Agent - (Collects from log files) - - - - Sources - - - Transforms - - - Sinks - - - (Files) - (Parse) - (Output) - - - - - - - - Processing - - - - Filter Errors - - - Filter Warnings - - - Log to Metrics - - - Enrich Data - - - - - InfluxDB - (Metrics) - - - - Grafana - (Dashboard) - - - - Alerts - (Webhook) - - - - - - - - - - - - - - - - - - - - Log Directory Structure - logs/system/ → BotServer logs - logs/drive/ → SeaweedFS logs - logs/tables/ → PostgreSQL logs - logs/cache/ → Valkey logs - logs/vectordb/ → Qdrant - logs/email/ → Stalwart - logs/directory/ → Zitadel - logs/meet/ → LiveKit - - - - - - Vector Configuration - [sources.botserver_logs] - type = "file" - include = ["logs/system/*.log"] - [transforms.parse_botserver] - type = "remap" - - - - - - Key Benefits - ✓ Zero code changes required - ✓ Works with existing logging - ✓ Add/remove without recompile - ✓ Scales independently - - - - - - - - - - - - - - - - - - - Generate - log::*!() - - Collect - Vector Agent - - Process - Parse & Route - - Store/Alert - InfluxDB/Grafana - - - - - Automatic Metrics: - - - log_events_total - - - errors_total - - - warnings_total - - - llm_latency_seconds - - - sessions_active - - - - - Keep using standard Rust log macros - Vector handles collection, parsing, and routing - - - Install with: ./botserver install observability - - diff --git a/docs/src/assets/package-system-flow.svg b/docs/src/assets/package-system-flow.svg deleted file mode 100644 index b305f2c4..00000000 --- a/docs/src/assets/package-system-flow.svg +++ /dev/null @@ -1,205 +0,0 @@ - - - - - - - - - - - - - - - - - - Package System Flow - How .gbai packages orchestrate bot behavior - - - - - Input - Script - Intelligence - Execution - Output - - - - - User Request - - - - start.bas - - - - LLM Engine - - - - Tool Executor - - - - Bot Response - - - - - Vector Search - - - - .gbkb Docs - - - - External APIs - - - - - - - - - - - - - - - - - - - - - - - - Query - Context - - - - - - Package Structure - my-bot.gbai/ - ├── .gbdialog/ - └── start.bas, tools.bas - ├── .gbkb/ - └── docs, PDFs, data - └── .gbot/config.csv - - - - - - BASIC Commands - USE KB "knowledge" - question = HEAR - answer = LLM(question) - TALK answer - // Zero configuration AI - - - - - - Key Features - ✓ Auto tool registration - ✓ RAG from any document - ✓ Multi-channel deploy - ✓ Hot reload packages - ✓ Session persistence - - - - - - - - - - - - - - - - - - - - - - - - - - - - Receive - Parse Script - LLM Process - Execute Tools - Respond - - - - - BASIC scripts orchestrate LLM decisions, vector search, and responses with zero configuration - - - Drop files in .gbkb → Write scripts in .gbdialog → Deploy instantly - - diff --git a/docs/src/assets/package-system-flow.svg.backup b/docs/src/assets/package-system-flow.svg.backup deleted file mode 100644 index ef24318f..00000000 --- a/docs/src/assets/package-system-flow.svg.backup +++ /dev/null @@ -1,95 +0,0 @@ - - - - - - - - - - - - Package System Flow - - - - User Request - - - - Bot Response - - - - - start.bas - - - USE KB "docs" - answer=HEAR - result=LLM() - TALK result - - - - - LLM Engine - (GPT/Local) - Processes requests - Makes decisions - - - - - Vector Search - (.gbkb docs) - Semantic search - - - - - - - - - - - - - - - - - - - - - - - - - - - - Commands - Results - - Query - Context - - - - - Flow Legend - - - Direct flow - - - Feedback/Return - - - - Bidirectional - - diff --git a/docs/src/assets/platform-comparison-summary.svg b/docs/src/assets/platform-comparison-summary.svg deleted file mode 100644 index e25a6de7..00000000 --- a/docs/src/assets/platform-comparison-summary.svg +++ /dev/null @@ -1,329 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Platform Comparison Summary - General Bots vs Enterprise Cloud Platforms - - - - - - - General Bots - - - - - - Self-Hosted - - - - - Open Source (AGPL) - - - - - No Per-User Fees - - - - - Native AI (Any LLM) - - - - - Full Productivity Suite - - - - - Multi-Channel Chat - - - - - Unlimited Automation - - - - - BASIC Scripting - - - - - Data Sovereignty - - - - - $3K-12K/year - 100 users • Infrastructure only - - - - - - - - Enterprise Cloud - - - - - - Cloud Only - - - - - Proprietary - - - - - $12-57/user/month - - - - $ - AI Extra ($30/user) - - - - - Full Productivity Suite - - - - $ - Limited Channels - - - - $ - Per-Flow Fees - - - - ~ - Limited Scripting - - - - - Vendor Controlled - - - - - $50K-90K/year - 100 users • Base + AI + Automation - - - - - - - - Automation Tools - - - - ~ - Some Self-Host - - - - ~ - Fair-code/Proprietary - - - - $ - Per-Task Pricing - - - - $ - AI via Connectors - - - - - No Productivity Suite - - - - - No Native Chat - - - - - Visual Workflows - - - - ~ - JS/Visual Only - - - - ~ - Partial Control - - - - $15K-30K/year - + external tools needed - - - - - - - - AI Assistants - - - - - Cloud Only - - - - - Proprietary - - - - $ - Subscription Based - - - - - Strong AI Built-in - - - - - No Productivity Suite - - - - - Web Interface Only - - - - - No Automation - - - - - No Scripting - - - - - No Data Control - - - - $2K-5K/year - Chat only • Limited scope - - - - - - - - - 75-95% - Cost Reduction - - - - - 100% - Data Sovereignty - - - - - 90+ - BASIC Keywords - - - - - - Unlimited Users - - - - - Open Source - - - diff --git a/docs/src/assets/script-execution-flow.svg b/docs/src/assets/script-execution-flow.svg deleted file mode 100644 index 7552c215..00000000 --- a/docs/src/assets/script-execution-flow.svg +++ /dev/null @@ -1,239 +0,0 @@ - - - - - - - - - - - - - - - - - - - Script Execution Flow - BASIC Compilation Pipeline - From Source to Execution - - - - - Entry Points - - - - start.bas - (Bot Start) - - - - SET SCHEDULE - (Cron Jobs) - - - - WEBHOOK - (HTTP POST) - - - - BASIC Compiler & Runtime - - - - 1. Load Source - - - 2. Load Config - - - 3. Preprocess - - - 4. Compile - - - Read .bas file - param-* vars - Transform - Rhai AST - - - - 5. Execute with Injected Scope - Keywords call registered handlers → LLM Tools → API Calls - - - - - - - - - - - - - - - - - Execution Outputs - - - - LLM Tools - (ADD TOOL) - - - - ON Events - (Triggers) - - - - API Calls - (External) - - - - - - - - - - - - - - - Package Structure (mybot.gbai) - - mybot.gbai/ - ├── mybot.gbdialog/ - ├── start.bas ' Entry point - ├── tables.bas ' TABLE definitions - ├── create-order.bas ' Tool script - └── sync-data.bas ' Scheduled script - └── mybot.gbot/config.csv - - - - - - config.csv (Injected Variables) - param-api-key,sk-xxxxx - param-webhook-url,https://... - param-max-retries,3 - → Available as variables in BASIC - - - - - - Preprocessing Steps - • Case normalization (TALK → talk) - • Multi-word keyword transform - • FOR EACH block handling - • Variable scope injection - - - - - - Keyword Execution - • TALK → Send message to channel - • HEAR → Wait for user input - • LLM → Call language model - • GET/POST → HTTP requests - - - - - - - - - - - - - - - - - - - - - - - Load - Config - Preprocess - Compile - Execute - Respond - - - - - BASIC scripts compile to Rhai AST and execute with registered keyword handlers - - - Scripts in .gbdialog/ are hot-reloaded on change - no restart required - - diff --git a/docs/src/assets/suite/analytics-flow.svg b/docs/src/assets/suite/analytics-flow.svg deleted file mode 100644 index b4ba31cb..00000000 --- a/docs/src/assets/suite/analytics-flow.svg +++ /dev/null @@ -1,313 +0,0 @@ - - - - - - - - - - - - - - - - - Analytics - Dashboard Flow - Real-time metrics, charts, and insights for bot performance and usage - - - Data Sources - Metrics - Visualizations - Actions - - - - - - - - Data Collection - Aggregate sources - - - - - - Chats - Messages - - - - - - Users - Sessions - - - - - - API - Requests - - - - - - LLM - Tokens - - - - - - System - Resources - - - - - - Errors - Logs - - - - - - Key Metrics - KPI summary cards - - - - - - Active Users - Daily/Weekly/Monthly - - - - - - Response Time - Avg latency - - - - - - Satisfaction - User feedback - - - - - - Charts - Visual insights - - - - - - Line - Trends - - - - - - Bar - Compare - - - - - - Pie - Share - - - - - - Heat - Density - - - - - - Data Tables - Sortable, filterable - - - - - - Actions - Export and alerts - - - - - - Export - CSV, PDF, JSON - - - - - - Alerts - Threshold triggers - - - - - - AI Insights ✨ - Anomaly detection - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - - - - - - Collect - Aggregate data - - Analyze - Compute metrics - - Visualize - Display charts - - Act - Export and alert - - - - - Key Metrics: - - - Conversations and messages - - - Active users (DAU/MAU) - - - Response latency - - - LLM token usage - - - Error rates - - - - - Time Ranges: - Last 24 hours | Last 7 days | Last 30 days | Last 90 days | Custom range | Real-time - - - - - Endpoints: - GET /api/analytics/summary | GET /api/analytics/metrics | GET /api/analytics/charts | POST /api/analytics/export | GET /api/analytics/realtime - - - diff --git a/docs/src/assets/suite/analytics-screen.svg b/docs/src/assets/suite/analytics-screen.svg deleted file mode 100644 index 7dee1347..00000000 --- a/docs/src/assets/suite/analytics-screen.svg +++ /dev/null @@ -1,228 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - Analytics - Dashboard - - - - - - - Dashboard Overview - Last 30 days • Updated 5 min ago - - - - - - 📅 - Last 30 days - - - - Export - - - - - - - - - Total Users - 12,847 - ↑ 12.5% - vs last month - - 👥 - - - - - Active Sessions - 1,429 - ↑ 8.2% - vs last month - - 📊 - - - - - Avg Response Time - 1.2s - ↓ 15% - faster - - - - - - - Satisfaction Rate - 94.2% - ↑ 2.1% - vs last month - - - - - - - - - - User Activity - Daily active users - - - - - - - - - 2k - 1.5k - 1k - 500 - - - - - - - - - - - - - - - - - - 1 - 8 - 15 - 22 - 30 - March 2024 - - - - - Messages by Type - - - - - - - - - Chat - Email - Voice - Other - - - 4.2k - 3.1k - 1.8k - 890 - - - - - - - - Top Queries - - 1. "How do I reset my password?" - 847 - - 2. "Billing information" - 623 - - 3. "Schedule a meeting" - 512 - - View all → - - - - - Performance - - Resolution Rate - - - 85% - - Escalation Rate - - - 15% - - - - - R = Refresh | E = Export | D = Date range | F = Filter - - diff --git a/docs/src/assets/suite/app-launcher.svg b/docs/src/assets/suite/app-launcher.svg deleted file mode 100644 index 7bdad04a..00000000 --- a/docs/src/assets/suite/app-launcher.svg +++ /dev/null @@ -1,214 +0,0 @@ - - - - - - - - - - - General Bots Suite - Your AI-Powered Productivity Workspace - - - - - - - - - - - - Chat - AI Assistant - - - - - - - - - - Drive - File Storage - - - - - - - - - - - Tasks - To-Do Lists - - - - - - - - - - - Mail - Email Client - - - - - - - - - - - - Calendar - Scheduling - - - - - - - - - - Meet - Video Calls - - - - - - - - - - - - - Paper - AI Writing - - - - - - - - - - Research - AI Search - - - - - - - - - - - Analytics - Reports - - - - - - - Additional Tools - - - - Designer - - - - - Sources - - - - - Compliance - - - - - Settings - - - - diff --git a/docs/src/assets/suite/calendar-flow.svg b/docs/src/assets/suite/calendar-flow.svg deleted file mode 100644 index 5ae310f8..00000000 --- a/docs/src/assets/suite/calendar-flow.svg +++ /dev/null @@ -1,291 +0,0 @@ - - - - - - - - - - - - - - - - - Calendar - Scheduling Flow - Event management with multiple views and AI scheduling assistance - - - Views - Events - Details - Actions - - - - - - - - View Selector - Choose display mode - - - - - - Month - Overview - - - - - - Week - 7 days - - - - - - Day - Hourly - - - - - - Agenda - List view - - - - - - Mini Calendar - Quick navigation - - - - - - Event Grid - Visual timeline - - - - - - Event Cards - Color-coded - - - - - - Time Slots - Drag to create - - - - - - All-Day Events - Top banner - - - - - - Event Details - Modal/sidebar - - - - - - Title & Time - Date picker - - - - - - Location - Virtual/IRL - - - - - - Attendees - Invite - - - - - - Reminders - Notifications - - - - - - Actions - Event management - - - - - - Create Event - + New - - - - - - Edit / Delete - Modify events - - - - - - AI Schedule ✨ - Smart booking - - - - - - - - - - - - - - - - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - - - - - - Choose View - Month/Week/Day - - Browse Events - Visual timeline - - View Details - Event info - - Take Action - Create/Edit - - - - - Features: - - - Drag-and-drop event creation - - - Recurring events - - - Multi-calendar support - - - AI scheduling assistant ✨ - - - Timezone handling - - - - - Shortcuts: - C = Create | M = Month | W = Week | D = Day | A = Agenda | T = Today | ← → = Navigate | Enter = Open - - - - - Endpoints: - GET /api/calendar/events | POST /api/calendar/events | PUT /api/calendar/events/{id} | DELETE /api/calendar/events/{id} | POST /api/calendar/ai/suggest - - - diff --git a/docs/src/assets/suite/calendar-screen.svg b/docs/src/assets/suite/calendar-screen.svg deleted file mode 100644 index d2b3204e..00000000 --- a/docs/src/assets/suite/calendar-screen.svg +++ /dev/null @@ -1,265 +0,0 @@ - - - - - - - - - - - Calendar - Schedule Manager - - - - - - - - - - - - + New Event - - - - - - - March 2024 - - - - - - S - M - T - W - T - F - S - - - - - 25 - 26 - 27 - 28 - 29 - 1 - 2 - - - - - 3 - 4 - 5 - 6 - 7 - 8 - 9 - - - - - 10 - 11 - 12 - 13 - 14 - - 15 - 16 - - - - - 17 - 18 - 19 - 20 - 21 - 22 - 23 - - - - - 24 - 25 - 26 - 27 - 28 - 29 - 30 - - - - - - MY CALENDARS - - - - Personal - - - - - Work - - - - - Family - - - - - - - - Today - - - - - March 15, 2024 - - - - - Day - - Week - Month - - - - - - - - - SUN - 10 - - MON - 11 - - TUE - 12 - - WED - 13 - - THU - 14 - - FRI - - 15 - - SAT - 16 - - - - - - 8 AM - 9 AM - 10 AM - 11 AM - 12 PM - 1 PM - 2 PM - 3 PM - 4 PM - 5 PM - - - - - - - - - - - - - - - - - - - - - - - - - Team Standup - 9:00 - 10:00 - - - - Client Call - 11:00 - 12:00 - - - - Project Review - 2:00 - 3:00 - - - - 1:1 Meeting - 4:00 - 5:00 - - - - - - - - - Click to create | Drag to reschedule | Double-click to edit - - diff --git a/docs/src/assets/suite/chat-flow.svg b/docs/src/assets/suite/chat-flow.svg deleted file mode 100644 index 745ef3ea..00000000 --- a/docs/src/assets/suite/chat-flow.svg +++ /dev/null @@ -1,239 +0,0 @@ - - - - - - - - - - - - - - - - - Chat - AI Assistant Flow - WebSocket-powered real-time conversation with your AI assistant - - - Input - Transport - Processing - Response - - - - - - - - User Message - Text or Voice Input - - - - - - Voice Input - Speech-to-Text - - - - - - Quick Suggestions - One-click actions - - - - - - WebSocket - Real-time Connection - - - - - - HTMX POST - Fallback Transport - - - - - - AI Processing - LLM + Context - - - - - - Context - History - - - - - - Tools - KB + APIs - - - - - - Bot Response - Streamed to UI - - - - - - Message Display - Markdown Rendered - - - - - - Chat History - Scroll + Load More - - - - - - - - - - - - - - - - - - - - - - - - - - Conversation continues... - - - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - - - - - - Type or Speak - Enter your message - - Send - WebSocket transmit - - Process - AI generates response - - Display - See bot reply - - - - - Key Features: - - - Voice input with speech-to-text - - - Real-time WebSocket connection - - - Context-aware AI responses - - - Markdown rendering - - - - - Shortcuts: - Enter = Send | Shift+Enter = New line | ↑ = Edit last | / = Commands - - - - - Endpoints: - /ws (WebSocket) | POST /api/sessions/current/message | GET /api/sessions/current/history | POST /api/voice/start - - - diff --git a/docs/src/assets/suite/chat-screen.svg b/docs/src/assets/suite/chat-screen.svg deleted file mode 100644 index eefb81de..00000000 --- a/docs/src/assets/suite/chat-screen.svg +++ /dev/null @@ -1,182 +0,0 @@ - - - - - - - - - - - - - - - - - - Chat - AI Assistant - - - - - - - - - - - GB - General Bots - - - - - - ☀️ - Light - - - - - - - - - - - - - JD - - - - - - - - - - - - - - - - AI Assistant - Hello! I'm your AI assistant. How can I help - you today? - - - - - - What meetings do I have scheduled for today? - - - - - - AI Assistant - You have 3 meetings scheduled for today: - 📅 10:00 AM - Team Standup (30 min) - 📅 2:00 PM - Client Call with Acme Corp (1 hr) - 📅 4:30 PM - 1:1 with Manager (30 min) - - - - - - - - - - - - - - - - - - - - - 📧 Check my email - - - ✓ Show my tasks - - - 🔍 Search documents - - - 📝 Take notes - - - - - - - - Message... - - - - - 🎤 - - - - - - - - - - - - - - - - - - - 💡 Tip: Use / for commands, @ to mention, # for tags - Enter = Send | Shift+Enter = New line | ↑ = Edit last - - diff --git a/docs/src/assets/suite/compliance-flow.svg b/docs/src/assets/suite/compliance-flow.svg deleted file mode 100644 index 8a3dffa9..00000000 --- a/docs/src/assets/suite/compliance-flow.svg +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - - - - - - - - - - - - Compliance - Security Scanner Flow - Automated security scanning for configurations, code, and credentials - - - Scan Targets - Analysis - Detection - Reporting - - - - - - - - Scan Request - API or Scheduled - - - - - - Config Files - .env, config.csv - - - - - - BASIC Scripts - .bas dialog files - - - - - - Knowledge Base - Prompts, templates - - - - - - Scanner Engine - Pattern Matching - - - - - - Credential Check - Passwords, API keys - - - - - - Code Analysis - Fragile code patterns - - - - - - Security Rules - Best practices - - - - - - Issues Found - Categorized Results - - - - - - Critical - Secrets - - - - - - Warning - Fragile - - - - - - Info - Suggestions - - - - - - Pass - OK checks - - - - - - Report - JSON + Dashboard - - - - - - Dashboard View - Visual summary - - - - - - Remediation - Fix suggestions - - - - - - Export - CSV, PDF, JSON - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - - - - - - Target Selection - Choose what to scan - - Analyze - Run security checks - - Detect - Categorize findings - - Report - View and export - - - - - Scan Categories: - - - Exposed credentials (passwords, API keys) - - - Fragile code patterns in .bas files - - - Missing vault usage - - - Security best practices - - - - - Severity Levels: - 🔴 Critical (immediate action) | 🟠 Warning (should fix) | 🔵 Info (recommendations) | 🟢 Pass (compliant) - - - - - Endpoints: - GET /api/compliance | POST /api/compliance/scan | GET /api/compliance/report/{id} | GET /api/compliance/export/{format} - - - diff --git a/docs/src/assets/suite/compliance-screen.svg b/docs/src/assets/suite/compliance-screen.svg deleted file mode 100644 index c8b4c4f6..00000000 --- a/docs/src/assets/suite/compliance-screen.svg +++ /dev/null @@ -1,279 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - Compliance - Security Scanner - - - - - - - - - - - - 🔍 Run Scan - - - - - SCAN TYPES - - - - 🛡️ - All Checks - - - - 🔐 - Security - - - - 📋 - Privacy - - - - - Performance - - - - - Accessibility - - - - - - FRAMEWORKS - - - - GDPR - - - - - SOC 2 - - - - - HIPAA - - - - - ISO 27001 - - - - - - Security Overview - Last scan: 5 minutes ago • Next scheduled: 24 hours - - - - - - 📄 Export - - - - - - - - - Overall Score - 87 - /100 - ↑ 5 pts - - - - - Passed - 42 - - 89% - - - - - Warnings - 4 - - 8% - - - - - Critical - 1 - - 2% - - - - - Issues Found - - - - - - - 🚨 - Insecure API Endpoint Detected - /api/v1/users lacks authentication • Found 2 hours ago - - Critical - - Fix - - - - - - - - ⚠️ - Outdated SSL Certificate - Certificate expires in 15 days • Renewal recommended - - Warning - - Fix - - - - - - - - ⚠️ - Missing Content Security Policy - CSP header not configured • XSS vulnerability risk - - Warning - - Fix - - - - - - - - - Data Encryption at Rest - AES-256 encryption enabled • All data stores compliant - - Passed - - - - - - Compliance Progress - - - - GDPR - - - 95% - - - - - SOC 2 - - - 90% - - - - - HIPAA - - - 75% - - - - - ISO 27001 - - - 88% - - - - - - R = Rescan | F = Filter by severity | E = Export report | Enter = View details - - diff --git a/docs/src/assets/suite/designer-flow.svg b/docs/src/assets/suite/designer-flow.svg deleted file mode 100644 index 06d5b781..00000000 --- a/docs/src/assets/suite/designer-flow.svg +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - - - - - - - - - - - - Designer - Visual Dialog Builder Flow - VB6-style drag-and-drop interface for creating BASIC dialog scripts - - - Toolbox - Canvas - Properties - Export - - - - - - - - Toolbox Panel - Drag blocks to canvas - - - - - - TALK - Output - - - - - HEAR - Input - - - - - - IF - Condition - - - - - FOR - Loop - - - - - - SET - Variable - - - - - CALL - Procedure - - - - - - Design Canvas - Visual workspace - - - - - - Node Placement - Snap to grid - - - - - - Connections - Flow arrows - - - - - - Selection - Multi-select, move - - - - - - Properties - Edit block settings - - - - - - Block Fields - Text, values - - - - - - Validation - Type checking - - - - - - Live Preview - BASIC output - - - - - - Export .bas - Generate code - - - - - - Save Design - JSON format - - - - - - Load Design - Open existing - - - - - - Deploy - To bot package - - - - - - - - - - - - - - - - - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - - - - - - Select Block - Drag from toolbox - - Place & Connect - Build flow on canvas - - Configure - Set properties - - Export - Generate .bas file - - - - - Block Types: - - - I/O (TALK, HEAR) - - - Logic (IF, FOR, SWITCH) - - - Actions (SET, CALL, GET) - - - Memory (BOT/USER MEMORY) - - - Integration (SEND MAIL, POST) - - - - - Shortcuts: - Ctrl+S = Save | Ctrl+Z = Undo | Ctrl+Y = Redo | Del = Delete | Ctrl+D = Duplicate | Ctrl+E = Export - - - - - Canvas: - Click = Select | Drag = Move | Click port = Connect | Right-click = Context menu | Scroll = Pan | Ctrl+Scroll = Zoom - - - diff --git a/docs/src/assets/suite/designer-screen.svg b/docs/src/assets/suite/designer-screen.svg deleted file mode 100644 index c6fbb0da..00000000 --- a/docs/src/assets/suite/designer-screen.svg +++ /dev/null @@ -1,279 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - Designer - Visual Flow Builder - - - - - - - - - Components - - - - - TRIGGERS - - - - - - Start - - - - - - 💬 - Message - - - - ACTIONS - - - - - 🤖 - AI Response - - - - - - 📧 - Send Email - - - - - - - API Call - - - - LOGIC - - - - - - Condition - - - - - - - Wait - - - - - - - End - - - - - - - - - - - - - + Add - - - - - - - - - - - 🔍 - - - + - - - - - 100% - - - - - ▶ Test - - - Deploy - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Start - User message - - - - - - - 🤖 - AI Response - GPT-4 Model - - - - - - - - - Condition - intent == support - - - - - - - 📧 - Send Email - Support team - - - - - - - - End - Complete flow - - - - - - - Properties - - - NODE - AI Response - - MODEL - - - GPT-4 - - - PROMPT - - - You are a - helpful - assistant... - - TEMPERATURE - - - 0.7 - - - - - Drag to connect | Del = Delete | Ctrl+D = Duplicate | Ctrl+Z = Undo - - diff --git a/docs/src/assets/suite/drive-flow.svg b/docs/src/assets/suite/drive-flow.svg deleted file mode 100644 index 9b6c7589..00000000 --- a/docs/src/assets/suite/drive-flow.svg +++ /dev/null @@ -1,269 +0,0 @@ - - - - - - - - - - - - - - - - Drive - File Management Flow - Cloud storage with drag-and-drop, sharing, and organization - - - Navigation - Actions - Storage - Display - - - - - - - - Sidebar - - - - - My Drive - - - Starred - - - Recent - - - Trash - - - - - - + New - Upload Files | New Folder - - - - - - - Upload - Drag & Drop - - - - Download - Single/Batch - - - - Rename - Edit name - - - - Move / Copy - Organize - - - - Share - Get link - - - - Delete - Move to Trash - - - - - - SeaweedFS - Object Storage - - - - - - REST API - /api/v1/drive/* - - - - - - PostgreSQL - File Metadata - - - - - - File View - - - - - Grid - - - List - - - My Drive / Projects / 2024 - - - - 📁 Docs - - - 📄 Report - - - 🖼 Image - - - Storage Used - - - 4.2 GB of 10 GB - - - - - - - - - - - - - - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - - - - - - Navigate - Browse folders - - Action - Upload, move, share - - Store - Save to cloud - - View - Grid or list display - - - - - Key Features: - - - Drag-and-drop upload - - - Context menu actions - - - SeaweedFS object storage - - - Grid/List view toggle - - - Star & label files - - - - - Shortcuts: - Ctrl+U = Upload | Ctrl+N = New Folder | Delete = Trash | Ctrl+C/V = Copy/Paste | Enter = Open - - - - - Endpoints: - GET /api/v1/drive/list | POST /api/v1/drive/upload | DELETE /api/v1/drive/file | PUT /api/v1/drive/move - - - - - HTMX: - hx-get="/api/v1/drive/list" hx-target="#file-list" hx-trigger="load, click" hx-swap="innerHTML" - - - diff --git a/docs/src/assets/suite/drive-screen.svg b/docs/src/assets/suite/drive-screen.svg deleted file mode 100644 index 30157282..00000000 --- a/docs/src/assets/suite/drive-screen.svg +++ /dev/null @@ -1,187 +0,0 @@ - - - - - - - - - - - Drive - File Manager - - - - - - - - - - + New - - - - - My Drive - 📁 - - 👥 - Shared with me - - - Starred - - 🕐 - Recent - - 🗑️ - Trash - - - - STORAGE - - - 6.5 GB of 10 GB - - - - - - 🔍 - Search files... - - - - - - - - - - - - - My Drive - / - Projects - / - 2024 - - - - - Name - Modified - Size - Owner - - - - - - - 📁 - Reports - Today, 10:30 AM - - me - - - - - - 📁 - Presentations - Yesterday - - me - - - - - 📊 - Budget-2024.xlsx - Mar 15, 2024 - 245 KB - me - - - - - 📄 - Project-Proposal.docx - Mar 14, 2024 - 128 KB - me - - - - - 📕 - Contract-Signed.pdf - Mar 10, 2024 - 1.2 MB - John D. - - - - - 🖼️ - Logo-Final.png - Mar 8, 2024 - 89 KB - me - - - - - 📤 - Drop files here or click + New to upload - - - - 1 item selected - - 6 items - Ctrl+U Upload | Del Delete | Ctrl+C Copy - - diff --git a/docs/src/assets/suite/live-monitoring-organism.svg b/docs/src/assets/suite/live-monitoring-organism.svg deleted file mode 100644 index 1ce47aa9..00000000 --- a/docs/src/assets/suite/live-monitoring-organism.svg +++ /dev/null @@ -1,521 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 🔴 LIVE SYSTEM MONITOR - - - General Bots Platform • Real-time Component Status - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 🤖 - - - BotServer - ● RUNNING - v5.0.2 • Rust - - - - - - - - - - - - - - - - - - - - 🐘 - PostgreSQL - - - Connections: 24/100 - Queries/sec: 847 - - - - - - - ● HEALTHY - v16.2 - - - - - - FUNCTIONS - • User Sessions - • Bot Configs - - - - - - - - - - - - - - - - - - - - Qdrant - Vectors: 1.2M - Collections: 8 - Search: 12ms avg - - - - - - ● HEALTHY - v1.9.2 - - - - - - FUNCTIONS - • Semantic Search - • RAG Embeddings - - - - - - - - 📁 - 📄 - 🖼️ - - MinIO Drive - Storage: 45.2 GB - Objects: 12,847 - - - - - - ● HEALTHY - v2024.01 - - - - - - - - - - - 🧠 - - - - - - - BotModels - Model: gpt-4o - Tokens/hr: 125K - Latency: 890ms - - - - - - ● RUNNING - v2.1.0 - - - - - - FUNCTIONS - • LLM Inference - • Model Routing - - - - - - - - 🔐 - - Vault - Secrets: 156 - Policies: 12 - - - - - - ● SEALED - v1.15.0 - - - - - - - - - - Redis Cache - Hit Rate: 94.2% - Keys: 8,421 - Memory: 256MB - - - - - - ● CONNECTED - v7.2.4 - - - - - - - - - - - - - - - - - - - - - - - - - InfluxDB - Points/sec: 2,450 - Retention: 30d - Buckets: 4 - - - - - - ● RECORDING - v2.7.3 - - - - - - SYSTEM RESOURCES - - - CPU - - - - - 70% - - - MEM - - - - - 60% - - - GPU - - - - - 40% - - - - - - - - - SESSIONS - - 247 - - - - - - - MESSAGES - 12.4K - - - - - AVG RESPONSE - 1.2s - - - - - UPTIME - 99.9% - - - - - - - STATUS LEGEND - - - Healthy/Running - - - Warning/Degraded - - - Error/Stopped - - - - - Last updated: 2025-01-14 15:42:31 UTC - - - - - - - - - - diff --git a/docs/src/assets/suite/mail-flow.svg b/docs/src/assets/suite/mail-flow.svg deleted file mode 100644 index 1632596f..00000000 --- a/docs/src/assets/suite/mail-flow.svg +++ /dev/null @@ -1,302 +0,0 @@ - - - - - - - - - - - - - - - - - Mail - Email Client Flow - IMAP/SMTP email management with AI-powered features - - - Folders - Messages - Actions - Compose - - - - - - - - Folder List - Navigate mailbox - - - - - - Inbox - Received - - - - - - Sent - Outgoing - - - - - - Drafts - In progress - - - - - - Trash - Deleted - - - - - - Starred - Important - - - - - - Archive - Stored - - - - - - Message List - Browse emails - - - - - - Preview Pane - Quick read - - - - - - Search - Find messages - - - - - - Filters - Unread, starred - - - - - - Actions - Manage emails - - - - - - Reply - Respond - - - - - - Forward - Share - - - - - - Delete - Remove - - - - - - Archive - Store - - - - - - AI Summary ✨ - Quick insights - - - - - - Compose - Write new email - - - - - - Recipients - To, CC, BCC - - - - - - Rich Editor - Format text - - - - - - Attachments - Add files - - - - - - - - - - - - - - - - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - - - - - - Select Folder - Navigate mailbox - - Read Messages - Browse and search - - Take Action - Reply, forward, delete - - Compose - Write new email - - - - - AI Features: - - - Smart compose with AI suggestions - - - Thread summarization - - - Priority detection - - - Action item extraction - - - - - Shortcuts: - C = Compose | R = Reply | F = Forward | E = Archive | # = Delete | S = Star | / = Search - - - - - Endpoints: - GET /api/mail/folders | GET /api/mail/messages | POST /api/mail/send | DELETE /api/mail/{id} | POST /api/mail/ai/summarize - - - diff --git a/docs/src/assets/suite/mail-screen.svg b/docs/src/assets/suite/mail-screen.svg deleted file mode 100644 index 1f10fedb..00000000 --- a/docs/src/assets/suite/mail-screen.svg +++ /dev/null @@ -1,192 +0,0 @@ - - - - - - - - - - - Mail - Email Client - - - - - - - - - - - - ✏ Compose - - - - - - 📥 - Inbox - 3 - - 📤 - Sent - - 📝 - Drafts - - - Starred - - 🗑️ - Trash - - - - - - - - - Inbox - - 🔄 - - - - - - - - - - Sarah Johnson - 10:30 AM - Project Update - Hi team, here is the latest... - - - - - - - Marketing Team - 9:15 AM - Q4 Campaign Results - The numbers are in and... - - - - - - - John Smith - Yesterday - Meeting Notes - Thanks for the call today... - - - - - Alex Chen - Mar 15 - Re: Budget Review - Looks good to me... - - - - HR Department - Mar 14 - Benefits Enrollment - Open enrollment starts... - - - - - - - - Meeting Notes - - - - JS - - John Smith - john.smith@company.com - - Yesterday, 3:45 PM - - - - - - - - - ↩ Reply - - - ↩↩ Reply All - - - ↪ Forward - - - 🗑 Delete - - - - - - - Hi Team, - Thanks for joining the call today. Here are the key - takeaways from our discussion: - - • Project timeline updated to Q2 launch - • Budget approved for additional resources - • Next review scheduled for Friday - - Let me know if you have any questions. - - Best regards, - John - - - - - Ctrl+R Reply | Ctrl+Shift+R Reply All | Ctrl+F Forward | Del Delete - - diff --git a/docs/src/assets/suite/meet-flow.svg b/docs/src/assets/suite/meet-flow.svg deleted file mode 100644 index 62e56ddb..00000000 --- a/docs/src/assets/suite/meet-flow.svg +++ /dev/null @@ -1,299 +0,0 @@ - - - - - - - - - - - - - - - - - Meet - Video Calls Flow - LiveKit-powered video conferencing with AI transcription and summaries - - - Setup - Meeting - AI Features - Post-Meeting - - - - - - - - Start Meeting - Create or join - - - - - - Camera - Video - - - - - - Mic - Audio - - - - - - Preview - Check before join - - - - - - Invite - Share link - - - - - - Video Grid - Participants view - - - - - - Controls - Mute, camera, share - - - - - - Chat - Messages - - - - - - Share - Screen - - - - - - React - 👍 🎉 - - - - - - Hand - ✋ Raise - - - - - - AI Features ✨ - Smart assistance - - - - - - Transcription - Live captions - - - - - - Live Summary - Real-time notes - - - - - - Action Items - Auto-detect tasks - - - - - - Post-Meeting - After the call - - - - - - Recording - Video playback - - - - - - Full Transcript - Searchable text - - - - - - Meeting Notes - AI summary + tasks - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - - - - - - Setup - Check devices - - Meeting - Video conference - - AI Assist - Live transcription - - Review - Notes and recording - - - - - Meeting Controls: - - - Camera and microphone - - - Screen sharing - - - Recording - - - Live transcription - - - Chat and reactions - - - - - Shortcuts: - M = Mute | V = Video | S = Share screen | R = Record | H = Raise hand | Space = Push-to-talk | Esc = Leave - - - - - Endpoints: - POST /api/meet/create | GET /api/meet/join/{id} | GET /api/meet/transcript/{id} | GET /api/meet/recording/{id} | POST /api/meet/ai/summary - - - diff --git a/docs/src/assets/suite/meet-screen.svg b/docs/src/assets/suite/meet-screen.svg deleted file mode 100644 index fda3f497..00000000 --- a/docs/src/assets/suite/meet-screen.svg +++ /dev/null @@ -1,185 +0,0 @@ - - - - - - - - - - - - - - - Meet - Video Conference - - - - - - - - - - - JS - John Smith - Speaking... - - - - - - - - - - - - - - - Team Standup • 15:32 - - - - - - - ME - You - - - - - - Participants (5) - - - - - - SW - Sarah Wilson - - Online - - - - - - - MJ - Mike Johnson - - Muted - - - - - - - AC - Alex Chen - - Online - - - - - - - EM - Emma Miller - - Online - - - - - - + Invite People - - - - - - - - - Team Standup - 5 participants • 15:32 - - - - - - - 🎤 - - - - 📹 - - - - 🖥 - - - - 💬 - - - - 📞 - - - - - - - - - - - - - - - - - - - - M = Mute | V = Camera | S = Share Screen | C = Chat | L = Leave - - diff --git a/docs/src/assets/suite/paper-flow.svg b/docs/src/assets/suite/paper-flow.svg deleted file mode 100644 index a5c08417..00000000 --- a/docs/src/assets/suite/paper-flow.svg +++ /dev/null @@ -1,332 +0,0 @@ - - - - - - - - - - - - - - - - - Paper - AI Writing Assistant Flow - Rich text editor with AI-powered writing, editing, and formatting assistance - - - Create - Edit - AI Assist - Export - - - - - - - - New Document - Create or open - - - - - - Blank - Fresh start - - - - - - Template - Pre-built - - - - - - Import - MD, DOCX - - - - - - AI Gen ✨ - From prompt - - - - - - Recent Documents - Quick access - - - - - - Rich Editor - Write content - - - - - - Formatting - Bold, italic, headers - - - - - - Lists - Bullets - - - - - - Tables - Grid data - - - - - - Code - Syntax HL - - - - - - Images - Media - - - - - - AI Assist ✨ - Writing helper - - - - - - Continue Writing - Auto-complete - - - - - - Improve - Rewrite - - - - - - Summary - Condense - - - - - - Translate - Languages - - - - - - Grammar - Fix errors - - - - - - Export - Save and share - - - - - - .md - Markdown - - - - - - .pdf - Document - - - - - - .html - Web page - - - - - - .docx - Word - - - - - - Auto-Save - Never lose work - - - - - - - - - - - - - - - - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - - - - - - Create - New document - - Write - Rich text editing - - Enhance - AI assistance - - Export - Multiple formats - - - - - AI Writing Features: - - - Auto-complete sentences - - - Improve writing style - - - Summarize content - - - Multi-language translate - - - Grammar and spelling - - - - - Shortcuts: - Ctrl+B = Bold | Ctrl+I = Italic | Ctrl+K = Link | Ctrl+/ = AI assist | Ctrl+S = Save | Ctrl+E = Export | Ctrl+Z = Undo - - - - - Endpoints: - GET /api/paper/documents | POST /api/paper/save | POST /api/paper/ai/continue | POST /api/paper/ai/improve | GET /api/paper/export/{format} - - - diff --git a/docs/src/assets/suite/paper-screen.svg b/docs/src/assets/suite/paper-screen.svg deleted file mode 100644 index c3306d5e..00000000 --- a/docs/src/assets/suite/paper-screen.svg +++ /dev/null @@ -1,209 +0,0 @@ - - - - - - - - - - - Paper - AI Writing Assistant - - - - - - - - - - - - + New Document - - - - - RECENT DOCUMENTS - - - - 📄 - Project Proposal - Edited 2 min ago - - - - 📄 - Meeting Notes - Edited yesterday - - - - 📄 - Q4 Report Draft - Edited Mar 14 - - - - 📄 - Blog Post Ideas - Edited Mar 12 - - - - - - TEMPLATES - - - 📝 - Blank Document - - - - 📋 - Meeting Notes - - - - 📊 - Report - - - - 📧 - Email Draft - - - - - - - - - - - - - - B - - - I - - - U - - - - - - Heading ▾ - - - - - - - - - - - - - - - 🔗 - - - 🖼 - - - - - - ✨ AI Assist - - - - - - - - - Project Proposal - Last edited 2 minutes ago • Auto-saved - - - - - Executive Summary - - This proposal outlines a comprehensive strategy for improving - our customer engagement platform. The project aims to increase - user retention by 25% and reduce support tickets by 40%. - - Key Objectives - - • Redesign the onboarding experience for new users - • Implement AI-powered customer support chatbot - • Create personalized dashboard for each user segment - • Integrate analytics tracking for better insights| - - - - - - - - - ✨ AI Suggestion - Consider adding a timeline section to outline project milestones - and deliverables. This helps stakeholders understand the scope. - - - - Insert - - - Dismiss - - - Regenerate - - - - - - 324 words • 1,847 characters • Reading time: 2 min - Ctrl+S Save | Ctrl+B Bold | Ctrl+I Italic | Ctrl+K Link - - diff --git a/docs/src/assets/suite/player-flow.svg b/docs/src/assets/suite/player-flow.svg deleted file mode 100644 index 001984e7..00000000 --- a/docs/src/assets/suite/player-flow.svg +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - - - - - - Player - Media Viewer Flow - - - - - - - 🎬 Player - quarterly-report.pptx - - - - - 📊 - Slide 3 of 12 - Q4 Revenue Overview - - - - - - - - - - - - - - - - - - - - - - - - - - - 3 / 12 - - - - 🔍 - - - - - - - - - - Supported - - 📄 PDF - 📊 PPTX - 🎬 MP4 - 🎵 MP3 - 🖼️ PNG - 📝 DOCX - - - - Open From - - 💬 Chat - - - 📁 Drive - - - 🔗 Direct URL - - - - - Shortcuts - - Space: Play/Pause - ← →: Navigate - F: Fullscreen - ↑ ↓: Volume - Esc: Close - +/-: Zoom - - - Unified viewer for documents, presentations, audio, video, and images - diff --git a/docs/src/assets/suite/player-screen.svg b/docs/src/assets/suite/player-screen.svg deleted file mode 100644 index 519b1ded..00000000 --- a/docs/src/assets/suite/player-screen.svg +++ /dev/null @@ -1,203 +0,0 @@ - - - - - - - - - - - - - - - Player - Media Viewer - - - - - - - - - - - - - Q4 2024 Business Review - Strategic Initiatives and Key Metrics - - - • Revenue grew 23% year-over-year - • Customer satisfaction score: 94% - • New product launches: 3 - • Market expansion into APAC region - - - - Revenue Trend - - - - - - - - Q1 - Q2 - Q3 - Q4 - - - - - 5 / 12 - - - - - - - - - - - - - - - - - - - - - - - 2:34 - - - - 5:48 - - - - - - - 🔊 - - - - - - - - - - - - - - - Playlist - 12 slides • 5:48 total - - - - - - - - 1 - Title Slide - 0:00 - - - - - - - 2 - Agenda - 0:30 - - - - - - - 3 - Overview - 1:15 - - - - - - - 4 - Metrics - 1:58 - - - - - - - 5 - Q4 Review - ▶ Playing - - - - - - - 6 - Roadmap - 3:20 - - - - + 6 more slides - - - - - Space = Play/Pause | ← → = Navigate | F = Fullscreen | M = Mute - - diff --git a/docs/src/assets/suite/research-flow.svg b/docs/src/assets/suite/research-flow.svg deleted file mode 100644 index 32693d11..00000000 --- a/docs/src/assets/suite/research-flow.svg +++ /dev/null @@ -1,307 +0,0 @@ - - - - - - - - - - - - - - - - - Research - AI Search Flow - Multi-source intelligent search with AI-powered synthesis and citations - - - Query - Sources - AI Processing - Results - - - - - - - - Search Query - Natural language - - - - - - Quick - Fast mode - - - - - - Deep - Thorough - - - - - - Filters - Date, type, source - - - - - - Search History - Recent queries - - - - - - Data Sources - Multi-source search - - - - - - Web - Internet - - - - - - KB - Internal - - - - - - Docs - Drive files - - - - - - APIs - External - - - - - - News - RSS feeds - - - - - - Papers - Academic - - - - - - AI Processing ✨ - LLM synthesis - - - - - - RAG Pipeline - Vector retrieval - - - - - - Synthesis - Combine sources - - - - - - Fact Check - Verify claims - - - - - - Results - AI-generated answer - - - - - - Summary - Concise answer - - - - - - Citations - Source links - - - - - - Save to Collection - Bookmark research - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - - - - - - Ask Question - Natural language - - Search Sources - Multi-source lookup - - AI Synthesis - Combine and verify - - Get Answer - Cited summary - - - - - Search Modes: - - - Quick - Fast answers from cache - - - Deep - Thorough multi-source search - - - RAG - Knowledge base retrieval - - - Verified - Fact-checked answers - - - - - Shortcuts: - / = Focus search | Enter = Search | Ctrl+D = Deep mode | Ctrl+S = Save | Ctrl+C = Copy answer | ↑↓ = Navigate results - - - - - Endpoints: - POST /api/research/search | GET /api/research/sources | POST /api/research/deep | GET /api/research/collections | POST /api/research/save - - - diff --git a/docs/src/assets/suite/research-screen.svg b/docs/src/assets/suite/research-screen.svg deleted file mode 100644 index cb8ff8ba..00000000 --- a/docs/src/assets/suite/research-screen.svg +++ /dev/null @@ -1,160 +0,0 @@ - - - - - - - - - - - Research - AI-Powered Search - - - - - - - - - 🔍 - How does machine learning work in recommendation systems? - - - Search - - - - - - All - - - Articles - - - Papers - - - Web - - - Videos - - 23 results • 1.2s - - - - - - ✨ AI Summary - - Machine learning powers recommendation systems through several key techniques: - - • Collaborative filtering analyzes user behavior patterns to find similar users - • Content-based filtering matches item attributes to user preferences - • Deep learning models can capture complex non-linear relationships - - Based on 5 sources - - - - - - - Understanding Recommendation Systems: A Complete Guide - ml-guide.com • Published 2024 - A comprehensive overview of how modern recommendation systems - leverage machine learning algorithms to personalize content... - - - Article - - - - - - Collaborative Filtering vs Content-Based: A Comparison - research.ai • IEEE 2023 - This paper compares the effectiveness of collaborative filtering and - content-based approaches in various recommendation scenarios... - - - Paper - - - - - - - Sources (5) - - - - ML Guide - ml-guide.com - - - - - - - IEEE Research - ieee.org - - - - - - - ArXiv Paper - arxiv.org - - - - - - - Medium Article - medium.com - - - - - - - + Add Source - - - - - Enter = Search | Tab = Next result | S = Save | E = Export citations - - diff --git a/docs/src/assets/suite/sources-flow.svg b/docs/src/assets/suite/sources-flow.svg deleted file mode 100644 index 48b576ec..00000000 --- a/docs/src/assets/suite/sources-flow.svg +++ /dev/null @@ -1,302 +0,0 @@ - - - - - - - - - - - - - - - - - Sources - Prompts & Templates Management - Manage AI prompts, bot templates, news feeds, MCP servers, LLM tools, and models - - - Source Types - Browse - Configure - Deploy - - - - - - - - Tab Navigation - 6 resource categories - - - - - - Prompts - AI prompts - - - - - - Templates - .gbai bots - - - - - - News - RSS feeds - - - - - - MCP - Servers - - - - - - Tools - LLM tools - - - - - - Models - AI models - - - - - - Browse Items - Grid/List view - - - - - - Search - Filter by name/tag - - - - - - Categories - CRM, HR, Support... - - - - - - Preview - Quick look - - - - - - Configure - Customize settings - - - - - - Edit Content - Modify prompts - - - - - - Parameters - API keys, config - - - - - - Test - Try before deploy - - - - - - Deploy - Activate resources - - - - - - Install Template - Create new bot - - - - - - Activate - Enable in system - - - - - - Monitor - Usage stats - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - - - - - - Select Tab - Choose resource type - - Browse - Search and explore - - Configure - Customize settings - - Deploy - Activate resource - - - - - Resource Types: - - - Prompts - Reusable AI instructions - - - Templates - Ready-made .gbai bots - - - News - RSS/Atom feeds - - - MCP - Model servers - - - Tools - LLM capabilities - - - Models - - - - - Categories: - CRM | HR | Compliance | Support | Sales | Marketing | Finance | Legal | IT | Custom - - - - - Endpoints: - GET /api/sources/{type} | POST /api/sources/install | GET /api/templates | POST /api/prompts | GET /api/models - - - diff --git a/docs/src/assets/suite/sources-screen.svg b/docs/src/assets/suite/sources-screen.svg deleted file mode 100644 index 38a67a42..00000000 --- a/docs/src/assets/suite/sources-screen.svg +++ /dev/null @@ -1,248 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - Sources - Prompts & Templates - - - - - - - - - - - - + New Source - - - - - CATEGORIES - - - - 📚 - All Sources - 24 - - - - 💬 - Prompts - 12 - - - - 📄 - Templates - 8 - - - - 🔗 - Integrations - 4 - - - - - Favorites - 6 - - - - - - TAGS - - - - customer - - - - - sales - - - - - support - - - - - technical - - - - - - All Sources - 24 items • Manage your prompts and templates - - - - - - 🔍 - Search sources... - - - - - - - - - - 💬 - Customer Support - Handle support inquiries - with empathy and clarity - - prompt - - - - - 📝 - Email Template - Professional email - response format - - template - - - - - 🤖 - Sales Assistant - Product recommendations - and pricing help - - prompt - - - - - - - - 📊 - Report Generator - Create structured - analysis reports - - template - - - - - 🔗 - CRM Integration - Connect with your - CRM system - - integration - - - - - 🎯 - FAQ Bot - Automated answers - for common questions - - prompt - - - - - - - - ✍️ - Content Writer - Blog posts and - marketing copy - - prompt - - - - - 📋 - Meeting Notes - Structured meeting - summary template - - template - - - - - - + - Add New Source - Create from scratch - - - - - Click to edit | Del = Delete | D = Duplicate | Enter = Use in chat - - diff --git a/docs/src/assets/suite/suite-layout.svg b/docs/src/assets/suite/suite-layout.svg deleted file mode 100644 index 1e741a52..00000000 --- a/docs/src/assets/suite/suite-layout.svg +++ /dev/null @@ -1,136 +0,0 @@ - - - - - Suite - Full Desktop Layout - - - - - - - - - 🤖 General Bots - - - - 🔍 Search or ask anything... - - - 🔔 - ⚙️ - 🌙 - - - - ⋮⋮⋮ - - - - - - - 👤 - John Doe - john@company.com - - - - 💬 - Chat - - - 📁 - Drive - - - - Tasks - - - - Mail - - - 📅 - Calendar - - - 🎥 - Meet - - - MORE APPS - - - 📝 - Paper - - - 🔍 - Research - - - - - - 💬 Chat - - - - - 🤖 Bot - Hello! How can I help you today? - - - What meetings do I have today? - - - 🤖 Bot - You have 2 meetings scheduled: - • 2:00 PM - Team Standup (30 min) - - - - 📊 Tasks - - - 📧 Check mail - - - 📅 Schedule - - - - Type your message... - 🎤 - - - - - ● Connected - Alt+1: Chat | Alt+2: Drive | Alt+3: Tasks | Alt+4: Mail - - - - Desktop >1024px - - - Tablet 768px - - - Mobile <768 - diff --git a/docs/src/assets/suite/suite-screen.svg b/docs/src/assets/suite/suite-screen.svg deleted file mode 100644 index e1fe6af8..00000000 --- a/docs/src/assets/suite/suite-screen.svg +++ /dev/null @@ -1,220 +0,0 @@ - - - - - - - - - - - - - - - - - - Suite - Main Interface - - - - - - - - - - - GB - General Bots - - - - - - ☀️ - Light - - - - - - - - - - - - - JD - - - - - - - Applications - - - - - - - - 💬 - Chat - - - - - 📁 - Drive - - - - - - Tasks - - - - - - - - Mail - - - - - 📅 - Calendar - - - - - 🎥 - Meet - - - - - - - 📝 - Paper - - - - - 🔍 - Research - - - - - 📊 - Analytics - - - - - - - - - - - Connected - - - - - - - AI Assistant - Hello! How can I help you today? - - - - What's on my calendar for today? - - - - AI Assistant - You have 2 meetings today: - • 2:00 PM - Team Standup - • 4:00 PM - Project Review - - - - - - 📧 Check email - - - ✓ My tasks - - - 📁 Recent files - - - - - - Message... - - - 🎤 - - - - - - - - - - - - Enter = Send | Shift+Enter = New line | / = Commands | @ = Mention - - diff --git a/docs/src/assets/suite/tasks-flow.svg b/docs/src/assets/suite/tasks-flow.svg deleted file mode 100644 index 12f5a2ec..00000000 --- a/docs/src/assets/suite/tasks-flow.svg +++ /dev/null @@ -1,280 +0,0 @@ - - - - - - - - - - - - - - - - Tasks - To-Do Management Flow - Create, organize, and track your tasks with categories and priorities - - - Create - Organize - Track - Complete - - - - - - - - Add Task - - - - - What needs to be done? - - - - Category - - - Due Date - - - - - - Filter Tabs - - - - All - - - Active - - - Done - - - Priority - - - - - - Categories - - - Work - - - Personal - - - Shopping - - - Health - - - Custom - - - - - - Task List - - - - - Review report - - - - Call client - - - - Update docs - - - - - Send email - - - - - - Stats - - - - - 12 - Total - - - 5 - Active - - - 7 - Completed - - - 2 - Overdue - - - - - - - - - - - - - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - - - - - - Add Task - Enter description - - Categorize - Set priority & date - - Track - View & filter tasks - - Complete - Check off done - - - - - Priority Levels: - - - High - Must do today - - - Medium - Important - - - Low - Can wait - - - None - No deadline - - - - - Key Features: - - - Click checkbox to complete - - - Filter by status or category - - - Set due dates with calendar - - - Real-time stats dashboard - - - - - Shortcuts: - Enter = Add task | Space = Toggle complete | Delete = Remove task | Tab = Next field - - - - - Endpoints: - GET /api/tasks | POST /api/tasks | PATCH /api/tasks/:id | DELETE /api/tasks/:id - - - - - HTMX: - hx-post="/api/tasks" hx-target="#task-list" hx-swap="afterbegin" hx-on::after-request="this.reset()" - - - diff --git a/docs/src/assets/suite/tasks-screen.svg b/docs/src/assets/suite/tasks-screen.svg deleted file mode 100644 index 7b755b34..00000000 --- a/docs/src/assets/suite/tasks-screen.svg +++ /dev/null @@ -1,211 +0,0 @@ - - - - - - - - - - - Tasks - To-Do Manager - - - - - - - - - - - - + Add Task - - - - - - 📋 - All Tasks - 12 - - 📅 - Today - 5 - - 📆 - Upcoming - 8 - - - Important - 3 - - - Completed - 24 - - - - - PROJECTS - - - - Work - - - - - Personal - - - - - Learning - - - - - - All Tasks - 12 tasks, 5 due today - - - - - Filter ▾ - - - Sort ▾ - - - - - - - - - Add a new task... - - - - - - - - - - Complete quarterly report - - Work - Today - - - - - - - - - Review pull request #234 - - Work - Today - - - - - - - - - Prepare presentation slides - - Work - Tomorrow - - - - - - - - - Read documentation updates - - Learning - Mar 20 - - - - - - - - - Update team meeting notes - - Work - Completed - - - - - - - - - Schedule dentist appointment - - Personal - Completed - - - - - - - Enter = Add task | Space = Toggle complete | Del = Delete | S = Star - - diff --git a/docs/src/assets/technical-specs.svg b/docs/src/assets/technical-specs.svg deleted file mode 100644 index ef5e9f39..00000000 --- a/docs/src/assets/technical-specs.svg +++ /dev/null @@ -1,146 +0,0 @@ - - - - - System Technical Specifications - - - - - - - - Embedding Configuration - - Model: bge-small-en-v1.5-f32.gguf - • Dimensions: 384 - • Format: GGUF (quantized) - • Server: localhost:8082 - • Memory: ~200MB loaded - - - - - - LLM Configuration - - Model: DeepSeek-R1-Distill-Qwen-1.5B - • Context Size: 4096 tokens - • Max Predict: 1024 tokens - • Parallel Requests: 6 - • Quantization: Q3_K_M - - - - - - Performance Characteristics - - - Vector Index: HNSW Algorithm - • M=16, ef_construction=200 - • Distance: Cosine Similarity - • Build: ~1000 docs/minute - - - Chunking Strategy - • Chunk Size: 512 tokens - • Overlap: 50 tokens - • Prompt Compact: Level 4 - - - Runtime Metrics - • Query Latency: <50ms p99 - • Memory: ~1GB/million chunks - • Cache TTL: 3600 seconds - - - - - diff --git a/docs/src/assets/wa-chat.css b/docs/src/assets/wa-chat.css deleted file mode 100644 index c399c390..00000000 --- a/docs/src/assets/wa-chat.css +++ /dev/null @@ -1,209 +0,0 @@ -/** - * WhatsApp-style Chat Conversation CSS - * - * Standard styling for conversation examples in General Bots documentation. - * Include this CSS in your mdBook or HTML output to style