Skip to content

Sahex101/AdonisAI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

14 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿค– AdonisAI โ€“ Personal AI Assistant# ๐Ÿค– AdonisAI โ€“ Persรถnlicher KI-Assistent

A free, open-source AI assistant that understands text and voice commands, manages calendar events, and is accessible across multiple platforms.Ein kostenloser, Open-Source KI-Assistent, der Text- und Sprachbefehle versteht, Kalender-Termine verwaltet und รผber verschiedene Plattformen erreichbar ist.

โœจ Current Features (Phase 3.5)## ๐Ÿ“‹ Features

  • ๐Ÿค– AI-Driven Conversation โ€“ All messages processed through AI with context awareness- โœ… Telegram Bot Integration โ€“ Steuerung รผber Telegram-Nachrichten

  • ๐Ÿ’ฌ Context Management โ€“ Remembers last 10 messages per user (30-minute TTL)- ๐Ÿ“… Google Calendar Integration โ€“ Termine erstellen, lesen und lรถschen

  • ๐Ÿ“… Calendar Integration โ€“ Create, read, and manage events with natural language- ๐ŸŽค Speech-to-Text โ€“ Sprachnachrichten verstehen (Vosk/Whisper)

  • ๐Ÿ—“๏ธ Calendar Commands โ€“ /today, /tomorrow, /week, /next for quick overview- ๐Ÿ”Š Text-to-Speech โ€“ Antworten als Sprachausgabe (gTTS/Coqui TTS)

  • ๐Ÿง  Natural Language Processing โ€“ German language support for dates and times- ๐Ÿง  KI-Modelle โ€“ Kostenfreie Nutzung via Hugging Face & OpenRouter

  • โšก Conflict Detection โ€“ Warns about overlapping events- ๐Ÿ” Privacy-First โ€“ Alle Daten bleiben unter deiner Kontrolle

  • ๐Ÿ” SSL Workaround โ€“ Works behind corporate firewalls (Zscaler)

  • ๐Ÿ“ฑ Telegram Bot โ€“ Full integration with command handlers## ๐Ÿš€ Installation

  • ๐ŸŽฏ Smart Actions โ€“ AI decides whether to create events, list events, or answer questions

Voraussetzungen

๐Ÿš€ Quick Start

  • Python 3.10 oder hรถher

Prerequisites- Telegram Account

  • (Optional) Google Account fรผr Calendar-Integration

  • Python 3.6+ (compatible with corporate environments)

  • Telegram Account### Lokale Installation

  • OpenRouter API Key (for AI)

  1. Repository klonen

Installation```bash

git clone https://github.com/wvusaah/AdonisAI.git

  1. Clone the repositorycd AdonisAI

bash

git clone https://github.com/WVUSAAH-Copilot-test/AdonisAI.git

cd AdonisAI2. Virtuelle Umgebung erstellen

python -m venv venv

2. **Create virtual environment**source venv/bin/activate  # Linux/macOS

```bash# oder

python -m venv venvvenv\Scripts\activate     # Windows

source venv/bin/activate  # Linux/macOS```

# or

venv\Scripts\activate     # Windows3. **Abhรคngigkeiten installieren**

``````bash

pip install -r requirements.txt

3. **Install dependencies**```

```bash

pip install -r requirements.txt4. **Umgebungsvariablen konfigurieren**

``````bash

cp .env.example .env

4. **Configure environment variables**# Bearbeite .env und fรผge deine API-Keys ein

```bash```

cp .env.example .env

# Edit .env and add your API keys:5. **Bot starten**

# - TELEGRAM_BOT_TOKEN (from @BotFather)```bash

# - OPENROUTER_API_KEY (from openrouter.ai)python src/main.py
  1. Start the bot## ๐Ÿค– Telegram Bot einrichten
