duffyduck and Claude Opus 4.8
5b20bc1743
fix(local-llm): lokale Antwort nicht in <voice> wickeln (Anzeige war leer)
...
Qwen imitierte aus dem Kontext den <voice>-TTS-Block, packte aber die GANZE
Antwort hinein -> Display strippt <voice> -> leere Bubble (nur TTS klang richtig).
Fix: (1) Local-Prompt verbietet <voice>/[FILE:]/<tool_call>/Markup explizit —
nur Plain-Text (wird angezeigt UND vorgelesen). (2) Sicherheitsnetz: Voice-Tags
aus lokalen Antworten strippen, falls das 8B es doch tut.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-11 13:09:57 +02:00
duffyduck and Claude Opus 4.8
3cd7350160
feat(local-llm): B1b — lokale Tools (web_search via SearXNG, Timer, Spotify, Memory)
...
Das lokale Tier kann jetzt Werkzeuge nutzen — Wetter/News/Fakten laufen lokal
statt ueber Claudes langsamen Web-Fetch.
- SearXNG-Container (aria VM, aria-net): self-hosted Meta-Suche, keyless,
JSON-API aktiviert (aria-data/searxng/settings.yml), Rate-Limiter aus.
Brain-Env SEARXNG_URL.
- web_search-Tool in META_TOOLS + _dispatch_tool (_web_search fragt SearXNG,
gibt Titel/Snippet/URL der Top-Treffer). Steht auch Claude zur Verfuegung.
- Lokaler Tool-Loop (_try_local_fast_lane): kuratiertes Set web_search /
memory_search / trigger_timer / run_spotify; max 3 Runden, sonst → Claude.
Break-/Escalate-Guard bleibt.
- Router: should_try_local schliesst nur noch CLAUDE-ONLY-Themen aus (Bild,
Skill, Projekt, OAuth, Licht, Kalender/Mail). Wetter/Timer/News/Musik/Memory
gehen jetzt lokal. Verifiziert (alle Testfaelle korrekt).
- Schlanker Local-Prompt mit Tool-Guidance ("nur nutzen wenn noetig, sonst
Smalltalk direkt beantworten"). Skill-BAUEN bleibt Claude-only.
Deploy: ARIA-VM brain+bridge+searxng, Gamebox llm-adapter (tool-passthrough).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-11 12:50:54 +02:00
duffyduck and Claude Opus 4.8
c8b7ea322e
feat(router): B1a — lokale Fast-Lane (reden-only) mit Schaltern, gated (Default aus)
...
Zwischen Skill-Fast-Path und Claude-Loop: einfache Plauder-Turns → lokales Qwen
(schlanker Prompt, KEINE Tools) in <1 s; sonst Claude wie bisher.
- router.py: load_config() liest /shared/config/local_llm.json (enabled/localOnly/
toolVariant; Default enabled=false → alles Claude). should_try_local() Heuristik
(kurz + keine Tool-/Technik-Marker; localOnly erzwingt lokal). build_local_
system_prompt() = schlank (IDENTITY_ANCHOR + Schnell-Modus + Awareness-Liste +
<<ESCALATE>>-Regel, keine Tool-Schemas).
- agent.py: _try_local_fast_lane() — baut schlanken Prompt + Window, ruft
local_llm_chat; leer/ESCALATE → None (→ Claude), sonst Antwort + persistiert.
localOnly: kein Claude-Fallback (Eval), ehrliche Fehlermeldung bei Nichterreich.
In chat() nach User-Turn gated aufgerufen.
Heuristik lokal verifiziert (alle Testfaelle korrekt). Gated off → laufendes
Verhalten unveraendert bis Master-Schalter an. Diagnostic-Toggles (B1a-2) +
lokale Tools (B1b) folgen.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-11 11:55:29 +02:00