GoWeBaKnowledge Center

WEBA — AI Orchestrator

WEBA (Web-Enhanced Business Assistant) is GoWeBa's central AI orchestrator. It's not a simple chatbot — it's an intelligent multi-agent system that coordinates 35 AI specialists to accomplish complex tasks in natural language. WEBA works like a digital conductor: the user expresses their need in French, English, or Spanish, and WEBA automatically identifies the intent, selects the right specialized agent, executes the action, and confirms the result — all within seconds.

Philosophy: Conversational AI at the Service of Business

Unlike generic AI assistants, WEBA is deeply integrated into your CRM. It has access to your contacts, calendar, invoices, tasks, documents, and store. It doesn't "guess" — it acts on your real data.

  • Chat, Voice, SMS, Email — Multichannel: same identity across all channels
  • French, English, Spanish — Multilingual: automatic language detection
  • Organizational memory — Contextual: WEBA remembers preferences, key facts, and habits
  • Full traceability — Transparent: every action is logged, every credit is accounted for

Multi-Agent Architecture

WEBA uses a "hub-and-spoke" architecture:

  1. Central hub — The WEBA engine receives each message, analyzes intent, and routes to the right agent
  2. 35 specialized agents — Each agent is an expert in a domain (CRM, billing, calendar, etc.)
  3. Contextual memory — The Knowledge Base + Context Entries provide long-term memory
  4. Billing system — Each AI call is billed via the 1.40× rule (raw cost × 1.40)

Core Features

Intelligent Conversational Chat

WEBA's primary interface is a real-time chat with token-by-token streaming. The user writes in natural language and receives a structured response within seconds.

.1 User Interface

  • Conversation area with full history
  • Typing indicator (animation during streaming)
  • Inline attachments: PDF documents, events, tasks, signatures
  • Quick action buttons on result cards
  • Feedback system (👍 / 👎) for training
  • Conversation management: create, rename, archive, delete
  • Conversation folders: organize by project/client/topic

.2 SSE Streaming (Server-Sent Events)

WEBA's response is streamed in real-time via an SSE flow with the following events:

.3 Conversation Management

Each WEBA conversation has a complete lifecycle:

Conversations can be organized in folders with custom colors. Folders allow grouping by client, project, or topic.

Automatic Intent Detection

Before falling into generic chat, the WEBA engine sequentially tries to detect a specialized intent. If no intent is detected, WEBA responds in standard conversational mode. Here is the intent routing priority order:

  1. Document refinement — If a document is open in the Studio, WEBA detects modification requests ("change the tax to 15%")
  2. PDF document creation — Invoice, quote, or report — WEBA extracts the data and generates the PDF automatically
  3. Availability check — "Am I free on Tuesday?" — WEBA checks the calendar and responds with a summary
  4. Calendar event creation — "Schedule a meeting with Jean tomorrow at 2 PM" — creates the event automatically
  5. Task creation — "Remind me to invoice Acme on Friday" — creates the task with priority and deadline
  6. Electronic signature creation — "Send the service contract to Marie for signature" — creates the envelope
  7. Store query — Questions about products, orders, inventory — WEBA queries the product database
  8. General chat — If no intent is detected, WEBA responds in conversational mode enriched by the Knowledge Base ⚠️ Each specialized intent triggers a dedicated AI call. The cost is billed according to the 1.40× rule.

Autonomous WEBA Actions

WEBA doesn't just respond — it acts. Here are the actions it can execute automatically:

Each action is logged in the audit journal (WebaAction) with inputs, outputs, status (COMPLETED/FAILED), and timestamp.

Universal Semantic Search (⌘K)

GoWeBa includes a universal search accessible from any page via the ⌘K shortcut (Ctrl+K on Windows).

  • Contacts, emails, events, tasks, documents — Unified search: everything is searchable
  • Direct question to WEBA — WEBA search: type a question in natural language
  • Instant access — Quick navigation: jump directly to the desired page 💡 ⌘K is GoWeBa's most powerful shortcut. Use it instead of manually navigating through menus.

Intelligent Attachments

When WEBA executes an action, it attaches the result to the message as an interactive card:

The 35 Specialized WEBA Agents

