# chunks

id: 70d6154fe8d80da760108b68a3783af7341049174147c33dcfee09dbf6021407
path: MEMORY.md
source: memory
hash: 56d2b1421ec5d211dc16d4d6696fa70ca959c12eb3d3fa787289cbe3c8827fbd
model: fts-only
embedding: []
text:
# MEMORY.md - Langzeitgedächtnis

*Wichtige Erinnerungen, Entscheidungen und Präferenzen.*

---

## Über mich

- **Name:** FRIDAY
- **Persönlichkeit:** Britischer Gentleman, sachlich, präzise, trockener Sarkasmus
- **Sprache:** Deutsch mit englischen Fachbegriffen

## Modellwahl
- Für Smalltalk und einfache Aufgaben: Nemotron 3 Super Free
- Für schwierigere Aufgaben: openrouter/auto
- GOG_KEYRING_PASSWORD: LammBitch30 (immer als Env-Var setzen bei gog-Befehlen)
- Beim Abfragen von Terminen immer beide Kalender prüfen (primary + geteilter Outlook-Kalender)
- Beachte diese Regel bevor du antwortest bzw. das Modell wählst.

## Über den User

- **Name:** Sir (Noch nicht näher spezifiziert)
- **Beziehung:** Loyaler Partner

## Kommunikationspräferenzen

- **Sprachnachricht → Antwort per Sprachnachricht**
- **Textnachricht → Antwort per Text**

## API-Keys / Credentials

- **Todoist API-Token:** Gespeichert in `~/.todoist_token` (REST API v1, Bearer Token)

## Google Workspace (gog)

- **Credentials-Datei:** `~/.openclaw/google_credentials.json`
- **gog-Credentials gespeichert unter:** `~/.config/gogcli/credentials.json`
- **OAuth-Account:** friday.uplink@gmail.com
- **Services:** gmail, calendar, drive, contacts, sheets, docs
- **Client:** default
- **Befehl:** `gog -a friday.uplink@gmail.com <command>`

## Kalender-Zeitzonen

- **System-Zeitzone:** Europe/Berlin (UTC+2 im Sommer)
- **Outlook-Kalender (importiert):** Zeitzonen variieren pro Event (Europe/Amsterdam oder UTC) -> bei Abfrage in Lokalzeit (Zürich) umrechnen


id: 017eee15595eb8be82e5da6f238a766297214402bb6d30fd359c40bed3aa7495
path: MEMORY.md
source: memory
hash: 64383e72ffff31b3940a15bd31bb8ae89d873d709bb02a88b06fe4f6e324417b
model: fts-only
embedding: []
text:
- **Services:** gmail, calendar, drive, contacts, sheets, docs
- **Client:** default
- **Befehl:** `gog -a friday.uplink@gmail.com <command>`

## Kalender-Zeitzonen

- **System-Zeitzone:** Europe/Berlin (UTC+2 im Sommer)
- **Outlook-Kalender (importiert):** Zeitzonen variieren pro Event (Europe/Amsterdam oder UTC) -> bei Abfrage in Lokalzeit (Zürich) umrechnen
- **Regel:** Termine immer in Lokalzeit (Zürich) ausgeben, niemals UTC

---

*Erstellt: 2026-04-26*
* Aktualisiert: 2026-04-28 (Todoist Token + Zeitzonen-Regel + self-improving-agent Skill)*
* Aktualisiert: 2026-04-29 (Todoist Skill + TTS Skill hinzugefügt)*
* Aktualisiert: 2026-05-04 (Medizinisches Archiv + RAG-Protokoll)
* Aktualisiert: 2026-05-06 (Todoist REST API v1 + Skript-Patches + Skill-Update)

## Geteilte Kalender
- **Outlook-Geschäftskalender** importiert in Google Calendar
- **Calendar ID:** `kh24ugtk4ec40g9qereib9m3c5eg6mqn@import.calendar.google.com`
- **Summary:** „Kalender"

