Update: General project updates

This commit is contained in:
Rodrigo Rodriguez (Pragmatismo) 2025-12-06 11:09:12 -03:00
parent e5fd4bd3fc
commit c26fb1e3a2
370 changed files with 2575 additions and 535 deletions

View file

@ -211,7 +211,7 @@ TALK "Hello, world!"
name = HEAR name = HEAR
TALK "Welcome, " + name TALK "Welcome, " + name
' Error handling (VB-style) ' Error handling
ON ERROR RESUME NEXT ON ERROR RESUME NEXT
result = SOME_OPERATION() result = SOME_OPERATION()
IF ERROR THEN IF ERROR THEN

View file

@ -103,7 +103,7 @@ DELETE "temp/report.pdf"
## ✅ IMPLEMENTED: Error Handling ## ✅ IMPLEMENTED: Error Handling
### ON ERROR RESUME NEXT (VB-Style) ### ON ERROR RESUME NEXT (BASIC-style)
Now fully implemented in `src/basic/keywords/errors/on_error.rs`: Now fully implemented in `src/basic/keywords/errors/on_error.rs`:
@ -175,22 +175,25 @@ website-max-depth, website-max-pages
## 📋 REMAINING TASKS ## 📋 REMAINING TASKS
### Priority 1 - Documentation Updates ### Priority 1 - Documentation Updates
- [ ] Update all model names to generic/current versions (17 files) - [x] Update all model names to generic/current versions (17 files)
- [ ] Update keyword examples to use spaces not underscores - [x] Update keyword examples to use spaces not underscores
- [ ] Fix `SEND EMAIL` examples to use `SEND MAIL` syntax - [x] Fix `SEND EMAIL` examples to use `SEND MAIL` syntax
- [ ] Document unified `DELETE` keyword behavior - [x] Document unified `DELETE` keyword behavior (already documented in `keyword-delete.md`)
- [ ] Add `ON ERROR RESUME NEXT` to error handling docs - [x] Add `ON ERROR RESUME NEXT` to error handling docs (created `keyword-on-error.md`)
### Priority 2 - New Documentation Needed ### Priority 2 - New Documentation Needed
- [ ] Full config.csv parameter reference - [x] Full config.csv parameter reference (expanded `parameters.md` with all SMS, WhatsApp params)
- [ ] SMS provider configuration (Twilio, Vonage, etc.) - [x] SMS provider configuration (created `sms-providers.md` - Twilio, AWS SNS, Vonage, MessageBird)
- [ ] Teams/WhatsApp channel setup - [x] Teams/WhatsApp channel setup (created `teams-channel.md` and `whatsapp-channel.md`)
- [ ] SOAP authentication configuration - [x] SOAP authentication configuration (expanded `keyword-soap.md` with WS-Security, OAuth, certs)
### Priority 3 - Consider Implementing ### Priority 3 - Structure Cleanup
- [ ] `POST url, data WITH headers` - HTTP with inline headers - [x] Renamed folders with proper numbering (01-introduction, 02-templates, etc.)
- [ ] `GET url WITH params` - Query parameters support - [x] Removed VB/Visual Basic references (now BASIC only)
- [ ] `WITH ... END WITH` blocks for object initialization - [x] Deleted empty `04-ui-legacy` folder
- [x] Deleted `17-appendix-env-vars` (only VAULT_* vars are real, rest was lies)
- [x] Fixed vbs code blocks to use `basic` syntax
- [x] Updated SUMMARY.md with new folder paths
--- ---
@ -212,11 +215,19 @@ website-max-depth, website-max-pages
| Category | Count | | Category | Count |
|----------|-------| |----------|-------|
| Files with old model names | 17 | | Files with old model names | 0 (fixed) |
| Stub files completed | 8 | | Stub files completed | 8 |
| Keywords fixed (underscore→space) | 6 | | Keywords fixed (underscore→space) | 10 |
| Error handling keywords added | 7 | | SEND EMAIL → SEND MAIL | 9 files fixed |
| Config params documented | 30+ | | Error handling keywords added | 8 |
| Error handling doc created | `keyword-on-error.md` |
| Config params documented | 50+ |
| New channel docs created | `teams-channel.md`, `whatsapp-channel.md` |
| New provider docs created | `sms-providers.md` |
| SOAP auth expanded | WS-Security, OAuth, certificates |
| VB references removed | All files now use BASIC only |
| Folders renamed | `01-introduction`, `02-templates`, etc. |
| Deleted trash | `04-ui-legacy`, `17-appendix-env-vars` |
--- ---

