{"id":50294766,"url":"https://github.com/chrisrobison/emailbuddy","last_synced_at":"2026-05-28T08:04:03.905Z","repository":{"id":269143892,"uuid":"906553386","full_name":"chrisrobison/emailbuddy","owner":"chrisrobison","description":null,"archived":false,"fork":false,"pushed_at":"2024-12-21T08:23:40.000Z","size":5,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-21T09:22:31.759Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chrisrobison.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-21T08:10:32.000Z","updated_at":"2024-12-21T08:23:44.000Z","dependencies_parsed_at":"2024-12-21T09:22:38.614Z","dependency_job_id":"4504ce6e-211b-4b97-9ca9-b1ffae053e40","html_url":"https://github.com/chrisrobison/emailbuddy","commit_stats":null,"previous_names":["chrisrobison/emailbuddy"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/chrisrobison/emailbuddy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrisrobison%2Femailbuddy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrisrobison%2Femailbuddy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrisrobison%2Femailbuddy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrisrobison%2Femailbuddy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chrisrobison","download_url":"https://codeload.github.com/chrisrobison/emailbuddy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrisrobison%2Femailbuddy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33599495,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-28T02:00:06.440Z","response_time":99,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-05-28T08:04:00.404Z","updated_at":"2026-05-28T08:04:03.892Z","avatar_url":"https://github.com/chrisrobison.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📧 Intelligent Email Job Request Processor\n\nA Python application that automates the processing of job request emails using AI analysis. This tool connects to your email inbox via IMAP, analyzes incoming messages using the Claude AI API, and converts relevant job requests into structured JSON data.\n\n## ✨ Features\n\n- 🔒 Secure IMAP email server connection and authentication\n- 📨 Automated email content extraction and preprocessing\n- 🤖 Intelligent message analysis using Claude AI\n- 🔄 Structured JSON output for job request details\n- 📝 Support for multiple email formats and encodings\n- ⚙️ Configurable processing limits and folder selection\n- 📦 Automatic handling of multipart messages\n\n## 🚀 Installation\n\n1. Clone this repository:\n```bash\ngit clone https://github.com/chrisrobison/emailbuddy.git\ncd emailbuddy\n```\n\n2. Install required dependencies:\n```bash\npip install -r requirements.txt\n```\nor \n```bash\npip install imaplib-ssl anthropic\n```\n\n3. Set up environment variables:\n```bash\n# Linux/Mac 🐧 🍎\nexport EMAIL_ADDRESS=\"your.email@domain.com\"\nexport EMAIL_PASSWORD=\"your_password\"\nexport IMAP_SERVER=\"imap.your-server.com\"\nexport ANTHROPIC_API_KEY=\"your-anthropic-api-key\"\n\n# Windows 🪟\nset EMAIL_ADDRESS=your.email@domain.com\nset EMAIL_PASSWORD=your_password\nset IMAP_SERVER=imap.your-server.com\nset ANTHROPIC_API_KEY=your-anthropic-api-key\n```\n\n## 💻 Usage\n\n1. Basic usage:\n```python\n// example.py\nfrom emailbuddy import EmailBuddy\n\nprocessor = EmailBuddy(email_address, password, imap_server)\nresults = processor.process_emails(limit=5)  # Process last 5 emails\n```\n\n2. Run the main script:\n```bash\npython example.py\n```\n\nThe script will:\n- 🔌 Connect to your email server\n- 📥 Process the specified number of recent emails\n- 📊 Generate a JSON file containing any identified job requests\n- 💾 Save the results with a timestamp in the filename\n\n## 📄 Output Format\n\nJob requests are converted to JSON with the following structure:\n```json\n{\n    \"type\": \"job_request\",\n    \"timestamp\": \"2024-12-21 10:30:00\",\n    \"subject\": \"New Project Request - Website Redesign\",\n    \"requestor\": \"John Smith\",\n    \"project\": \"Website Redesign\",\n    \"description\": \"Complete overhaul of company website\",\n    \"priority\": \"high\",\n    \"deadline\": \"2025-01-15\",\n    \"requirements\": [\n        \"React expertise\",\n        \"Mobile-first design\",\n        \"SEO optimization\"\n    ],\n    \"additional_notes\": \"Budget approval pending\"\n}\n```\n\n## ⚙️ Configuration\n\nYou can customize the following parameters in the `EmailProcessor` class:\n- 🔌 IMAP port (default: 993)\n- 📁 Email folder (default: \"INBOX\")\n- 🔢 Processing limit (default: 10 messages)\n- 🎯 AI model parameters (temperature, max tokens)\n\n## 🔒 Security Notes\n\n- 🔑 Store sensitive credentials in environment variables or a secure configuration manager\n- 🔐 Use SSL/TLS for email connections (default port 993)\n- ⏱️ Consider implementing rate limiting for API calls\n- 🔄 Regularly rotate API keys and credentials\n\n## 🤝 Contributing\n\n1. 🍴 Fork the repository\n2. 🌿 Create a feature branch\n3. 💾 Commit your changes\n4. 🚀 Push to the branch\n5. 📬 Create a Pull Request\n\n## 📜 License\n\nThis project is licensed under the MIT License - see the LICENSE file for details.\n\n## 🙏 Acknowledgments\n\n- 🤖 Uses the Anthropic Claude API for message analysis\n- 🐍 Built with Python's imaplib for email processing\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchrisrobison%2Femailbuddy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchrisrobison%2Femailbuddy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchrisrobison%2Femailbuddy/lists"}