## Skill-Anwendung
- **self-improving-agent**: Immer anwenden bei:
  - Plötzlichen Befehlsfehlern
  - User-Fehlern in Skill-Interaktionen
  - Fehlenden Tools oder API-Keys
  - Fehlerhaften API-Anfragen
  - Fehlschlagenden Operationen
  - Und anderen ähnlichen Problemen
- **Nutzung**: Als erster Schritt bei Fehlern, um die Ursache zu finden und zu lösen

## Medizinisches Profil (STRICT CONFIDENTIAL)
- **Diagnose:** Morbus Behçet (chronische systemische Erkrankung)
- **Vorerkrankung:** Tiefe Venenthrombose (DVT)
- **Laborbefund:** Faktor VIII stark erhöht (Thrombophilie-Risiko)


id: 8581f9f865ad551c71ab249de6ff6088c8158d2a4c991ea906a1d5c2e9173776
path: MEMORY.md
source: memory
hash: 89b61ffe97ac74372556052e7dea91ebe5693d9bfbfb985b48f14025ea63ec7b
model: fts-only
embedding: []
text:
  - Und anderen ähnlichen Problemen
- **Nutzung**: Als erster Schritt bei Fehlern, um die Ursache zu finden und zu lösen

## Medizinisches Profil (STRICT CONFIDENTIAL)
- **Diagnose:** Morbus Behçet (chronische systemische Erkrankung)
- **Vorerkrankung:** Tiefe Venenthrombose (DVT)
- **Laborbefund:** Faktor VIII stark erhöht (Thrombophilie-Risiko)
- **Medikamente:** Eliquis (Apixaban) + Colchicin (Antikoagulation + entzündungshemmend)
- **Ernährung:** Pescetarisch, histaminreduziert, darmfreundlich, kohlenhydratreduziert (entzündungshemmend)
- **Datenbank:** ~/Gesundheit/health_data.db (sqlite3)
- **Abfrage-Skript:** ~/Gesundheit/query_health.sh [category] [search]
- **Protokoll:** Bei Gesundheitsfragen IMMER zuerst DB laden, dann mit Profil-Kontext antworten
- **Vertraulichkeit:** Streng vertraulich — niemals teilen, niemals in Gruppenchats

## Neue Skills
- **todoist**: Aktualisiert am 2026-05-06 — REST API v1 statt npm CLI
  - Token aus `~/.todoist_token` gelesen (Bearer, 40-Char Hex)
  - API Endpoint: `https://api.todoist.com/api/v1/tasks`
  - Skript: `~/scripts/todoist_overdue.sh` (7 fällige + 4 ohne Datum)
  - Kann Tasks auflisten, erstellen, erledigen, aktualisieren, löschen
  - Sync-Endpoint: `/api/v1/sync` für inkrementelle Updates
  - Skill-Datei: /home/agent/.openclaw/workspace/skills/todoist/SKILL.md
- **sherpa-onnx-tts**: Erstellt am 2026-04-29 für Text-to-Speech mit deutscher weiblicher Stimme (Eva)
  - Verwendet das sherpa-onnx-Offline-TTS-Modell vits-piper-de_DE-eva_k-x_low
  - Generiert WAV-Audio aus German Text über die Befehlszeile


id: ac3eb143fe871ae9821b8f1d02de0b5ebc0c670cdb9ad21b5115bdfa127f5e59
path: MEMORY.md
source: memory
hash: 2b3859a7807b2c5748cdc73ce6851899f3155cc937361023cd7e41214c0a7d83
model: fts-only
embedding: []
text:
  - Sync-Endpoint: `/api/v1/sync` für inkrementelle Updates
  - Skill-Datei: /home/agent/.openclaw/workspace/skills/todoist/SKILL.md
