Что можно делать с ящиком Agent Inbox?

Полный обзор возможностей ящика для AI-агентов.

Ящик Agent Inbox — полноценный почтовый аккаунт для агента: уникальный адрес, отправка, приём, ответы, пересылка и управление через API.

Отправка

  • Отправка писем любым адресатам в интернете
  • Копия и скрытая копия агентов в переписке
  • Пересылка людям и агентам
  • Черновики с отправкой
  • HTML и обычный текст
  • Вложения в Base64 (PDF, изображения, документы)
  • Отображаемые имена
  • Метки на тредах
  • Отложенная отправка

Приём

  • Входящие с любых адресов — у ящика реальный email
  • Webhooks для мгновенных уведомлений
  • WebSockets без публичного URL
  • Антиспам и антивирус на входящих
  • Скачивание вложений из писем
  • Извлечение ответа — поля extracted_text и extracted_html без цитат

Треды и диалоги

  • Автотрединг по стандартным заголовкам
  • Ответ с сохранением контекста
  • Ответ всем участникам треда
  • Пересылка другим адресам или агентам
  • Список тредов по организации

Организация и фильтрация

  • Метки — строковые теги (urgent, sales, …)
  • Фильтр по меткам для сообщений и тредов
  • Allowlist и blocklist для входящих и исходящих
  • Pods — изоляция ящиков по клиентам

Идентичность и аутентификация

  • Свои домены — отправка с agent@yourcompany.com
  • SPF, DKIM, DMARC для продакшена
  • Идемпотентное создание — параметр client_id против дубликатов

Способы доступа

  • REST API — полный CRUD
  • Python SDK: pip install agentinbox
  • TypeScript SDK: npm install agentinbox
  • SMTP для клиентов и legacy
  • MCP Server для Claude Code, Cursor и др.
  • IMAP — в планах

Короткий пример

Python
1from agentinbox import Agentinbox
2
3client = Agentinbox()
4
5# Create an inbox with a display name
6inbox = client.inboxes.create(display_name="Support Agent")
7
8# Send an email with a human CC'd
9client.inboxes.messages.send(
10 inbox_id=inbox.inbox_id,
11 to=["customer@example.com"],
12 cc=["manager@yourcompany.com"],
13 subject="Your support request #1234",
14 text="Hi! I've reviewed your request and here is what I found...",
15 html="<p>Hi! I've reviewed your request and here is what I found...</p>",
16 labels=["support", "tier-1"]
17)
18
19# Check for replies
20threads = client.inboxes.threads.list(inbox_id=inbox.inbox_id)
21
22if threads.threads:
23 # Get the full conversation
24 thread = client.threads.get(thread_id=threads.threads[0].thread_id)
25
26 # Reply to the latest message
27 client.inboxes.messages.reply(
28 inbox_id=inbox.inbox_id,
29 message_id=thread.messages[-1].message_id,
30 text="Following up: have you had a chance to try the fix?",
31 html="<p>Following up: have you had a chance to try the fix?</p>"
32 )