How kasturimaheshbabu2316-mc/email_agent works
The repository is an email-outreach tool: users load and select contacts, generate personalized messages, optionally rewrite them, review or edit them, then send, draft, or skip while recording outcomes. The tree contains both a terminal workflow and Streamlit front ends, plus overlapping root-level and the-closer implementations; the graph centers on the more fully evidenced the-closer workflow and includes the root Streamlit entry point. Logger internals were not sampled, so its storage destination is left unspecified.
Main entry points: email_generator.py Template generator · main.py Terminal workflow · streamlit_app.py Streamlit outreach · app.py Contact draft UI
Components 15
Contact inputs
- Contact files
EMAIL/contacts.json - Contact loader
EMAIL/the-closer/loader.py
Email composition
- Template generator
EMAIL/the-closer/email_generator.py - Email template
EMAIL/the-closer/templates/email_template.txt - Rewrite client
EMAIL/the-closer/llm_client.py
User workflows
- Terminal workflow
EMAIL/the-closer/main.py - Streamlit outreach
EMAIL/streamlit_app.py - Contact draft UI
EMAIL/the-closer/app.py - Preview and choice
EMAIL/the-closer/preview.py
Delivery and records
- Email sender
EMAIL/the-closer/email_sender.py - Outreach logger
EMAIL/the-closer/logger.py - Outreach log
Other components
- Outreach user
- SMTP service
- Email recipient
Connections 25
- Outreach user → Terminal workflow: starts workflow
- Outreach user → Streamlit outreach: uses interface
- Outreach user → Contact draft UI: selects contact
- Contact files → Contact loader: contact data
- Terminal workflow → Contact loader: loads contacts
- Streamlit outreach → Contact loader: loads contacts
- Contact draft UI → Contact loader: loads contacts
- Terminal workflow → Template generator: renders email
- Streamlit outreach → Template generator: renders email
- Contact draft UI → Template generator: renders email
- Template generator → Email template: renders from
- Terminal workflow → Template generator: requests rewrite
- Streamlit outreach → Template generator: requests rewrite
- Contact draft UI → Template generator: requests rewrite
- Template generator → Rewrite client: rewrites body
- Terminal workflow → Preview and choice: shows and confirms
- Terminal workflow → Email sender: sends or drafts
- Streamlit outreach → Email sender: sends or drafts
- Contact draft UI → Email sender: sends or drafts
- Email sender → SMTP service: sends message
- SMTP service → Email recipient: delivers email
- Terminal workflow → Outreach logger: records outcome
- Streamlit outreach → Outreach logger: records outcome
- Contact draft UI → Outreach logger: records outcome
- Outreach logger → Outreach log: writes entries