diff --git a/apps/multiplatform/plans/20260207-support-bot.md b/apps/multiplatform/plans/20260207-support-bot.md index 1b13f70451..8790155921 100644 --- a/apps/multiplatform/plans/20260207-support-bot.md +++ b/apps/multiplatform/plans/20260207-support-bot.md @@ -1,178 +1,59 @@ -# SimpleX Support Bot - Strategic Plan +# SimpleX Support Bot — MVP Product Specification -## 1. WHY: Strategic Rationale +## Principles -### The Problem +- **Opt-in**: Grok is never used unless the user explicitly chooses it. +- **User in control**: The user can switch between Grok and team at any time, and always knows who they are talking to. Once a team member engages, the conversation stays with the team. +- **Minimal friction**: No upfront choices or setup — the user just sends their question. +- **Ultimate transparency**: The user always knows whether they are talking to a bot, Grok, or a human, and what happens with their messages. -SimpleX Chat's unique privacy model creates a paradox: **the very features that make it secure also make it confusing for new users.** +## Step 1 — Welcome (on connect, no choices, no friction) -- Users abandon during onboarding because the connection model (no phone numbers, QR codes, links) is unfamiliar -- When messages don't arrive instantly, users assume the app is broken rather than understanding the relay-queue architecture -- Support requests go unanswered outside business hours, leaving frustrated users -- Human support cannot scale with user growth +Bot sends: +> Hello! Feel free to ask any question about SimpleX Chat. +> *Only SimpleX Chat team has access to your messages.* This is a SimpleX Chat team bot — it is not any LLM or AI. +> *Join public groups*: [existing link] +> Please send questions in English, you can use translator. -### User Pain Points (from research) +No mention of Grok, no choices. User simply types their question. Messages at this stage are only forwarded to the team — never to any third party. -| Pain Point | Impact | -|------------|--------| -| "How do I add someone?" | Blocks first use entirely | -| "Messages aren't arriving" | Destroys trust in the platform | -| "No notifications" | Users miss messages, blame SimpleX | -| "Battery draining" | Users uninstall | -| "Groups don't work like Signal" | Feature confusion | +## Step 2 — After user sends first message -### Strategic Value +All messages are forwarded to the team group. Bot replies: +> Thank you for your message, it is forwarded to the team. +> It may take a team member up to 24 hours to reply. +> +> Click /grok if your question is about SimpleX apps or network, is not sensitive, and you want Grok LLM to answer it right away. **Your previous message and all subsequent messages will be forwarded to Grok** until you click /team. You can ask Grok questions in any language and it will not see your profile name. +> +> We appreciate if you try Grok: you can learn a lot about SimpleX Chat from it. It is objective, answers the way our team would, and it saves our team time. -1. **Reduce churn at critical moments** - Help users when confusion strikes, not after they've given up -2. **Scale support without scaling headcount** - Handle repetitive questions automatically -3. **Improve consistency** - Every user gets the same high-quality answer -4. **24/7 availability** - Support across all timezones -5. **Preserve human bandwidth** - Escalate only complex issues to humans -6. **Demonstrate the platform** - The bot itself showcases SimpleX capabilities +On weekends, the bot says "48 hours" instead of "24 hours". ---- +## Step 3 — `/grok` (Grok mode) -## 2. WHAT: Scope & Deliverables +Bot replies: +> *You are now chatting with Grok. You can send questions in any language.* Your message(s) have been forwarded. +> Send /team at any time to switch to a human team member. -### Core Capabilities +Grok must be added as a separate participant to the chat, so that user can differentiate bot messages from Grok messages. When switching to team mode, Grok is removed. -| Capability | User Need Addressed | -|------------|---------------------| -| **Onboarding Assistance** | Guide users through connection model, QR codes, sharing links | -| **Delivery Troubleshooting** | Explain delays, suggest fixes, set expectations | -| **Notification Help** | Platform-specific guidance for Android/iOS settings | -| **Group Chat Guidance** | Explain capabilities and limitations vs other messengers | -| **Battery Optimization** | Practical tips to reduce power consumption | -| **Human Escalation** | Seamless handoff when bot cannot resolve | +Grok is prompted as a privacy expert and SimpleX Chat evangelist who knows everything about SimpleX Chat apps, network, design choices, and trade-offs. It answers honestly — for every criticism it explains why the team made that design choice. Relevant documentation pages and links must be injected into the context by the bot. -### User Outcomes +## Step 4 — `/team` (Team mode, one-way gate) -Users should be able to: -- Connect with their first contact within 5 minutes of asking for help -- Understand why a message is delayed and what to do -- Fix notification issues without leaving SimpleX -- Know what groups can and cannot do before creating one -- Reach a human when the bot cannot help +Bot adds a team member to the support group and replies: +> A team member has been added and will reply within 24 hours. You can keep describing your issue — they will see the full conversation. -### In Scope (MVP) +**One-way gate:** once the user switches to team mode, `/grok` command is permanently disabled for this conversation and Grok participant is removed. Bot replies to any subsequent `/grok`: +> You are now in team mode. A team member will reply to your message. -- Automated responses for top 5 user pain points -- Welcome experience for new connections -- Recognition of "I need a human" requests -- Logging of unresolved queries for improvement +This gate should trigger only after team joins and member sends message to team. -### Out of Scope (Future) +## Commands summary -- Proactive outreach (messaging users first) -- Multi-language support -- Voice/video call assistance -- Account recovery -- Payment/subscription support -- Bug reporting intake +| Command | Available in | Effect | +|---------|-------------|--------| +| `/grok` | Team Queue (before escalation only) | Enter Grok mode | +| `/team` | Grok mode or Team Queue | Add team member, permanently enter Team mode | ---- - -## 3. SUCCESS METRICS - -### Primary KPIs - -| Metric | Target | Why It Matters | -|--------|--------|----------------| -| **Automated Resolution Rate** | 70%+ | Bot handles majority without human | -| **First Response Time** | <5 seconds | Instant help builds trust | -| **Escalation Rate** | 15-25% | Too low = false resolutions; too high = bot not helping | -| **User Return Rate** | Track | Do users come back with new questions? (good sign) | - -### Anti-Metrics (Things to Avoid) - -| Anti-Metric | Signal | -|-------------|--------| -| **Frustration Loops** | User asks same question 3+ times | -| **Immediate Escalation Requests** | Bot responses unhelpful | -| **False Resolution** | User stops responding but issue unresolved | -| **Conversation Abandonment** | User disconnects mid-conversation | - -### Qualitative Signals - -- User thanks the bot -- User successfully completes suggested action -- Escalated conversations resolved faster (context preserved) - ---- - -## 4. PRIORITIES - -### P0: Must Have (MVP) - -| Priority | Rationale | -|----------|-----------| -| Onboarding support | #1 user blocker - without this, users never start | -| Message delivery troubleshooting | #1 complaint - perceived reliability | -| Human escalation path | Safety net - bot must never be a dead end | -| Reliability | Bot must always respond - silence is worse than wrong answer | - -### P1: Should Have (v1.1) - -| Priority | Rationale | -|----------|-----------| -| Notification guidance | High-frequency issue, platform-specific | -| Feature education | Reduces confusion, increases engagement | -| Conversation context | Humans need history when they take over | - -### P2: Nice to Have (v1.2+) - -| Priority | Rationale | -|----------|-----------| -| Platform-specific guidance | Android vs iOS nuances | -| Comparison content | "How is this different from Signal?" | - -### P3: Future Vision - -| Priority | Rationale | -|----------|-----------| -| Learning from escalations | Bot improves over time | -| Proactive onboarding | Reach out before users get stuck | -| Analytics dashboard | Understand support patterns | -| Multi-language | Expand global reach | - ---- - -## 5. STRATEGIC ALIGNMENT - -### How This Supports SimpleX Mission - -| SimpleX Value | Bot Alignment | -|---------------|---------------| -| **Privacy** | Bot runs on SimpleX itself - no external services | -| **Decentralization** | Bot uses same infrastructure as users | -| **Transparency** | Open source, auditable responses | -| **User empowerment** | Teaches users to help themselves | - -### Competitive Positioning - -- **Signal**: No in-app support - users search forums -- **Telegram**: Bot ecosystem exists but privacy questionable -- **SimpleX**: Private, instant, helpful support within the secure platform - ---- - -## 6. RISKS & MITIGATIONS - -| Risk | Mitigation | -|------|------------| -| Bot gives wrong answers | Human review of FAQ content; easy escalation | -| Bot creates false confidence | Clear "I don't know" responses; never guess | -| Users expect AI chat | Set expectations in welcome message | -| Bot becomes spam vector | Rate limiting; no proactive messaging initially | -| Answers become outdated | Regular content review tied to releases | - ---- - -## 7. DECISION LOG - -| Decision | Rationale | -|----------|-----------| -| Start with FAQ, not AI | Predictable, auditable, controllable | -| MVP = 5 topics only | Focus on highest-impact pain points | -| Human escalation from day 1 | Bot must never be a dead end | -| Run on SimpleX, not external | Dogfooding; demonstrates platform capability | +**Unrecognized commands:** treated as normal messages in the current mode.