VOS — VIRTU4L
Operations System
with Local AI
A Slack-native operations brain for a real-world VR venue — where the team already works. One operator can run a full day independently. The director keeps full visibility. Dasha, the AI assistant, handles what the team would otherwise forget.
How might we give a solo VR venue operator full operational control — without building a custom admin panel, adding new logins, or switching tools during the workday?
Operations Running on WhatsApp and Memory
VIRTU4L is an independent VR entertainment venue in Tuxtla Gutiérrez, Chiapas — sessions are short, guided, and high-turnover. One operator runs the floor: welcoming guests, managing headsets, processing sales, tracking reservations, and coordinating events.
Most small venues survive on a mix of WhatsApp groups, spreadsheets, and memory. That works until it doesn't — a double-booking, a missed opening checklist, an event nobody confirmed, a headset nobody cleaned. There was no single place to run the day, no visibility for the director, and no structured path for operators to grow.
No structured workflow. Opening and closing tasks lived in a WhatsApp thread. Reservations were manual. Sales reconciliation happened at end of shift — if at all.
No real-time visibility. Had to ask the operator for updates instead of seeing them. Financial summaries required manual compilation. No pattern data, only anecdotes.
Dasha in Action
VOS meets the team inside Slack — the tool they already use. Each channel has a dedicated workflow. Below is a typical start-of-shift interaction in #operaciones-local.
☐ Encender televisores y verificar conexión
☐ Revisar visores V2, V3, V4 — carga y limpieza
☐ Confirmar reservaciones activas del día
☐ Abrir caja y verificar cambio disponible
☐ Señalización y área de experiencia lista
Tienes 2 reservaciones confirmadas: 11:00 y 14:30. Escríbeme reservacion para ver detalles.
Loyverse actualizado · Corte del día: $100 MXN acumulado.
DASHA-GUARD: precio verificado ✓ · stock suficiente ✓
Ventas: $650 MXN · 13 sesiones · 4 efectivo · 9 transferencia
Reservaciones completadas: 2/2 ✓
Visores operativos: V2 ✓ V3 ✓ V4 ⚠ (batería baja al cierre)
Checklist apertura: completado 09:18 · cierre: pendiente
One Slack Layer, Four Dedicated Channels
VOS is not a website and not a mobile app. It is an operations layer inside Slack — where the team already communicates. Bolt SDK Socket Mode means no public URL and no inbound ports; the bot initiates an outbound WebSocket to Slack and stays live on a Mac mini running pm2.
The architecture separates concerns by channel: operations, learning, marketing, and director oversight each get a dedicated agent with specific commands and guardrails. DashaGuard sits in front of every write operation — calendar events, sales records, financial actions — enforcing double-booking checks, price tolerance windows, and director authentication on high-risk commands.
Daily checklist, reservaciones (Google Calendar), ventas (Loyverse POS), headset tracking, event setup, and gotcha coordination. One operator, one thread.
Private director view. Financial dashboards, DashaGuard alerts, shift summaries, and two-factor authentication for sensitive writes. No operator access.
Career path Levels 1–5, Kanban-style task tracking, onboarding coaching, and daily learning nudges. Training is part of the workday, not a separate PDF.
MKT-COACH advisory powered by Ollama. Content planning tied to real venue data — trending games, session signals, and seasonal context for Tuxtla Gutiérrez.
System Architecture — VOS
Socket Mode means no reverse proxy, no public endpoint, no load balancer. The bot owns the connection. All external writes go through DashaGuard.check() before touching any service.
Why Slack and not a web panel? The team already lives in Slack. A custom admin panel means a new URL to bookmark, a new login to forget, and a screen nobody opens unless they're told to. VOS meets people where they work — no onboarding friction, no context-switching mid-shift. The AI assistant feels like a colleague in the thread, not a form to fill out.
Local LLM (Ollama) over cloud API for advisory agents. Marketing coaching and career conversations don't need GPT-4. Ollama's gemma3:4b runs locally — no per-token cost, no data leaving the machine, no latency spike. For operational commands (checklist, sales, calendar) the bot uses deterministic business logic, not LLM inference, for reliability and auditability.
"Building this entirely with Claude Code and Cursor showed me how fast a solo developer can move when the AI partner understands the domain. The hardest part wasn't the code — it was designing Dasha's behavioral rules so she never invents data and always knows the difference between a suggestion and a verified fact. Getting that boundary right is a design problem, not an engineering one."