A lightweight AI agent that monitors emails for instructions and executes tasks on your server. Built with Claude and Pushover integration for seamless task automation and notifications.
- 📧 Email monitoring with secure admin code verification
- 🧠 Powered by Claude's AI for natural language task interpretation
- 📱 Push notifications via Pushover for task status updates
- 📝 Blog management with automated Git deployment
- 🛠️ Extensible tool system for custom functions using Anthropic's tools format
- Automated blog updates with Markdown support
- Remote script execution on Linode servers
- Task status monitoring via push notifications
- Python 3.x
- Anthropic API key (for Claude)
- Pushover account (for notifications)
- Gmail account with App Password
- GitHub CLI (for blog deployment)
Initialize the SOA service with your credentials:
soa = SOAService(
"your-email@gmail.com",
"your-app-password",
'SUBJECT "your-admin-code"',
"your-anthropic-api-key",
"your-pushover-app-token",
"your-pushover-user-key"
)
SOA uses Anthropic's tool calling format. To add new functions, update tools.json
with your function schema. Pro tip: Feed your tools.json
to an AI assistant to easily generate schemas for new functions. Example tool definition:
{
"name": "notification_send",
"description": "Send a notification with optional title and priority",
"input_schema": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "The notification message content"
},
"title": {
"type": "string",
"description": "Optional notification title"
}
},
"required": ["message"]
}
}
-
Install required packages:
pip install anthropic markdown
-
Set up your credentials in main.py
-
Run the main:
python main.py
-
Send an email with your admin code in the subject line
-
SOA will process your instructions and send notifications about the results
This project falls under the GNU general public license.