Step 01
You message
WhatsApp DM, Slack @mention, or Dashboard chat. The channel only decides where the reply lands.
Message Tempa on WhatsApp, Slack, or the Dashboard — it reaches the same tools, the same memory, and replies on the channel you used.
All channels share one daemon, one agent, one memory — your data stays local.
The channel you use only decides where the reply lands — never which tools are available.
| Tool | Capabilities | Slack | Dashboard | |
|---|---|---|---|---|
| Gmail | read · send · search | |||
| Calendar | events · reminders | |||
| Google Meet | join · record · minutes | |||
| GitHub / QA | CI · scans · fixes | |||
| Jira · Notion | tickets · docs |
Every request — whether from WhatsApp, Slack, or Dashboard — follows the same pipeline.
sequenceDiagram
actor User
participant Ch as WhatsApp / Slack / Dashboard
participant Daemon as Daemon :8787
participant Mem as Unified Memory
participant Agent as Agent Brain
participant Tool as Gmail · Calendar · Meet · QA · Jira
participant AI as Claude / Groq
User->>Ch: "What's on my calendar tomorrow?"
Ch->>Daemon: inbound message + channel context
Daemon->>Mem: ingest message to ChromaDB
Daemon->>Agent: run_coordinator_full()
Agent->>Mem: read vault rules + search RAG
Mem-->>Agent: relevant context + rules
Agent->>Tool: calendar specialist — fetch events
Tool-->>Agent: live event data
Tool->>Mem: ingest result to ChromaDB
Agent->>AI: prompt + context + tool results
AI-->>Agent: natural language reply
Agent-->>Daemon: response
Daemon-->>Ch: post / stream answer
Ch-->>User: "You have 2 meetings tomorrow..."