python run.py1. ร–ffne Telegram und suche nach [@BotFather](https://t.me/botfather)

```2. Sende `/newbot` und folge den Anweisungen

3. Kopiere den Bot-Token

## ๐Ÿค– Telegram Bot Setup4. Fรผge den Token in `.env` ein:
  1. Open Telegram and search for @BotFather TELEGRAM_BOT_TOKEN=dein_token_hier

  2. Send /newbot and follow the instructions ```

  3. Copy the bot token5. Starte den Bot mit python src/main.py

  4. Add the token to .env:6. Suche deinen Bot in Telegram und sende /start

    
    TELEGRAM_BOT_TOKEN=your_token_here## ๐Ÿ“… Google Calendar Integration (Optional)
    
    
  5. Start the bot with python run.py1. Gehe zur Google Cloud Console

  6. Find your bot in Telegram and send /start2. Erstelle ein neues Projekt

  7. Aktiviere die Google Calendar API

๐Ÿ’ก Usage Examples4. Erstelle OAuth 2.0 Credentials (Desktop App)

  1. Lade die credentials.json herunter und speichere sie im Projektverzeichnis

Natural Language Event Creation6. Beim ersten Start wird ein Browser geรถffnet fรผr die Autorisierung


You: "Create appointment tomorrow 3 PM meeting with Max"

Bot: โœ… Event created! Meeting with Max @ 24.10.2025 15:00### Replit



You: "Schedule dentist next Monday at 10"1. Erstelle ein neues Repl und importiere das Repository

Bot: โœ… Event created! Dentist @ 28.10.2025 10:002. Fรผge die Secrets (Umgebungsvariablen) in den Secrets-Tab ein

```3. Klicke auf "Run"



### Context-Aware Conversations### Render.com



```1. Erstelle einen neuen Web Service

You: "Customer Max wants to meet next week Monday or Wednesday"2. Verbinde dein GitHub Repository

Bot: "Which day works better for you?"3. Build Command: `pip install -r requirements.txt`

You: "Wednesday"4. Start Command: `python src/main.py`

Bot: "What time would you prefer?"5. Fรผge Environment Variables in den Settings hinzu

You: "2:30 PM"

Bot: โœ… Created "Meeting next Wednesday 2:30 PM with Customer Max"## ๐Ÿ—บ๏ธ Roadmap

Phase 1: Grundgerรผst โœ…

Calendar Commands- [x] Telegram Bot Basis-Integration

  • Projektstruktur aufsetzen

/today      - Shows today's events

/tomorrow   - Shows tomorrow's events### Phase 2: KI-Integration ๐Ÿšง

/week       - Shows this week's overview- [ ] Hugging Face API anbinden

/next       - Shows next upcoming event- [ ] OpenRouter Integration

/features   - Shows all available features- [ ] Kontextverstรคndnis implementieren

/help       - Shows help message- [ ] Intent-Erkennung fรผr Befehle

Phase 3: Calendar-Funktionen ๐Ÿ“…

๐Ÿ“… Calendar Integration- [ ] Google Calendar API Setup

  • Termine auslesen

Current Status- [ ] Neue Termine erstellen

  • Termine bearbeiten/lรถschen

  • โœ… Mock Provider โ€“ Working perfectly for local development- [ ] Natรผrlichsprachliche Datumserkennung

  • ๐Ÿ”’ iCloud Calendar โ€“ Blocked by corporate network (CalDAV)

  • ๐Ÿ”’ Google Calendar โ€“ Blocked by corporate network (OAuth)### Phase 4: Sprachverarbeitung ๐ŸŽค

  • Speech-to-Text (Vosk) Integration

Testing Outside Corporate Network- [ ] Sprachnachrichten in Telegram verarbeiten

  • Text-to-Speech (gTTS) fรผr Antworten

Once outside the corporate network, you can enable real calendar providers:- [ ] Sprachausgabe-Optimierung

  1. iCloud Calendar### Phase 5: Erweiterte Features ๐Ÿ”ฎ

# Add to .env:- [ ] Web-UI (Flask/FastAPI)

CALENDAR_PROVIDER=icloud- [ ] Erinnerungen & Notifications

ICLOUD_USERNAME=your@icloud.com- [ ] Multi-User Support

ICLOUD_PASSWORD=app_specific_password- [ ] Konversations-Historie

```- [ ] Plugin-System fรผr Erweiterungen



2. **Google Calendar**## ๐Ÿ“ Projektstruktur

```bash

# Add to .env:```

CALENDAR_PROVIDER=googleAdonisAI/

# Follow OAuth setup in CHANGELOG.mdโ”œโ”€โ”€ README.md

```โ”œโ”€โ”€ .env.example

โ”œโ”€โ”€ requirements.txt

## ๐Ÿข Corporate Network Supportโ”œโ”€โ”€ src/

โ”‚   โ”œโ”€โ”€ main.py                    # Haupteinstiegspunkt

AdonisAI includes an SSL workaround for corporate environments with SSL inspection (Zscaler, etc.):โ”‚   โ”œโ”€โ”€ bot/

โ”‚   โ”‚   โ”œโ”€โ”€ __init__.py

- `ssl_patch.py` automatically patches SSL verificationโ”‚   โ”‚   โ”œโ”€โ”€ telegram_bot.py        # Telegram Bot Logik

- Works with corporate proxy configurationsโ”‚   โ”‚   โ””โ”€โ”€ handlers.py            # Command Handler

- No manual SSL certificate installation requiredโ”‚   โ”œโ”€โ”€ ai/

โ”‚   โ”‚   โ”œโ”€โ”€ __init__.py

## ๐Ÿ—บ๏ธ Roadmapโ”‚   โ”‚   โ”œโ”€โ”€ ai_client.py           # KI-Client Interface

โ”‚   โ”‚   โ”œโ”€โ”€ hf_provider.py         # Hugging Face Provider

### Phase 3 (Current) โœ…โ”‚   โ”‚   โ””โ”€โ”€ openrouter_provider.py # OpenRouter Provider

- [x] Phase 3.1: Calendar Foundation (Abstract client, 3 providers)โ”‚   โ”œโ”€โ”€ calendar/

- [x] Phase 3.2: CRUD Operations (Create, Read, Update, Delete)โ”‚   โ”‚   โ”œโ”€โ”€ __init__.py

- [x] Phase 3.3: NLP Enhancements (German natural language)โ”‚   โ”‚   โ””โ”€โ”€ calendar_client.py     # Google Calendar API

- [x] Phase 3.4: Bot Integration (Commands, conflict detection)โ”‚   โ”œโ”€โ”€ speech/

- [x] Phase 3.5: AI Enhancements (Context management, AI-driven processing)โ”‚   โ”‚   โ”œโ”€โ”€ __init__.py

- [ ] Phase 3.6: Testing & Documentation (Real calendar tests, Siri Shortcuts)โ”‚   โ”‚   โ”œโ”€โ”€ stt_vosk.py            # Speech-to-Text

โ”‚   โ”‚   โ””โ”€โ”€ tts_gtts.py            # Text-to-Speech

### Phase 4: Advanced Features ๐Ÿ”ฎโ”‚   โ”œโ”€โ”€ storage/

- [ ] Multi-calendar support (personal, work, shared)โ”‚   โ”‚   โ”œโ”€โ”€ __init__.py

- [ ] Smart scheduling (find free slots automatically)โ”‚   โ”‚   โ””โ”€โ”€ store.py               # Datenbank/Storage

- [ ] Recurring events supportโ”‚   โ””โ”€โ”€ utils/

- [ ] Event reminders and notificationsโ”‚       โ”œโ”€โ”€ __init__.py

- [ ] Calendar sharing and permissionsโ”‚       โ””โ”€โ”€ nlp_utils.py           # NLP Hilfsfunktionen

- [ ] Time zone supportโ””โ”€โ”€ tests/

    โ””โ”€โ”€ ...

### Phase 5: Platform Expansion ๐ŸŒ```

- [ ] Siri Shortcuts integration (iOS)

- [ ] Web UI (Flask/FastAPI)## ๐Ÿ› ๏ธ Technologie-Stack

- [ ] Google Assistant integration

- [ ] WhatsApp bot- **Python 3.10+** โ€“ Programmiersprache

- [ ] Slack integration- **python-telegram-bot** โ€“ Telegram Bot Framework

- [ ] Microsoft Teams bot- **google-api-python-client** โ€“ Google Calendar API

- **requests** โ€“ HTTP Client

### Phase 6: Enterprise Features ๐Ÿข- **python-dotenv** โ€“ Umgebungsvariablen

- [ ] Multi-user support with user management- **vosk / whisper.cpp** โ€“ Speech-to-Text

- [ ] Team calendars and scheduling- **gTTS / Coqui TTS** โ€“ Text-to-Speech

- [ ] Meeting room booking- **sqlite-utils** โ€“ Lokale Datenhaltung

- [ ] Integration with Outlook/Exchange- **dateparser** โ€“ Natรผrliche Datumserkennung

- [ ] LDAP/Active Directory authentication

- [ ] Audit logs and analytics## ๐Ÿค Mitwirken



## ๐Ÿ“ Project StructureContributions sind willkommen! Bitte erstelle ein Issue oder einen Pull Request.



```1. Fork das Projekt

AdonisAI/2. Erstelle einen Feature Branch (`git checkout -b feature/AmazingFeature`)

โ”œโ”€โ”€ README.md                      # English documentation3. Commit deine ร„nderungen (`git commit -m 'Add some AmazingFeature'`)

โ”œโ”€โ”€ README_DE.md                   # German documentation4. Push zum Branch (`git push origin feature/AmazingFeature`)

โ”œโ”€โ”€ CHANGELOG.md                   # English changelog (detailed)5. ร–ffne einen Pull Request

โ”œโ”€โ”€ CHANGELOG_DE.md                # German changelog

โ”œโ”€โ”€ .env.example                   # Environment variables template## ๐Ÿ“„ Lizenz

โ”œโ”€โ”€ requirements.txt               # Python dependencies

โ”œโ”€โ”€ run.py                         # Application entry pointMIT License โ€“ siehe [LICENSE](LICENSE) fรผr Details.

โ”œโ”€โ”€ ssl_patch.py                   # SSL workaround for corporate networks

โ”œโ”€โ”€ src/## ๐Ÿ’ก Inspiration

โ”‚   โ”œโ”€โ”€ main.py                    # Main application logic

โ”‚   โ”œโ”€โ”€ bot/Dieses Projekt entstand aus dem Wunsch nach einem vollstรคndig kostenlosen, selbst-gehosteten KI-Assistenten, der die Privatsphรคre respektiert und keine monatlichen Gebรผhren verursacht.

โ”‚   โ”‚   โ”œโ”€โ”€ __init__.py

โ”‚   โ”‚   โ””โ”€โ”€ telegram_bot.py        # Telegram bot with AI integration## ๐Ÿ“ž Kontakt

โ”‚   โ”œโ”€โ”€ ai/

โ”‚   โ”‚   โ”œโ”€โ”€ __init__.pyBei Fragen oder Anregungen, erstelle gerne ein Issue auf GitHub!

โ”‚   โ”‚   โ”œโ”€โ”€ ai_client.py           # AI client interface

โ”‚   โ”‚   โ””โ”€โ”€ openrouter_provider.py # OpenRouter implementation---

โ”‚   โ”œโ”€โ”€ calendar/

โ”‚   โ”‚   โ”œโ”€โ”€ __init__.py**Made with โค๏ธ by the AdonisAI Community**

โ”‚   โ”‚   โ”œโ”€โ”€ calendar_client.py     # Abstract calendar client
โ”‚   โ”‚   โ”œโ”€โ”€ icloud_provider.py     # iCloud CalDAV implementation
โ”‚   โ”‚   โ”œโ”€โ”€ google_provider.py     # Google Calendar API implementation
โ”‚   โ”‚   โ””โ”€โ”€ mock_provider.py       # Mock provider for testing
โ”‚   โ””โ”€โ”€ utils/
โ”‚       โ”œโ”€โ”€ __init__.py
โ”‚       โ”œโ”€โ”€ context_manager.py     # Conversation context management
โ”‚       โ””โ”€โ”€ nlp_utils.py           # Natural language processing utils
โ””โ”€โ”€ tests/
    โ”œโ”€โ”€ test_calendar_client.py    # Calendar CRUD tests
    โ”œโ”€โ”€ test_nlp_utils.py          # NLP tests
    โ””โ”€โ”€ test_bot_calendar.py       # Bot integration tests

๐Ÿ› ๏ธ Technology Stack

  • Python 3.6+ โ€“ Programming language (corporate environment compatible)
  • python-telegram-bot 12.8 โ€“ Telegram bot framework (downgraded for Python 3.6)
  • OpenRouter โ€“ AI provider (openai/gpt-3.5-turbo)
  • caldav โ€“ CalDAV protocol for iCloud
  • google-api-python-client โ€“ Google Calendar API
  • dateparser โ€“ Natural language date/time parsing
  • requests โ€“ HTTP client
  • python-dotenv โ€“ Environment variables management

๐Ÿงช Testing

# Run all tests
pytest

# Run specific test file
pytest tests/test_calendar_client.py

# Run with verbose output
pytest -v

# Run with coverage
pytest --cov=src tests/

๐Ÿค Contributing

Contributions are welcome! Please check out our CHANGELOG.md to see current development status.

  1. Fork the project
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'feat: Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Commit Message Convention

We follow conventional commits:

  • feat: New feature
  • fix: Bug fix
  • docs: Documentation changes
  • test: Test updates
  • refactor: Code refactoring
  • chore: Maintenance tasks

๐Ÿ› Known Issues

  • Corporate Network: Real calendar providers (iCloud, Google) blocked by corporate firewall
  • SSL Inspection: Automatically handled by ssl_patch.py
  • Python 3.6: Some features limited by older Python version requirements

See CHANGELOG.md for detailed issue tracking and workarounds.

๐Ÿ“„ License

MIT License โ€“ see LICENSE for details.

๐Ÿ’ก Inspiration

This project was created from the desire for a completely free, self-hosted AI assistant that respects privacy and doesn't require monthly subscription fees.

๐Ÿ“ž Contact

For questions or suggestions, please create an issue on GitHub!

๐ŸŒŸ Acknowledgments


Made with โค๏ธ by the AdonisAI Community

๐Ÿ“– German Version | ๐Ÿ“‹ Changelog | ๐Ÿ› Issues

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

No contributors