Commit graph

3259 commits

Author SHA1 Message Date
e43638d55b Revise FORMAT keyword documentation to enhance clarity and structure, including examples and practical tips for usage. 2025-10-25 15:00:46 -03:00
892d20440e Add comprehensive documentation for GeneralBots, including keyword references, templates, and user guides
- Created detailed markdown files for keywords such as HEAR, TALK, and SET_USER.
- Added examples and usage notes for each keyword to enhance user understanding.
- Developed templates for common tasks like enrollment and authentication.
- Structured documentation into chapters covering various aspects of the GeneralBots platform, including gbapp, gbkb, and gbtheme.
- Introduced a glossary for key terms and concepts related to GeneralBots.
- Implemented a user-friendly table of contents for easy navigation.
2025-10-25 14:50:14 -03:00
dff1021bb4 Refactor BotOrchestrator to remove in-memory cache and implement LangCache for user input responses 2025-10-25 11:18:05 -03:00
9c77bd2b87 Add caching mechanism to BotOrchestrator for user input responses 2025-10-24 23:36:16 -03:00
2f08fa085e Refactor installer to remove app user credentials and streamline environment variable setup 2025-10-24 22:36:49 -03:00
ccf0a4f7e6 Update exec_cmd in post_install_cmds_linux to include wait and timeout options 2025-10-24 15:44:50 -03:00
503b5e5b8e Enhance package manager to generate and store drive credentials in .env file 2025-10-24 15:39:27 -03:00
866a17f40e Update .gitignore to include logfile patterns 2025-10-24 13:49:01 -03:00
6a6465c1bd Revert "Implement token-based context usage in chat UI"
This reverts commit 82aa3e8d36.
2025-10-24 11:17:22 -03:00
bf3ea1ddd3 Implement token-based context usage in chat UI
- Replace simple message count with token-based calculation
- Add token estimation function (4 chars ≈ 1 token)
- Set MAX_TOKENS to 5000 and MIN_DISPLAY_PERCENTAGE to 20
- Update context usage display to show token count percentage
- Track tokens for both user and assistant messages
- Handle server-provided context usage as ratio of MAX_TOKENS
2025-10-23 16:33:23 -03:00
54c29e01a5 Add LLM configuration defaults 2025-10-21 23:10:28 -03:00
86afb49967 Switch cache install to Redis build from source 2025-10-21 22:51:46 -03:00
dc3d9b44b1 Enable template bot creation and fix bot schema 2025-10-21 22:43:28 -03:00
9760f57653 - New web assets for 6.0.5. 2025-10-20 23:44:47 -03:00
b96396c4bb - More automation from start to web, user sessions. 2025-10-20 23:32:49 -03:00
39f5571240 Support legacy bootstrap and update installer 2025-10-20 20:21:31 -03:00
0a9fddc145 Add new KB and session association tables 2025-10-20 19:49:54 -03:00
cd91d011f4 Refactor config loading and DB URL parsing 2025-10-20 16:52:08 -03:00
98fb2be981 Add include_dir dependency and use it for embedded migrations
Use include_dir to embed migration scripts and load them at runtime.
This change allows for easier management and versioning of migrations.
2025-10-20 09:42:07 -03:00
66f5d2d8de Update PostgreSQL installer commands
Add build command before running cargo Update PostgreSQL installation
commands to use relative paths

Update Linux and macOS installation commands to use `chmod +x ./bin/*`
instead of `chmod +x bin/*`
2025-10-20 07:50:51 -03:00
a593d68ff3 Remove tables install from bootstrap
The tables component is now installed by default. The install command no
longer installs it as part of the bootstrap process.
2025-10-20 07:34:06 -03:00
436bff1e76 Add indicatif for progress bars and enhance bootstrap
----------------------------------------------------------------
2025-10-19 19:28:08 -03:00
d675e84357 Add await to bootstrap start_all call
Fixes the asynchronous bootstrap process by properly awaiting the
start_all method, ensuring all services are started before proceeding.
2025-10-19 15:42:13 -03:00
fe198c1eea Add method to start all components
Implement a new method `start_all` in `BootstrapManager` to start all
components using the `PackageManager`.

This method creates a new `PackageManager` instance and uses it to start
each component in a predefined list.

--- Add remove_local for PackageManager

Remove component specific code

The specific code for component 'tables' has been removed from the
`remove_local` method in `PackageManager`.

The method now simply removes the binary directory for the component.

--- Implement start for PackageManager

Add a new method `start` to `PackageManager` to start a component.

This method takes a component name as an argument and uses the
`exec_cmd` for that component to spawn a new process.