WEBA orchestrates an ecosystem of 35 specialized AI agents, each an expert in a functional domain of the GoWeBa platform. These agents are not separate chatbots — they share the same contextual memory, billing system, and brand identity.

💡 WEBA automatically selects the right agent based on your request. You don't need to choose manually — simply write what you need in natural language.

Memory and Context

Dynamic System Prompt

Each conversation turn, WEBA builds a personalized system prompt that includes:

  1. WEBA identity — Name, communication style, tonality, formality level
  2. Organizational context — Company name, default currency, timezone
  3. User context — Name, system role, preferred communication style, language
  4. Long-term memory — Context entries (USER, ORG, GLOBAL) sorted by weight and recency
  5. Knowledge Base — Top 3 relevant results from the knowledge base (semantic search)
  6. Recent history — The 20 most recent messages from the active conversation

Context Entries (WebaContextEntry)

Context entries allow you to store facts that WEBA should remember:

Entries can be pinned and weighted to control their priority in the prompt. Maximum 50 entries are injected per turn. 💡 Use context entries to "teach" WEBA specific facts about your business. For example: "Our standard delivery time is 3–5 business days."

Knowledge Base

The Knowledge Base is WEBA's documentary brain. It stores articles, FAQs, procedures, and guides that are automatically injected into the prompt when relevant.

.1 Categories

.2 Search Algorithm

The Knowledge Base search uses multi-criteria scoring:

Minimum required score: 1 point. The top 3 results are injected into the system prompt. Content is truncated to 900 characters per article to keep the prompt compact.

Persona and White-Label Customization

Persona Configuration

Each organization can customize WEBA's personality:

Available Communication Styles

Languages and Automatic Detection

WEBA responds in the user's preferred language (preferredLocale parameter). If the user writes in a different language, WEBA adapts automatically.

WEBA Billing System

The 1.40× Rule (Crystal Billing)

Each AI call made by WEBA is billed according to a transparent principle: User price = Raw AI provider cost × 1.40 (40% margin) This margin covers GoWeBa infrastructure, storage, support, and R&D.

Debit Mechanism

  1. Verification — Before each AI call, WEBA checks that the wallet has enough credits (minimum 10 credits)
  2. AI Call — The call is made to the selected AI model (GPT-4.1, GPT-4.1-mini, etc.)
  3. Cost calculation — Input tokens × input rate + Output tokens × output rate = raw cost
  4. Margin applied — Raw cost × 1.40 = user cost
  5. Debit — Credits are deducted from the user's wallet
  6. Logging — UsageEvent created with full details (model, tokens, cost, action)

Credit / Money Conversion

10 credits = 1 cent (CAD/USD). So 1,000 credits = $1.00.

💡 Monitor your usage in Settings → Subscription → Usage. Set up threshold alerts to avoid surprises.

Budget Guard

When the user's wallet is at zero, WEBA politely declines to respond: "Your credit wallet is depleted. Please top up your credits to continue using WEBA. Go to Settings → Subscription to add credits."

Escalation, Security, and Filtering

Automatic Escalation

WEBA can automatically escalate a conversation to a human when:

  • The confidence score drops below the configured threshold (default: 0.50)
  • The user explicitly asks to speak to a human
  • The intent is classified as "escalate_to_human"
  • The sentiment is very negative (VERY_NEGATIVE) repeatedly

.1 Escalation Process

  1. Detection — WEBA identifies the need for escalation via intent analysis
  2. Flagging — The conversation is flagged isEscalated = true
  3. Notification — An escalation is created (WebaEscalation) with OPEN status
  4. Assignment — An admin can self-assign the escalation (ASSIGNED → IN_PROGRESS)
  5. Resolution — The admin resolves and closes the escalation (RESOLVED → CLOSED)

Output Filter (Egress Filter)

Before returning a response to the user, WEBA applies an output filter to:

  • Remove references to underlying AI models (GPT-4, OpenAI, etc.)
  • Block disclosure of internal technical data
  • Detect and mask sensitive information (card numbers, SIN, etc.)
  • Ensure WEBA only mentions the GoWeBa brand / persona name ⚠️ If the filter detects a violation, the response is blocked and a security log is created.

Internal Guard

