Before You Start: This Is Not a Magic Wand
HighVibe Agents is a decision and operations platform, not a replacement for your sales team, site foreman, or customer follow-up discipline. When configured correctly and used with a consistent daily workflow, it helps you capture leads, prioritize conversations, and keep an audit trail of AI-assisted decisions. It does not automatically close deals, install flooring, or guarantee revenue.
Treat AI responses as drafts and signals, not final commitments. Pricing, warranty terms, payment plans, legal wording, and installation timelines must pass through your approval queue or be written manually by a qualified person on your team.
- Follow-up: Check Operations Center at least once per business day.
- Tracking: Keep conversation states and next actions current — stale data produces weak KPIs.
- Accountability: Action logs exist so you can see who approved what and when.
- Limits: ROI and forecast charts are models based on your data quality; they are guides, not promises.
| Myth | Reality |
|---|---|
| "AI will run my business" | AI assists; you operate. |
| "Leads convert themselves" | Qualified leads need human contact and quotes. |
| "KPI charts guarantee growth" | Charts reflect past data; action drives future results. |
| "WhatsApp connects automatically" | Webhook and API key must be configured by your platform contact. |
If you follow the workflows in this guide, most tenants see clearer visibility within the first two weeks. Revenue impact depends on your offer, market, and response speed — not on the logo on the login screen.
Welcome and How to Use This Guide
Thank you for choosing HighVibe Agents. This guide is written for business owners and daily operators
who use the Operations Center at /app/. It describes what the product actually does today — without
marketing exaggeration.
Recommended reading order:
- Philosophy and roles (sections 1–3)
- Daily workflow and dashboard (sections 4–6)
- Inbox, approvals, and KPI center (sections 7–13)
- Channels: web widget and WhatsApp (sections 14–16)
- Compliance, language, and AI settings (sections 17–19)
- Sector modules and CRM basics (sections 20–22)
- Best practices, troubleshooting, glossary (sections 23–25)
Use the table of contents on the left to jump to any section. Switch language with the TR / EN pill in the page header.
Your tenant default locale is set in admin under primary_locale.
- Operations Center — your home base
- Login — tenant user credentials
- Privacy notice — text shown to end customers
Roles: Owner, Operator, and Viewer
Each person on your team should have the right access level. Over-permissioning creates accidental approvals; under-permissioning blocks daily work.
| Role | Typical person | Can do | Cannot do |
|---|---|---|---|
| Owner | Business owner, franchise lead | All operator tasks; tenant settings; widget and greeting text; view AI budget (read-only in panel) | Platform-wide admin (unless also staff) |
| Operator | Sales rep, office manager, dispatcher | Inbox, conversation updates, approval queue, KPI review, manual notes | Change platform API keys or billing plan |
| Viewer | Accountant, silent partner | Read KPI snapshots and conversation list | Approve recommendations or post messages |
Superusers (platform staff) can switch tenants from the top bar. If you see the wrong company name in the header, select the correct tenant before approving anything.
Login and Navigation
Login URL: /login/
After login you land on the Operations Center (/app/). Main navigation:
| Menu item | Path | Purpose |
|---|---|---|
| Dashboard | /app/ | Summary metrics, recent conversations, decision preview |
| Conversation Inbox | /app/inbox/ | All channels, filters, handoff flag |
| Approval Queue | /app/approvals/ | Pending AI recommendations and handoffs |
| KPI & Actions | /app/analytics/ | Full chart deck and approve/reject actions |
Language switcher in the top-right changes UI labels (EN, TR, DE, FR, ES, AR supported in the panel).
/app/ on mobile browsers if you check WhatsApp handoffs while on site — the inbox is responsive
but not a native app.
Recommended Daily Operations Workflow
Consistency beats intensity. If you follow this loop on working days, the platform stays trustworthy.
- Open Operations Center — note open conversations, pending approvals, and ROI snapshot age.
- Check Approval Queue first — pricing, warranty, and payment recommendations should not wait.
- Work the Inbox — sort by handoff or urgency; reply to customers; update states.
- Refresh KPI Report (if data changed materially) — review decision recommendations.
- End of day — set
next_actionon open conversations so tomorrow starts clear.
| Time block | Focus | Minimum time |
|---|---|---|
| Morning | Approvals + overnight WhatsApp/web leads | 15–30 min |
| Midday | Qualified leads → quote or site visit scheduling | As needed |
| Evening | State updates + next_action for open threads | 10 min |
Operations Center Dashboard
The dashboard at /app/ is your at-a-glance control room. Metrics refresh from the latest analytics snapshot (auto-refreshed if older than ~15 minutes).
Top metric cards
| Metric | Meaning | When to worry |
|---|---|---|
| Open conversations | Active threads excluding won/lost | Rising for weeks without qualification |
| Pending approvals | Draft/pending decision recommendations | Any critical pricing item > 24h |
| Leads | Total captured lead records | Flat while ad spend rises — check widget/WhatsApp |
| ROI % | Paid revenue vs AI budget model | Negative early in pilot is normal; trend matters |
Embedded 3D preview
Two mini charts — Lead Intelligence 3D and Decision Surface 3D — mirror the full KPI page. Use Full Report & Actions for the complete deck.
Recommended Decisions panel
Shows the five newest decision recommendations with priority, confidence, and quick links to KPI or Approval Queue. Empty here does not mean "no work" — check inbox for unrouted messages.
Recent Action Logs
Audit trail of automated and human actions (approval queue, inbox updates, webhooks). Use this when asking "who approved this quote draft?"
Conversation Inbox
The inbox at /app/inbox/ lists all conversations for your tenant, newest first.
Filters
- Search (q): Matches summary, next action, external ID, lead name/phone/email, customer fields.
- State: new, contacted, engaged, qualified, offer, negotiation, won, lost.
- Channel: webchat, whatsapp, telegram, email, call, manual.
- Handoff: Show only conversations flagged
handoff_required.
Summary counters
| Counter | Description |
|---|---|
| Open count | All except won/lost |
| Handoff count | Needs human decision or reply |
| Inbound (7d) | Messages received in the last seven days |
Recent messages sidebar shows the latest twelve inbound/outbound lines across conversations — useful for spotting duplicate threads from the same phone number.
Conversation States and AI Scores
Each conversation has a state, optional scores, and a handoff flag.
State progression (typical)
| State | Meaning | Operator action |
|---|---|---|
| new | Just captured | Acknowledge within your SLA; assign owner |
| contacted | First human or AI touch sent | Confirm customer received message |
| engaged | Two-way dialogue | Clarify scope, location, budget range |
| qualified | Fit confirmed | Prepare quote or site visit |
| offer | Proposal shared | Track follow-up date |
| negotiation | Terms under discussion | Route sensitive terms to approval queue |
| won | Deal closed | Archive; link to order/invoice if used |
| lost | No sale | Optional reason in notes for analytics |
Scores (0–100 scale, model-dependent)
- urgency_score — time sensitivity (e.g. broken boiler vs browsing tiles)
- qualification_score — budget/fit signal strength
- sentiment_score — tone of recent messages
Scores help prioritize inbox sorting; they are not credit scores or legal assessments. When in doubt, read the message thread.
Conversation Detail and Timeline
Open any row in the inbox to reach /app/inbox/<id>/. You see the full message timeline, linked lead,
recommendations for that lead, and action logs for the thread.
Manual updates (POST form)
- Note: Add inbound, outbound, or system message to the timeline.
- State: Move the conversation along the funnel.
- Next action: Short text reminder (max 255 chars) visible on dashboard lists.
- Handoff required: Checkbox — surfaces in Approval Queue and inbox filter.
Every save creates an ActionExecutionLog entry with provider conversation_inbox so manual
edits are auditable.
Sibling conversations
Same customer may have multiple channels (web then WhatsApp). Review siblings before duplicating quotes.
| Direction | Use for |
|---|---|
| inbound | Customer message logged manually (e.g. phone call) |
| outbound | Your reply (if not sent via integrated channel) |
| system | Internal operational notes |
Approval Queue and Human Handoff
The approval queue at /app/approvals/ is where human judgment is mandatory. Low-risk informational replies may flow automatically; high-risk business commitments do not.
What requires approval (examples)
- Firm price quotes beyond configured thresholds
- Payment terms, deposits, and installment promises
- Warranty length or scope guarantees
- Legal or compliance statements
- Discounts that affect margin
Queue sections
| Section | Content |
|---|---|
| Pending recommendations | DecisionRecommendation rows in draft/pending status |
| Handoff conversations | Threads with handoff_required=True (max 20 shown) |
| Action logs | Recent 50 audit entries including approval_queue provider |
Approve / Reject workflow
- Read title, summary, and recommended_action carefully.
- Click Approve or Reject (or Executed for specific marketing actions on KPI page).
- System updates recommendation status, clears handoff when applicable, writes ConversationMessage system note, logs ActionExecutionLog.
Decision Recommendations Explained
DecisionRecommendation records are AI-generated action proposals tied to your tenant, often linked to a lead and analytics snapshot. They appear on the dashboard, KPI page, and approval queue.
| Field | Operator meaning |
|---|---|
| title | Short headline — read first |
| summary | Context from recent conversations/data |
| recommended_action | What the model suggests you do |
| priority | low / medium / high / critical — sort order hint |
| confidence | Model self-score — not a probability of success |
| action_type | Category (e.g. lead_generation, pricing) — affects available buttons |
| status | draft, pending, approved, rejected, executed |
Status lifecycle
- Created after KPI refresh or inbound webhook processing
- Stays pending until a logged-in operator decides
- Approved/rejected/executed — immutable for audit; create a new conversation note if plan changes
lead_generation) may show an extra Apply Marketing Strategy
button on the KPI page. Use only if you agree with the proposed campaign angle.
If recommendations pile up without review, automation_score rises in KPIs but real workload also rises. Clear the queue regularly.
KPI and Action Center Overview
The Executive KPI & Action Center at /app/analytics/ combines metrics, charts, and actionable recommendations in one screen.
Header actions
- Refresh KPI Report — rebuilds analytics snapshot (
?refresh=1); use after bulk imports or end-of-week review. - Links back to Dashboard and Approval Queue.
Top KPI cards
| Card | Source |
|---|---|
| Lead volume | Lead table count |
| Conversion | won / total leads |
| ROI | paid invoice revenue vs monthly AI budget setting |
| Pending actions | Open decision recommendations |
Snapshot timestamp and model name (from TenantAISettings) appear in badges — if snapshot is stale, refresh before a management meeting.
KPI Charts: Full Chart Deck Reference
When you refresh the KPI report, the platform builds a chart_pack JSON used by Plotly charts below.
Each chart is only as accurate as your CRM data (leads, orders, invoices, conversations).
3D Analytics Command View
| Chart | Axes / dimensions | Operator use |
|---|---|---|
| Lead Intelligence 3D | Lead score × engagement × revenue potential | Spot high-value leads worth calling today |
| Decision Surface 3D | Confidence × urgency × action weight | See which recommendations compete for attention |
High-Value Customer (HVC) Segment Engine
Deterministic segmentation over customers and revenue — shows HVC count, revenue share, average score, and top signal customer. Methodology confidence badge reflects data completeness, not market certainty.
Standard charts
| Chart | Payload key | What it shows |
|---|---|---|
| Revenue Trend | revenue_series | Paid/collected revenue over time |
| Lead Funnel | lead_funnel | Stage counts (localized labels) |
| ROI Gauge | roi_payload | Budget vs paid revenue vs pipeline |
| Spider Chart | spider_payload | Multi-axis health: conversion, engagement, data quality, automation, forecast |
| Forecast Curve | forecast_payload | Projected trend — model-based, not a contract |
| Segment Heatmap | segment_heatmap | Channel/segment intensity map |
Underlying KPI payload fields
- lead_count, customer_count, conversation_count
- conversion_rate, engagement_rate
- data_quality_score, automation_score, forecast_accuracy
- avg_order, paid_revenue, pipeline_revenue, qualified_leads, won_leads
- hvc_count, hvc_revenue_share, avg_hvc_score (when HVC engine runs)
Worked Example: Osman Çavuş Taş Parke (parke_tas)
This section walks through a real pilot pattern — stone and parquet flooring contractor —
using niche parke_tas and tenant slug osman-cavus-tas-parke. Names and numbers are illustrative;
your quotes and m² rates must come from your own price list.
Day 0 — go-live checklist (operator view)
- Owner logs in at /login/ — user e.g.
talhalinked as TenantUser owner. - Confirm tenant status active and
chat_widget_enabledis true. - Greeting text set in Turkish: "Hoş geldiniz! Metrekare, taş türü ve lokasyon yazarsanız keşif yönlendirmesi yapabilirim."
- Widget embedded on customer website; test at
/widget/demo/osman-cavus-tas-parke/. - WhatsApp webhook configured with scoped TenantAPIKey (platform team) — optional but recommended.
Scenario A — Web widget lead (villa owner, Yalova)
Customer message: "200 m² villa bahçesi, gri granit istiyorum, rough budget?"
- Widget creates Lead + Conversation (channel webchat, state new).
- AI responds with clarifying questions: sub-base condition, drainage, edge finishing, access for pallet truck.
- Operator reviews inbox within 2 hours — sets state engaged, adds system note: "Site visit Tue 10:00 — Talha."
- AI may draft m² range using catalog hints (begonit/granite) — if numeric quote appears, it lands in Approval Queue.
- Owner approves or edits: rejects AI quote if fire allowance (waste %) for diagonal cut was ignored.
- After site visit, operator sets qualified, next_action "Send written quote PDF".
Scenario B — WhatsApp urgent (contractor, material list)
Customer message: "800 m² kilit parke 8 cm, 2 haftada teslim — stok var mı?"
- Webhook ingests message; idempotent by provider message ID.
- Conversation channel whatsapp; urgency_score likely high due to volume + deadline words.
- Handoff_required set if AI cannot confirm stock — operator calls supplier, logs outbound note with availability.
- Decision recommendation may suggest "prioritize B2B quote" — approve only if capacity real.
Scenario C — Lost deal (learning loop)
Customer chose competitor on price. Operator sets state lost, system note reason "competitor −12% on labor only".
Next KPI refresh includes lost stage in funnel — use for retrospective, not blame.
What Osman should not expect from AI
- Automatic structural engineering sign-off for load-bearing terraces
- Guaranteed delivery dates without warehouse integration
- Binding m² prices without human approval when margins are tight
- Replacement for on-site moisture / sub-base inspection
| Topic | AI can | Human must |
|---|---|---|
| Product types | Explain begonit vs granite basics | Confirm stock and lot photos |
| m² estimate | Rough range with waste hint | Measure on site |
| Install timeline | Typical crew-day math | Commit date in contract |
| Payment | Describe standard deposit policy | Approve terms in queue |
Web Chat Widget Installation
The chat widget captures leads from your public website into the same inbox as other channels.
Embed snippet
<script src="https://YOUR_DOMAIN/widget.js" data-tenant-slug="YOUR_TENANT_SLUG" data-lang="tr" async></script>
YOUR_TENANT_SLUG must match the tenant slug in admin exactly (e.g. osman-cavus-tas-parke).
Preview and test
- Demo page:
/widget/demo/YOUR_TENANT_SLUG/ - Send a test message; confirm it appears in inbox within seconds.
- Check lead record for KVKK consent metadata if privacy banner enabled.
| Problem | Likely cause | Fix |
|---|---|---|
| 404 on widget.js | Wrong domain or deploy | Contact platform support |
| 403 widget | chat_widget_enabled false | Admin → TenantNicheConfig |
| Widget loads, no messages | Inactive tenant | status = active |
| Wrong language | data-lang mismatch | Set data-lang to tr or en |
parke_tas, emlakci, etc.). Generic answers often mean wrong niche_id — platform owner fixes in admin.
WhatsApp Channel
WhatsApp messages arrive via the inbound webhook /api/webhooks/whatsapp/ using a scoped
TenantAPIKey. Setup is typically done by platform staff — operators verify results in the inbox.
Operator verification steps
- Send a test message from your phone to the connected business number.
- Confirm new Conversation with channel whatsapp and matching lead phone.
- Check DataImportJob completed (admin view) if messages missing — failed jobs mean config issue.
- Reply from your normal WhatsApp Business app; log important calls as manual inbound notes if needed.
Behavior notes
- Webhook is idempotent — duplicate Meta delivery does not duplicate leads when message ID repeats.
- High urgency keywords may increase urgency_score and trigger handoff.
- Rate limits apply per API key — burst campaigns on same key may temporarily fail.
| Symptom | Check |
|---|---|
| No inbound | API key scope includes whatsapp webhook |
| 401/403 | Signature validation and key rotation |
| Duplicate leads | Rare if idempotency keys broken — support ticket |
Leads, Stages, and Scoring
Every conversation links to a Lead record when possible. Leads carry CRM stage, source, and consent fields.
Lead stages
| Stage | Typical meaning |
|---|---|
| new | Captured, not yet worked |
| contacted | Outreach attempted |
| qualified | Fit confirmed |
| proposal | Quote sent |
| won | Revenue event linked |
| lost | Closed negative |
Sources
webchat, whatsapp, manual, import, referral — filter in admin/reports by source to measure channel ROI.
Scoring alignment
Conversation qualification_score and lead stage should move together. If AI scores high but stage stays new for a week, dashboard conversion metrics lie kindly.
Privacy, KVKK, and Consent
End customers see your privacy notice at /kvkk/. Widget and public demo forms record consent version on the lead when configured.
- Do not paste full ID numbers or health data into chat — AI logs messages in tenant database.
- Privacy profile (masked/local/regional) is set at platform level — operators see effects, not raw keys.
- Export/delete requests for end customers are handled by your business process; platform owner assists on tenant data export.
| Data type | Operator rule |
|---|---|
| Phone/email | Needed for follow-up — treat as confidential |
| Payment cards | Never collect in chat — use secure payment link |
| Exact address |
Language and Locale
Panel UI language is switched from the header (EN/TR/DE/FR/ES/AR). Tenant primary_locale drives default
widget language and some chart label refresh on analytics snapshots.
- Guide pages:
?lang=enor?lang=trquery parameter. - Widget:
data-langattribute on script tag. - Mixed-language customers: AI often detects Turkish/English mix; operator notes clarify contract language.
AI Settings (Operator View)
Operators usually cannot change LLM provider or monthly budget — those live in TenantAISettings (admin). You should know how settings affect daily behavior.
| Setting | Operator-visible effect |
|---|---|
| provider | Response latency and style (vertex, gemini-2.0-flash, ollama, etc.) |
| monthly_budget_usd | When exhausted, AI replies may stop — inbox still works |
| privacy_profile | masked vs local — support explains if answers seem "censored" |
| niche_id | Persona for widget/WhatsApp — parke_tas vs default |
| primary_model | Shown on KPI snapshot badge |
Sector Modules and Niches
ModuleConfig enables vertical features per tenant sector. Niche persona shapes AI tone and catalog hints.
| Sector / niche | Module focus | Example niche_id |
|---|---|---|
| Construction / stone | construction, sales, core | parke_tas, muteahhit |
| Real estate | sales, core | emlakci |
| Repair / HVAC | repair, core | default + repair requests list |
| Fashion / confection | sales, inventory | custom niche |
| Flower shop | sales, seasonal | cicekci |
| Coaching | core, conversations | kadin_koc (no medical advice) |
| Apiculture / wholesale | sales | balci_aricilik |
Modules appear in admin and some list views (/products/, /customers/, /orders/,
/repair-requests/) when enabled. Empty modules mean no data yet — not a broken install.
MSP Module (IT Providers) — Operator Summary
If your tenant is an IT managed service provider, additional msp_core objects exist: Clients, Sites, Devices, Tickets, SLA policies, Contracts, Time entries. Flooring/construction tenants typically ignore this section.
| Object | Operator use |
|---|---|
| Ticket | Track incidents and requests with SLA clock |
| SLA Policy | Response/resolution targets — not the same as "SHA" hash algorithm |
| Contract | Managed service agreement scope |
| Device | Asset linked to site/client |
AI triage (ARIA) for MSP tickets is evolving — when enabled, recommendations appear like other decision rows. Human approval still applies to customer-facing commitments.
API Keys and Integrations (Overview)
TenantAPIKey enables scoped programmatic access (imports, webhooks, external CRM). Operators rarely create keys; know what exists to avoid sharing secrets in chat.
- Keys shown once at creation — store in password manager.
- Scopes limit blast radius (e.g. whatsapp webhook only).
- Rotate key if employee leaves or key pasted in ticket by mistake.
Conversion Tracking and Attribution
ConversionEvent records (when module enabled) support ad attribution to Google/Meta/TikTok with hashed PII — used for marketing ROI outside the KPI snapshot.
- Landing page demo form may create leads with UTM parameters.
- Align ad campaign names with lead source field for cleaner reports.
- Attribution does not replace invoice-based revenue in KPI ROI gauge.
CRM Basics: Products, Customers, Orders
Beyond conversations, core CRM lists help quotes and KPI revenue charts.
| Area | Path | Operator tip |
|---|---|---|
| Products | /products/ | Maintain SKU, unit, price — improves AI catalog answers in future phases |
| Customers | /customers/ | Link repeat buyers to conversations manually if needed |
| Orders | /orders/ | Pipeline revenue in KPI uses open orders |
| Invoices | admin / finance flow | Paid invoices drive ROI numerator |
| Repair requests | /repair-requests/ | Service vertical — urgency often high |
Data quality_score on KPI rises with more structured records — garbage in, decorative charts out.
Best Practices for Operators
- Same-day first response on web/WhatsApp — even if full quote takes days.
- One owner per conversation — assign_user when feature used; avoids duplicate calls.
- Reject bad AI quotes fast — trains your team rhythm; model retrain is platform-side.
- Weekly KPI refresh in team meeting — look at funnel, not only lead count.
- Document wins and losses in system notes — improves retrospective accuracy.
- Keep greeting and niche aligned with actual services you sell.
- Test widget after every website deploy — CMS changes break script tags silently.
| Habit | Outcome |
|---|---|
| Clear next_action daily | Lower dropped leads |
| Honest lost states | Trustworthy conversion metrics |
| Approval discipline | Fewer costly verbal promises |
Troubleshooting Common Issues
| Symptom | Probable cause | What to do |
|---|---|---|
| Empty inbox | Wrong tenant selected (superuser) | Switch tenant in header |
| Empty inbox | No widget/WhatsApp traffic | Test demo URL; verify marketing |
| AI silent | monthly_budget_usd exhausted | Contact owner/platform |
| AI silent | Provider misconfigured | Platform checks TenantAISettings |
| Widget 403 | chat_widget_enabled false | Enable in TenantNicheConfig |
| Charts empty | No leads/orders/invoices | Import data or wait for volume |
| Stuck approvals | No operator login | Assign operator role user |
| Duplicate conversations | Same customer, two channels | Merge manually in notes; link one lead |
| WhatsApp delay | Webhook failure | Platform checks DataImportJob logs |
| Wrong persona | niche_id default | Request parke_tas or correct niche |
/healthz/ and /readyz/ are for platform ops — operators report symptoms via support, not curl.
Before opening a support ticket, capture: tenant slug, conversation ID, screenshot, approximate time (timezone), and whether issue affects all users or one channel.
Action Logs and Audit Trail
Every meaningful event — webhook ingest, approval decision, inbox edit, automated triage — can create an ActionExecutionLog row. Operators use logs to answer accountability questions without guessing.
Common providers seen in logs
| provider value | Meaning |
|---|---|
| approval_queue | Human approved/rejected a DecisionRecommendation |
| conversation_inbox | Manual timeline or state update |
| whatsapp_webhook | Inbound message processed from Meta |
| analytics_snapshot | KPI refresh side effects |
Fields worth reading
- action_type — categorizes the business action (human_handoff, pricing, etc.)
- status — completed, failed, pending
- decision_summary — one-line human-readable outcome
- input_excerpt / output_excerpt — truncated message fragments for quick review
- payload — JSON with IDs (conversation_id, recommendation_id) for support tickets
On the dashboard, recent five logs give a pulse; Approval Queue shows fifty. For disputes older than that, contact your platform owner with date range and lead name.
Practical audit scenarios
- Customer denies quoted price: Search logs for approval_queue on that date; compare recommended_action to sent PDF.
- Duplicate WhatsApp message: Check whatsapp_webhook entries — idempotent replay shows completed without second lead.
- Operator handover: New shift reads conversation_inbox logs to see what prior shift promised.
| Question | Where to look first |
|---|---|
| Who approved? | ActionExecutionLog payload updated_by_user_id + admin user list |
| Was AI involved? | model_name field — human-review vs model id |
| Did webhook run? | DataImportJob status in admin (platform) |
Public Landing Page and Demo Requests
Some tenants expose a public landing page with embedded charts and a demo request form. Operators may not edit layout, but should know leads can arrive from there as well as widget/WhatsApp.
Demo request flow
- Visitor submits name, contact, message on public home.
- System creates Lead with source metadata and KVKK consent when checkbox used.
- Lead appears in CRM; conversation may start as manual or web channel depending on configuration.
- Operator follows same inbox workflow — first response wins trust.
Operator checklist for landing leads
- Respond within one business day even if AI already sent an auto-acknowledgment.
- Verify phone format — international numbers may need manual normalization before WhatsApp outreach.
- Set realistic next_action — "Call back" with date beats empty field.
Landing page is not a substitute for your corporate website. Most construction pilots embed widget on their existing WordPress or static site instead.
Team Handovers and Shift Notes
Multi-operator teams fail when shift changes hide context. HighVibe does not replace a CRM task board — but disciplined use of system notes and next_action fields replaces sticky notes on monitors.
End-of-shift template (system note)
SHIFT 2026-06-06 eve | Operator: NAME Open: Conv #123 waiting site visit confirm; Conv #456 WhatsApp price pending approval Blocked: None / Budget approval from owner Next shift: Call Conv #123 before 10:00
Assignment
When assigned_user is set on a conversation (admin or detail view), filter inbox informally by searching assignee name in admin exports — UI assignee filter may expand in future releases.
| Handover element | Tool in platform |
|---|---|
| What was promised | Conversation timeline outbound + approval logs |
| What is blocked | handoff_required + Approval Queue |
| What is next | next_action + next_action_due_at when used |
Glossary
| Term | Definition |
|---|---|
| Tenant | Your isolated business environment on the platform |
| Operations Center | Logged-in operator UI at /app/ |
| Lead | Prospect record with contact info and stage |
| Conversation | Message thread tied to lead/customer and channel |
| Handoff | Flag that human must take over |
| DecisionRecommendation | AI-proposed action awaiting approval |
| ActionExecutionLog | Audit row for automated or human actions |
| chart_pack | JSON bundle powering KPI charts |
| niche_id | Sector persona key (e.g. parke_tas) |
| BYOK | Bring Your Own Key — customer-supplied LLM API key |
| SLA | Service Level Agreement — response time commitment (MSP) |
| HVC | High-Value Customer segmentation in analytics |
| KVKK | Turkish personal data protection law — privacy baseline |
| ROI (in app) | Model comparing paid revenue to configured AI budget |
When terminology in the panel differs from this glossary, trust the on-screen label — product copy updates faster than PDF exports.