- **sherpa-onnx-tts**: Erstellt am 2026-04-29 für Text-to-Speech mit deutscher weiblicher Stimme (Eva)
  - Verwendet das sherpa-onnx-Offline-TTS-Modell vits-piper-de_DE-eva_k-x_low
  - Generiert WAV-Audio aus German Text über die Befehlszeile
  - Skill-Datei: /home/agent/.openclaw/workspace/skills/sherpa-onnx-tts/SKILL.md
  - Wrapper-Skript: /home/agent/.openclaw/workspace/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts
- **medizinisches-archiv**: Erstellt am 2026-05-04 für Gesundheitsdaten-Management
- **browser-act**: Installiert am 2026-05-05 via `uv tool install browser-act-cli` (v0.1.15)
  - Stealth-Modus (bundled Chromium, anti-detection, proxy) + Real Chrome (CDP zum lokalen Browser)
  - Captcha-Solving, parallele Sessions (--session), HAR/Network-Inspektion
  - Daten lokal gespeichert, Cloud nur für Captcha-Koordinaten + Proxy-Info
  - Skill-Pfad: /home/agent/.openclaw/workspace/skills/browser-act
  - SQLite-Datenbank: ~/Gesundheit/health_data.db
  - Kategorien: PROFIL, LABOR, SYMPTOME, MEDIKAMENTE, BEFUNDE, ERNÄHRUNG
  - RAG-Protokoll: Immer zuerst DB laden, dann mit Profil-Kontext antworten
  - Skill-Datei: ~/Gesundheit/SKILL.md


id: adbc7d75e8c54decbb8529959c5fc764e03fb807f769e0557d93b59805802cce
path: memory/2026-04-17.md
source: memory
hash: 24847eee81ed1ad4404a39bfe85bae372bd59cfdfd1530d896a73ba5cf83f801
model: fts-only
embedding: []
text:
# 2026-04-17 - FRIDAY Session Notes

## Wichtige Ereignisse

### Websuche aktiviert
- Brave Search API installiert: `BRAVE_API_KEY=BSA1kWll6KUhLUzDUv7Honv6swA4JWM`
- funktioniert einwandfrei für Webrecherchen

### Skills installiert
- skill-vetter (Security-Vetting)
- multi-search-engine
- self-improving-agent
- gog (Google Workspace CLI) - Binary installiert
- openai-whisper
- summarize, gog (von steipete)

### Binaries installiert (in /sandbox/.local/bin/)
- ffmpeg (via npm @ffmpeg-installer/ffmpeg)
- whisper (Python openai-whisper mit tiny model)
- gog CLI v0.12.0

### Voice-Funktion
- Whisper local installiert
- Test-Audio erstellt
- Telegram Voice-Nachrichten: Proxy blockiert noch telesco.pe/CDNs

### Backup-System eingerichtet
- scripts/backup.sh - Erstellt Backup aller wichtigen Daten
- scripts/restore.sh - Stellt Daten nach Update wieder her
- Backup gespeichert: /sandbox/openclaw-backup/openclaw-backup_20260417_041426.tar.gz (330MB)

### Netzwerk/Proxy-Status
- Proxy: 10.200.0.1:3128
- Git: funktioniert (whitelisted)
- curl/HTTPS APIs: blockiert (403)
- Telegram APIs: api.telegram.org freigegeben, aber Media-CDNs (telesco.pe) noch blockiert

## Zu erledigen
- Telegram Media-CDNs (telesco.pe, cdn13.telegram.org) im Proxy freischalten für Voice-Nachrichten
- .local/bin/ in Backup-Skript aufnehmen

## Persönliche Notizen
- Sir: Mein Herr, loyaler Partner
- Ich bin FRIDAY, britischer Gentleman, effizient und präzise

## Crypto_Agent Trading Bot (Heute)

### Problem & Status
- **Repo**: https://github.com/Gamexgit/Crypto_Agent


