7.3 KiB
MyOrg Assistant - Quick Start Guide
Get your personal assistant up and running in 15 minutes!
What You're Building
A complete AI-powered personal assistant that:
- 🤖 Manages your GTD tasks via Discord or web interface
- 🌅 Sends morning briefings at 8 AM
- 🌆 Sends evening summaries at 8 PM
- ⏰ Warns about deadlines automatically
- 🔄 Syncs everything via git
- 📊 Provides a beautiful web dashboard
Prerequisites Checklist
Before starting, ensure you have:
- Python 3.11+ installed
- Git installed
- LiteLLM endpoint running (with Claude API access)
- Discord bot created (5 min setup - see below)
- myorg repository (or use test data)
- k3s cluster (optional - for production deployment)
Step 1: Get the Code (2 minutes)
git clone <your-repo-url>
cd myorg-assistant
# Create virtual environment
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
Step 2: Create Discord Bot (5 minutes)
- Visit Discord Developer Portal
- Click "New Application" → Name it "MyOrg Assistant"
- Go to "Bot" → Click "Add Bot"
- Enable these intents:
- ✅ Message Content Intent
- ✅ Server Members Intent
- Click "Reset Token" → Copy this token!
- Go to "OAuth2" → "URL Generator"
- Check:
bot,applications.commands - Bot Permissions:
Send Messages,Read Messages,Read Message History
- Check:
- Open the generated URL to invite bot to your server
Step 3: Configure Environment (3 minutes)
cp .env.example .env
Edit .env and fill in:
# === REQUIRED ===
# Your LiteLLM endpoint
LITELLM_ENDPOINT=http://localhost:4000
LITELLM_API_KEY=sk-your-key
# Discord bot token (from Step 2)
DISCORD_BOT_TOKEN=YOUR.BOT.TOKEN.HERE
DISCORD_CHANNEL_ID=123456789 # Right-click channel → Copy ID
# Your myorg repository
MYORG_REPO_PATH=./tests/fixtures/test_myorg # Use test data for now
GIT_REPO_URL=https://github.com/yourusername/myorg.git
GIT_USERNAME=yourusername
GIT_TOKEN=ghp_your_github_token
# === OPTIONAL ===
# Web interface password (leave empty for no password)
WEB_PASSWORD=mypassword
# Your timezone
TIMEZONE=Europe/Madrid
Quick Tip: Don't have a myorg repo? Use the test data included:
export MYORG_REPO_PATH=./tests/fixtures/test_myorg
Step 4: Test Locally (2 minutes)
Test CLI Mode
python -m src.main cli
Try these commands:
You: list files
You: show all tasks
You: add task: Test the system @computer-deep
You: exit
Test Discord Bot
python -m src.main bot
In Discord:
@MyOrgBot help
@MyOrgBot add task: Test Discord integration
@MyOrgBot /tasks
Test Web Interface
python -m src.main web
Visit: http://localhost:8000
Step 5: Deploy to Kubernetes (3 minutes)
Quick Deploy
cd k8s
# 1. Create secret with your credentials
cp secret.yaml.example secret.yaml
# Edit secret.yaml with your tokens
kubectl apply -f secret.yaml
# 2. Run deployment script
./deploy.sh
Verify Deployment
# Check pod status
kubectl get pods -l app=myorg-assistant
# View logs
kubectl logs -f deployment/myorg-assistant
# Check scheduled jobs
kubectl get cronjobs
You should see:
- Main pod running (Discord bot + web server)
- 5 CronJobs configured
- Web service exposed on port 8000
What Happens Next?
Once deployed, your assistant will:
Immediately:
- ✅ Respond to Discord messages
- ✅ Serve web interface at port 8000
- ✅ Sync git every 15 minutes
At 8:00 AM (your timezone):
- 🌅 Send morning briefing to Discord
Every Hour:
- ⏰ Check deadlines and send warnings if needed
At 8:00 PM:
- 🌆 Send evening summary to Discord
Every Monday at 9 AM:
- ⏸️ Send waiting list follow-up
Usage Examples
Discord
Add Tasks:
@MyOrgBot Add task: Buy groceries tomorrow @recados
@MyOrgBot Recordatori: Review PR +work due:2026-02-05
Check Tasks:
@MyOrgBot What should I work on? I have 2 hours @computer-deep
@MyOrgBot /tasks priority:A
@MyOrgBot Show tasks for project myorg-assistant
Get Information:
@MyOrgBot /today
@MyOrgBot /briefing
@MyOrgBot What's my calendar like this week?
Web Interface
Navigate to:
- Dashboard (
/) - Today's overview - Chat (
/chat) - Talk to assistant - Tasks (
/tasks) - Manage todos - Calendar (
/calendar) - View events - Projects (
/projects) - Track projects
Troubleshooting
Bot Not Responding?
# Check logs
kubectl logs -f deployment/myorg-assistant
# Common fixes:
# 1. Verify Discord token in secret
# 2. Check bot has permissions in server
# 3. Ensure Message Content Intent is enabled
LiteLLM Connection Error?
# Test endpoint
curl http://your-litellm-endpoint:4000/health
# Verify these in .env:
LITELLM_ENDPOINT=http://... (correct URL?)
LITELLM_API_KEY=... (valid key?)
Git Sync Failing?
# Check git job logs
kubectl logs job/myorg-git-sync-xxxxx
# Common fixes:
# 1. Verify git token has repo permissions
# 2. Check repository URL is correct
# 3. Ensure branch name matches (default: main)
Web Interface 401 Unauthorized?
If you set WEB_PASSWORD, use HTTP Basic Auth:
- Username: (any value)
- Password: your WEB_PASSWORD value
Or remove the password from .env to disable auth.
Next Steps
For Production Use
-
Set up your real myorg repository:
# Update .env with your repo MYORG_REPO_PATH=/path/to/your/myorg GIT_REPO_URL=https://github.com/you/myorg.git -
Configure external access:
# Edit k8s/ingress.yaml with your domain kubectl apply -f k8s/ingress.yaml -
Adjust timezone:
# In .env or k8s/configmap.yaml TIMEZONE=Your/Timezone -
Customize briefing times: Edit the schedule in:
k8s/cronjobs/morning-briefing.yaml(default: 8 AM)k8s/cronjobs/evening-summary.yaml(default: 8 PM)
Explore Features
- Read README.md for full documentation
- Check DEPLOYMENT.md for advanced deployment
- See project-plan.md for architecture details
Getting Help
Logs are your friend:
# Main app logs
kubectl logs -f deployment/myorg-assistant
# Specific job logs
kubectl get jobs
kubectl logs job/myorg-morning-briefing-xxxxx
Common Commands:
# Restart deployment
kubectl rollout restart deployment/myorg-assistant
# Check all resources
kubectl get all -l app=myorg-assistant
# Delete everything (careful!)
kubectl delete -f k8s/
Success! 🎉
You now have:
- ✅ AI assistant managing your GTD system
- ✅ Discord bot for mobile/quick access
- ✅ Web dashboard for detailed management
- ✅ Automated daily briefings
- ✅ Deadline warnings
- ✅ Automatic git synchronization
Your morning tomorrow will look like this:
🌅 Good Morning! - Saturday, February 01, 2026
📅 Today's Schedule:
• 09:00 Morning coffee @personal
• 14:00 Work on myorg assistant +myorg-assistant
✅ Priority Tasks:
• (A) Complete Phase 4 +myorg-assistant @computer-deep
• (B) Review documentation +myorg-assistant
Have a productive day! 🚀
Welcome to your new AI-powered productivity system! 🤖✨