ARIA Diagnostic

ARIA Brain

Lade...

RVS (Rendezvous)

-

Claude Proxy

Nicht getestet

Chat Test

Autoscroll pausiert
Idle — warte auf ARIA-Aktivitaet
Sobald ARIA denkt oder ein Tool nutzt, taucht es hier in Echtzeit auf.
ARIA — Autonomous Reasoning & Intelligence Assistant. Selbst gehosteter JARVIS-artiger KI-Assistent, gebaut von Stefan / HackerSoft Oldenburg.

Sprachmodell (Brain)

Welches Claude-Model das Brain pro Anfrage nutzt. Wert wird in /shared/config/runtime.json als brainModel persistiert. Bei Aenderung: aria-brain restarten (Reparatur-Section oben), damit's greift.

ARIA laeuft ueber dein Claude-Max-Abo (CLI). Du hast zwei Möglichkeiten:
Automatisch (Opus/Sonnet/Haiku/Fable) — folgt immer der neuesten Version dieses Tiers, ohne dass du etwas pflegen musst. Für den Alltag die richtige Wahl.
Feste Version (z.B. „Opus 5.5") — genau dieses Modell, auch wenn später ein neueres kommt.

Die Liste kommt aus Anthropics eigenem Modell-Katalog (downloads.claude.ai) — dieselbe Quelle, aus der sich Claude Code selbst bedient. „↻ Aktualisieren" holt sie frisch; sonst gilt ein 6-Stunden-Cache. Die automatischen Tiers kommen weiterhin aus /shared/config/models.json.
Aktives Model:
Ausweich-Modell — wenn Anthropics Sicherheitsfilter eine Anfrage blockt („safeguards flagged this message“, trifft gern Netzwerk- und Security-Themen), stellt ARIA dieselbe Frage automatisch nochmal mit diesem Modell. Der Filter hängt am Modell; Anthropic rät selbst zu „change your model“.
✓ Kein Neustart nötig — gilt ab dem nächsten Vorfall.
Ausweich-Modell:
Erweitert: freie Model-ID
Erst testen, dann setzen — ein Tippfehler im Namen fällt sonst erst auf, wenn ARIA nicht mehr antwortet.

🛡 Sicherheitsfilter

Anthropics Filter meldet sich nicht als Fehler, sondern als ganz normale Antwort — der Fehlertext stünde sonst als ARIAs Wort im Verlauf, und weil der Verlauf bei jedem Turn mitgeht, wäre das Projekt danach tot. Darum zwei Stufen: 1. dieselbe Frage nochmal mit dem Ausweich-Modell (oben einstellbar). 2. blockt auch das, liegt es am Verlauf: der auslösende Turn fliegt aus dem Arbeitsgedächtnis — gelöscht wird nichts, du holst ihn hier mit einem Klick zurück. Vermerke verfallen von selbst, sobald der Turn aus dem Fenster gerollt ist.
Lade …

Datenschutz — was Claude Code von sich aus sendet

Drei Kanäle, über die Claude Code zusätzlich zur eigentlichen Anfrage Daten verschickt.

✓ Kein Neustart nötig. Gesetzt wird in ~/.claude/settings.json, und die Claude-CLI liest die Datei bei jedem Aufruf neu. Speichern genügt — die nächste Anfrage nutzt die neue Einstellung. Nur ein gerade laufender Turn arbeitet noch mit der alten, weil sein Prozess schon gestartet ist.

Davon unabhängig ist, ob Anthropic mit deinen Unterhaltungen Modelle trainiert — das steht in deinem Konto unter Datenschutz → „Help improve our AI models" und lässt sich hier nicht umstellen.
(noch nicht geprüft)

Lokales LLM (schnelle Antworten)

Ein schnelles lokales Modell (Qwen3 auf der AI-Box) beantwortet leichte Fragen in unter 1 Sekunde. Was schwerer wird, gibt es automatisch an Claude ab. Aenderungen greifen sofort (kein Neustart) — geschrieben nach /shared/config/local_llm.json.
AN: leichte Fragen → lokal (schnell), schwere → Claude.  AUS: alles laeuft ueber Claude (wie bisher). — Das ist der Normal-Betrieb.
Nur zum Testen. Erzwingt IMMER das lokale Modell — auch bei schweren Fragen, ohne Claude-Rettung. So siehst du, was Qwen allein kann. Werkzeug-Fragen (Wetter/Timer/…) funktionieren dann nicht. Fuer den Alltag: AUS lassen.
Werkzeuge lokal:
Welche Werkzeuge das lokale Modell selbst ausfuehren darf. „Voll" ist gesperrt, bis eine 2. Grafikkarte da ist (siehe ⓘ).
Aktueller Stand (B1a): das lokale Modell plaudert nur — Werkzeuge macht noch Claude. Lokale Tools kommen mit B1b.
Lokales Modell:
Beim ersten Wechsel zu einem Modell lädt die AI-Box das GGUF (mehrere GB) — die erste Antwort dauert dann länger, danach ist es gecacht. Verfügbare Modelle kommen live von den angemeldeten LLM-Boxen; Namen aus /shared/config/local_models.json.
Test-Chat (aktuelles Modell, direkt ans lokale LLM):

Modell-Katalog

Gaengige lokale GGUF-Modelle. „Laden" schickt das Modell an die gewaehlte LLM-Box — llama-swap zieht das GGUF beim ersten Mal (mehrere GB) und meldet den Fortschritt. Danach ist es im Modell-Dropdown oben waehlbar. Achte auf den VRAM der Box (Spalte VRAM).

(lade Katalog…)

Externe Anbieter (OpenRouter & Co)

Geplant: neben den lokalen Diensten (F5-TTS, Whisper/Voxtral, lokales LLM) auch externe Anbieter wie OpenRouter & Co anbinden.

Noch nicht angebunden — der Bereich ist hier als Platz reserviert. Die Verdrahtung (API-Key + Routing) kommt als eigener Schritt.

Sprachausgabe

F5-TTS Modell-Tuning (advanced)
Werden via RVS an die f5tts-bridge auf der AI-Box geschickt. Modell-/Checkpoint-Wechsel triggert einen Reload (~30s). Hardcoded Defaults: F5TTS_v1_Base, cfg_strength=2.5, nfe_step=32.
Hoeher = klebt staerker an Referenz
Hoeher = bessere Qualitaet, langsamer
Stimme klonen
Lade ein oder mehrere Audio-Samples hoch (WAV/MP3, min. 6-10 Sekunden). Mehrere Dateien werden automatisch zusammengefuegt.
XTTS-Server: Nicht verbunden (starte xtts/ auf dem Gaming-PC)

Spracherkennung (STT: Voxtral / Whisper)

Die aktive STT-Engine wird pro Compute-Node über COMPOSE_PROFILES gewählt (Voxtral oder Whisper, siehe Satelliten → Compute-Flotte). Die folgenden Einstellungen betreffen Whisper.

Aenderungen werden sofort an die Bridge gesendet und das Modell neu geladen (kann bei medium/large 10-30s dauern — waehrend dieser Zeit ist STT kurz pausiert).
Tipp: medium ist der beste Kompromiss fuer CPU. large-v3 nur bei GPU sinnvoll.

Voice-ID (Sprecher-Erkennung)

ARIA erkennt Stefans Stimme anhand eines Fingerprints (SpeechBrain ECAPA-TDNN). Andere Sprecher (TV, Hintergrund-Gespraeche) werden gefiltert — keine Brain- Calls, keine Tokens. Enrollment passiert in der App (Settings → Stimme einrichten), weil das Handy-Mikro auch im Betrieb hoert.
Status wird geladen...
AUS (Default) = alle Stimmen kommen durch (fail-open). AN = nur der enrollte Sprecher wird ans Brain geleitet, fremde Stimmen werden verworfen. Erst einschalten wenn ein Fingerprint eingelernt ist — sonst hört ARIA niemanden.
0.50
Niedriger = mehr Treffer auch bei Nebengeraeuschen (false-positives). Hoeher = strenger, kann Stefan auch mal verpassen. 0.50 ist konservativer Default.

OAuth-Apps (Spotify, Google, GitHub, Strava, Microsoft, ...)

Trag pro Service `client_id` + `client_secret` ein (aus dem Developer-Dashboard des Providers). RVS stellt die Callback-URL bereit — die musst Du EINMAL pro Service im Provider-Dashboard als gueltige Redirect-URI eintragen. Danach kann ARIA per `oauth_authorize`-Tool eine Auth-URL bauen; Stefan klickt, autorisiert, ARIA bekommt den Token automatisch.
Lade Callback-URL...
Lade Services...
client_secret wird verschlüsselt persistiert (file-mode 0600). Nicht in git, nicht im Repo.

Jellyfin (Filme & Serien)

Damit steuert ARIA die Wiedergabe direkt über die Jellyfin-Schnittstelle statt sich durch die Fire-TV-Oberfläche zu klicken: Film suchen → Abspielgerät finden → starten. Mehrere Server möglich (eigener, vom Kumpel …) — einer davon ist der Standard, wenn ARIA keinen nennt.
API-Key: Jellyfin → Dashboard → API-Schlüssel → +. ARIAs Brain muss den Server erreichen können (URL aus Sicht des Servers, nicht des Browsers).
Lade …
API-Keys werden mit Datei-Rechten 0600 gespeichert (/shared/config/jellyfin.json).

📧 ARIA E-Mail

ARIA kann Mails lesen und senden — Text, HTML, Anhänge, eingebettete Bilder. Die Zugangsdaten sieht sie nie: gespeichert im Brain unter /data (nicht in ihrem Container), keine Schnittstelle gibt das Passwort zurück, der Brain-Export lässt es aus. Ändern kann diese Einstellungen nur die Diagnostic — Anfragen aus ARIAs Container werden abgewiesen.
Posteingang (IMAP)
Postausgang (SMTP)
Anmeldung
SMTP mit abweichender Anmeldung (selten, z.B. Relay)
Whitelist — nur hierhin darf ARIA senden
Eine Zeile pro Eintrag. Alles, was nicht hier steht, ist gesperrt — leer = ARIA kann an niemanden senden. Gilt für jeden Empfänger (An, Cc, Bcc); ein einziger fremder blockiert die ganze Mail.
stefan@hacker-net.de genau diese Adresse · *@hacker-net.de alle Adressen der Domain · *@*.hacker-net.de alle Subdomains · *@* alles

FLUX Bildgenerierung

Steuerung der Image-Generation (flux-bridge auf der AI-Box). Default-Modell wird via RVS gepusht — Wechsel triggert Pipeline-Reload (15-30s aus HF-Cache, mehrere Minuten beim Erst-Download). Keywords nutzt ARIAs Brain im System-Prompt.
Erst auf huggingface.co/.../FLUX.1-dev "Agree" klicken, dann unter Settings → Tokens einen Read-Token erzeugen.
Beide Modelle = volle Qualitaet, schnell ist nur ein 4-Step-Distillat (Apache-2.0).

Grösse von Anhängen

Grösste Datei, die an einen Gedanken angehängt werden darf. Greift sofort — kein Neustart nötig.

MB

Über 64 MB lädt die Handy-App Anhänge nicht mehr herunter — ein Anhang muss als Base64 komplett in den Speicher, und daran ist die App schon einmal gestorben. Er liegt dann sauber auf dem Server, ist mobil aber nur noch über den Dateimanager erreichbar.

Reparatur & Restart

Wenn ein Container haengt oder ARIA nicht mehr antwortet — hier kann man gezielt eingreifen.

Komplett-Reset

⚠ WIPE ALL — alle Einstellungen, Stimmen und das komplette Gedächtnis (Vector-DB) werden gelöscht. ARIA wird leer wie nach Erstinstallation. Bleiben tun nur:

  • .env (Tokens + RVS-Config)
  • aria-data/ssh/ (SSH-Keys für aria-wohnung)

Vorher exportieren wenn etwas erhalten bleiben soll (Gehirn-Tab + Voice-Liste).

Betriebsmodus

Aktueller Modus: Normal

Runtime-Konfiguration

Werte werden in /shared/config/runtime.json persistiert und ueberschreiben die ENV-Variablen aus der .env. Bridge und Brain lesen sie beim Start — nach Aenderung den jeweiligen Container neu starten (Reparatur-Section oben).

App-Onboarding (QR-Code)

RVS-Credentials als QR-Code — App scannt, keine manuelle Eingabe. Enthaelt Host, Port, TLS-Flag und Token.
QR-Code wird geladen...
Achtung
Dieser QR enthaelt den RVS-Token im Klartext — zeige ihn niemandem, speichere keine Screenshots davon in unsicheren Cloud-Diensten.

Gehirn — Status

(Lade...)

Token / Calls

letzte 1h
–
letzte 5h (Quota-Fenster)
–
letzte 24h
–
letzte 30 Tage
–
Pro User-Frage = mind. 1 Claude-Call. Bei Tool-Use (Skills) bis zu 8 Calls. Plus 1 Destillat-Call bei langen Konversationen. Token-Werte sind Schaetzung (chars/4) — nicht exakt, aber gut genug fuer Quota-Monitoring.

Lokales LLM & Claude-Ersparnis

Turns, die das lokale LLM (Qwen) oder ein reiner Skill-Fast-Path uebernommen hat — jeder davon ist ein Claude-Call, der NICHT passiert ist. Die lokalen Tokens laufen auf deiner eigenen Hardware (kein Subscription-Quota).
–
–

Bootstrap & Migration

Drei Wege ARIA mit "Grundregeln" zu füttern — von leichtgewichtig bis Voll-Wiederherstellung.

1. Aus brain-import/ migrieren
Parst AGENT.md/USER.md/TOOLING.md aus dem Repo und schreibt sie als atomare pinned Memory-Punkte (identity / rule / preference / tool / skill). Idempotent — Re-Run ersetzt nur die Migration-Punkte, eigene Memories bleiben.
(Brain-Status laden für Datei-Liste)
2. Bootstrap-Snapshot (nur pinned)
Getrennt nach scope: System = generische Regeln, die jeder braucht (Sicherheit, Ehrlichkeit, Skill-Regeln) — teilbar für ein frisches System. Persönlich = Stefan-spezifisch (Name, Zugangsdaten, Projekte) — bleibt privat. Import ersetzt nur die pinned Memories des jeweiligen scope; Cold Memory bleibt unangetastet.
3. Komplettes Gehirn (alles)
Tar.gz mit Memories + Skills + Qdrant-DB. Brain + Qdrant werden kurz angehalten. Import überschreibt ALLES — vorher exportieren wenn etwas erhalten bleiben soll.

📁 Projekte

Projekte bündeln zusammengehörige Turns als Block im Hauptchat. Stefan sagt zu ARIA „lass uns ein Projekt anlegen" oder klickt hier auf „+ Neues Projekt". Aktives Projekt: (wird geladen...)
Lade Projekte...

Memories

(Brain-Container nicht erreichbar oder leer)

Dateien

(Lade...)

Skills

Skills sind ARIAs Faehigkeiten. ARIA legt sie selbst an wenn sie ein wiederkehrendes Problem geloest hat. Du kannst sie hier verwalten — ansehen, ausfuehren, deaktivieren, exportieren, importieren. Ein deaktivierter Skill bleibt ARIA bekannt (sie baut ihn nicht doppelt), kann aber nicht aufgerufen werden.

(Lade...)

Trigger

Trigger sind passive Aufweck-Quellen. Skills sind aktiv (ARIA ruft sie), Trigger sind passiv (System ruft ARIA wenn ein Event passiert). Polling kostet keine Tokens — nur das Feuern verbraucht eine Anfrage.

(Lade...)

RVS-Räume 🚪

Alle Räume auf dem RVS. Jeder Token bildet einen eigenen Raum — nur Clients im GLEICHEN Raum sehen sich. Der RVS-Log kürzt Tokens auf 8 Zeichen, dadurch können zwei verschiedene Tokens gleich aussehen (Prefix-Kollision). Der Fingerprint + die Länge hier machen das eindeutig: mehrere Räume = Token-Mismatch irgendwo. ★ = dein Raum (Diagnostic).

(Aktualisieren klicken)

Satelliten 🛰️

Aussenposten-Container in fremden Netzen (Buero, Werkstatt …), die sich mit RVS verbinden. Hier siehst Du, welche Satelliten online sind und welche Geraete sie im jeweiligen Netz erkannt haben. „Geraete scannen" fragt den Satelliten live ab.

(Lade...)

Host-Agenten 💻

Agenten, die DIREKT auf einem Rechner laufen (Binary + .env) und sich ausgehend mit RVS verbinden — ARIA steuert den Rechner damit auch hinter NAT/Firewall. ARIA nutzt sie ueber host_exec & Co.; Setup siehe host-agent/README.

(Lade...)

Compute-Flotte

GPU-Dienste (STT / TTS / lokales LLM), verteilt auf einen oder mehrere Nodes. Jeder Node startet per COMPOSE_PROFILES nur die Dienste, die er anbietet. Hier siehst Du, welche Instanz auf welchem Node laeuft, mit welchem Modell/GPU und ob sie gerade beschaeftigt ist.

(Lade...)