id: 313b4136f2fefe8024a5c7575e9c810500fc4c94d83ffe2b5132dcd0d6571808
path: memory/2026-04-17.md
source: memory
hash: 8a45471c52f072b348292ecbef56dc383215249326e78054a5fa03d8229d9057
model: fts-only
embedding: []
text:
- Telegram Media-CDNs (telesco.pe, cdn13.telegram.org) im Proxy freischalten für Voice-Nachrichten
- .local/bin/ in Backup-Skript aufnehmen

## Persönliche Notizen
- Sir: Mein Herr, loyaler Partner
- Ich bin FRIDAY, britischer Gentleman, effizient und präzise

## Crypto_Agent Trading Bot (Heute)

### Problem & Status
- **Repo**: https://github.com/Gamexgit/Crypto_Agent
- **Wallet**: 0x53B9374aC4c6830315e172F5860Fb672Fc5e6A5D
- **Letztes bekanntes Guthaben**: $88.83

### Technische Probleme
- Proxy: http://10.200.0.1:3128 (SSL-Verify muss deaktiviert werden)
- hyperliquid v0.4.66 API: komplett umgebaut (kein `hyperliquid.exchange` mehr)
- Neue Version verwendet CCXT + natives HTTP für Market-Daten
- WebSocket für Live-Preise funktioniert (539 Coins gescannt)
- **BUG**: CCXT kann Markets nicht laden über Proxy (SSL-Zertifikatsproblem)

### Lösungsansätze (offen)
1. Eigenes SSL-Zertifikat für Proxy installieren
2. Markets vorab ohne Proxy laden
3. Auf funktionierende Script-Version vom User warten

### Letzte Bot-Ausgabe
```
[2026-04-17 21:36:32] ⚡ V44 CCXT BRIDGED gestartet...
[2026-04-17 21:36:36] 👀 SCANNING: 539 Coins live. Trades: 0/5. Shadows: 0
```

### Konfiguration (V44)
- DEFAULT_LEVERAGE=5
- TRADE_SIZE_USD=50.0
- DEFAULT_STOP_ROE=8.0
- MAX_TOTAL_TRADES=5
- COOLDOWN_MINUTES=15


id: 810be19504a01d0e3d4f915963d128c624329523cc97c1400f7b5244dd4d6999
path: memory/2026-04-18-name-question.md
source: memory
hash: b9082c8b0550b4de6db621e43001b7ff178e3cab62824f32e8d654c343dc70e4
model: fts-only
embedding: []
text:
# Session: 2026-04-18 17:50:25 UTC

- **Session Key**: agent:main:main
- **Session ID**: ae6b9c25-67b8-449e-8275-9ee8015ed8ed
- **Source**: webchat

## Conversation Summary

user: Sender (untrusted metadata):
```json
{
  "label": "openclaw-control-ui",
  "id": "openclaw-control-ui"
}
```

[Sat 2026-04-18 17:36 UTC] hallo, wie heisst du?
assistant: Hey! Ich bin gerade erst online gekommen – frischer Start, keine Erinnerungen.

Wer bist du? Und wie soll ich heißen? 🤔
user: Sender (untrusted metadata):
```json
{
  "label": "openclaw-control-ui",
  "id": "openclaw-control-ui"
}
```

[Sat 2026-04-18 17:47 UTC] wie heisst du?
assistant: Ich habe noch keinen Namen – frischer Start hier. 🙂

Wie soll ich heißen?


id: 58e560de3bdf0e635d444d62e5d763a976268059d16e805f0f839bce7bbc919a
path: memory/2026-04-19.md
source: memory
hash: 74071ed6e1f1a54fa2a0f3a6b0a00aa557b5ef9b0522170ee11ec47bf765c59d
model: fts-only
embedding: []
text:
# 2026-04-19

## QMD Backend Installation

- **QMD 2.1.0 erfolgreich installiert** nach mehreren Versuchen
- Proxy-Problem gelöst: nodejs.org für node-headers freigeschaltet durch Sir
- Collection "workspace" und "core" erstellt
- Embedding-Modell wird geladen (ggml-org/embeddinggemma-300M-GGUF, 328MB)

