2025-10-06 10:30:17 -03:00
|
|
|
[package]
|
2025-10-06 14:55:04 -03:00
|
|
|
name = "botserver"
|
2025-11-21 23:26:43 -03:00
|
|
|
version = "6.1.0"
|
2025-10-06 10:30:17 -03:00
|
|
|
edition = "2021"
|
2025-11-27 15:19:17 -03:00
|
|
|
keywords = ["chatbot", "ai", "llm", "automation", "bot-framework"]
|
|
|
|
|
categories = ["web-programming", "api-bindings", "development-tools"]
|
2025-10-16 11:43:02 -03:00
|
|
|
authors = [
|
2025-11-20 13:28:35 -03:00
|
|
|
"Pragmatismo.com.br ",
|
|
|
|
|
"General Bots Community ",
|
|
|
|
|
"Alan Perdomo",
|
|
|
|
|
"Ana Paula Gil",
|
|
|
|
|
"Arenas.io",
|
|
|
|
|
"Atylla L",
|
|
|
|
|
"Christopher de Castilho",
|
|
|
|
|
"Dario Junior",
|
|
|
|
|
"David Lerner",
|
|
|
|
|
"Experimentation Garage",
|
|
|
|
|
"Flavio Andrade",
|
|
|
|
|
"Heraldo Almeida",
|
|
|
|
|
"Joao Parana",
|
|
|
|
|
"Jonathas C",
|
|
|
|
|
"J Ramos",
|
|
|
|
|
"Lucas Picanco",
|
|
|
|
|
"Marcos Velasco",
|
|
|
|
|
"Matheus 39x",
|
|
|
|
|
"Oerlabs Henrique",
|
|
|
|
|
"Othon Lima",
|
|
|
|
|
"PH Nascimento",
|
|
|
|
|
"Phpussente",
|
|
|
|
|
"Robson Dantas",
|
|
|
|
|
"Rodrigo Rodriguez ",
|
|
|
|
|
"Sarah Lourenco",
|
|
|
|
|
"Thi Patriota",
|
|
|
|
|
"Webgus",
|
|
|
|
|
"Zuilho Se",
|
2025-10-16 11:43:02 -03:00
|
|
|
]
|
2025-10-20 23:32:49 -03:00
|
|
|
description = "General Bots Server - Open-source bot platform by Pragmatismo.com.br"
|
2025-10-06 10:30:17 -03:00
|
|
|
license = "AGPL-3.0"
|
2025-10-20 23:32:49 -03:00
|
|
|
repository = "https://github.com/GeneralBots/BotServer"
|
2025-10-06 10:30:17 -03:00
|
|
|
|
2025-12-03 19:59:27 -03:00
|
|
|
[dependencies.botlib]
|
|
|
|
|
path = "../botlib"
|
2026-01-06 22:56:35 -03:00
|
|
|
features = ["database", "i18n"]
|
2025-12-03 19:59:27 -03:00
|
|
|
|
2025-10-06 10:30:17 -03:00
|
|
|
[features]
|
2025-11-22 22:54:45 -03:00
|
|
|
# ===== DEFAULT FEATURE SET =====
|
2026-01-06 22:56:35 -03:00
|
|
|
default = ["console", "chat", "automation", "tasks", "drive", "llm", "cache", "progress-bars", "directory", "calendar", "meet", "email", "whatsapp", "telegram"]
|
2025-11-22 01:27:29 -03:00
|
|
|
|
2025-11-22 22:54:45 -03:00
|
|
|
# ===== UI FEATURES =====
|
Add .env.example with comprehensive configuration template
The commit adds a complete example environment configuration file
documenting all available settings for BotServer, including logging,
database, server, drive, LLM, Redis, email, and feature flags.
Also removes hardcoded environment variable usage throughout the
codebase, replacing them with configuration via config.csv or
appropriate defaults. This includes:
- WhatsApp, Teams, Instagram adapter configurations
- Weather API key handling
- Email and directory service configurations
- Console feature conditionally compiles monitoring code
- Improved logging configuration with library suppression
2025-11-28 13:19:03 -03:00
|
|
|
console = ["dep:crossterm", "dep:ratatui", "monitoring"]
|
2025-11-22 01:27:29 -03:00
|
|
|
|
2025-11-22 22:54:45 -03:00
|
|
|
# ===== CORE INTEGRATIONS =====
|
|
|
|
|
vectordb = ["dep:qdrant-client"]
|
|
|
|
|
llm = []
|
|
|
|
|
nvidia = []
|
2025-11-22 01:27:29 -03:00
|
|
|
|
2025-11-22 22:54:45 -03:00
|
|
|
# ===== COMMUNICATION CHANNELS =====
|
2025-11-27 23:10:43 -03:00
|
|
|
email = ["dep:imap", "dep:lettre", "dep:mailparse", "dep:native-tls"]
|
2025-11-22 22:54:45 -03:00
|
|
|
whatsapp = []
|
2026-01-06 22:56:35 -03:00
|
|
|
telegram = []
|
2025-11-22 22:54:45 -03:00
|
|
|
instagram = []
|
|
|
|
|
msteams = []
|
2025-10-16 16:49:23 -03:00
|
|
|
|
2025-11-22 22:54:45 -03:00
|
|
|
# ===== PRODUCTIVITY FEATURES =====
|
|
|
|
|
chat = []
|
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
|
|
|
drive = ["dep:aws-config", "dep:aws-sdk-s3", "dep:pdf-extract", "dep:zip", "dep:downloader", "dep:mime_guess", "dep:flate2", "dep:tar"]
|
2025-11-22 22:54:45 -03:00
|
|
|
tasks = ["dep:cron"]
|
2025-11-28 09:27:29 -03:00
|
|
|
calendar = []
|
2025-11-22 22:54:45 -03:00
|
|
|
meet = ["dep:livekit"]
|
|
|
|
|
mail = ["email"]
|
|
|
|
|
|
|
|
|
|
# ===== ENTERPRISE FEATURES =====
|
|
|
|
|
compliance = ["dep:csv"]
|
2025-12-24 10:31:18 -03:00
|
|
|
attendance = ["drive"]
|
2025-11-22 22:54:45 -03:00
|
|
|
directory = []
|
|
|
|
|
weba = []
|
2025-11-30 15:07:29 -03:00
|
|
|
timeseries = []
|
2025-11-22 22:54:45 -03:00
|
|
|
|
|
|
|
|
# ===== OPTIONAL INFRASTRUCTURE =====
|
2025-12-05 12:09:02 -03:00
|
|
|
cache = ["dep:redis"]
|
2025-11-22 22:54:45 -03:00
|
|
|
monitoring = ["dep:sysinfo"]
|
|
|
|
|
automation = ["dep:rhai"]
|
|
|
|
|
grpc = ["dep:tonic"]
|
|
|
|
|
progress-bars = ["dep:indicatif"]
|
Fix tasks UI, WebSocket progress, memory monitoring, and app generator
Tasks UI fixes:
- Fix task list to query auto_tasks table instead of tasks table
- Fix task detail endpoint to use UUID binding for auto_tasks query
- Add proper filter handling: complete, active, awaiting, paused, blocked
- Add TaskStats fields: awaiting, paused, blocked, time_saved
- Add /api/tasks/time-saved endpoint
- Add count-all to stats HTML response
App generator improvements:
- Add AgentActivity struct for detailed terminal-style progress
- Add emit_activity method for rich progress events
- Add detailed logging for LLM calls with timing
- Track files_written, tables_synced, bytes_generated
Memory and performance:
- Add memory_monitor module for tracking RSS and thread activity
- Skip 0-byte files in drive monitor and document processor
- Change DRIVE_MONITOR checking logs from info to trace
- Remove unused profile_section macro
WebSocket progress:
- Ensure TaskProgressEvent includes activity field
- Add with_activity builder method
2025-12-30 22:42:32 -03:00
|
|
|
jemalloc = ["dep:tikv-jemallocator", "dep:tikv-jemalloc-ctl"]
|
2025-11-22 22:54:45 -03:00
|
|
|
|
|
|
|
|
# ===== META FEATURES (BUNDLES) =====
|
|
|
|
|
full = [
|
2025-12-02 21:09:43 -03:00
|
|
|
"console",
|
2025-11-30 15:07:29 -03:00
|
|
|
"vectordb", "llm", "nvidia", "timeseries",
|
2025-11-22 22:54:45 -03:00
|
|
|
"email", "whatsapp", "instagram", "msteams",
|
|
|
|
|
"chat", "drive", "tasks", "calendar", "meet", "mail",
|
|
|
|
|
"compliance", "attendance", "directory", "weba",
|
2025-12-05 12:09:02 -03:00
|
|
|
"cache", "monitoring", "automation", "grpc", "progress-bars"
|
2025-11-22 22:54:45 -03:00
|
|
|
]
|
|
|
|
|
|
2025-12-05 12:09:02 -03:00
|
|
|
communications = ["email", "whatsapp", "instagram", "msteams", "chat", "cache"]
|
|
|
|
|
productivity = ["chat", "drive", "tasks", "calendar", "meet", "mail", "cache"]
|
2025-11-30 15:07:29 -03:00
|
|
|
enterprise = ["compliance", "attendance", "directory", "llm", "vectordb", "monitoring", "timeseries"]
|
2025-12-02 21:09:43 -03:00
|
|
|
minimal = ["chat"]
|
|
|
|
|
lightweight = ["chat", "drive", "tasks"]
|
2025-11-22 01:27:29 -03:00
|
|
|
|
2025-10-06 10:30:17 -03:00
|
|
|
[dependencies]
|
2025-11-22 22:54:45 -03:00
|
|
|
# === CORE RUNTIME (Always Required) ===
|
2025-10-28 14:53:45 -03:00
|
|
|
aes-gcm = "0.10"
|
2025-10-06 10:30:17 -03:00
|
|
|
anyhow = "1.0"
|
2025-10-28 14:53:45 -03:00
|
|
|
argon2 = "0.5"
|
2025-11-11 09:42:52 -03:00
|
|
|
async-lock = "2.8.0"
|
2025-10-06 10:30:17 -03:00
|
|
|
async-stream = "0.3"
|
|
|
|
|
async-trait = "0.1"
|
2025-11-29 17:27:13 -03:00
|
|
|
axum = { version = "0.7.5", features = ["ws", "multipart", "macros"] }
|
2025-12-02 21:09:43 -03:00
|
|
|
axum-server = { version = "0.7", features = ["tls-rustls"] }
|
2025-10-06 10:30:17 -03:00
|
|
|
base64 = "0.22"
|
|
|
|
|
bytes = "1.8"
|
|
|
|
|
chrono = { version = "0.4", features = ["serde"] }
|
2025-11-11 09:42:52 -03:00
|
|
|
color-eyre = "0.6.5"
|
|
|
|
|
diesel = { version = "2.1", features = ["postgres", "uuid", "chrono", "serde_json", "r2d2"] }
|
2025-11-12 12:48:06 -03:00
|
|
|
diesel_migrations = "2.1.0"
|
feat(security): Complete security infrastructure implementation
SECURITY MODULES ADDED:
- security/auth.rs: Full RBAC with roles (Anonymous, User, Moderator, Admin, SuperAdmin, Service, Bot, BotOwner, BotOperator, BotViewer) and permissions
- security/cors.rs: Hardened CORS (no wildcard in production, env-based config)
- security/panic_handler.rs: Panic catching middleware with safe 500 responses
- security/path_guard.rs: Path traversal protection, null byte prevention
- security/request_id.rs: UUID request tracking with correlation IDs
- security/error_sanitizer.rs: Sensitive data redaction from responses
- security/zitadel_auth.rs: Zitadel token introspection and role mapping
- security/sql_guard.rs: SQL injection prevention with table whitelist
- security/command_guard.rs: Command injection prevention
- security/secrets.rs: Zeroizing secret management
- security/validation.rs: Input validation utilities
- security/rate_limiter.rs: Rate limiting with governor crate
- security/headers.rs: Security headers (CSP, HSTS, X-Frame-Options)
MAIN.RS UPDATES:
- Replaced tower_http::cors::Any with hardened create_cors_layer()
- Added panic handler middleware
- Added request ID tracking middleware
- Set global panic hook
SECURITY STATUS:
- 0 unwrap() in production code
- 0 panic! in production code
- 0 unsafe blocks
- cargo audit: PASS (no vulnerabilities)
- Estimated completion: ~98%
Remaining: Wire auth middleware to handlers, audit logs for sensitive data
2025-12-28 19:29:18 -03:00
|
|
|
dirs = "5.0"
|
2025-10-11 12:29:03 -03:00
|
|
|
dotenvy = "0.15"
|
2025-10-06 10:30:17 -03:00
|
|
|
env_logger = "0.11"
|
|
|
|
|
futures = "0.3"
|
|
|
|
|
futures-util = "0.3"
|
2025-12-31 12:38:35 -03:00
|
|
|
tokio-util = { version = "0.7", features = ["io", "compat"] }
|
2025-11-22 22:54:45 -03:00
|
|
|
hex = "0.4"
|
2025-10-30 12:35:25 -03:00
|
|
|
hmac = "0.12.1"
|
feat(security): Complete security infrastructure implementation
SECURITY MODULES ADDED:
- security/auth.rs: Full RBAC with roles (Anonymous, User, Moderator, Admin, SuperAdmin, Service, Bot, BotOwner, BotOperator, BotViewer) and permissions
- security/cors.rs: Hardened CORS (no wildcard in production, env-based config)
- security/panic_handler.rs: Panic catching middleware with safe 500 responses
- security/path_guard.rs: Path traversal protection, null byte prevention
- security/request_id.rs: UUID request tracking with correlation IDs
- security/error_sanitizer.rs: Sensitive data redaction from responses
- security/zitadel_auth.rs: Zitadel token introspection and role mapping
- security/sql_guard.rs: SQL injection prevention with table whitelist
- security/command_guard.rs: Command injection prevention
- security/secrets.rs: Zeroizing secret management
- security/validation.rs: Input validation utilities
- security/rate_limiter.rs: Rate limiting with governor crate
- security/headers.rs: Security headers (CSP, HSTS, X-Frame-Options)
MAIN.RS UPDATES:
- Replaced tower_http::cors::Any with hardened create_cors_layer()
- Added panic handler middleware
- Added request ID tracking middleware
- Set global panic hook
SECURITY STATUS:
- 0 unwrap() in production code
- 0 panic! in production code
- 0 unsafe blocks
- cargo audit: PASS (no vulnerabilities)
- Estimated completion: ~98%
Remaining: Wire auth middleware to handlers, audit logs for sensitive data
2025-12-28 19:29:18 -03:00
|
|
|
hyper = { version = "1.4", features = ["full"] }
|
|
|
|
|
hyper-rustls = { version = "0.27", features = ["http2"] }
|
2025-10-06 10:30:17 -03:00
|
|
|
log = "0.4"
|
|
|
|
|
num-format = "0.4"
|
2025-11-11 09:42:52 -03:00
|
|
|
once_cell = "1.18.0"
|
2025-10-28 14:53:45 -03:00
|
|
|
rand = "0.9.2"
|
2025-10-06 10:30:17 -03:00
|
|
|
regex = "1.11"
|
2025-11-29 16:29:28 -03:00
|
|
|
reqwest = { version = "0.12", features = ["json", "stream", "multipart", "rustls-tls", "rustls-tls-native-roots"] }
|
2025-10-06 10:30:17 -03:00
|
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
|
|
|
serde_json = "1.0"
|
2025-11-30 23:48:08 -03:00
|
|
|
toml = "0.8"
|
2025-10-28 14:53:45 -03:00
|
|
|
sha2 = "0.10.9"
|
2025-10-06 10:30:17 -03:00
|
|
|
tokio = { version = "1.41", features = ["full"] }
|
|
|
|
|
tokio-stream = "0.1"
|
2025-11-29 17:27:13 -03:00
|
|
|
tower = "0.4"
|
|
|
|
|
tower-http = { version = "0.5", features = ["cors", "fs", "trace"] }
|
2025-10-06 10:30:17 -03:00
|
|
|
tracing = "0.1"
|
2025-11-29 16:29:28 -03:00
|
|
|
askama = "0.12"
|
|
|
|
|
askama_axum = "0.4"
|
2025-10-06 10:30:17 -03:00
|
|
|
tracing-subscriber = { version = "0.3", features = ["fmt"] }
|
|
|
|
|
urlencoding = "2.1"
|
2025-12-23 15:52:35 -03:00
|
|
|
uuid = { version = "1.11", features = ["serde", "v4", "v5"] }
|
2025-11-22 22:54:45 -03:00
|
|
|
|
2025-11-29 16:29:28 -03:00
|
|
|
# === TLS/SECURITY DEPENDENCIES ===
|
2025-12-07 02:13:28 -03:00
|
|
|
rustls = { version = "0.23", default-features = false, features = ["ring", "std", "tls12"] }
|
|
|
|
|
tokio-rustls = "0.26"
|
2025-12-03 16:05:30 -03:00
|
|
|
rcgen = { version = "0.14", features = ["pem"] }
|
2025-11-29 16:29:28 -03:00
|
|
|
x509-parser = "0.15"
|
feat(security): Complete security infrastructure implementation
SECURITY MODULES ADDED:
- security/auth.rs: Full RBAC with roles (Anonymous, User, Moderator, Admin, SuperAdmin, Service, Bot, BotOwner, BotOperator, BotViewer) and permissions
- security/cors.rs: Hardened CORS (no wildcard in production, env-based config)
- security/panic_handler.rs: Panic catching middleware with safe 500 responses
- security/path_guard.rs: Path traversal protection, null byte prevention
- security/request_id.rs: UUID request tracking with correlation IDs
- security/error_sanitizer.rs: Sensitive data redaction from responses
- security/zitadel_auth.rs: Zitadel token introspection and role mapping
- security/sql_guard.rs: SQL injection prevention with table whitelist
- security/command_guard.rs: Command injection prevention
- security/secrets.rs: Zeroizing secret management
- security/validation.rs: Input validation utilities
- security/rate_limiter.rs: Rate limiting with governor crate
- security/headers.rs: Security headers (CSP, HSTS, X-Frame-Options)
MAIN.RS UPDATES:
- Replaced tower_http::cors::Any with hardened create_cors_layer()
- Added panic handler middleware
- Added request ID tracking middleware
- Set global panic hook
SECURITY STATUS:
- 0 unwrap() in production code
- 0 panic! in production code
- 0 unsafe blocks
- cargo audit: PASS (no vulnerabilities)
- Estimated completion: ~98%
Remaining: Wire auth middleware to handlers, audit logs for sensitive data
2025-12-28 19:29:18 -03:00
|
|
|
rustls-native-certs = "0.8"
|
2025-11-29 16:29:28 -03:00
|
|
|
webpki-roots = "0.25"
|
Add documentation infrastructure and certificate pinning
- Add mdBook configuration (book.toml) for documentation
- Create new docs style guide appendix for conversation examples
- Add WhatsApp-style chat CSS for consistent doc formatting
- Replace flow diagram references with screen mockup SVGs
- Create comprehensive SVG interface mockups for all Suite apps:
- Main suite layout and individual app screens
- Analytics, Calendar, Chat, Compliance, Designer
- Drive, Mail, Meet, Paper, Player, Research
- Sources, Tasks interfaces
- Implement certificate pinning module (cert_pinning.rs) with:
- SPKI fingerprint validation using SHA-256
- Support for primary and backup pins
- Pin rotation with expiration tracking
- Report-only mode for testing
- Validation caching for performance
- Add ring crate dependency for cryptographic operations
2025-12-01 16:15:52 -03:00
|
|
|
ring = "0.17"
|
2025-11-29 16:29:28 -03:00
|
|
|
time = { version = "0.3", features = ["formatting", "parsing"] }
|
|
|
|
|
jsonwebtoken = "9.3"
|
|
|
|
|
tower-cookies = "0.10"
|
|
|
|
|
|
2025-11-22 22:54:45 -03:00
|
|
|
# === FEATURE-SPECIFIC DEPENDENCIES (Optional) ===
|
|
|
|
|
|
|
|
|
|
# Email Integration (email feature)
|
|
|
|
|
imap = { version = "3.0.0-alpha.15", optional = true }
|
|
|
|
|
lettre = { version = "0.11", features = ["smtp-transport", "builder", "tokio1", "tokio1-native-tls"], optional = true }
|
|
|
|
|
mailparse = { version = "0.15", optional = true }
|
2025-11-27 23:10:43 -03:00
|
|
|
native-tls = { version = "0.2", optional = true }
|
2025-11-22 22:54:45 -03:00
|
|
|
|
|
|
|
|
# Video Meetings (meet feature)
|
|
|
|
|
livekit = { version = "0.7", optional = true }
|
|
|
|
|
|
|
|
|
|
# Vector Database (vectordb feature)
|
|
|
|
|
qdrant-client = { version = "1.12", optional = true }
|
|
|
|
|
|
|
|
|
|
# File Storage & Drive (drive feature)
|
2025-12-24 10:31:18 -03:00
|
|
|
aws-config = { version = "1.8.8", features = ["behavior-version-latest"], optional = true }
|
2025-11-22 22:54:45 -03:00
|
|
|
aws-sdk-s3 = { version = "1.109.0", features = ["behavior-version-latest"], optional = true }
|
|
|
|
|
pdf-extract = { version = "0.10.0", optional = true }
|
|
|
|
|
zip = { version = "2.2", optional = true }
|
|
|
|
|
downloader = { version = "0.2", optional = true }
|
|
|
|
|
mime_guess = { version = "2.0", optional = true }
|
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
|
|
|
flate2 = { version = "1.0", optional = true }
|
|
|
|
|
tar = { version = "0.4", optional = true }
|
2025-11-22 22:54:45 -03:00
|
|
|
|
|
|
|
|
# Task Management (tasks feature)
|
|
|
|
|
cron = { version = "0.15.0", optional = true }
|
|
|
|
|
|
|
|
|
|
# Automation & Scripting (automation feature)
|
2025-12-05 16:43:14 -03:00
|
|
|
rhai = { git = "https://github.com/therealprof/rhai.git", branch = "features/use-web-time", features = ["sync"], optional = true }
|
2025-11-22 22:54:45 -03:00
|
|
|
|
|
|
|
|
# Compliance & Reporting (compliance feature)
|
|
|
|
|
csv = { version = "1.3", optional = true }
|
|
|
|
|
|
|
|
|
|
# Console/TUI (console feature)
|
|
|
|
|
crossterm = { version = "0.29.0", optional = true }
|
2025-12-23 18:40:58 -03:00
|
|
|
ratatui = { version = "0.29", optional = true }
|
2025-11-22 22:54:45 -03:00
|
|
|
|
2025-12-03 16:05:30 -03:00
|
|
|
# QR Code Generation (using png directly to avoid image's ravif/paste dependency)
|
|
|
|
|
png = "0.18"
|
|
|
|
|
qrcode = { version = "0.14", default-features = false }
|
2025-11-30 22:33:54 -03:00
|
|
|
|
|
|
|
|
# Excel/Spreadsheet Support
|
|
|
|
|
calamine = "0.26"
|
|
|
|
|
rust_xlsxwriter = "0.79"
|
|
|
|
|
|
|
|
|
|
# Error handling
|
|
|
|
|
thiserror = "2.0"
|
|
|
|
|
|
2025-12-05 12:09:02 -03:00
|
|
|
# Caching/Sessions (cache feature)
|
2025-11-22 22:54:45 -03:00
|
|
|
redis = { version = "0.27", features = ["tokio-comp"], optional = true }
|
|
|
|
|
|
|
|
|
|
# System Monitoring (monitoring feature)
|
|
|
|
|
sysinfo = { version = "0.37.2", optional = true }
|
|
|
|
|
|
|
|
|
|
# Networking/gRPC (grpc feature)
|
|
|
|
|
tonic = { version = "0.14.2", features = ["transport"], optional = true }
|
|
|
|
|
|
|
|
|
|
# UI Enhancement (progress-bars feature)
|
|
|
|
|
indicatif = { version = "0.18.0", optional = true }
|
|
|
|
|
smartstring = "1.0.1"
|
Fix tasks UI, WebSocket progress, memory monitoring, and app generator
Tasks UI fixes:
- Fix task list to query auto_tasks table instead of tasks table
- Fix task detail endpoint to use UUID binding for auto_tasks query
- Add proper filter handling: complete, active, awaiting, paused, blocked
- Add TaskStats fields: awaiting, paused, blocked, time_saved
- Add /api/tasks/time-saved endpoint
- Add count-all to stats HTML response
App generator improvements:
- Add AgentActivity struct for detailed terminal-style progress
- Add emit_activity method for rich progress events
- Add detailed logging for LLM calls with timing
- Track files_written, tables_synced, bytes_generated
Memory and performance:
- Add memory_monitor module for tracking RSS and thread activity
- Skip 0-byte files in drive monitor and document processor
- Change DRIVE_MONITOR checking logs from info to trace
- Remove unused profile_section macro
WebSocket progress:
- Ensure TaskProgressEvent includes activity field
- Add with_activity builder method
2025-12-30 22:42:32 -03:00
|
|
|
|
|
|
|
|
# Memory allocator (jemalloc feature)
|
|
|
|
|
tikv-jemallocator = { version = "0.6", optional = true }
|
|
|
|
|
tikv-jemalloc-ctl = { version = "0.6", features = ["stats"], optional = true }
|
2025-11-22 22:54:45 -03:00
|
|
|
scopeguard = "1.2.0"
|
|
|
|
|
|
2025-12-03 22:23:30 -03:00
|
|
|
# Vault secrets management
|
|
|
|
|
vaultrs = "0.7"
|
|
|
|
|
|
|
|
|
|
# Calendar standards (RFC 5545)
|
|
|
|
|
icalendar = "0.17"
|
|
|
|
|
|
|
|
|
|
# Layered configuration
|
|
|
|
|
figment = { version = "0.10", features = ["toml", "env", "json"] }
|
|
|
|
|
|
|
|
|
|
# Rate limiting
|
|
|
|
|
governor = "0.10"
|
|
|
|
|
|
Bootstrap started! 6.1.0
- Add rss and scraper dependencies for web data keywords
- Add SMS keyword with priority support (low, normal, high, urgent)
- Add web_data keywords: RSS, SCRAPE, SCRAPE_ALL, SCRAPE_TABLE, SCRAPE_LINKS, SCRAPE_IMAGES
- Add ai_tools keywords: TRANSLATE, OCR, SENTIMENT, CLASSIFY
- Improve LLM server health check with better diagnostics and increased timeout
- Fix compilation errors and warnings
- Register SMS keywords in BASIC engine
2025-12-10 18:22:02 -03:00
|
|
|
# RSS feed parsing
|
|
|
|
|
rss = "2.0"
|
|
|
|
|
|
|
|
|
|
# HTML parsing/web scraping
|
2025-12-10 18:29:34 -03:00
|
|
|
scraper = "0.25"
|
2025-12-21 23:40:43 -03:00
|
|
|
walkdir = "2.5.0"
|
2025-12-31 12:38:35 -03:00
|
|
|
hyper-util = { version = "0.1.19", features = ["client-legacy", "tokio"] }
|
|
|
|
|
http-body-util = "0.1.3"
|
Bootstrap started! 6.1.0
- Add rss and scraper dependencies for web data keywords
- Add SMS keyword with priority support (low, normal, high, urgent)
- Add web_data keywords: RSS, SCRAPE, SCRAPE_ALL, SCRAPE_TABLE, SCRAPE_LINKS, SCRAPE_IMAGES
- Add ai_tools keywords: TRANSLATE, OCR, SENTIMENT, CLASSIFY
- Improve LLM server health check with better diagnostics and increased timeout
- Fix compilation errors and warnings
- Register SMS keywords in BASIC engine
2025-12-10 18:22:02 -03:00
|
|
|
|
2025-11-22 22:54:45 -03:00
|
|
|
[dev-dependencies]
|
|
|
|
|
mockito = "1.7.0"
|
|
|
|
|
tempfile = "3"
|
2025-10-26 00:02:19 -03:00
|
|
|
|
2025-11-22 01:27:29 -03:00
|
|
|
# === SECURITY AND CODE QUALITY CONFIGURATION ===
|
2025-12-23 15:52:35 -03:00
|
|
|
[lints]
|
|
|
|
|
workspace = true
|