2025-11-22 12:26:16 -03:00
# General Bots - Enterprise-Grade LLM Orchestrator
2025-11-21 23:23:53 -03:00
2025-11-22 12:26:16 -03:00

2025-11-21 23:23:53 -03:00
2025-11-22 12:26:16 -03:00
**A strongly-typed LLM conversational platform focused on convention over configuration and code-less approaches.**
2025-11-21 23:23:53 -03:00
Add tar/flate2 deps and document new BASIC keywords
Add flate2 and tar dependencies for archive extraction support in file
operations. Update documentation with:
- New BASIC keywords: SWITCH/CASE, WEBHOOK, INSTR, IS_NUMERIC
- HTTP operations: POST, PUT, PATCH, DELETE_HTTP, GRAPHQL, SOAP
- Data operations: SAVE, INSERT, UPDATE, DELETE, MERGE, FILTER, etc.
- File operations: READ, WRITE, COMPRESS, EXTRACT, GENERATE_PDF, etc.
Simplify README and add appendices for external services and environment
variables. Add monitoring dashboard and player UI docs.
2025-11-30 07:53:58 -03:00
## Quick Links
2025-11-21 23:23:53 -03:00
2025-12-04 12:44:18 -03:00
- **[Getting Started ](docs/guides/getting-started.md )** - Installation and first bot
- **[API Reference ](docs/api/README.md )** - REST and WebSocket endpoints
- **[BASIC Language ](docs/reference/basic-language.md )** - Dialog scripting reference
Add tar/flate2 deps and document new BASIC keywords
Add flate2 and tar dependencies for archive extraction support in file
operations. Update documentation with:
- New BASIC keywords: SWITCH/CASE, WEBHOOK, INSTR, IS_NUMERIC
- HTTP operations: POST, PUT, PATCH, DELETE_HTTP, GRAPHQL, SOAP
- Data operations: SAVE, INSERT, UPDATE, DELETE, MERGE, FILTER, etc.
- File operations: READ, WRITE, COMPRESS, EXTRACT, GENERATE_PDF, etc.
Simplify README and add appendices for external services and environment
variables. Add monitoring dashboard and player UI docs.
2025-11-30 07:53:58 -03:00
## What is General Bots?
2023-05-30 08:40:00 -03:00
2025-11-22 12:26:16 -03:00
General Bots is a **self-hosted AI automation platform** that provides:
2024-12-22 14:45:07 -03:00
Add tar/flate2 deps and document new BASIC keywords
Add flate2 and tar dependencies for archive extraction support in file
operations. Update documentation with:
- New BASIC keywords: SWITCH/CASE, WEBHOOK, INSTR, IS_NUMERIC
- HTTP operations: POST, PUT, PATCH, DELETE_HTTP, GRAPHQL, SOAP
- Data operations: SAVE, INSERT, UPDATE, DELETE, MERGE, FILTER, etc.
- File operations: READ, WRITE, COMPRESS, EXTRACT, GENERATE_PDF, etc.
Simplify README and add appendices for external services and environment
variables. Add monitoring dashboard and player UI docs.
2025-11-30 07:53:58 -03:00
- **Multi-Vendor LLM API** - Unified interface for OpenAI, Groq, Claude, Anthropic
- **MCP + LLM Tools Generation** - Instant tool creation from code/functions
- **Semantic Caching** - Intelligent response caching (70% cost reduction)
- **Web Automation Engine** - Browser automation + AI intelligence
- **Enterprise Data Connectors** - CRM, ERP, database native integrations
- **Git-like Version Control** - Full history with rollback capabilities
2025-11-22 12:26:16 -03:00
2025-12-04 12:44:18 -03:00
## Quick Start
2025-11-28 13:50:28 -03:00
2025-12-04 12:44:18 -03:00
### Prerequisites
2025-11-28 13:50:28 -03:00
2025-12-04 12:44:18 -03:00
- **Rust** (1.75+) - [Install from rustup.rs ](https://rustup.rs/ )
- **Git** - [Download from git-scm.com ](https://git-scm.com/downloads )
2025-11-28 13:50:28 -03:00
2025-12-04 12:44:18 -03:00
### Installation
2025-11-28 13:50:28 -03:00
2025-12-04 12:44:18 -03:00
```bash
git clone https://github.com/GeneralBots/BotServer
cd BotServer
cargo run
```
2025-11-28 13:50:28 -03:00
2025-12-04 12:44:18 -03:00
On first run, BotServer automatically sets up PostgreSQL, S3 storage, Redis cache, and downloads AI models.
2025-11-28 13:50:28 -03:00
2025-12-04 12:44:18 -03:00
The server will be available at `http://localhost:8080` .
2025-11-28 13:50:28 -03:00
2025-12-04 12:44:18 -03:00
## Documentation
2025-11-28 13:50:28 -03:00
2025-12-04 12:44:18 -03:00
```
docs/
├── api/ # API documentation
│ ├── README.md # API overview
│ ├── rest-endpoints.md # HTTP endpoints
│ └── websocket.md # Real-time communication
├── guides/ # How-to guides
│ ├── getting-started.md # Quick start
│ ├── deployment.md # Production setup
│ └── templates.md # Using templates
└── reference/ # Technical reference
├── basic-language.md # BASIC keywords
├── configuration.md # Config options
└── architecture.md # System design
```
2025-11-28 13:50:28 -03:00
Add tar/flate2 deps and document new BASIC keywords
Add flate2 and tar dependencies for archive extraction support in file
operations. Update documentation with:
- New BASIC keywords: SWITCH/CASE, WEBHOOK, INSTR, IS_NUMERIC
- HTTP operations: POST, PUT, PATCH, DELETE_HTTP, GRAPHQL, SOAP
- Data operations: SAVE, INSERT, UPDATE, DELETE, MERGE, FILTER, etc.
- File operations: READ, WRITE, COMPRESS, EXTRACT, GENERATE_PDF, etc.
Simplify README and add appendices for external services and environment
variables. Add monitoring dashboard and player UI docs.
2025-11-30 07:53:58 -03:00
## Key Features
2024-12-22 14:45:07 -03:00
2025-11-22 12:26:16 -03:00
### 4 Essential Keywords
```basic
Add tar/flate2 deps and document new BASIC keywords
Add flate2 and tar dependencies for archive extraction support in file
operations. Update documentation with:
- New BASIC keywords: SWITCH/CASE, WEBHOOK, INSTR, IS_NUMERIC
- HTTP operations: POST, PUT, PATCH, DELETE_HTTP, GRAPHQL, SOAP
- Data operations: SAVE, INSERT, UPDATE, DELETE, MERGE, FILTER, etc.
- File operations: READ, WRITE, COMPRESS, EXTRACT, GENERATE_PDF, etc.
Simplify README and add appendices for external services and environment
variables. Add monitoring dashboard and player UI docs.
2025-11-30 07:53:58 -03:00
USE KB "kb-name" ' Load knowledge base into vector database
CLEAR KB "kb-name" ' Remove KB from session
USE TOOL "tool-name" ' Make tool available to LLM
CLEAR TOOLS ' Remove all tools from session
2025-11-22 12:26:16 -03:00
```
2024-12-22 14:45:07 -03:00
2025-12-04 12:44:18 -03:00
### Example Bot
2024-12-22 14:45:07 -03:00
2025-12-04 12:44:18 -03:00
```basic
' customer-support.bas
USE KB "support-docs"
USE TOOL "create-ticket"
USE TOOL "check-order"
2024-12-22 14:45:07 -03:00
2025-12-04 12:44:18 -03:00
SET CONTEXT "support" AS "You are a helpful customer support agent."
2025-10-20 23:32:49 -03:00
2025-12-04 12:44:18 -03:00
TALK "Welcome! How can I help you today?"
2025-10-20 23:32:49 -03:00
```
2024-12-22 14:45:07 -03:00
2025-12-04 12:44:18 -03:00
## Command-Line Options
Add tar/flate2 deps and document new BASIC keywords
Add flate2 and tar dependencies for archive extraction support in file
operations. Update documentation with:
- New BASIC keywords: SWITCH/CASE, WEBHOOK, INSTR, IS_NUMERIC
- HTTP operations: POST, PUT, PATCH, DELETE_HTTP, GRAPHQL, SOAP
- Data operations: SAVE, INSERT, UPDATE, DELETE, MERGE, FILTER, etc.
- File operations: READ, WRITE, COMPRESS, EXTRACT, GENERATE_PDF, etc.
Simplify README and add appendices for external services and environment
variables. Add monitoring dashboard and player UI docs.
2025-11-30 07:53:58 -03:00
```bash
2025-12-04 12:44:18 -03:00
cargo run # Default: console UI + web server
cargo run -- --noconsole # Background service mode
cargo run -- --desktop # Desktop application (Tauri)
cargo run -- --tenant < name > # Specify tenant
cargo run -- --container # LXC container mode
Add tar/flate2 deps and document new BASIC keywords
Add flate2 and tar dependencies for archive extraction support in file
operations. Update documentation with:
- New BASIC keywords: SWITCH/CASE, WEBHOOK, INSTR, IS_NUMERIC
- HTTP operations: POST, PUT, PATCH, DELETE_HTTP, GRAPHQL, SOAP
- Data operations: SAVE, INSERT, UPDATE, DELETE, MERGE, FILTER, etc.
- File operations: READ, WRITE, COMPRESS, EXTRACT, GENERATE_PDF, etc.
Simplify README and add appendices for external services and environment
variables. Add monitoring dashboard and player UI docs.
2025-11-30 07:53:58 -03:00
```
## Environment Variables
2025-12-04 12:44:18 -03:00
Only directory service variables are required:
Add tar/flate2 deps and document new BASIC keywords
Add flate2 and tar dependencies for archive extraction support in file
operations. Update documentation with:
- New BASIC keywords: SWITCH/CASE, WEBHOOK, INSTR, IS_NUMERIC
- HTTP operations: POST, PUT, PATCH, DELETE_HTTP, GRAPHQL, SOAP
- Data operations: SAVE, INSERT, UPDATE, DELETE, MERGE, FILTER, etc.
- File operations: READ, WRITE, COMPRESS, EXTRACT, GENERATE_PDF, etc.
Simplify README and add appendices for external services and environment
variables. Add monitoring dashboard and player UI docs.
2025-11-30 07:53:58 -03:00
| Variable | Purpose |
|----------|---------|
| `DIRECTORY_URL` | Zitadel instance URL |
| `DIRECTORY_CLIENT_ID` | OAuth client ID |
| `DIRECTORY_CLIENT_SECRET` | OAuth client secret |
2025-12-04 12:44:18 -03:00
All service credentials are managed automatically. See [Configuration ](docs/reference/configuration.md ) for details.
Add tar/flate2 deps and document new BASIC keywords
Add flate2 and tar dependencies for archive extraction support in file
operations. Update documentation with:
- New BASIC keywords: SWITCH/CASE, WEBHOOK, INSTR, IS_NUMERIC
- HTTP operations: POST, PUT, PATCH, DELETE_HTTP, GRAPHQL, SOAP
- Data operations: SAVE, INSERT, UPDATE, DELETE, MERGE, FILTER, etc.
- File operations: READ, WRITE, COMPRESS, EXTRACT, GENERATE_PDF, etc.
Simplify README and add appendices for external services and environment
variables. Add monitoring dashboard and player UI docs.
2025-11-30 07:53:58 -03:00
2025-12-04 12:44:18 -03:00
## Current Status
**Version:** 6.0.8
**Build Status:** SUCCESS
**Production Ready:** YES
## Deployment
See [Deployment Guide ](docs/guides/deployment.md ) for:
- Single server setup
- Docker Compose
- LXC containers
- Kubernetes
- Reverse proxy configuration
2025-10-20 23:32:49 -03:00
Add tar/flate2 deps and document new BASIC keywords
Add flate2 and tar dependencies for archive extraction support in file
operations. Update documentation with:
- New BASIC keywords: SWITCH/CASE, WEBHOOK, INSTR, IS_NUMERIC
- HTTP operations: POST, PUT, PATCH, DELETE_HTTP, GRAPHQL, SOAP
- Data operations: SAVE, INSERT, UPDATE, DELETE, MERGE, FILTER, etc.
- File operations: READ, WRITE, COMPRESS, EXTRACT, GENERATE_PDF, etc.
Simplify README and add appendices for external services and environment
variables. Add monitoring dashboard and player UI docs.
2025-11-30 07:53:58 -03:00
## Contributing
2024-12-22 14:45:07 -03:00
2025-12-04 12:44:18 -03:00
We welcome contributions! Please read our contributing guidelines before submitting PRs.
2024-12-22 14:45:07 -03:00
Add tar/flate2 deps and document new BASIC keywords
Add flate2 and tar dependencies for archive extraction support in file
operations. Update documentation with:
- New BASIC keywords: SWITCH/CASE, WEBHOOK, INSTR, IS_NUMERIC
- HTTP operations: POST, PUT, PATCH, DELETE_HTTP, GRAPHQL, SOAP
- Data operations: SAVE, INSERT, UPDATE, DELETE, MERGE, FILTER, etc.
- File operations: READ, WRITE, COMPRESS, EXTRACT, GENERATE_PDF, etc.
Simplify README and add appendices for external services and environment
variables. Add monitoring dashboard and player UI docs.
2025-11-30 07:53:58 -03:00
## Security
2019-03-01 15:41:12 -03:00
2025-11-22 12:26:16 -03:00
Security issues should be reported to: **security@pragmatismo.com.br**
2022-07-19 16:56:48 -03:00
Add tar/flate2 deps and document new BASIC keywords
Add flate2 and tar dependencies for archive extraction support in file
operations. Update documentation with:
- New BASIC keywords: SWITCH/CASE, WEBHOOK, INSTR, IS_NUMERIC
- HTTP operations: POST, PUT, PATCH, DELETE_HTTP, GRAPHQL, SOAP
- Data operations: SAVE, INSERT, UPDATE, DELETE, MERGE, FILTER, etc.
- File operations: READ, WRITE, COMPRESS, EXTRACT, GENERATE_PDF, etc.
Simplify README and add appendices for external services and environment
variables. Add monitoring dashboard and player UI docs.
2025-11-30 07:53:58 -03:00
## License
2025-11-22 12:26:16 -03:00
General Bot Copyright (c) pragmatismo.com.br. All rights reserved.
Licensed under the **AGPL-3.0** .
According to our dual licensing model, this program can be used either under the terms of the GNU Affero General Public License, version 3, or under a proprietary license.
2025-12-04 12:44:18 -03:00
## Support
2025-11-22 12:26:16 -03:00
2025-12-04 12:44:18 -03:00
- **GitHub Issues:** [github.com/GeneralBots/BotServer/issues ](https://github.com/GeneralBots/BotServer/issues )
2025-11-22 12:26:16 -03:00
- **Stack Overflow:** Tag questions with `generalbots`
- **Video Tutorial:** [7 AI General Bots LLM Templates ](https://www.youtube.com/watch?v=KJgvUPXi3Fw )
Add tar/flate2 deps and document new BASIC keywords
Add flate2 and tar dependencies for archive extraction support in file
operations. Update documentation with:
- New BASIC keywords: SWITCH/CASE, WEBHOOK, INSTR, IS_NUMERIC
- HTTP operations: POST, PUT, PATCH, DELETE_HTTP, GRAPHQL, SOAP
- Data operations: SAVE, INSERT, UPDATE, DELETE, MERGE, FILTER, etc.
- File operations: READ, WRITE, COMPRESS, EXTRACT, GENERATE_PDF, etc.
Simplify README and add appendices for external services and environment
variables. Add monitoring dashboard and player UI docs.
2025-11-30 07:53:58 -03:00
## Contributors
2025-11-22 12:26:16 -03:00
< a href = "https://github.com/generalbots/botserver/graphs/contributors" >
< img src = "https://contrib.rocks/image?repo=generalbots/botserver" / >
< / a >
---
2025-12-04 12:44:18 -03:00
**General Bots Code Name:** [Guaribas ](https://en.wikipedia.org/wiki/Guaribas )
2025-11-22 12:26:16 -03:00
2025-12-04 12:44:18 -03:00
> "No one should have to do work that can be done by a machine." - Roberto Mangabeira Unger