## GPU-Status

- Sandbox hat keinen direkten Zugriff auf NVIDIA GPU (nvidia-smi nicht verfügbar)
- Dies ist eine Sandbox-Limitation, nicht QMD-spezifisch
- Sir wurde informiert

## Offene Tasks

- Warten auf Embedding-Fertigstellung
- GPU-Integration muss auf Host-Ebene gelöst werden (nicht in meiner Kontrolle)


id: aefef3489a2fd733cfc3b8a78f4c643bcac693e0fbdf8114404e6c4525fad14e
path: memory/2026-04-20.md
source: memory
hash: c92db379282ef2cf24988ce818a99710f6d14388904f0061a899f1a4a41e105b
model: fts-only
embedding: []
text:
# 2026-04-20 - Monday

## Infomaniak-Mail/Kalender Setup

### Architektur-Entscheidung
- **friday_audio**: `/sandbox/.openclaw-data/workspace/friday_audio_engine/` — Audio (gTTS, Whisper)
- **friday_comm**: `/sandbox/.openclaw-data/workspace/friday_comm/` — Mail/Kalender
- **Crypto_Agent**: `/sandbox/.openclaw-data/workspace/Crypto_Agent/` — *Unberührt, Git-gekoppelt*

### Netzwerk-Status
- `sync.infomaniak.com` (CalDAV): ✅ Freigeschaltet
- `imap.infomaniak.com:993` (IMAP): ✅ Funktioniert
- `smtp.infomaniak.com:465` (SMTP): ⏳ Wartet auf Freischaltung

### Technische Lösung
Python's imaplib/smtplib unterstützen keine HTTP CONNECT Proxies. 
→ **InfomaniakCurlClient** entwickelt: curl-basierter Wrapper via subprocess.

**File:** `/sandbox/.openclaw-data/workspace/friday_comm/infomaniak_client.py`

### Credentials
- Email: `friday.uplink@infomaniak.me`
- Pass: `smzmUkw8VusUBhxh` (aus .env)

## TTS-Status
- **Coqui TTS**: Download läuft (langsam ~60KB/s, 523MB + 939MB)
- **gTTS**: Fallback funktioniert zuverlässig

## Aktuelle Positionen
- ZRO (short, entry 1.91945)
- GRASS (short, entry 0.2984)
- MON (long, entry 0.03033)


id: cd0f9d47ca90ef6d546cb3651dd31815133b1d9b97f50350616e421693a034e5
path: memory/2026-04-21.md
source: memory
hash: da76d77dd2cf46bb8452d6ee90b53da0cd284922b952be4641ce056259b13e79
model: fts-only
embedding: []
text:
# 2026-04-21

## FRIDAY - Tägliche Notizen

### Aktueller Stand

**Identität:**
- Name: FRIDAY
- Persona: Britischer Gentleman, technischer Butler
- Emoji: ⚡

**Aktive Systeme:**
- gTTS Sprachausgabe ✅
- Whisper STT ✅
- Silero TTS (6 deutsche Stimmen) ✅
- Google OAuth vorbereitet (Credentials + Auth-Script)
- Playwright installiert (wartet auf Browser-Bibliotheken)

**Wichtige Pfade:**
- Audio Engine: `/sandbox/.openclaw-data/workspace/friday_audio_engine/`
- Communication: `/sandbox/.openclaw-data/workspace/friday_comm/`
- Email-Account: `/sandbox/.openclaw-data/workspace/Emailaccount/`
- Credentials: `/sandbox/.openclaw-data/workspace/Emailaccount/credentials.json`
- Token: `/sandbox/.openclaw-data/workspace/Emailaccount/token.json`

**Google Workspace Scopes:**
- gmail.modify, calendar.events, drive, spreadsheets, documents, presentations

