AI 에이전트가 현재 프로세스가 끝난 뒤 승인을 요청하고 완료를 알리고 새 작업을 받고 대화를 이어가야 한다면 이메일과 메시징은 백엔드 인프라가 됩니다. 채널에는 안정된 ID, 전달 상태, 워크플로 연결, 재시도 규칙, 감사 기록이 필요합니다.
사용자가 자리에 있을 때는 앱 내 알림이 적합합니다. 닫힌 탭과 대기 중인 에이전트보다 오래 유지되어야 하는 인계에는 이메일이 유용합니다.
통신 인프라의 네 가지 역할
승인 요청
메시지에는 정확한 작업, 리소스, 범위, 관련 비용, 승인 만료 시각이 있어야 합니다. 여러 요청이 활성 상태일 때 "예"라는 답장은 안전하지 않습니다. 작업 ID 하나에 연결된 서명된 단일 목적 승인 작업을 사용하세요.
완료 또는 실패 보고
에이전트의 생각을 계속 보내지 말고 사람에게 필요한 결과를 전송하세요. 워크플로 ID, 최종 상태, 관련 아티팩트 또는 URL, 다음 작업을 포함합니다. 수신자에게 권한이 있을 때만 로그 링크를 제공합니다.
새 작업 수신
전용 받은편지함은 수신 메일을 에이전트 작업으로 바꿀 수 있습니다. 발신자 검증, 첨부 파일 제한, 스레드 ID, 프롬프트 인젝션 처리, 수신과 실행 사이의 큐가 필요합니다. 이메일을 받았다는 사실만으로 발신자에게 도구 실행 권한을 줘서는 안 됩니다.
시스템 간 조정
구조화된 전달과 재시도가 필요한 기계 간 이벤트에는 이메일보다 웹훅이 적합합니다. 사람이 읽거나 답해야 할 때는 이메일이 유용합니다. 일부 워크플로에는 둘 다 필요합니다. 웹훅이 시스템 상태를 갱신하고 이메일이 사람에게 결정을 요청할 수 있습니다.
AI 에이전트 인프라 가이드는 이런 채널을 UI 장식이 아니라 데이터베이스, 도구, ID, 실행과 나란히 둡니다.
인계 방식에 맞는 채널을 고르세요
| 요구 사항 | 기본 선택 | 이유 |
|---|---|---|
| 화면에 보이는 세션 갱신 | 앱 내 이벤트 | 지연이 짧고 기존 사용자 컨텍스트 활용 |
| 자리를 비운 사람에게 알림 | 이메일 | 세션이 끝나도 유지되고 알려진 주소에 도달 |
| 구조화된 시스템 이벤트 전달 | 웹훅 | 서명된 페이로드, 기계 파싱, 재시도 계약 |
| 에이전트가 대화 관리 | 전용 받은편지함 | 안정된 주소, 스레드, 송수신 기록 |
| 결과가 큰 결정 요청 | 서명된 승인 페이지와 알림 | 동의를 정확한 작업 하나에 연결 |
수신자가 다른 서비스이고 엄격한 전달이 중요하다면 이메일을 큐로 사용하지 마세요. 웹훅이나 메시지 시스템을 사용하고 사람에게 보여 줄 부분에만 이메일을 보냅니다.
독립형 받은편지함과 백엔드 통합 받은편지함
이메일 읽기, 분류, 답장이 주 업무인 에이전트에는 독립형 에이전트 이메일 제품이 적합합니다. AgentMail은 에이전트 받은편지함 중심으로 설계된 이메일 API의 한 예입니다.
애플리케이션에 이미 데이터베이스, 호스팅, 인증, 스토리지가 필요하고 이메일은 가끔 알림이나 답장을 처리한다면 백엔드 통합 받은편지함이 적합합니다. Cohesivity Inbox는 같은 프로젝트에서 테넌트 주소와 보내기, 받기, 목록, 읽기, 답장, 삭제 작업을 제공합니다. 임시 테넌트에는 더 엄격한 발송 및 수신자 한도가 적용됩니다. 소유권을 등록하면 월간 한도와 선택적 웹훅을 사용할 수 있습니다.
차이는 운영 방식입니다. 메일 중심 에이전트에는 전용 제품의 깊은 제어가 유리합니다. 제품 에이전트에는 이메일과 나머지 백엔드가 하나의 ID와 수명 주기를 공유하는 편이 유리할 수 있습니다.
메시지 계약을 설계하세요
모든 발신 메시지는 다음을 기록해야 합니다.
- 테넌트, 워크플로, 작업 ID
- 수신자 및 발신자 ID
- 템플릿 또는 메시지 버전
- 제공되는 경우 공급자 메시지 ID
- 시도 횟수와 최종 전달 상태
- 메시지가 나타내는 외부 효과
- 기대하는 답장 또는 승인 작업
중단된 워크플로가 같은 승인 또는 완료 이메일을 두 번 보내지 않도록 멱등성 키를 사용하세요. 실패 복구 가이드는 재시도 전에 결과를 알 수 없는 작업을 조정하는 방법을 설명합니다.
수신 콘텐츠를 신뢰하지 마세요
이메일에는 명령, 링크, 첨부 파일, 전달된 비밀 값, 다른 발신자의 인용 내용이 들어갈 수 있습니다. 데이터로 파싱하고 본문이 에이전트 정책이나 도구 권한을 덮어쓰게 하지 마세요.
발신자와 스레드 ID를 별도로 검증하세요. 첨부 파일의 유형과 크기를 제한합니다. 정의된 보관 정책에 따라 원문을 저장하세요. 수신 메시지가 파괴적이거나 비용이 발생하는 작업을 실행하기 전에 새 승인을 요구합니다.
사용자가 없을 때 인계 하나를 테스트하세요
사람에게 가장 중요한 의존성에서 워크플로를 일시 중지하세요. 애플리케이션을 닫고 알림을 전달한 뒤 링크나 답장 경로를 따라가 워크플로가 한 번만 재개되는지 확인합니다. 전달을 반복하고 작업이 중복되지 않는지도 확인하세요.
아래 프롬프트는 아무것도 보내지 않고 실제 워크플로 하나에서 빠진 인계 지점을 찾습니다.