View file

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

View file

Before

Width:  |  Height:  |  Size: 9 KiB

After

Width:  |  Height:  |  Size: 9 KiB

View file

Before

Width:  |  Height:  |  Size: 7.9 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

View file

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 6.9 KiB

View file

Before

Width:  |  Height:  |  Size: 9.1 KiB

After

Width:  |  Height:  |  Size: 9.1 KiB

View file

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View file

Before

Width:  |  Height:  |  Size: 8.3 KiB

After

Width:  |  Height:  |  Size: 8.3 KiB

View file

@ -22,7 +22,7 @@ These identity settings matter because they shape user expectations. A bot named
## Language Model Settings ## Language Model Settings
LLM configuration represents perhaps the most important settings in your bot. The llm_provider parameter specifies which AI service powers your bot, supporting options like OpenAI, Azure OpenAI, or local model servers. The llm_model parameter identifies the specific model to use, such as GPT-4 or Claude 3. LLM configuration represents perhaps the most important settings in your bot. The llm_provider parameter specifies which AI service powers your bot, supporting options like OpenAI, Azure OpenAI, or local model servers. The llm_model parameter identifies the specific model to use, such as GPT-5, Claude Sonnet 4.5, or a local GGUF model.
Response characteristics are controlled through several parameters. The temperature setting affects response creativity, with lower values producing more focused and deterministic outputs while higher values allow more varied and creative responses. The max_tokens parameter limits response length, preventing runaway generation and managing costs for cloud-based providers. Response characteristics are controlled through several parameters. The temperature setting affects response creativity, with lower values producing more focused and deterministic outputs while higher values allow more varied and creative responses. The max_tokens parameter limits response length, preventing runaway generation and managing costs for cloud-based providers.

View file

@ -356,8 +356,8 @@ insights = LLM "Analyze this data and provide 3-5 key insights: " + JSON(report_
errorRate = SUM(errors, "count") / SUM(messages, "count") * 100 errorRate = SUM(errors, "count") / SUM(messages, "count") * 100
IF errorRate > 5 THEN IF errorRate > 5 THEN
SEND EMAIL admin_email, "High Error Rate Alert", SEND MAIL admin_email, "High Error Rate Alert",
"Error rate is " + errorRate + "%, above 5% threshold." "Error rate is " + errorRate + "%, above 5% threshold.", []
END IF END IF
``` ```

View file

@ -266,7 +266,7 @@ previous = GET BOT MEMORY "last_content"
current = GET "https://news.example.com" current = GET "https://news.example.com"
IF current <> previous THEN IF current <> previous THEN
SEND EMAIL "admin@company.com", "Website Changed", "The monitored page has been updated." SEND MAIL "admin@company.com", "Website Changed", "The monitored page has been updated.", []
SET BOT MEMORY "last_content", current SET BOT MEMORY "last_content", current
END IF END IF
``` ```

View file

@ -375,8 +375,8 @@ proposal = GENERATE FROM TEMPLATE "proposal_template.docx" WITH {
"valid_until": quote.valid_until "valid_until": quote.valid_until
} }
SEND EMAIL contact.email, "Proposal: " + opportunity.name, SEND MAIL contact.email, "Proposal: " + opportunity.name,
"Please find attached our proposal.", ATTACHMENT proposal "Please find attached our proposal.", [proposal]
``` ```
--- ---

View file

@ -262,7 +262,7 @@ END IF
' Email case summary to team ' Email case summary to team
summary = LLM "Summarize the key points of this case in 3 paragraphs: " + text summary = LLM "Summarize the key points of this case in 3 paragraphs: " + text
SEND EMAIL "legal-team@firm.com", "Case " + cod + " Summary", summary SEND MAIL "legal-team@firm.com", "Case " + cod + " Summary", summary, []
TALK "Summary sent to legal team." TALK "Summary sent to legal team."
``` ```

View file