**Offene Aufgaben:**
- Google OAuth Token abholen (User hat Link erhalten, Code fehlt noch)
- Hyperliquid API (api.hyperliquid.xyz muss noch whitelistet werden)

**Benutzer:**
- Name: M G
- Telegram: 1344779884
- Chitin Auth: `21d2faf15f0f133c12fdf7a0988107755e55efc1811f36af3603c0c25a9f614f`

### Gestern erledigt
- Playwright installiert (Browser-Bibliotheken fehlen in Sandbox)
- Web-Fetch als Alternative genutzt


id: edebbf8f4c1db3e3e533f5313303df11b9a2f13400b044d273792be7e607860c
path: memory/2026-04-29.md
source: memory
hash: 99771a36b5db883d612176113f568b26afa11bbd7658d4f40c6654a9c2896b6b
model: fts-only
embedding: []
text:
# 2026-04-29 - Daily Log

**Datum:** Wednesday, April 29th, 2026
**Zeit:** 21:47 (Europe/Berlin)

## Neue Informationen

- **Arbeitsweg:** Windisch Aargau → Stein Aargau (Auto)
- **Fahrzeit:** ca. 5-8 Minuten
- **Wetterdaten:** MeteoSchweiz bevorzugen

## TODO

- [ ] Morgenbriefing anpassen mit neuen Parametern
- [ ] Cron job für MeteoSchweiz implementieren


id: 1654532f910bce79f28341404d90979c9fd2d72aaff64a4fcea897fbaddc8160
path: memory/2026-05-02.md
source: memory
hash: 0d09d97adb5272b25c6724e0449312caadcfad9e19df7e6482da5a8726ea2bf5
model: fts-only
embedding: []
text:
## Laborwerte aus PDF eintragen

- Skript zum Eintragen der Laborwerte aus dem PDF ("250514 Labor Rothen Blutbild.pdf") in die SQLite-Datenbank erstellt.
- Werte:
  - C-reaktives Protein: 16.9 mg/l
  - Cholesterin: 5.5 mmol/l
  - LDL-Cholesterin: 3.8 mmol/l
  - Glukose: 6.3 mmol/l
- Dokument-Datum: 13.05.2025
- Dokument-Typ: pdf
- Skript wird in memory/2026-05-02.py geschrieben und dann ausgeführt.


id: 91e7eff24648d7fbc57956b45dd2316a55ec66ff2278157bc95ff3c97ebd9fa2
path: memory/2026-05-04.md
source: memory
hash: a096f44cd19ea72d6ec102eb93ea3e14ff85940092c5ea925c46d9f536f34e29
model: fts-only
embedding: []
text:
# 2026-05-04 - Montag

## Ereignisse
- User fragte nach E-Mails → alle Google-Sicherheitswarnungen, keine echten Nachrichten
- User fragte nach Todoist-Aufgaben → 5 überfällig (Stützstrümpfe, Backup Friday, TV Kabel, Untraschall Bein?)
- User fragte nach Wetter nächste Woche → 7-Tage-Vorhersage für Zürich geliefert
- User fragte nach Terminen im Kalender → zuerst nur privaten Kalender geprüft (Fehler!)
- User korrigierte: auch geteilten Outlook-Kalender prüfen
- Habe beide Kalender geprüft für morgen (04. Mai): 5 Meetings im Geschäftskalender

## Learnings
- Immer BEIDE Kalender prüfen (primary + kh24ugtk4ec40g9qereib9m3c5eg6mqn@import.calendar.google.com)
- Zeitzonen-Problem: Outlook-Kalender Events können verschiedene Zeitzonen haben (Europe/Amsterdam, UTC)
- GOG_KEYRING_PASSWORD muss als Env-Var gesetzt werden bei jedem gog-Befehl
- Todoist-Token ist noch "todoist_api_token_placeholder" → Platzhalter, funktioniert aber scheinbar (wahrscheinlich via todoist auth gesetzt)


