5.5 KiB
5.5 KiB
ARIA — Changelog
Alle Änderungen am Projekt. Format: Keep a Changelog
[0.0.0.3] — 2026-03-09
Geändert
RVS — Architektur-Umbau
- RVS ist jetzt reiner Relay — kennt keine Tokens, keine Expiry, leitet nur durch
TOKEN_EXPIRYundRVS_PUBLIC_HOST/RVS_PUBLIC_PORTentfernt- Rooms leben solange Clients verbunden sind (statt fester Ablaufzeit)
- Multi-Instanz: Mehrere ARIA-VMs können denselben RVS nutzen (z.B. Stefan + Papa)
Token-Erzeugung auf ARIA-VM statt RVS
generate-token.jsausrvs/entfernt- Neues
generate-token.shim Hauptverzeichnis (läuft auf ARIA-VM) - Token wird automatisch in
.envgeschrieben ./generate-token.sh showzeigt bestehendes Token als QR nochmal an
Konfiguration vereinfacht
RVS_URLersetzt durchRVS_HOST,RVS_PORT,RVS_TLS(klare Einzelfelder)- Port einmal in
.envändern → wirkt auf RVS docker-compose, Bridge und QR-Code rvs/docker-compose.ymlnutzt${RVS_PORT:-443}statt hardcoded Port
Android App — QR-Code Scanner
- Echter QR-Code Scanner statt Platzhalter-Alert (
react-native-camera-kit) - Vollbild-Kamera mit Overlay, Validierung des QR-Formats
- Kamera-Berechtigung (Android Runtime Permission)
AndroidManifest.xml—CAMERAPermission hinzugefügt
Voice Bridge — RVS-Anbindung
- Bridge verbindet sich jetzt parallel zu aria-core (lokal) UND zum RVS (öffentlich)
- Nachrichten von der App werden über RVS → Bridge → aria-core weitergeleitet
- Antworten von aria-core werden über Bridge → RVS → App zurückgeschickt
- Auto-Reconnect mit Exponential Backoff für beide WebSocket-Verbindungen
- Neue Message-Handler: chat, mode, location, file, audio
Android Build-Fixes
kotlin_version(snake_case) inbuild.gradlehinzugefügt —react-native-camera-kitbraucht beide Variantenbuild.shschreibtorg.gradle.java.homedynamisch ingradle.properties— verhindert dass Gradle kaputte JVM-Pfade findet (/usr/lib/jvm/openjdk-17ohne bin/java)minSdkVersion21 → 23 —react-native-camera-kitbraucht mindestens API 23
Android App — Credentials Persistenz
- Verbindungsdaten (Host, Port, Token) werden nach QR-Scan in AsyncStorage gespeichert
- Beim App-Start automatisch geladen und verbunden — einmal scannen, nie wieder
- Neue Dependency:
@react-native-async-storage/async-storage
Docker & Infrastruktur
- OpenClaw Image fix:
openclaw/openclaw:latest→ghcr.io/openclaw/openclaw:latest libportaudio2in Bridge Dockerfile hinzugefügt —sounddevicebraucht PortAudioaria-data/config/aria.env.examplehinzugefügt — Voice Bridge Konfigurationsvorlage
Wake-Word Fix (openwakeword)
WakeWordDetectorumgebaut — sucht Custom-Modell/voices/wake_aria.onnx, Fallback auf eingebauteshey_jarvis- Alter Code crashte:
wakeword_models=["aria"]erwartet Dateipfad, kein Keyword
Neues Script: get-voices.sh
- Lädt Piper Stimmen (Ramona + Thorsten) von HuggingFace herunter
- Neuer Installationsschritt in README
ARIA Persönlichkeit
AGENT.mdüberarbeitet — ARIA ist jetzt Partnerin auf Augenhöhe (Claude-Charakter)- Direkt, ehrlich, humorvoll, lösungsorientiert, kein Theater
[0.0.0.2] — 2026-03-08
Geändert
Build-Fixes
CI=trueinbuild.sh— verhindert EMFILE durch Metro File-Watcher im Release-Buildsetup.sherstellt Metro-Config-Dateien automatisch (metro.config.js, babel.config.js, .watchmanconfig)
Release-Script
release.shkomplett umgebaut — Kennwort wird interaktiv abgefragt statt Token in.env- Gitea-Upload fix:
-Fmultipart statt--data-binary - Login-Test vor Release, CHANGELOG.md-Integration für Release Notes
[0.0.0.1] — 2026-03-08
Hinzugefügt
Infrastruktur
docker-compose.yml— ARIA-VM mit Proxy, OpenClaw, Voice Bridge.env.example— Konfigurationsvorlage (ohne Secrets)release.sh— Automatisiertes Release (Build, Tag, Gitea Upload mit Kennwort-Abfrage)
RVS (Rendezvous-Server)
- WebSocket Relay Server (
rvs/server.js) — Token-Rooms, Heartbeat, Message Types - Docker Setup (
rvs/Dockerfile,rvs/docker-compose.yml)
Token & Pairing
generate-token.sh— Token-Generator mit QR-Code (läuft auf ARIA-VM, schreibt Token in.env)
Voice Bridge
- Python Voice Bridge (
bridge/aria_bridge.py) — Whisper STT, Piper TTS, Wake-Word - 5 Betriebsmodi (
bridge/modes.py) — Normal, DND, Whisper, Hangar, Gaming - Docker Setup (
bridge/Dockerfile,bridge/requirements.txt)
Android App (ARIA Cockpit)
- Chat-Screen mit Texteingabe, Voice-Button, Datei/Kamera-Upload
- Settings-Screen mit Verbindungsstatus, Token-Eingabe, Modus-Auswahl, GPS-Toggle, Log-Viewer
- WebSocket-Service mit Auto-Reconnect und Exponential Backoff
- Audio-Service (Mikrofon-Aufnahme, TTS-Wiedergabe)
- Push-to-Talk Button mit Puls-Animation
- Modus-Selektor (5 Modi)
- Build-Tooling:
setup.sh(7-Schritt Dev-Setup),build.sh(Release/Debug APK) - Metro-Config, Babel-Config, Watchman-Config
Konfiguration & Daten
aria-data/config/AGENT.md— ARIAs Persönlichkeit und Sicherheitsregelnaria-data/config/USER.md— Stefans Präferenzenaria-data/config/TOOLING.md— VM-Tooling Listearia-data/skills/README.md— Skill-Bauanleitung
Bekannte Probleme
- Android Release-Build:
EMFILE: too many open files— Fix:CI=trueinbuild.sh - JDK 21 inkompatibel mit AGP 8.1 — Fix: Automatischer Fallback auf JDK 17
react-native-screens> 3.27.0 inkompatibel mit RN 0.73.4 — Fix: Version gepinnt