@ -140,7 +140,7 @@ Configure in `llm-server.gbot/config.csv`:
| Parameter | Description | Example | | Parameter | Description | Example |
|-----------|-------------|---------| |-----------|-------------|---------|
| `LLM Provider` | AI model provider | `openai` | | `LLM Provider` | AI model provider | `openai` |
| `LLM Model` | Specific model | `gpt-4` | | `LLM Model` | Specific model | `gpt-5` |
| `Max Tokens` | Response length limit | `500` | | `Max Tokens` | Response length limit | `500` |
| `Temperature` | Response creativity | `0.3` | | `Temperature` | Response creativity | `0.3` |
| `API Mode` | Enable API mode | `true` | | `API Mode` | Enable API mode | `true` |
@ -369,7 +369,7 @@ END SYSTEM PROMPT
```bash ```bash
LLM_PROVIDER=openai LLM_PROVIDER=openai
LLM_API_KEY=sk-... LLM_API_KEY=sk-...
LLM_MODEL=gpt-4 LLM_MODEL=gpt-5
API_RATE_LIMIT=100 API_RATE_LIMIT=100
SESSION_TIMEOUT=3600 SESSION_TIMEOUT=3600
``` ```

View file

@ -250,7 +250,7 @@ PARAM message AS STRING DESCRIPTION "Email body content"
DESCRIPTION "Send an email notification to a customer" DESCRIPTION "Send an email notification to a customer"
SEND EMAIL recipient, subject, message SEND MAIL recipient, subject, message, []
WITH result WITH result
sent = true sent = true
@ -332,7 +332,7 @@ Configure in `llm-tools.gbot/config.csv`:
| Parameter | Description | Example | | Parameter | Description | Example |
|-----------|-------------|---------| |-----------|-------------|---------|
| `LLM Provider` | AI provider | `openai` | | `LLM Provider` | AI provider | `openai` |
| `LLM Model` | Model for tool calls | `gpt-4` | | `LLM Model` | Model for tool calls | `gpt-4o` |
| `Tool Timeout` | Max tool execution time | `30` | | `Tool Timeout` | Max tool execution time | `30` |
| `Max Tool Calls` | Limit per conversation | `10` | | `Max Tool Calls` | Limit per conversation | `10` |

View file

@ -339,7 +339,7 @@ END IF
FOR EACH contact IN contacts FOR EACH contact IN contacts
personalized_body = REPLACE(body, "{name}", contact.name) personalized_body = REPLACE(body, "{name}", contact.name)
SEND EMAIL contact.email, subject, personalized_body SEND MAIL contact.email, subject, personalized_body, []
WITH log WITH log
campaign_id = campaign_id campaign_id = campaign_id

View file

@ -258,7 +258,7 @@ SWITCH notify
CASE "chat" CASE "chat"
' Default chat notification ' Default chat notification
CASE "email" CASE "email"
SEND EMAIL email, "Reminder: " + subject, message SEND MAIL email, "Reminder: " + subject, message, []
CASE "sms" CASE "sms"
SEND SMS phone, "Reminder: " + subject SEND SMS phone, "Reminder: " + subject
CASE "slack" CASE "slack"
@ -302,7 +302,7 @@ PARAM priority AS STRING LIKE "high" DESCRIPTION "Priority: low, medium, high" O
IF priority = "high" THEN IF priority = "high" THEN
' Send via multiple channels ' Send via multiple channels
SEND EMAIL email, "🔴 URGENT: " + subject, message SEND MAIL email, "🔴 URGENT: " + subject, message, []
SEND SMS phone, "URGENT: " + subject SEND SMS phone, "URGENT: " + subject
END IF END IF
``` ```

View file

@ -133,7 +133,7 @@ Edit `template-name.gbot/config.csv`:
name,value name,value
bot-name,My Custom Bot bot-name,My Custom Bot
welcome-message,Hello! How can I help? welcome-message,Hello! How can I help?
llm-model,gpt-4 llm-model,model.gguf
temperature,0.7 temperature,0.7
``` ```

View file

Before

Width:  |  Height:  |  Size: 8.3 KiB

After

Width:  |  Height:  |  Size: 8.3 KiB

View file

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

View file

Before

Width:  |  Height:  |  Size: 7.1 KiB

After

Width:  |  Height:  |  Size: 7.1 KiB

View file

Before

Width:  |  Height:  |  Size: 8.7 KiB

After

Width:  |  Height:  |  Size: 8.7 KiB

View file

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View file

Before

Width:  |  Height:  |  Size: 7.9 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

View file

Before