If the component is not found, it returns an error.
2025-10-19 15:03:27 -03:00
466203735f - Tables is installing. 2025-10-19 14:02:47 -03:00
8eeb2ff43c Add package manager CLI and component system
Implement core package manager with component configuration, installer
logic, OS detection, and a command‑line interface for install, remove,
list, and status operations.
2025-10-19 11:08:35 -03:00
d39454b86f Refactor bootstrap and package manager, add ureq
- Split package manager into separate modules
- Expose only the installer API
- Simplify BootstrapManager to install components and load config
- Pin ureq to 3.1.2 and add ureq‑proto crate
- Clean up configuration code and remove legacy comments
- Update helper scripts and server start command formatting
2025-10-19 11:08:23 -03:00
a1afbbf4f5 Update password generator to new Rand API
Replace `thread_rng` with `rng` and use `random_range` for character
selection. Rename the `component` argument to `_component` in
`PackageManager::download_binary` to suppress an unused‑parameter
warning.
2025-10-18 22:26:42 -03:00
b771faca91 - Postgres updated to 18. 2025-10-18 22:25:59 -03:00
4a2dc49dba - New bootstrap engine. 2025-10-18 19:08:00 -03:00
09b57aafa0 - Knowledge management. 2025-10-18 18:20:02 -03:00
098c6464e3 - Added logic to Knowledge management. 2025-10-18 18:19:08 -03:00
8a4ccff5de - Refactoring bot package. 2025-10-18 12:03:07 -03:00
8237d9304b - Refactor in bot package. 2025-10-18 12:01:39 -03:00
34c2477ee6 - Added component management. 2025-10-18 09:26:48 -03:00
2ab4d25853 Merge branch 'main' of github.com:GeneralBots/BotServer 2025-10-17 20:35:50 -03:00
bb6ecd457c Refactor: remove custom template and add dev-start 2025-10-17 20:32:25 -03:00
87bebd1fd8 Merge pull request #441 from ChristopherCastilho/main
Add trace logging to AutomationService and increase timeout values in LLM commands
2025-10-17 18:51:29 -03:00
9eb8f8f57f Add scroll-to-bottom button and context usage indicator with styling improvements 2025-10-17 15:12:19 -03:00
2be85773ab Add trace logging to AutomationService and increase timeout values in LLM commands 2025-10-17 13:11:49 -03:00
ee5184fefb Remove sqlite support and switch auth to POST 2025-10-16 16:49:23 -03:00
f916f3469b Merge branch 'main' of github.com:GeneralBots/BotServer 2025-10-16 14:43:24 -03:00
09a9c8f3cd Enhance bot memory and Redis guards
- Derive bot_id from BOT_GUID env var
- Guard concurrent runs with Redis
- Read CACHE_URL for Redis connection
- Extend bot memory keyword to accept comma as separator
- Increase LLM timeouts to 180s (local and legacy)
- Update templates to use bot memory (GET_BOT_MEMORY/SET_BOT_MEMORY)
- Fix start script path to announcements.gbai
2025-10-16 14:22:28 -03:00
5f50e3c410 Update issue templates 2025-10-16 11:45:31 -03:00
acd664245b Migrate automations to param and sqlite
- Rename script_name to param in automation flow and DB schema
- Add BotMemory model and bot_memories table
- Remove script_name field from automation
- Enable sqlite support via rusqlite and related crates (optional)
- Update prompts and queries to use param instead of script_name
- Remove deprecated annoucements GBai templates and align add-req.sh
- Refactor main to initialize automation service and simplify startup
2025-10-16 11:43:02 -03:00
95456e90dd Add dev prompts for keyword, model, and service 2025-10-16 08:04:13 -03:00
f3813951c8 Delete dev prompt files and update shared rules
Add rule to shared.md to output only modified files in a .sh script
Remove obsolete dev prompt markdown files
2025-10-16 08:04:06 -03:00
8c68b9c3dc Remove unnecessary mut from response_channels 2025-10-16 07:56:57 -03:00
7a583b1a64 Refactor TALK keyword to use try_send
Remove unnecessary async spawn in TALK handling and use `try_send` on
the WebSocket channel. Acquire `response_channels` with `try_lock` and
spawn an async task only when falling back to the web adapter. Clean up
debug logs and add missing `env` import. Also delete an extra blank line
in the announcement start script.
2025-10-15 22:39:04 -03:00
4ead626a90 Refactor LLM parsing and overhaul connection UI
- Strip content up to the “final<|message|>” token in OpenAI responses.
- Replace the text‑based connection‑status indicator with a small
  flashing circle.
- Simplify updateConnectionStatus to take only the status argument.
- Remove special handling of the initial assistant message and
  streamline empty‑state removal.
- Clean up stray blank lines in the announcement template.
2025-10-15 22:24:04 -03:00