From 24b77d39819b329adf3585d8f0fb65306901ed3a Mon Sep 17 00:00:00 2001 From: "Rodrigo Rodriguez (Pragmatismo)" Date: Sun, 15 Mar 2026 20:30:25 -0300 Subject: [PATCH] Add Vibe app docs, screen SVG, update mail/crm/campaigns docs --- src/07-user-interface/apps/campaigns.md | 26 ++++ src/07-user-interface/apps/crm.md | 14 ++ src/07-user-interface/apps/mail.md | 25 ++++ src/07-user-interface/apps/vibe.md | 84 ++++++++++++ src/SUMMARY.md | 1 + src/assets/suite/vibe-screen.svg | 165 ++++++++++++++++++++++++ 6 files changed, 315 insertions(+) create mode 100644 src/07-user-interface/apps/vibe.md create mode 100644 src/assets/suite/vibe-screen.svg diff --git a/src/07-user-interface/apps/campaigns.md b/src/07-user-interface/apps/campaigns.md index 2ae04890..6cabc38f 100644 --- a/src/07-user-interface/apps/campaigns.md +++ b/src/07-user-interface/apps/campaigns.md @@ -1 +1,27 @@ # Campaigns - Marketing Automation + + +## Sending a Campaign + +Click **Send** on any campaign card to dispatch it immediately via `POST /api/crm/campaigns/:id/send`. + +Campaign metrics (opens, clicks, unsubscribes) load via `GET /api/crm/metrics/campaign/:id`. + +## Enabling Campaigns + +Add `campaigns` to `apps=` in `botserver/.product`: + +``` +apps=...,campaigns +``` + +## API Endpoints + +| Endpoint | Method | Description | +|----------|--------|-------------| +| `/api/crm/campaigns` | GET | List campaigns | +| `/api/crm/campaigns` | POST | Create campaign | +| `/api/crm/campaigns/:id/send` | POST | Send campaign | +| `/api/crm/metrics/campaign/:id` | GET | Campaign metrics | +| `/api/crm/lists` | GET | Marketing lists | +| `/api/crm/templates` | GET | Email templates | diff --git a/src/07-user-interface/apps/crm.md b/src/07-user-interface/apps/crm.md index 45ce2813..b306a4af 100644 --- a/src/07-user-interface/apps/crm.md +++ b/src/07-user-interface/apps/crm.md @@ -116,6 +116,20 @@ Real-time dashboard showing: --- +## Email Tab + +The **Email** tab in CRM shows all emails linked to the selected contact. Click any contact row to load their emails via `GET /api/ui/email/list?contact_email=`. + +Click **Compose Email** to open the email modal which posts to `POST /api/crm/email/send`. The email is automatically linked to the contact via `email_crm_links`. + +## Enabling CRM + +Add `crm` to `apps=` in `botserver/.product`: + +``` +apps=...,crm +``` + ## API Endpoints | Endpoint | Method | Description | diff --git a/src/07-user-interface/apps/mail.md b/src/07-user-interface/apps/mail.md index 506a7a4e..032ae072 100644 --- a/src/07-user-interface/apps/mail.md +++ b/src/07-user-interface/apps/mail.md @@ -305,6 +305,31 @@ email-from,Your Name --- +## Integration Features + +### Snooze +Hide an email until later. Click the snooze button in the toolbar to pick a time (later today, tomorrow, next week). The email reappears automatically at the chosen time via `POST /api/email/snooze`. + +### CRM Panel +When viewing an email, the CRM panel automatically looks up the sender via `GET /api/crm/contact/by-email/:email` and shows linked deals. Click **Log to CRM** to record the email against a contact or opportunity. + +### AI Lead Suggestion +If the email looks like a sales inquiry, an AI banner appears offering to create a lead via `POST /api/ai/extract-lead`. + +### Campaign Actions +Add the sender to a marketing list directly from the email via `POST /api/crm/lists/:id`. + +### Smart Replies +AI-suggested short replies appear below the email content. + +## Enabling Mail + +Add `mail` to `apps=` in `botserver/.product`: + +``` +apps=...,mail +``` + ## See Also - [Suite Manual](../suite-manual.md) - Complete user guide diff --git a/src/07-user-interface/apps/vibe.md b/src/07-user-interface/apps/vibe.md new file mode 100644 index 00000000..a82fdd9b --- /dev/null +++ b/src/07-user-interface/apps/vibe.md @@ -0,0 +1,84 @@ +# Vibe — AI Development Environment + +> **Chat-driven coding, deployment, and infrastructure management** + +Vibe Interface Screen + +--- + +## Overview + +Vibe is the integrated development environment inside General Bots Suite. Describe what you want to build in plain language and Mantis AI agents generate task nodes, write code, run commands, and deploy — all from a single interface. + +--- + +## Features + +### Chat-Driven Development +Type a request in the chat panel. Mantis #1 classifies the intent via `POST /api/autotask/classify`, generates a plan, and creates task nodes on the canvas. + +### Canvas (Task Nodes) +Each task is represented as a node on the horizontal canvas showing: +- File count, estimated time, token usage +- Status (Planning → In Progress → Done) +- Sub-tasks (expandable file list) +- **Details** button — fetches full task info from `GET /api/autotask/tasks/:id` +- **Delete** button — removes node from canvas + +Canvas state is **persisted in localStorage** (`vibe-canvas-nodes`) and restored on page load. + +### Command Palette +Press `Cmd+K` (or `Ctrl+K`) to open the command palette: + +| Command | Action | +|---------|--------| +| New file | Opens editor panel | +| Open terminal | Opens terminal panel | +| Git status | Opens git panel | +| Database schema | Opens database panel | +| Clear canvas | Removes all task nodes | +| Deploy | Triggers deployment | + +Press `Escape` to close. + +### Monaco Editor +Full code editor with: +- File tree sidebar → `GET /api/editor/files` +- Click to open files → `GET /api/editor/file/*path` +- `Ctrl+S` to save → `POST /api/editor/file/*path` +- Syntax highlighting for Rust, JS, HTML, CSS, TOML + +### Terminal +Embedded xterm.js terminal connected via WebSocket → `/api/terminal/ws`. + +Create, list, and kill terminal sessions via `POST /api/terminal/create`, `GET /api/terminal/list`, `POST /api/terminal/kill`. + +### Database Tool +- ER diagram of all tables +- Table viewer with pagination → `GET /api/database/table/:name/data` +- SQL query builder → `POST /api/database/query` +- Row insert/update/delete → `POST /api/database/table/:name/row` + +### Git Integration +- Status and diff viewer → `GET /api/git/status`, `GET /api/git/diff/:file` +- Commit → `POST /api/git/commit` +- Push → `POST /api/git/push` +- Branch management → `GET /api/git/branches`, `POST /api/git/branch/:name` +- Log → `GET /api/git/log` + +### Deployment +Click **Deploy** to trigger `POST /api/bots/:id/deploy`. Real-time progress streams via the task progress WebSocket, shown in the chat panel. + +--- + +## Enabling Vibe + +Vibe is always available in the suite — no feature gate required. Access it from the desktop icon or via `http://localhost:3000/suite/vibe`. + +--- + +## See Also + +- [Tasks](./tasks.md) — AutoTask system that powers Vibe +- [Designer](./designer.md) — Visual bot designer +- [Drive](./drive.md) — File storage backing the editor diff --git a/src/SUMMARY.md b/src/SUMMARY.md index a2383bbd..107dc242 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -164,6 +164,7 @@ - [Monitoring Dashboard](./07-user-interface/monitoring.md) - [HTMX Architecture](./07-user-interface/htmx-architecture.md) - [Suite - Full Desktop](./07-user-interface/apps/suite.md) + - [Vibe - AI Dev Environment](./07-user-interface/apps/vibe.md) - [Chat - AI Assistant](./07-user-interface/apps/chat.md) - [Drive - File Management](./07-user-interface/apps/drive.md) - [Tasks](./07-user-interface/apps/tasks.md) diff --git a/src/assets/suite/vibe-screen.svg b/src/assets/suite/vibe-screen.svg new file mode 100644 index 00000000..176abfd2 --- /dev/null +++ b/src/assets/suite/vibe-screen.svg @@ -0,0 +1,165 @@ + + + + + + + + + + + Vibe — AI Development Environment + + + + + + + + + + + 💬 + 📁 + 🗄️ + ⌨️ + 🔀 + + + + + + + + Mantis Chat + Cmd+K for commands + + + + + + Build a contact form + with email validation + + + + 🤖 Analyzing request… + Creating 3 task nodes + ✓ Plan ready + + + + 📋 Task progress: + 2/3 steps complete + + + + + + Describe what to build… + + + + + + CANVAS — TASK NODES + + + + 3 files · 5m · ~12k tokens + HTML Form + Contact form with + email validation + + Done + + + + Details + + + + + + + + + 2 files · 3m · ~8k tokens + Validation JS + Client-side email + format checking + + In Progress + + + Details + + + + + + + + 1 file · 2m · ~5k tokens + API Handler + POST endpoint to + process submissions + + Planning + + + Details + + + + + + + + + contact.html + validate.js + handler.rs + + + + <form id="contact-form"> + <input type="email" name="email" required> + <textarea name="message"></textarea> + <button type="submit">Send</button> + </form> + + + + + + + Ctrl+S Save | Cmd+K Palette | Git: main ✓ | Terminal: 1 active + + + + + + ⌘K Type a command… + 📁 New file + ⌨️ Open terminal + 🔀 Git status +