Width:  |  Height:  |  Size: 6.7 KiB

After

Width:  |  Height:  |  Size: 6.7 KiB

View file

@ -38,7 +38,7 @@ Each application in the Suite has its own dedicated documentation with:
| App | Description | Documentation | | App | Description | Documentation |
|-----|-------------|---------------| |-----|-------------|---------------|
| 🎨 **Designer** | Visual dialog builder (VB6-style) | [designer.md](./designer.md) | | 🎨 **Designer** | Visual dialog builder | [designer.md](./designer.md) |
| 📚 **Sources** | Prompts, templates, and models | [sources.md](./sources.md) | | 📚 **Sources** | Prompts, templates, and models | [sources.md](./sources.md) |
| 🛡️ **Compliance** | Security scanner | [compliance.md](./compliance.md) | | 🛡️ **Compliance** | Security scanner | [compliance.md](./compliance.md) |

View file

@ -397,11 +397,9 @@ report = GENERATE REPORT "Weekly Metrics" FOR "last 7 days"
recipients = ["ceo@company.com", "team@company.com"] recipients = ["ceo@company.com", "team@company.com"]
FOR EACH email IN recipients FOR EACH recipient IN recipients
SEND EMAIL TO email SEND MAIL recipient, "Weekly Metrics Report - " + TODAY,
SUBJECT "Weekly Metrics Report - " + TODAY "Please find attached the weekly metrics report.", [report.pdf]
BODY "Please find attached the weekly metrics report."
ATTACHMENT report.pdf
NEXT NEXT
LOG "Weekly report sent to " + COUNT(recipients) + " recipients" LOG "Weekly report sent to " + COUNT(recipients) + " recipients"

View file

@ -52,7 +52,7 @@ Click the **⚙️** icon on any bot to configure:
| Setting | Description | | Setting | Description |
|---------|-------------| |---------|-------------|
| **Provider** | AI provider (OpenAI, Azure, etc.) | | **Provider** | AI provider (OpenAI, Azure, etc.) |
| **Model** | Model to use (GPT-4, etc.) | | **Model** | Model to use (GPT-5, Claude Sonnet 4.5, local GGUF, etc.) |
| **Temperature** | Creativity level (0 = focused, 1 = creative) | | **Temperature** | Creativity level (0 = focused, 1 = creative) |
| **Max Tokens** | Maximum response length | | **Max Tokens** | Maximum response length |
| **System Prompt** | Bot personality and instructions | | **System Prompt** | Bot personality and instructions |

View file

@ -595,7 +595,7 @@ Click **Export** to download reports as:
### What Designer Does ### What Designer Does
Designer lets you create bot conversations visually - like VB6 form designer, but for conversations. Drag and drop blocks to build dialogs without coding. Designer lets you create bot conversations visually. Drag and drop blocks to build dialogs without coding.
### The Designer Interface ### The Designer Interface

View file

Before

Width:  |  Height:  |  Size: 8.8 KiB

After

Width:  |  Height:  |  Size: 8.8 KiB

View file

@ -22,7 +22,7 @@ General Bots BASIC provides a conversational-first approach to automation. This
| **WhatsApp Native** | Plugin | Plugin | Plugin | Plugin | ✅ Built-in | | **WhatsApp Native** | Plugin | Plugin | Plugin | Plugin | ✅ Built-in |
| **Telegram Native** | Plugin | Plugin | Plugin | ❌ | ✅ Built-in | | **Telegram Native** | Plugin | Plugin | Plugin | ❌ | ✅ Built-in |
| **Multi-Channel** | Limited | Limited | Limited | Limited | ✅ Native | | **Multi-Channel** | Limited | Limited | Limited | Limited | ✅ Native |
| **LLM Integration** | Plugin | Plugin | Plugin | GPT-4 | ✅ Any model | | **LLM Integration** | Plugin | Plugin | Plugin | GPT-5 | ✅ Any model |
| **Self-Hosted** | ❌ | ✅ | ❌ | ❌ | ✅ | | **Self-Hosted** | ❌ | ✅ | ❌ | ❌ | ✅ |
| **Open Source** | ❌ | ✅ | ❌ | ❌ | ✅ AGPL | | **Open Source** | ❌ | ✅ | ❌ | ❌ | ✅ AGPL |

Some files were not shown because too many files have changed in this diff Show more