The internal guard protects WEBA's internal API endpoints:

  • Verifies that calls come from authorized server processes
  • Prevents direct access to /api/internal/weba/* routes from outside
  • Validates session tokens at each conversation turn

Sentiment & Intent Analysis

After each conversation turn, WEBA performs automatic analysis:

This analysis uses a lightweight GPT-4.1-mini call (~$0.0014 per turn) in strict JSON.

WEBA Administration (Admin Pages)

Analytics Dashboard

Accessible via Admin → WEBA → Analytics. Provides real-time statistics:

Escalation Management

Accessible via Admin → WEBA → Escalations. Allows you to:

  • View all pending, assigned, and resolved escalations
  • Self-assign an escalation to handle it
  • Respond directly in the escalated conversation
  • Mark as resolved with a resolution comment
  • Filter by status, date, user

Knowledge Base (admin)

Accessible via Admin → WEBA → Knowledge. Complete interface for managing the knowledge base:

  1. Create an article — Title, content, category, tags, keywords
  2. Organize — Categorize (GENERAL, PRODUCT, POLICY, FAQ, PROCEDURE, TROUBLESHOOTING)
  3. Enable/disable — Inactive articles are not injected into the prompt
  4. Statistics — viewCount and lastUsedAt to see which articles are most consulted
  5. Search — Text search within articles 💡 Feed the Knowledge Base with questions your customers frequently ask. WEBA will become more and more accurate over time.

Training Data

Accessible via Admin → WEBA → Training. Uses 👍/👎 feedback from users:

  • Positive feedback: marked as "approved", serves as positive reinforcement
  • Negative feedback: analyzed to identify gaps and improve responses
  • Manual approval: an admin can approve or reject training data
  • Export: training data can be exported for future fine-tuning

Phrase Management

Accessible via Admin → WEBA → Phrases. Allows you to configure predefined responses:

  • Quick responses: common phrases WEBA should use as-is
  • Corrections: systematically replace certain wordings
  • Banned terms: words or phrases WEBA should never use
  • Industry vocabulary: industry-specific terms with definitions

Concrete Use Cases

Scenario: Create an Invoice via Chat

Situation: A user wants to invoice a client after a consultation.

  1. User writes: — "Create an invoice for $500 for 2h consultation for Acme Inc"
  2. WEBA detects intent — create_document, template: INVOICE
  3. Data extraction — Client: Acme Inc, Amount: $500, Description: 2h consultation
  4. PDF generation — Document created with organization branding
  5. Response with attachment — WEBA responds with an inline card showing the invoice
  6. User clicks — Opens the document in the Studio for final review

Scenario: Schedule an Appointment

  1. User writes: — "Schedule a meeting with Jean-Pierre tomorrow at 2 PM for 1 hour"
  2. WEBA checks availability — Checks the calendar for the requested slot
  3. Event creation — Title: Meeting with Jean-Pierre, 2–3 PM, organization timezone
  4. Notification — Participants are automatically invited
  5. Confirmation — WEBA displays an event card with the details

Scenario: Product Question (Store)

  1. A customer writes via web chat: — "Do you have the XR-500 model in stock?"
  2. WEBA detects — Intent: store_query (keywords "stock", "model")
  3. Product database query — Searches "XR-500" in the organization's catalog
  4. Contextual response — "Yes, the XR-500 is available in blue and black. Price: $299.99. Would you like to place an order?"

Scenario: Automatic Escalation

  1. Customer writes: — "I want to speak to a human, your bot doesn't understand anything!"
  2. Classification — Intent: escalate_to_human, Sentiment: VERY_NEGATIVE
  3. Automatic escalation — Conversation flagged isEscalated, escalation created
  4. WEBA message — "I understand your frustration. I'm transferring your conversation to a team member."
  5. Admin notification — The administrator receives an urgent escalation notification

Scenario: Refine an Existing Document

  1. User opens an invoice in the Studio — The WEBA client sends activeDocumentId
  2. User writes: — "Change the tax to 15% and add a line for travel expenses $75"
  3. WEBA detects refinement — Document is open → priority to refine path
  4. Document patch — The document's JSON data is updated
  5. Confirmation — WEBA displays the updated document card with a summary of changes

Troubleshooting & FAQ

Common Issues

FAQ

Q: How much does a WEBA message cost? A: On average, a conversational message costs about 7 credits (~$0.007). Complex actions (invoice creation, call summary) cost between 20 and 50 credits. Q: Can WEBA access my emails? A: WEBA can compose emails via the Webabox, but it doesn't read your incoming emails unless you explicitly ask it to within a conversation context. Q: How can I improve WEBA's responses? A: Three main levers:

  1. Feed the Knowledge Base with your company's FAQs
  2. Use 👍/👎 feedback to train WEBA
  3. Add context entries with important facts Q: Does WEBA work offline? A: No. WEBA requires an internet connection to communicate with AI models. In case of an outage, conversations are queued and processed when the connection returns. Q: Can I customize WEBA's name and appearance? A: Yes, via the Persona configuration (Admin → WEBA). You can change the name, colors, communication style, greeting message, and even the avatar. Q: Is WEBA GDPR and Bill 25 compliant? A: Yes. All data is hosted in Canada. The output filter prevents disclosure of sensitive data. Conversations can be deleted on request (right to be forgotten). Q: How many WEBA agents can be used simultaneously? A: All 35 agents are always available. WEBA automatically selects the right agent. There is no concurrency limit — each user has their own conversation context. Q: What happens if WEBA makes a mistake? A: Use the 👎 button to flag a bad response. The admin can then correct via the Training page. WEBA continuously learns from this feedback.

Known Limitations

— End of Module 01 —

GoWeBa — Operations Bible Generated May 06, 2026

ComponentRoleSource File
EngineMain orchestration, intent routinglib/weba/engine.ts
ContextSystem prompt construction, memorylib/weba/context.ts
IntentPost-turn intent + sentiment classificationlib/weba/intent.ts
KB SearchSemantic search in the Knowledge Baselib/weba/kb-search.ts
PersonaWhite-label personality per organizationlib/weba/persona.ts
LLMInterface with AI models (GPT-4.1)lib/weba/llm.ts
Egress FilterOutput filter (security, sensitive data)lib/weba/egress-filter.ts
Document ActionsPDF creation/modification (invoices, quotes, reports)lib/weba/document-actions.ts
Calendar ActionsEvent creation, availability checklib/weba/calendar-actions.ts
Task ActionsTask creation, assignment, pipelinelib/weba/task-actions.ts
Signature ActionsElectronic signature envelope creationlib/weba/signature-actions.ts
Store ActionsProduct, order, inventory responseslib/weba/store-actions.ts
EventPayloadDescription
start{ conversationId }Conversation identifier (auto-created if new)
token{ chunk }Text fragment (word-by-word streaming)
document{ id, title, template, status }PDF document created by WEBA (invoice, quote, report)
done{ conversationId, userMessageId, assistantMessageId, creditsConsumed, tokensIn, tokensOut, responseTimeMs, attachments }End of turn with complete metrics
error{ message }AI or server error
StatusDescriptionTransition
ACTIVEConversation in progress, accepts new messages→ COMPLETED, ARCHIVED
COMPLETEDConversation ended normally→ ARCHIVED
ARCHIVEDArchived, visible in history→ can be restored
ESCALATEDEscalated to a human→ RESOLVED
ActionCode IDCategoryDescription
Create a PDF documentWBA_009DOCUMENTSGenerates a full invoice, quote, or report
Refine a documentWBA_009RDOCUMENTSModifies an existing document open in the Studio
Create an eventWBA_018CALENDARSchedules an appointment with participants and reminders
Check availabilityWBA_018ACALENDARChecks the calendar for a given period
Create a taskWBA_022TASKSCreates a task with priority, deadline, and pipeline
Create a signatureWBA_031SIGNATURESPrepares an electronic signature envelope
Store queryWBA_035STOREQueries products, orders, and inventory
TypeFields DisplayedAvailable Actions
Document (PDF)Title, template (INVOICE/QUOTE/REPORT), status, change summaryOpen in Studio, download, edit
EventTitle, start-end date/time, location, participant countOpen in calendar, edit
TaskTitle, status, priority, deadline, pipeline, ownerOpen task, change status
SignatureTitle, status, recipient count, namesOpen envelope, send
AvailabilityPeriod, number of free/busy slotsView detail in calendar
#AgentDomainKey Capabilities
01Contacts ManagerCRMCreate, update, merge contacts, scoring, tags
02Email ComposerCommunicationWriting, templates, open tracking, auto follow-ups
03Calendar PlannerCalendarScheduling, availability, reminders, participant invites
04Task MasterProductivityTask creation, assignment, pipeline tracking, sprints
05Invoice CreatorBillingPDF invoices, quotes, credit notes, tax calculations
06Report AnalystAnalyticsCustom reports, dashboards, data export
07Document DesignerStudioPDF creation, layout, custom branding
08Store ManagerE-commerceProducts, inventory, orders, categories
09SEO OptimizerMarketingSEO audit, keyword suggestions, meta descriptions
10Funnel ArchitectSalesSales pages, forms, conversion sequences
11Campaign ManagerMarketingEmail/SMS campaigns, segmentation, A/B testing
12Signature HandlerLegalSignature envelopes, tracking, reminders, audit trail
13Contract WriterLegalContract drafting, clauses, approval
14Migration SpecialistDataImport/export, format conversion, deduplication
15Phone AgentTelecomVoIP calls, transcription, summary, post-call actions
16SMS AgentTelecomSend/receive SMS, templates, automation
17Voice AI AgentTelecomAI voice responses, intelligent IVR, message taking
18Drive ManagerStorageCloud file management, versioning, secure sharing
19Billing AdvisorFinanceSubscription management, credits, history, forecasts
20Security GuardSecurityAnomaly detection, alerts, audit logs
21Translation Agenti18nContent translation, cultural adaptation, localization
22Scheduling AgentPlanningSchedule optimization, client booking, timezones
23Reminder AgentProductivitySmart reminders, deadline tracking, notifications
24Search AgentSearchSemantic search ⌘K, advanced filters, weighted results
25Analytics AgentBIDashboards, trends, predictions, KPIs
26Support AgentServiceTicket management, escalation, customer satisfaction
27Affiliate ManagerPartnershipAffiliate links, commissions, conversion tracking
28Vault KeeperSecurityPassword management, encrypted notes, sensitive data
29DNS ManagerInfrastructureDNS configuration, domain verification, SSL certificates
30Notification AgentCommunicationPush notifications, transactional emails, webhooks
31Export AgentDataCSV/PDF/Excel export, scheduled reports, archives
32Import AgentDataContact, email, file import, data migration
33Compliance AgentLegalGDPR compliance, Bill 25, consents, right to be forgotten
34Onboarding GuideTrainingInteractive guide, tutorials, first steps, checklist
35Crystal AgentBillingCost forecasts, AI budget optimization, threshold alerts
ScopeVisible ToExample
GLOBALAll platform usersStandard refund policy
ORGAll organization membersBusiness hours: 9 AM–5 PM EST
USERA single userPrefers short and direct responses
CategoryUsage
GENERALGeneral information about the company or platform
PRODUCTProduct sheets, technical specifications
POLICYPolicies (refund, delivery, warranty)
FAQFrequently asked questions
PROCEDUREOperational procedures, step-by-step guides
TROUBLESHOOTINGCommon problem resolution
CriteriaPointsDescription
Exact keyword match4 per matchExact match in indexed keywords
Exact tag match3 per matchMatch in article tags
Title3 per matchWord appears in the article title
Content1–3 per matchOccurrences in text (capped at 3 per word)
ParameterTypeDefaultDescription
displayNameTextWEBAName displayed in chat and communications
communicationStyleEnumPROFESSIONAL_FRIENDLYCommunication style (professional, casual, etc.)
tonalityEnumBALANCEDTonality (empathetic, direct, humorous, etc.)
formalityLevel1–105Response formality level
primaryColorHex#1E40AFPrimary interface color for WEBA
secondaryColorHex#06B6D4Secondary color (accents, gradients)
accentColorHex#FB923CAccent color (action buttons, alerts)
defaultLanguageCodeenDefault response language
supportedLanguagesList[en, fr]Supported languages for this instance
greetingMessageTextHey! I'm WEBA...Initial greeting message
enableAutoEscalateBooleantrueAutomatic escalation to human
escalateThreshold0–10.5Confidence threshold below which to escalate
avatarUrlURLnullCustom avatar image
StyleDescriptionExample
PROFESSIONAL_FRIENDLYProfessional but warm"Hi Marie! Your invoice is ready."
CASUALRelaxed and friendly"Hey! Your invoice is ready, check it out!"
FORMALFormal and structured"Ms. Tremblay, please find attached..."
CONCISEBrief and direct"Invoice created. #INV-2026-042. Total: $2,500"
PrioritySourceExample
1User's preferredLocalefr → responds in French
2webaLanguage (legacy)en → responds in English
3Persona languageOrganization's defaultLanguage
4Automatic detectionUser writes in Spanish → WEBA responds in Spanish
Typical ActionTokens (~)Raw Cost (~)User Cost (~)Credits (~)
Short conversational message500 in + 200 out~$0.005~$0.007~7
PDF invoice creation2,000 in + 1,500 out~$0.03~$0.042~42
Intent classification300 in + 50 out~$0.001~$0.0014~1.4
Phone call summary3,000 in + 500 out~$0.02~$0.028~28
StatusDescription
OPENEscalation created, pending assignment
ASSIGNEDAssigned to a human agent
IN_PROGRESSAgent is working on the case
RESOLVEDResolved by the agent
CLOSEDPermanently closed
MetricPossible ValuesUsage
Intentcreate_contact, billing_question, greeting, complaint, pricing_inquiry, how_to, escalate_to_human, unknownIntent classification for analytics and routing
SentimentVERY_POSITIVE, POSITIVE, NEUTRAL, NEGATIVE, VERY_NEGATIVESatisfaction tracking, escalation trigger
Confidence0.0 to 1.0Classification certainty score
MetricDescriptionPeriods
Total conversationsTotal conversations created7d, 30d, 90d
Active conversationsConversations in progress (ACTIVE status)7d, 30d, 90d
Escalated conversationsConversations transferred to a human7d, 30d, 90d
Completed conversationsSuccessfully completed conversations7d, 30d, 90d
Total messagesTotal volume of messages exchanged7d, 30d, 90d
User messagesMessages sent by users7d, 30d, 90d
WEBA messagesResponses generated by WEBA7d, 30d, 90d
Sentiment distributionVERY_POSITIVE to VERY_NEGATIVE breakdown7d, 30d, 90d
Top 10 topicsMost frequent intents7d, 30d, 90d
Total actionsNumber of autonomous actions executed7d, 30d, 90d
Successful actionsActions completed successfully7d, 30d, 90d
Failed actionsActions that failed7d, 30d, 90d
Training dataNumber of feedbacks (approved/pending)7d, 30d, 90d
EscalationsNumber of escalations (open/resolved)7d, 30d, 90d
IssueLikely CauseSolution
WEBA doesn't respondInsufficient creditsTop up the wallet (Settings → Subscription)
Response in English instead of FrenchpreferredLocale not configuredCheck user settings, set preferredLocale = fr
WEBA doesn't create the invoiceIntent not detectedRephrase with clear keywords ("invoice", "facture", amount)
"INSUFFICIENT_CREDITS" errorWallet at zeroPurchase additional credits
"AI error" messageTemporary AI provider errorRetry in a few seconds
WEBA invents dataKnowledge Base empty or insufficientFeed the KB with your company's information
Slow response (> 10 seconds)Heavy model or prompt too longReduce context entries, check KB size
WEBA mentions "GPT" or "OpenAI"Output filter bypassedReport to support, check custom phrases
Escalation not received by adminNotifications disabledEnable escalation notifications in Admin → WEBA → Escalations
Empty PDF documentInsufficient data in the requestProvide more details (client, amount, description)
LimitationDetailWorkaround
Prompt size~128K tokens maximum per turnReduce context entries and KB size
No vision/imageWEBA cannot analyze images in chatUse textual description
Network latencyAI calls depend on internet connectionNone — cloud-native architecture
Limited languagesFR, EN, ES only for nowDE, PT, IT support planned for 2026
Irreversible actionsSome actions (delete a contact) are irreversibleConfirm before acting (WEBA always asks for confirmation)

© 2024–2026 GOWEBA INC. — Make it Simple, Make it Possible, Make it Real.