mirror of
https://github.com/agent0ai/agent-zero.git
synced 2026-04-28 03:30:23 +00:00
Add shared transport-level control commands so Telegram, WhatsApp, and email threads can manage the active chat directly. - add a shared integration command helper for /project, /config, /send, and /queue send - wire native command handling into Telegram and WhatsApp sessions - expose Telegram control commands through bot command routing and update transport docs - add email thread command handling for existing A0 email conversations - add an optional per-handler email conversation preset backed by model presets in the email settings UI and default config - document the new transport control flow across Telegram, WhatsApp, and email |
||
|---|---|---|
| .. | ||
| api | ||
| extensions/python | ||
| helpers | ||
| prompts | ||
| webui | ||
| default_config.yaml | ||
| plugin.yaml | ||
| README.md | ||
Email Integration
Communicate with Agent Zero through email inboxes and send replies back over SMTP.
What It Does
This plugin polls configured mailboxes, downloads incoming messages and attachments, decides whether a message should continue an existing chat or start a new one, and sends replies back by email.
It supports both:
- IMAP inbox polling
- Exchange inbox polling
- SMTP replies
Main Behavior
- Mailbox polling
- Tracks per-handler mailbox state in
usr/email/state.json. - Uses UID tracking for IMAP accounts so only new mail is processed after initialization.
- Tracks per-handler mailbox state in
- Attachment handling
- Downloads attachments into
usr/email/attachments.
- Downloads attachments into
- Dispatcher workflow
- Reuses or creates a background
Email Dispatchercontext. - Uses model prompts to decide whether an email belongs to an existing chat or should open a new one.
- Supports handler-level model presets for new chats, in addition to the dispatcher's utility/chat routing mode.
- Reuses or creates a background
- Thread routing
- Can continue an existing chat by thread ID found in the email subject.
- Falls back to model-based dispatch if no direct thread match is available.
- Email replies inside an existing Agent Zero thread can use
/project,/config, and/sendcontrol commands.
- Notifications and persistence
- Saves chats after routing and emits notifications about new or continued conversations.
Key Files
- Core orchestration
helpers/handler.pymanages polling, state persistence, dispatching, and reply flow.
- Mail helpers
helpers/imap_client.pyhandles IMAP and Exchange fetching.helpers/smtp_client.pyhandles outbound replies.helpers/dispatcher.pyformats chat summaries and parses dispatcher decisions.
- API and extensions
api/andextensions/connect the polling loop and UI-facing operations into the main app.
Configuration Scope
- Settings section:
external - Per-project config:
false - Per-agent config:
false
Plugin Metadata
- Name:
_email_integration - Title:
Email Integration - Description: Communicate with Agent Zero via email. Supports IMAP/Exchange inbox polling with SMTP replies.