Open-Source Personal AI Assistant (ehemals Clawdbot/Moltbot)
23. Februar 2026
### Änderungen - Provider/Mistral: Unterstützung des Mistral-Anbieters hinzugefügt, einschließlich Memory Embeddings und Sprachunterstützung. (#23845) Danke an @vincentkoc. - Update/Kern: Optional integrierter automatischerUpdater für Paketinstallationen (`update.auto.*`) hinzugefügt, standardmäßig ausgeschaltet, mit stabilem Rollout-Verzögerung+Jitter und Beta-Stundentakt. - CLI/Update: `openclaw update --dry-run` zum Vorschau von Channel/Tag/Ziel/Neu-Start-Aktionen, ohne Konfiguration, Installation, Plugin-Synchronisierung oder Neustart zu verändern. - Config/UI: tag-bezogene Einstellungsfilterung hinzugefügt und Konfig-Label/ Hilfetexte erweitert, damit Felder im Dashboard-Konfigurationsbildschirm leichter zu finden und zu verstehen sind. - Kanäle/Synology Chat: nativer Synology Chat-Kanal-Plugin mit Webhook-Eingang, Direct-Message-Routing, ausgehende Send/Medien-Unterstützung, Konten-spezifische Konfiguration und DM-Richtlinien-Kontrollen. (#23012) - iOS/Talk: TTS-Segmente vorabrufen und erwartete Sprachunterbrechungsfehler unterdrücken für flüssigeres Talk-Wiedergabe. (#22833) Danke @ngutman. - Memory/FTS: Spanische und Portugiesische Stop-Wörter-Filterung für Abfrage-Erweiterung im reinen FTS-Suchmodus hinzugefügt, verbessert Gesprächserinnerung für beide Sprachen. Danke @vincentkoc. - Memory/FTS: Japanisch-bezogene Tokenisierung und Stop-Wörter-Filterung für Abfrage-Erweiterung im reinen FTS-Suchmodus (einschließlich gemischter Skripte wie ASCII + Katakana). Danke @vincentkoc. - Memory/FTS: Koreanische Stop-Wörter-Filterung und partikelsensitive Keyword-Extraktion (einschließlich gemischter Koreanisch/Englisch-Stämme) für Abfrage-Erweiterung im reinen FTS-Suchmodus. (#18899) Danke @ruypang. - Memory/FTS: Arabische Stop-Wörter-Filterung für Abfrage-Erweiterung im reinen FTS-Suchmodus zur Verringerung Gesprächs-Füller in Arabisch-Speichern. Danke @vincentkoc. - Discord/Allowlist: kanonisieren gelöste Discord-Allowlist-Namen zu IDs und Auflösung-Fluss für klareres fehlerfreies Verhalten. - Channels/Config: Kanal-Vorschau-Streaming-Konfiguration mit gemeinsamem Resolver und kanonischem Migrationspfad vereinheitlicht. - Gateway/Auth: Abgleich Der Credential-Quelle bei Aufruf/Probe/Status/Auth über gemeinsam genutzte Resolver-Helfer, tabellebene Parität über Gateway-Einstiegspunkte hinweg. - Gateway/Auth: Refaktorierung der Gateway-Credential-Auflösung und Websocket-Handshake-Pfade, Nutzung gemeinsamer typisierter Auth-Kontexte, inklusive expliziter `auth.deviceToken`-Unterstützung in Connect-Frames und Tests. - Skills: Bundle-Job entfernt `food-order` Skill aus diesem Repo; Installation/Verwaltung erfolgt künftig über ClawHub. - Docs/Subagents: Thread-bound Session guidance kanal-zuerst statt Discord-spezifisch, explizite Angabe von Thread-Unterstützung-Kanälen. (#23589) Danke @osolmaz. ### Fehlerbehebungen - Security/CLI: Sensible Werte in `openclaw config get`-Ausgabe vor dem Ausgeben von Config-Pfaden redigieren, Credential-Leckage in Terminalausgabe/History verhindern. (#13683) Danke @SleuthCo. - Install/Discord Voice: `@discordjs/opus` optional machen, sodass Openclaw-Installation/Update nicht mehr scheitert, wenn native Opus-Builds fehlschlagen; `opusscript` bleibt Runtime-Fallback-Decoder für Discord-Voice-Flows. (#23737, #23733, #23703) Danke @jeadland, @Sheetaa, @Breakyman. - Docker/Setup: `$OPENCLAW_CONFIG_DIR/identity` während `docker-setup.sh` vorab erstellen, damit CLI-Befehle, die Geräte-Identität benötigen (z. B. `devices list`), keine EACCES-Fehler bei restriktiven Bind-Mounts verursachen. (#23948) Danke @ackson-beep. - Exec/Hintergrund: Standard-Exec-Timeout nicht mehr auf Hintergrund-Sitzungen anwenden, wenn kein explizites Timeout gesetzt ist, damit langlaufende Hintergrundjobs nicht am Standard-Timeout beendet werden. (#23303) - Slack/Threading: Sitzungen: Eltern-Sitzung Forking und Thread-History-Kontext aktiv halten, indem Gate-Konzepte für erste Runde entfernt werden; Thread-History-Fetch und Antwort-Prompt-Kontext-Injektion angepasst. (#23843, #23090) Danke @vincentkoc und @Taskle. - Slack/Threading: beachte `replyToMode`, wenn Slack Top-level `thread_ts` automatisch füllt, und ignorieren Inline-Direktiven `replyToId`, wenn `replyToMode` auf `off` steht, damit Thread-Forcings nur bei expliziter Konfiguration aktiviert bleiben. (#23839, #23320, #23513) Danke @vincentkoc und @dorukardahan. - Slack/Extension: Weiterleitung von `message read` `threadId` zu `readMessages` und Nutzung von Delivery-Context `threadId` als Outbound-`thread_ts`-Fallback, damit Antworten/Lesen in dem richtigen Slack-Thread bleiben. (#22216, #22485, #23836) Danke @vincentkoc, @lan17, @dorukardahan. - Slack/Upload: aufbereitete User-IDs (U-IDs) zu DM-Channel-IDs via `conversations.open` auflösen, bevor `files.uploadV2` aufgerufen wird; `chat.postMessage` toleriert User-IDs direkt, aber `files.uploadV2` → `completeUploadExternal` validiert `channel_id` gegen `^[CGDZ][A-Z0-9]{8,}$`, verhindert Fehlermeldungen `invalid_arguments`. - Webchat/Chat: assisstant `final` Payload-Messages direkt auf Chat-Status anwenden, damit gesendete Turns sofort gerendert werden, ohne auf vollständige Historie zu warten. (#14928) Danke @BradGroux. - Webchat/Chat: bei Out-of-Band final events (z. B. Tool-Call Seitenläufe) angegebene finale Assistant-Payloads direkt anhängen, statt eine transient History-Resets zu erzwingen. (#11139) Danke @AkshayNavle. - Webchat/Performance: neu laden `chat.history` nur nach finalen Ereignissen, wenn das finale Payload keine renderbare Assistant-Nachricht enthält, um teure Voll-History-Refreshes bei normalen Turns zu vermeiden. (#20588) Danke @amzzzzzzz. - Webchat/Sitzungen: externe Sitzungsrouting-Metadaten beibehalten, wenn interne `chat.send` Turns unter `webchat` laufen, damit explizite kanal-bezogene Sitzungen (z. B. Telegram) nicht nach `webchat` neu geschrieben werden und Folge-Lieferungen fehlgeleitet werden. (#23258) Danke @binary64. - Webchat/Sitzungen: vorhandenes Sitzungs-`label` über `/new` und `/reset` Rollovers beibehalten, damit Reset-Sitzungen in der Sitzungsverlauf-Liste auffindbar bleiben. (#23755) Danke @ThunderStormer. - Gateway/Chat UI: Inline-Antwort/Audio-Direktiven-Tags aus nicht-Streaming-finalen Webchat-Übertragungen entfernen (einschließlich `chat.inject`), während leere Nachrichten-Inhalte erhalten bleiben. (#23298) Danke @SidQin-cyber. - Chat/UI: Inline-Antwort-/Audio-Direktiven-Tags (`[[reply_to_current]]`, `[[reply_to:<id>]]`, `[[audio_as_voice]]`) aus angezeigtem Chat-Verlauf, Live-Chat-Ereignis-Ausgabe und Sitzungs-Vorschau-Schnipseln entfernen, damit Steuerelement-Tags nicht mehr in sichtbare Oberflächen gelangen. - Gateway/Chat UI: Nicht-Streaming-finales `chat.send`/`chat.inject` Payload-Text mit demselben Envelope/Untrusted-Context-Stripping wie `chat.history` bereinigen, um Wrapper-Markup wie `<<<EXTERNAL_UNTRUSTED_CONTENT...>>>` in der Control UI zu vermeiden. (#24012) Danke @_mittelaltergouda. - Telegram/Media: sende eine nutzerseitige Telegram-Antwort, wenn Medien-Download fehlschlägt (nicht Größenfehler), statt Nachricht still zu verwerfen. - Telegram/Webhook: Webhook-Monitoring so lange aktiv halten, bis Gateway-Abbruchsignale eintreten, falsche Kanalabbrüche vermeiden und Schleifen bei automatischem Webhook-Neustart verhindern. - Telegram/Polling: wiederhole bei
Features
21. Februar 2026
### Änderungen - Models/Google: Gemini 3.1-Unterstützung hinzufügen (`google/gemini-3.1-pro-preview`). - Providers/Onboarding: Volcano Engine (Doubao) und BytePlus Providers/Modelle hinzufügen (einschließlich Codierungsvarianten), Onboarding-Auth-Optionen für interaktive + nicht-interaktive Flows verknüpfen und Docs an `volcengine-api-key` ausrichten. (#7967) Danke an @funmore123. - Channels/CLI: pro Konto/Kanal `defaultTo` Outbound-Routing-Fallback hinzufügen, damit `openclaw agent --deliver` senden kann, wenn kein explizites `--reply-to` angegeben ist, wenn ein Default-Ziel konfiguriert ist. (#16985) Danke an @KirillShchetinin. - Channels: ermöglichen per-Kanal-Modell-Overrides über `channels.modelByChannel` und diese in /status notieren. Danke an @thewilloftheshadow. - Telegram/Streaming: Vorschau-Streaming-Konfiguration auf `channels.telegram.streaming` (Boolean) vereinfachen, legacy `streamMode`-Werte auto-zuordnen, und Block-vs-Partial-Vorschau-Verzweigungen entfernen. (#22012) Danke an @obviyus. - Discord/Streaming: Stream-Vorschau-Modus für Live-Entwürfe mit Teil-/Block-Optionen und konfigurierbare Chunking hinzufügen. Danke an @thewilloftheshadow. Inspiration @neoagentic-ship-it. - Discord/Telegram: konfigurierbare Lifecycle-Status-Reaktionen für queued/thinking/tool/done/error Phasen mit gemeinsamem Controller und Emoji/Timing-Overrides. Danke an @wolly-tundracube und @thewilloftheshadow. - Discord/Voice: Sprachkanal-Beitreten-Verlassen/Status über `/vc` hinzufügen, plus Auto-Join-Konfiguration für Echtzeit-Sprachunterhaltungen. Danke an @thewilloftheshadow. - Discord: konfigurierbare ephemeral Defaults für Slash-Command-Antworten hinzufügen. (#16563) Danke an @wei. - Discord: Unterstützung beim Aktualisieren von Forum-`available_tags` über Channel-Edit-Aktionen zur Forum-Tag-Verwaltung. (#12070) Danke an @xiaoyaner0201. - Discord: Inklusive Channel-Themen im vertrauenswürdigen inbound Metadata bei neuen Sessions. Danke an @thewilloftheshadow. - Discord/Subagents: thread-bound Subagent-Sitzungen auf Discord mit per-Thread Fokus/Listensteuerung und thread-bound Fortsetzungsrouting für gespawnte Hilfsagenten. (#21805) Danke an @onutc. - iOS/Chat: Chat-UI-Lärm bereinigen durch Entfernen inbound untrusted Metadata/Timestamp-Präfixe, Tool-Ausgaben zu kompakten Zusammenfassungen/Fehlern formatieren, Composer während des Tippens komprimieren und Tap-to-Dismiss Tastatur im Chat-View unterstützen. (#22122) Danke an @mbelinky. - iOS/Watch: gespiegelt Watch-Prompt-Benachrichtigungen in iOS Quick-Reply-Handling bridgen, inkl.Queued-Action-Handoff bis App-Modell-Initialisierung. (#22123) Danke an @mbelinky. - iOS/Gateway: Hintergrund-Wake und Reconnect-Verhalten stabilisieren mit Hintergrund-Reconnect-Suppression/Lease-Windows, BGAppRefresh-Wake-Fallback, Location-Wake-Hook-Drosselung, APNs-Wake-Retry+Nudge-Instrumentierung. (#21226) Danke an @mbelinky. - Auto-reply/UI: Modell-Fallback-Lifecycle-Visibility in verbose Logs, /status Active-Model-Kontext mit Fallback-Grund, kohärente WebUI-Fallback-Indikatoren. (#20704) Danke an @joshavant. - MSTeams: Duplizierte gesendete Nachrichten-Cache-Speicherung durch Entfernen doppelter pro-Nachricht Set-Speicherung und Verwenden von Zeitstempel-Map-Schlüsseln als einzige Mitgliedschaftsquelle. (#22514) Danke an @TaKO8Ki. - Agents/Subagents: Standard-Spawn-Tiefe des Subagents verwendet jetzt gemeinsam genutzte `maxSpawnDepth=2`, wodurch Default-Depth-1-Orchestrator-Spawn ermöglicht wird, während Tiefen-Richtlinienprüfungen konsistent bleiben. (#22223) Danke an @tyler6204. - Security/Agents: Owner-ID-Obfuskation mittels dediziertem HMAC-Secret aus der Konfiguration (`ownerDisplaySecret`) und Hashing-Verhalten anpassen, damit Obfuskation unabhängig von Gateway-Token-Behandlung ist. (#7343) Danke an @vincentkoc. - Security/Infra: Gateway-Lock und Tool-Call-Synthetic-IDs von SHA-1 auf SHA-256 umstellen, unveränderte Verkürzungs-Längen, um Hash-Basis zu stärken bei ansonsten deterministischem Verhalten. (#7343) Danke an @vincentkoc. - Dependencies/Tooling: nicht-blockierende Dead-Code-Scans in CI via Knip/ts-prune/ts-unused-exports hinzufügen, um ungenutzte Abhängigkeiten/Exporte früher aufzudecken. (#22468) Danke an @vincentkoc. - Dependencies/Unused Dependencies: entferne oder scope ungenutzte Root- und Extension-Dependencies (`@larksuiteoapi/node-sdk`, `signal-utils`, `ollama`, `lit`, `@lit/context`, `@lit-labs/signals`, `@microsoft/agents-hosting-express`, `@microsoft/agents-hosting-extensions-teams`, sowie plugin-local `openclaw` devDeps in `extensions/open-prose`, `extensions/lobster`, und `extensions/llm-task`). (#22471, #22495) Danke an @vincentkoc. - Dependencies/A2UI: Abhängigkeitsauflösung nach Root-Bereinigung härten (Auflösung von `lit`, `@lit/context`, `@lit-labs/signals`, `signal-utils` aus Workspace/Root) und Bündelungs-Fallback-Verhalten vereinfachen, inkl. `pnpm dlx rolldown`-Kompatibilität. (#22481, #22507) Danke an @vincentkoc. ### Fixes - Security/Agents: obere Retry-Schleife des embedded Pi-Runners mit höherem, last-gehobeltem dynamischen Limit (32-160 Versuche) begrenzen und expliziten `retry_limit`-Fehlerpayload zurückgeben, wenn Wiederholungen nie konvergieren, um unendliche interne Retry-Zyklen zu verhindern (`GHSA-76m6-pj3w-v7mf`). - Telegram: Duplikate von Bot-Token-Besitz bei Start/Status erkennen, sekundäre Konten als nicht konfiguriert markieren und Duplicate-Account-Startup-blockieren, bevor Polling beginnt, um endlose `getUpdates`-Konflikt-Schleifen zu vermeiden. - Agents/Tool-Images: Quelldateinamen in `agents/tool-images` Resize-Logs aufnehmen, damit Komprimierungs-Ereignisse auf spezifische Dateien zurückverfolgt werden können. - Providers/OAuth: Qwen- und Chutes-Refresh-Behandlung härten durch Validierung von Refresh-Response-Ablaufwerten und Beibehaltung vorheriger Refresh-Tokens, wenn Anbieter leere Felder zurückgeben, mit Regression-Abdeckung für leere Token-Antworten. - Models/Kimi-Coding: fehlendes implizites Provider-Template für `kimi-coding` mit korrekter `anthropic-messages` API-Type und Basis-URL hinzufügen, um 403-Fehler bei Verwendung von Kimi for Coding zu beheben. (#22409) - Auto-reply/Tools: `senderIsOwner` durch embedded Queued/Followup Runner-Parameter weiterleiten, damit Owner-only-Tools für autorisierte Sender verfügbar bleiben. (#22296) Danke an @hcoj. - Discord: Modell-Auswahlrichter-Back-Navigation wiederherstellen, wenn Provider fehlt, und den Discord-Picker-Flow dokumentieren. (#21458) Danke an @pejmanjohn und @thewilloftheshadow. - Memory/QMD: pro-Agent memorySearch.enabled=false während Gateway QMD-Startup berücksichtigen, Multi-Collection QMD-Suchen in je-Collection-Anfragen aufteilen (`search`/`vsearch`/`query`), bevorzugt Sammlungs-Hinweis-Dokumentenauflösung, Neustart-Updates bei transienten Locks/Timeouts erneut versuchen, `qmd embed` im BM25-Only Suchmodus überspringen und Embedding-Läufe global mit Failure-Backoff serialisieren, um CPU-Stürme bei Multi-Agenten-Hosts zu verhindern. (#20581, #21590, #20513, #20001, #21266, #21583, #20346, #19493) Danke an @danielrevivo, @zanderkrause, @sunyan034-cmd, @tilleulenspiegel, @dae-oss, @adamlongcreativellc, @jonathanadams96, und @kiliansitel. - Memory/Builtin: automatische Sync-Races mit Manager
Features
19. Februar 2026
### Änderungen - iOS/Watch: ein Apple-Watch- companion MVP mit Watch-Posteingang-UI, Watch-Benachrichtigungs-Relay-Handling und Gateway-Bachstellenflächen für Watch-Status/Senden-Flows hinzufügen. (#20054) Danke @mbelinky. - iOS/Gateway: disconnectete iOS-Knoten via APNs aufwachen vor `nodes.invoke` und Gateway-Sitzungen beim Still-Push-Wake automatisch wieder verbinden, um Invoke-Fehler zu reduzieren, wenn die App im Hintergrund ist. (#20332) Danke @mbelinky. - Gateway/CLI: Paired-Device-Hygiene-Flows mit `device.pair.remove` hinzufügen, plus `openclaw devices remove` und geschützte `openclaw devices clear --yes [--pending]`-Befehle zum Entfernen gepaarter Einträge und optional Ablehnung ausstehender Anfragen. (#20057) Danke @mbelinky. - iOS/APNs: Push-Registrierung und Signierungs-Konfiguration für Node-Zustellung hinzufügen. (#20308) Danke @mbelinky. - Gateway/APNs: Push-Test-Pipeline für APNs-Zustellungsprüfung in Gateway-Flows hinzufügen. (#20307) Danke @mbelinky. - Security/Audit: Befunde `gateway.http.no_auth` hinzufügen, wenn `gateway.auth.mode="none"` Gateway-HTTP-APIs erreichbar lässt, mit Loopback-Warnung und Remote-Exposure-Kritikalität, plus Regression-Abdeckung und Dokumentations-Updates. - Skills: Coding-Agent-Fähigkeitsleitfaden härten, indem Shell-Command-Beispiele entfernt werden, die untrusted Issue-Text direkt in Befehlsstrings interpolieren. - Dev-Tooling: Ausrichtung des lokalen/CI-Formatverhaltens von `oxfmt`. (#12579) Danke @vincentkoc. ### Fixes - Agents/Streaming: Partielle Streaming-Sitzung während Reasoning-Streams aktiv halten, native `thinking_*`-Streams-Ereignisse konsistent behandeln, gemischte Reasoning-End-Signale deduplizieren und veraltete mutierende Tool-Fehler nach Erfolg des Gleichziel-Neuversuchs bereinigen. (#20635) Danke @obviyus. - iOS/Screen: Lebenszyklus-Eigentümerschaft von `WKWebView` in den `ScreenWebView`-Koordinator verschieben und expliziten Attach/Detach-Flow verwenden, um Risiko von Gesten-/Lebenszyklus-Abstürzen zu reduzieren (`__NSArrayM insertObject:atIndex:`-Pfad) während Bildschirm-Tab-Updates. (#20366) Danke @ngutman. - iOS/Onboarding: Pairing-Status-Flackern beim Auto-Resume verhindern, stabile Zustandsübergänge für Resume beibehalten. (#20310) Danke @mbelinky. - iOS/Onboarding: Pairing- und Reconnect-Verhalten stabilisieren durch Zurücksetzen veralteter Pairing-Anforderungszustände bei manuellem Retry, Trennung beider Operator- und Node-Gateways bei Operator-Fehlern und Vermeidung doppelter Pairing-Schleifen durch Attachment der Operator-Transport-Identität. (#20056) Danke @mbelinky. - iOS/Signing: Lokale Auto-Auswahl Overrides für Signing-Team während Projekterzeugung wiederherstellen, indem `.local-signing.xcconfig` in aktives Signing-Config eingespeist wird und `OPENCLAW_DEVELOPMENT_TEAM` im Local-Signing-Setup ausgegeben wird. (#19993) Danke @ngutman. - Telegram: Nachrichten-ähnliche eingehende Verarbeitung vereinheitlichen, sodass `message` und `channel_post` denselben Dedupe/Access/Media-Pipeline teilen und behaviorally konsistent bleiben. (#20591) Danke @obviyus. - Telegram/Agents: Ausführung/bash Tool-Fehler-Warnungen hinter VR-Modus verstecken, damit Standard-Telegram-Antworten sauber bleiben, während verbose-Sitzungen Diagnostics aufzeigen. (#20560) Danke @obviyus. - Telegram/Cron/Heartbeat: Explizite Telegram-Themenziele in Cron- und Heartbeat-Zustellung berücksichtigen (`<chatId>:topic:<threadId>`), damit geplanter Versand im konfigurierten Thema landet statt im zuletzt aktiven Thread. (#19367) Danke @Lukavyi. - Gateway/Daemon: `TMPDIR` in installierte Service-Umgebungen weiterleiten, damit macOS LaunchAgent-Gateway-Läufe zuverlässig SQLite-Temp-/Journal-Dateien öffnen können, statt mit `SQLITE_CANTOPEN` zu scheitern. (#20512) Danke @Clawborn. - Agents/Billing: aktives Modell, das einen Abrechnungsfehler verursacht hat, in nutzerorientierte Abrechnungsnachrichten aufnehmen (z. B. `OpenAI (gpt-5.3)`) über Payload, Failover und Lifecycle-Fehlerpfade hinweg, damit Nutzer genau erkennen können, welcher Schlüssel Guthaben benötigt. (#20510) Danke @echoVic. - Gateway/TUI: `agents.defaults.blockStreamingDefault` für `chat.send` berücksichtigen, indem die harte Überschreibung der Block-Streaming-Deaktivierung entfernt wird, damit Antworten im konfigurierten Block-Modus geliefert werden. (#19693) Danke @neipor. - UI/Sessions: canonicaler Main-Session-Key-Alias in Chat-UI-Flows akzeptieren, damit Main-Session-Routing konsistent bleibt. (#20311) Danke @mbelinky. - OpenClawKit/Protocol: JSON-Boolean-Literals (`true`/`false`) beim Bridging durch `AnyCodable` beibehalten, damit Apple-Client-RPC-Parameter Booleans nicht erneut als `1`/`0` kodieren. Danke @mbelinky. - Commands/Doctor: Embedding-Provider-Warnungen überspringen, wenn `memory.backend` `qmd` ist, da QMD Embeddings intern verwaltet und `memorySearch`-Provider nicht benötigt. (#17263) Danke @miloudbelarebia. - Canvas/A2UI: Bündel-Asset-Auflösung und Empty-State-Behandlung verbessern, damit UI-Fallbacks zuverlässig gerendert werden. (#20312) Danke @mbelinky. - Commands/Doctor: Verhindern, ungültige Configs mit neuen Defaults von `gateway.auth.token` während der Reparatur umzuschreiben, und nur schreiben, wenn reale Config-Änderungen erkannt werden, um versehentliche Token-Duplikation und Backup-Churn zu vermeiden. - Gateway/Auth: Standardmäßig unresolved Gateway-Auth auf Token-Modus setzen mit Start-up-Auto-Generierung/-Persistierung von `gateway.auth.token`, während explizites `gateway.auth.mode: "none"` für beabsichtigte Open-Loopback-Setups erlaubt bleibt. (#20686) danke @gumadeiras. - Channels/Matrix: Erkennung von Erwähnungen für `formatted_body` Matrix-zu-Links korrigieren, indem Matrix.to-Erwähnungsformate konsistent behandelt werden. (#16941) Danke @zerone0x. - Heartbeat/Cron: Intervall-Herzschläge überspringen, wenn `HEARTBEAT.md` fehlt oder leer ist und keine getaggten Cron-Ereignisse in der Warteschlange sind, während Fallback für getaggte Erinnerungen beibehalten wird. (#20461) danke @vikpos. - Browser/Relay: Bereits laufenden Extension-Relais erneut verwenden, wenn der Relay-Port von einem anderen OpenClaw-Prozess belegt ist, jedoch bei Port-Konflikten außerhalb des Relays fehlschlagen, um unverbundene Listener nicht zu verdecken. (#20035) Danke @mbelinky. - Scripts: clawdock-Hilfskommando-Unterstützung aktualisieren, um `docker-compose.extra.yml` dort zu verwenden, wo verfügbar. (#17094) Danke @zerone0x. - Lobster/Config: Lobster-Executable-Pfad-Überschreibungen entfernen (`lobsterPath`), PATH-basierte Ausführung erzwingen und fokussierte Windows-Wrapper-Lösungen-Tests hinzufügen, um shell-freies Verhalten stabil zu halten. - Gateway/WebChat: Blockieren von `sessions.patch` und `sessions.delete` für WebChat-Clients, damit Session-Store-Manipulationen auf Nicht-WebChat-Operator-Flows beschränkt bleiben. Danke @allsmog für den Report. - Gateway: Launchctl GUI-Domänen-Bootstrap-Fehler auf macOS klarstellen. (#13795) Danke @vincentkoc. - Lobster/CI: flaky Test Windows cmd-Shim-Skripte lösen. (#20833) Danke @vincentkoc. - Browser/Relay: Gateway-Token-Auth auf `/extension` und `/cdp` erzwingen und Chrome-Extension-Setup auf die Verwendung eines einzigen `gateway.auth.token`-Inputs für Relay-Authentifizierung ausrichten. Danke @tdjackey für den Bericht. - Gateway/Hooks: Boot-Checks pro konfigurierbarem Agenten-Umfang durchführen, einschließlich Auflösung des Session-Keys pro Agent, Regression-Abdeckung von Startup-Hooks und Logging von Boot
Features
18. Februar 2026
### Änderungen - Agents/Anthropic: opt-in 1M Context Beta-Header-Unterstützung für Opus/Sonnet über Modell `params.context1m: true` hinzufügen (entspricht `anthropic-beta: context-1m-2025-08-07`). - Agents/Models: Anthropic Sonnet 4.6 (`anthropic/claude-sonnet-4-6`) über Aliases/Standardwerte hinweg unterstützen mit Forward-Compatibility-Fallback, wenn Upstream-Kataloge noch nur Sonnet 4.5 expose. - Commands/Subagents: `/subagents spawn` für deterministische Subagenten-Aktivierung aus Chat-Befehlen hinzufügen. (#18218) Danke an @JoshuaLelon. - Agents/Subagents: Eine akzeptierte Antwort-Hinweis für `sessions_spawn` hinzufügen, der erklärt, dass Polling-Subagenten für One-off-Aufrufe deaktiviert sind. Danke an @tyler6204. - Agents/Subagents: Spawning-Subagenten-Task-Nachrichten mit Kontext kennzeichnen, um Quelleninformation in nachgelagerter Verarbeitung zu bewahren. Danke an @tyler6204. - iOS/Share: eine iOS-Share-Erweiterung hinzufügen, die geteilte URL/Text/Bild-Inhalte direkt an Gateway `agent.request` weiterleitet, mit Delivery-Route-Fallback und optionalen Empfangsbestätigungen. (#19424) Danke an @mbelinky. - iOS/Talk: einen `Background Listening`-Schalter hinzufügen, der Talk Mode aktiv hält, wenn die App im Hintergrund läuft (standardmäßig ausgeschaltet aus Battery-Schutzgründen). Danke an @zeulewan. - iOS/Talk: einen `Voice Directive Hint`-Schalter für Talk-Mode-Eingabeaufforderungen hinzufügen, damit Nutzer Anweisungen zum Sprachwechsel von ElevenLabs deaktivieren können, um Tokens zu sparen, wenn nicht benötigt. (#18250) Danke an @zeulewan. - iOS/Talk: Barge-in-Verhalten härten, indem Unterbrechungen beim Sprechen deaktiviert werden, wenn Output-Route Lautsprecher/Receiver ist, um Fehlunterbrechungen durch lokales TTS-Verbleich zu reduzieren. Danke an @zeulewan. - Slack: native Einzel-Nachrichten-Streaming mit Slack `chat.startStream`/`appendStream`/`stopStream` hinzufügen; Antworten-Threading mit `replyToMode` beibehalten, Streaming standardmäßig aktiviert, und bei Streaming-Fehlern auf normale Delivery zurückfallen. (#9972) Danke an @natedenh. - Slack: konfigurierbare Streaming-Modi für Entwurf-Vorschauen hinzufügen. (#18555) Danke an @Solvely-Colin. - Telegram/Agents: Inline-Button `style`-Unterstützung (`primary|success|danger`) über das Nachrichten-Tool-Schema, Telegram-Aktions-Parsing, Send-Pipeline und Laufzeit-Hinweise integrieren. (#18241) Danke an @obviyus. - Telegram: Benutzer-Message-Reaktionen als System-Events darstellen, konfigurierbarer Bereich `channels.telegram.reactionNotifications`. (#10075) Danke an @Glucksberg. - iMessage: `replyToId` bei ausgehenden Text/Mediatransfers unterstützen und führende `[[reply_to:<id>]]`-Tags normalisieren, damit Antworten auf die beabsichtigte iMessage zielen. Danke an @tyler6204. - Tool Display/Web UI: intent-first Tool-Detail-Ansichten und Exec-Summary hinzufügen. (#18592) Danke an @xdLawless2. - Discord: native `/exec`-Befehlsoptionen (host/security/ask/node) freischalten, sodass Discord-Slash-Befehle Autocomplete und strukturierte Eingaben erhalten. Danke an @thewilloftheshadow. - Discord: wiederverwendbare interaktive Komponenten mit `components.reusable=true` zulassen, sodass Buttons, Selektionen und Formulare mehrfach vor Ablauf verwendet werden können. Danke an @thewilloftheshadow. - Discord: pro-Button `allowedUsers`-Whitelist hinzufügen, um zu beschränken, wer Buttons klicken darf. Danke an @thewilloftheshadow. - Cron/Gateway: pro-Job-Webhook-Lieferung (`delivery.mode = "webhook"`) von Ankündigungszustellung trennen, gültige HTTP(S)-Webhook-URLs erzwingen und ein temporäres Legacy-Fallback `notify + cron.webhook` für gespeicherte Jobs beibehalten. (#17901) Danke an @advaitpaliwal. - Cron/CLI: deterministische standardmäßige Streckung für wiederkehrende Cron-Schedules zur vollen Stunde (inkl. 6-Feld-Sekunden-Cron), Bestehende Jobs auto-migrationsartig auf persistierte `schedule.staggerMs` migrieren und `openclaw cron add/edit --stagger <Dauer>` plus `--exact` Overrides für genaue Timing-Steuerung pro Job hinzufügen. - Cron: pro Lauf modelle Nutzungs-Telemetrie in Cron-Lauf-Logs/Webhooks protokollieren und ein lokales Nutzungsbericht-Skript zum Aggregieren der Token-Nutzung pro Job hinzufügen. (#18172) Danke an @HankAndTheCrew. - Tools/Web: Whitelists-Listen-URLs für `web_search` und `web_fetch` hinzufügen. (#18584) Danke an @smartprogrammer93. - Browser: `extraArgs`-Konfig für benutzerdefinierte Chrome-Startargumente hinzufügen. (#18443) Danke an @JayMishra-source. - Voice Call: inbound Begrüßungs-TTS vorab-cachen für schnellere erste Wiedergabe. (#18447) Danke an @JayMishra-source. - Skills: kompakte Skill-Dateipfade `<location>` im System-Prompt durch Ersetzen von Home-Verzeichnis-Prefixen durch `~` zusammenführen und gezielte Kompaktionstests für Prompt-Serialisierung hinzufügen. (#14776) Danke an @bitfish3. - Skills: Präzision der Skill-Beschreibung-Routing-Grenzen mit expliziter Anleitung „Use when“/„NOT for“ für coding-agent/github/weather verfeinern und PTY/Browser-Fallback-Wortlaut klären. (#14577) Danke an @DylanWoodAkers. - Auto-reply/Prompts: vertrauenswürdige eingehende `message_id` in Konversations-Metadaten-Payloads für nachgelagerte Targeting-Workflows einbeziehen. Danke an @tyler6204. - Auto-reply: `sender_id` in vertrauenswürdigen eingehenden Metadaten einbeziehen, damit Moderations-Workflows den Absender gezielt ansteuern können, ohne auf untrusted Text angewiesen zu sein. (#18303) Danke an @crimeacs. - UI/Sessions: doppelte Anzeige von Session-Prefixen vermeiden (z. B. `Subagent Subagent ...`). Danke an @tyler6204. - Agents/Z.AI: `tool_stream` standardmäßig aktivieren für Echtzeit-Tool-Aufruf-Streaming, mit Opt-out über `params.tool_stream: false`. (#18173) Danke an @tianxiao1430-jpg. - Plugins: Vorab-Overrides für `before_agent_start` Modell/Provider vor Auflösung hinzufügen. (#18568) Danke an @natefikru. - Mattermost: Emoji-Reaktionsaktionen plus Reaktions-Ereignis-Benachrichtigungen hinzufügen, einschließlich eines expliziten booleschen `remove`-Flags, um versehentliche Entfernungen zu vermeiden. (#18608) Danke an @echo931. - Memory/Search: FTS-Fallback plus Abfrage-Erweiterung für Memory-Suche hinzufügen. (#18304) Danke an @irchelper. - Agents/Models: pro-Modell-Override `thinkingDefault` in Model-Konfiguration unterstützen. (#18152) Danke an @wu-tian807. - Agents: `llms.txt`-Entdeckung im Standardverhalten aktivieren. (#18158) Danke an @yolo-maxi. - Extensions/Auth: OpenAI Codex CLI-Auth-Provider-Integration hinzufügen. (#18009) Danke an @jiteshdhamaniya. - Feishu: Bitable Create-App/Create-Field-Tools für Automatisierungs-Workflows hinzufügen. (#17963) Danke an @gaowanqi08141999. - Docker: optionaler Build-Arg `OPENCLAW_INSTALL_BROWSER`, um Chromium + Xvfb vorzuinstallieren und Laufzeit-Playwright-Installationen zu vermeiden. (#18449) ### Fixes - Agents/Image: Resize-Diagnostiken auf eine Zeile pro Bild zusammenführen und sichtbare Pixel-/Byte-Größen im Log-Eintrag für schnellere Triagierung einbeziehen. - Agents/Subagents: vorauseilende Absicherung des kombinierten Tool-Result-Context vor Modellaufrufen durch Kürzen zu großer Ausgaben und Kompaktieren ältester Tool-Result-Nachrichten, um Kontextfenster-Überläufe zu vermeiden. Danke an @tyler6204. - Agents/Subagents: explizite Subagent-Richtlinien hinzufügen, um aus `[compacted: tool output removed to free context]`/`[truncated: output exceeded
16. Februar 2026
### Changes - Discord: rich interaktive Agenten-Prompts mit Components v2 freischalten (Knöpfe, Auswahlen, Modalfenster und an Dateianhänge gebundene Dateiblöcke) für native Interaktion über Discord. Danke an @thewilloftheshadow. - Discord: UI von Components v2 + Embeds passthrough + UX-Feinabstimmungen zur Ausführungsgenehmigung (CV2-Container, Button-Layout, Discord-Weiterleitung-Skip). Danke an @thewilloftheshadow. - Plugins: expose `llm_input` und `llm_output` Hook-Payloads, damit Erweiterungen Prompt/Input-Kontext und Modell-Ausnutzungshäufigkeiten beobachten können. (#16724) Danke an @SecondThread. - Subagents: verschachtelte Sub-Agents (Sub-Sub-Agents) mit konfigurierbarer Tiefe. Setze `agents.defaults.subagents.maxSpawnDepth: 2`, um Sub-Agents das Spawnen eigener Kinder zu erlauben. Enthält `maxChildrenPerAgent`-Limit (Standard 5), tiefergreifende Tool-Policy und ordnungsgemäße Ankündigungs-Chain-Routing. (#14447) Danke an @tyler6204. - Slack/Discord/Telegram: füge pro-Kanal-Akku-Reaktions-Overrides (Konto/Kanal-Ebene) hinzu, um plattform-spezifische Emoji-Formate zu unterstützen. (#17092) Danke an @zerone0x. - Cron/Gateway: füge fertige Lauf-Webhooks-Benachrichtigungssperre (`notify`) und dedizierte Webhook-Auth-Token-Unterstützung (`cron.webhookToken`) für ausgehende Cron-Webhook-Posts hinzu. (#14535) Danke an @advaitpaliwal. - Channels: dedupliziere Basis-Typen zur Probe-/Tokenauflösung über Core + Extensions hinweg, während die Fehlertypisierung pro Kanal erhalten bleibt. (#16986) Danke an @iyoda und @thewilloftheshadow. ### Fixes - Sicherheit: ersetze veraltete SHA-1 Sandbox-Konfigurations-Hashing durch SHA-256 für deterministische Sandbox-Cache-Identität und -Neuerstellungstests. Danke an @kexinoh. - Sicherheit/Logging: redaktiere Telegram-Bot-Tokens aus Fehlermeldungen und ungekachelten Stack-Traces, um versehentliche Geheimnis-Lecks in Logs zu verhindern. Danke an @aether-ai-agent. - Sandbox/Sicherheit: blockiere gefährliche Sandbox-Docker-Konfigurationen (Bind-Mounts, Host-Netzwerk, unkonfigurierter Seccomp/AppArmor), um Container-Entkommen via Config-Injektion zu verhindern. Danke an @aether-ai-agent. - Sandbox: beibehalte Array-Reihenfolge in Config-Hashing, sodass reihenfolgenabhängige Docker-/Browser-Einstellungen eine korrekte Container-Neuerstellung auslösen. Danke an @kexinoh. - Gateway/Sicherheit: redaktiere sensible Sitzungs-/Pfad-Details aus `status`-Antworten für Nicht-Administratoren; vollständige Details bleiben dem `operator.admin` vorbehalten. (#8590) Danke an @fr33d3m0n. - Gateway/Control UI: bewahre angefragte Operatoren-Scope bei Control-UI-Bypass-Modi (`allowInsecureAuth` / `dangerouslyDisableDeviceAuth`), wenn Geräte-Identität nicht verfügbar ist, um falsche `missing scope`-Fehler bei authentifizierten LAN/HTTP-Operator-Sessions zu verhindern. (#17682) Danke an @leafbird. - LINE/Sicherheit: scheitere beim Webhook-Start, wenn Kanal-Token oder Kanal-Geheimnis fehlen; LINE-Konten gelten nur als konfiguriert, wenn beides vorhanden ist. (#17587) Danke an @davidahmann. - Skills/Sicherheit: beschränke Installer-`download`-`targetDir` auf das pro-Skill-Tools-Verzeichnis, um willkürliche Dateischreibungen zu verhindern. Danke an @Adam55A-code. - Skills/Linux: härte den Go-Installer-Fallback auf apt-basierte Systeme an, sicherer Umgang mit Root/kein-Sudo-Umgebungen, best-effort Aktualisierung des apt-Index, und aussagekräftige Fehler statt Spawn-Fehler. (#17687) Danke an @mcrolly. - Web Fetch/Sicherheit: begrenze die heruntergeladenen Antwortkörpergrößen vor HTML-Parsing, um Speicherüberlauf durch zu große oder tief verschachtelte Seiten zu verhindern. Danke an @xuemian168. - Config/Gateway: mache die Whitelist-Suffix-Matching groß-/klein-schreibunabhängig, während `passwordFile`-Ausnahmen erhalten bleiben, um versehentliche Redaktionen nicht-geheimer Config-Werte wie `maxTokens` und IRC-Passwort-Dateipfade zu vermeiden. (#16042) Danke an @akramcodez. - Dev-Tooling: härte Git `pre-commit` Hook gegen Options-Injektion aus böswilligen Dateinamen (z. B. `--force`) ab, um versehentliches Stagen ignorierter Dateien zu verhindern. Danke an @mrthankyou. - Gateway/Agent: lehne malformed `agent:`-Session-Keys (z. B. `agent:main`) in `agent` und `agent.identity.get` ab, statt sie still auf den Standard-Agenten aufzulösen, um versehentliche Cross-Session-Routing zu verhindern. (#15707) Danke an @rodrigouroz. - Gateway/Chat: härte eingehende `chat.send`-Nachrichtenbehandlung, indem Null-Bytes abgelehnt, unsichere Steuerzeichen entfernt und Unicode zu NFC normalisiert wird, bevor dispatch. (#8593) Danke an @fr33d3m0n. - Gateway/Send: gib einen aktionsfähigen Fehler zurück, wenn `send` auf internes `webchat`-Ziel geht; leite Aufrufer an `chat.send` oder einen deliverable channel weiter. (#15703) Danke an @rodrigouroz. - Control UI: verhindere gespeicherten XSS durch Assistant-Namen/Avatar durch Entfernen von Inline-Skripteinjektion, Serving von Bootstrap-Config als JSON und Durchsetzung von `script-src 'self'`. Danke an @Adam55A-code. - Agents/Sicherheit: bereinige Arbeitsbereich-Pfade, bevor sie in LLM-Prompts eingebettet werden (Unicode-Steuer-/Formatzeichen entfernen), um Instruktions-Injektion durch schädliche Verzeichnisnamen zu verhindern. Danke an @aether-ai-agent. - Agents/Sandbox: kläre Systemprompt-Pfad-Anweisungen, sodass Sandbox-`bash/exec` Container-Pfade (z. B. `/workspace`) nutzt, während Dateitools Host-Bridge-Mapping beibehalten, um Pfad-Fehlversuche beim ersten Versuch wegen host-only absoluten Pfaden im Sandbox-Befehl-Execution zu vermeiden. (#17693) Danke an @app/juniordevbot. - Agents/Context: wende konfigurierte Modell-`contextWindow`-Overrides nach Provider-Discovery an, sodass `lookupContextTokens()` Operator-Konfig-Werte (einschließlich Discovery-Fehlerpfade) respektiert. (#17404) Danke an @michaelbship und @vignesh07. - Agents/Context: leite `lookupContextTokens()` aus auth-verfügbaren Modell-Metadaten ab und halte das kleinste entdeckte Context-Fenster für Duplikat-Modell-IDs, um Cache-Kollisionen zwischen Providern durch überschätzen des Sitzungs-Kontexts zu verhindern. (#17586) Danke an @githabideri und @vignesh07. - Agents/OpenAI: zwinge `store=true` für direkte OpenAI-Responses/Codex-Läufe, um Multi-Turn-Server-seitigen Gesprächszustand beizubehalten, während Proxy-/Non-OpenAI-Endpunkte unverändert bleiben. (#16803) Danke an @mark9232 und @vignesh07. - Memory/FTS: mache `buildFtsQuery` Unicode-bewusst, sodass nicht-ASCII-Anfragen (einschließlich CJK) Schlagwort-Tokens erzeugen statt rein Vektor-Suche zu verwenden. (#17672) Danke an @KinGP5471. - Auto-reply/Compaction: löse Platzhalter `memory/YYYY-MM-DD.md` mit zeitzonenbewussten Laufzeitdaten auf und füge eine `Current time:`-Zeile zu Memory-Flush-Turns hinzu, um falsche Jahres-Memory-Dateinamen zu verhindern, ohne das Systemprompt-Zeit-Varianz zu erzeugen. (#17603, #17633) Danke an @nicholaspapadam-wq und @vignesh07. - Agents: gebe eine explizite Timeout-Antwort zurück, wenn ein eingebetteter Lauf time-out geht, bevor Payloads produziert werden, um stilles Droppen von Turns während langsamer Cache-Refresh-Transaktionen zu verhindern. (#16659) Danke an @liaosvcaf und @vignesh07. - Gruppen-Chats: immer Gruppenkontext (Name, Teilnehmer
Features
15. Februar 2026
### Änderungen - Telegram: Poll-Senden via `openclaw message poll` hinzufügen (Dauer in Sekunden, stumme Übertragung, Anonymitätskontrollen). (#16209) Danke an @robbyczgw-cla. - Slack/Discord: `dmPolicy` + Konfig-Alias `allowFrom` für DM-Zugriffssteuerung hinzufügen; Legacy-Keys `dm.policy` + `dm.allowFrom` bleiben unterstützt und `openclaw doctor --fix` kann sie migrieren. - Discord: Ausführungsgenehmigungs-Promptings auf Zielkanäle oder sowohl DM+Kanal via `channels.discord.execApprovals.target` zulassen. (#16051) Danke an @leonnardo. - Sandbox: `sandbox.browser.binds` hinzufügen, um Browser-Container-Bind-Mounts getrennt von Exec-Containern zu konfigurieren. (#16230) Danke an @seheepeak. - Discord: Debug-Logging für Routing-Entscheidungen der Nachrichten hinzufügen, um `--debug`-Tracing zu verbessern. (#16202) Danke an @jayleekr. ### Fixes - CLI/Plugins: sicherstellen, dass `openclaw message send` nach erfolgreicher Lieferung über plattformgestützte Kanäle beendet wird, damit One-Shot-Sendungen nicht hängen bleiben. (#16491) Danke an @yinghaosang. - CLI/Plugins: registrierte Plugin-`gateway_stop`-Hooks vor dem Beenden von `openclaw message` ausführen (Erfolgs- und Fehlerpfade), damit plugin-basierte Kanäle CLI-Ressourcen für One-Shot bereinigen können. (#16580) Danke an @gumadeiras. - WhatsApp: pro-Konto Overrides von `dmPolicy` berücksichtigen (konto-spezifische Einstellungen haben Vorrang vor Kanalausprägungen für eingehende DMs). (#10082) Danke an @mcaxtr. - Telegram: Wenn `channels.telegram.commands.native` auf `false` steht, Plugin-Befehle aus dem `setMyCommands`-Menü entfernen, Slas-Händler der Plugins bleiben jedoch aufrufbar. (#15132) Danke an @Glucksberg. - LINE: 200 OK für Developers Console-Verifizierungsanfragen (`{"events":[]}`) zurückgeben, ohne `X-Line-Signature`, Signaturen für echte Deliveries bleiben jedoch erforderlich. (#16582) Danke an @arosstale. - Cron: Text-Ausgabe direkt liefern, wenn `delivery.to` gesetzt ist, damit Cron-Empfänger die volle Ausgabe statt Zusammenfassungen erhalten. (#16360) Danke an @thewilloftheshadow. - Cron/Slack: Agenten-Identität (Name und Icon) beibehalten, wenn Cron-Jobs ausgehende Nachrichten liefern. (#16242) Danke an @robbyczgw-cla. - Media: akzeptiere `MEDIA:`-präfixierte Pfade (lasche Whitespace) beim Laden ausgehender Medien, um `ENOENT` für lokal vom Tool zurückgegebene Medienpfade zu verhindern. (#13107) Danke an @mcaxtr. - Agents: sende Tool-Ergebnis-Medien (Screenshots, Bilder, Audio) an Kanäle unabhängig vom verbose-Level. (#11735) Danke an @strelov1. - Agents/Image-Tool: Arbeitsbereich-lokale Bildpfade zulassen, indem aktive Arbeitsbereich-Verzeichnisse in lokalen Mediens-Whitelist aufgenommen werden, und vertrauen auf Sandbox-validierte Pfade in Bild-Laders, um falsche "nicht in einem erlaubten Verzeichnis"-Ablehnungen zu verhindern. (#15541) - Agents/Image-Tool: effektiven Arbeitsbereich-Wurzelpfad in Tool-Verkabelung propagieren, damit Arbeitsbereich-lokale Bildpfade standardmäßig akzeptiert werden, wenn kein expliziter `workspaceDir` gesetzt ist. (#16722) - BlueBubbles: Sender-Identität in Gruppen-Chats-Envelope aufnehmen und sauberen Nachrichtentext an das Agenten-Prompt weitergeben, im Einklang mit iMessage/Signal-Formatierung. (#16210) Danke an @zerone0x. - CLI: lazy Core-Befehlsregistrierung korrigieren, damit Top-Level-Wartungsbefehle (`doctor`, `dashboard`, `reset`, `uninstall`) korrekt aufgelöst werden und kein funktionsloser `maintenance`-Platzhalterbefehl erscheint. - CLI/Dashboard: Wenn `gateway.bind=lan`, localhost-Dashboard-URLs erzeugen, um Browser-Sicherheitskontexte zu erfüllen, while Nicht-LAN-Bind-Verhalten beibehalten. (#16434) Danke an @BinHPdev. - TUI/Gateway: lokale Gateway-Ziel-URL aus Modus `gateway.bind` (Tailnet/lan) ableiten statt hartkodiertem localhost, damit sich `openclaw tui` bei nicht-Loopback-Gateways verbindet. (#16299) Danke an @cortexuvula. - TUI: explizites `--session <key>` in `openclaw tui` auch dann beachten, wenn `session.scope` `global` ist, damit benannte Sessions nicht mehr mit gemeinsamem globale History kollabieren. (#16575) Danke an @cinqu. - TUI: verfügbare Terminalbreite für Anzeige des Sitzungsnamens in durchsuchbaren Auswahllisten nutzen. (#16238) Danke an @robbyczgw-cla. - TUI: Layout der Beschreibungsliste für durchsuchbare Auswahllisten refaktoren und Regressionen für ANSI-Hervorhebung in Breiten testen. - TUI: laufende Streaming-Antworten beibehalten, wenn ein anderer Run gleichzeitig finalisiert, um aktive Runs nicht zu löschen oder History mitten im Stream neu zu laden. (#10704) Danke an @axschr73. - TUI: vor Werkzeug-Streams sichtbaren Text beibehalten, wenn spätere Tool-Grenzen-Deltas vorhergehende Textblöcke vorübergehend weglassen. (#6958) Danke an @KrisKind75. - TUI: ANSI/Steuerzeichen-lastige Historien-Text sanieren, binäre Zeilen redigieren und lange ununterbrochene Tokens vor der Darstellung aufteilen, um Startfehler bei binären Anhängen in der History zu verhindern. (#13007) Danke an @wilkinspoe. - TUI: Rendern des Assistant-Textes im Standard-Terminalforeground (statt fester heller ANSI-Farbe) damit der Kontrast in hellen Themes wie Solarized Light lesbar bleibt. (#16750) Danke an @paymog. - TUI/Hooks: explizite Reset-Grundlage (`new` vs `reset`) durch `sessions.reset` weiterreichen und interne Befehls-Hooks für gateway-getriggerte Resets auslösen, damit `/new` Hook-Workflows in TUI/Webchat funktionieren. - Cron: verhindern, dass `cron list`/`cron status` verspätete wiederkehrende Jobs still überspringen, indem Wartungs-Neuberechnungsemantiken verwendet werden. (#16156) Danke an @zerone0x. - Cron: fehlende/korrupte `nextRunAtMs` für aktualisierte Jobs reparieren, ohne globale Neuberechnung unverbundener Jobs während `cron update`. (#15750) - Cron: überspringen Wiederholungs-Replay bei Startup für Jobs, die mitten im Lauf unterbrochen wurden (veraltete `runningAtMs`-Marker), um Neustart-Schleifen für selbstneu startende Jobs wie Update-Aufgaben zu vermeiden. (#16694) Danke an @sbmilburn. - Discord: bevorzugen Gateway-Guild-ID beim Protokollieren eingehender Nachrichten, damit gecachte Guilds nicht als `guild=dm` erscheinen. Danke an @thewilloftheshadow. - Discord: leere pro-Guild Config-Maps `channels: {}` als kein Kanal-Allowlist interpretieren (nicht ablehnen), sodass Guilds mit `groupPolicy: "open"` auch ohne explizite Kanaleinträge weiterhin Nachrichten erhalten. (#16714) Danke an @xqliu. - Models/CLI: schützen `models status`-Strings vor Zuschneiden von Pfaden, um Abstürze durch fehlerhafte nicht-String-Konfig-Werte zu verhindern. (#16395) Danke an @BinHPdev. - Gateway/Subagents: beibehalten von geparkten Announcement-Items und Statuszustand bei Lieferungsfehlern, erneute Versuche beim Fehler-Drain, vermeiden, dass unbeantwortete Ankündigungen bei Timeout/Fehler verloren gehen. (#16729) Danke an @Clawdette-Workspace. - Gateway/Sessions: aktive eingebettete Runs abbrechen und geparkte Sitzungsarbeit vor `sessions.reset` löschen, unavailable melden, wenn Run nicht rechtzeitig stoppt. (#16576) Danke an @Grynn. - Sessions/Agents: Transkriptpfadauflösung für inkonsistente Agenten-Kontexte härten, explizite Store-Wurzel beibehalten und sicheren Absolutpfad-Fallback in das korrekte Agenten-Sessions-Verzeichnis hinzufügen. (#16288) Danke an @robbyczgw-cla. - Agents: Sicherheits-Timeout um embeddeed `session.compact()` hinzufügen, um festste
14. Februar 2026
### Änderungen - Discord: Voice-Nachrichten mit Waveform-Vorschau aus lokalen Audiodateien senden (einschließlich stiller Lieferung). (#7253) Danke @nyanjou. - Discord: konfigurierbaren Presence-Status/Aktivität/Typ/URL hinzufügen (benutzerdefinierter Status standard zu Aktivitätstext). (#10855) Danke @h0tp-ftw. - Slack/Plugins: Thread-Eigentums-Outbound-Gating via `message_sending` Hooks hinzufügen, einschließlich @-Mention Umgehungs-Tracking und Slack Outbound Hook Verkabelung für Cancel/Modify-Verhalten. (#15775) Danke @DarlingtonDeveloper. - Agents: synthetischen Katalog-Support für `hf:zai-org/GLM-5` hinzufügen. (#15867) Danke @battman21. - Skills: doppelten `local-places` Google Places Skill/Proxy entfernen und `goplaces` als einzigen unterstützten Google Places-Pfad beibehalten. - Agents: Vor-Prompt-Kontextdiagnostik (`messages`, `systemPromptChars`, `promptChars`, Anbieter/Modell, Sitzungsdatei) vor eingebetteten Runner-Prompt-Aufrufen hinzufügen, um Overflow-Debugging zu verbessern. (#8930) Danke @Glucksberg. - Onboarding/Providers: erstklassige Hugging Face Inference-Provider-Unterstützung hinzufügen (Provider-Verkabelung, Onboarding-Auth-Auswahl/API-Key-Fluss und Standard-Modell-Auswahl) und Hugging Face Auth-Intent bei Auth-Choice-Remapping beibehalten (`tokenProvider=huggingface` mit `authChoice=apiKey`), while Env-Override-Prompts überspringen, wenn ein explizites Token bereitgestellt wird. (#13472) Danke @Josephrp. ### Behebungen - Outbound: Schreib-vorne-Lieferwarteschlange mit Crash-Recovery-Wiederholungen hinzufügen, um verloren gegangene Outbound-Nachrichten nach Gateway-Neustarts zu verhindern. (#15636) Danke @nabbilkhan, @thewilloftheshadow. - Auto-Antwort/Threading: implicitly Threading beim Antwort-Threading auto-injektieren, sodass `replyToMode` funktioniert ohne modell-emittierte `[[reply_to_current]]`, while `replyToMode: "off"` Verhalten für implizite Slack-Antworten beibehalten und Block-Streaming-Chunks bei `replyToMode: "first"` stabil halten. (#14976) Danke @Diaspar4u. - Outbound/Threading: `replyTo` und `threadId` aus `message send` Tool-Aktionen durch den Core-Outbound-Send-Pfad zu Channel-Adaptern weitergeben, Umleitung von Thread/Reply beibehalten. (#14948) Danke @mcaxtr. - Auto-Antwort/Media: inbound Bilder-Nachrichten (mit Bild) zulassen (kein Caption) um den Agenten zu erreichen statt als leeren Text abzubrechen, und Thread-Kontext in eingereihten/Follow-up-Prompt-Textkörpern für Medienläufe beibehalten. (#11916) Danke @arosstale. - Discord: AutoThread-Antworten in bestehende Threads statt in den Root-Channel routen. (#8302) Danke @gavinbmoore, @thewilloftheshadow. - Web UI: `img` zu DOMPurify erlaubte Tags hinzufügen und `src`/`alt` zu erlaubten Attributen, damit Markdown-Bilder im Webchat gerendert werden statt entfernt. (#15437) Danke @lailoo. - Telegram/Matrix: MP3 und M4A (einschließlich `audio/mp4`) als sprachkompatibel für `asVoice` Routing behandeln, WAV/AAC weiterhin für reguläre Audio-Sends verwenden. (#15438) Danke @azade-c. - WhatsApp: Outbound-Dokumentdateinamen für Web-Session-Dokumentensendungen beibehalten statt immer `"file"`. (#15594) Danke @TsekaLuk. - Telegram: Bot-Menü-Registrierung auf Telegrams 100-Befehls-Limit beschränken mit Overflow-Warnung, während getippte versteckte Befehle weiterhin verfügbar bleiben. (#15844) Danke @battman21. - Telegram: Skill-Befehle auf den aufgelösten Agenten für Standardkonten einschränken, damit `setMyCommands` nicht mehr `BOT_COMMANDS_TOO_MUCH` auslöst, wenn mehrere Agenten konfiguriert sind. (#15599) - Discord: numerische Guild-Allowlist-Einträge nicht falsch routen, indem Eingaben mit prefix `guild:` versehen werden während der Auflösung. (#12326) Danke @headswim. - MS Teams: parse Mention-Entitäten/Text beibehalten beim Anhängen von OneDrive-Fallback-Dateilinks, breitere reale Teams Mention-ID-Formate (`29:...`, `8:orgid:...`) akzeptieren, während Platzhaltermuster weiterhin abgelehnt werden. (#15436) Danke @hyojin. - Media: `text/*` MIME-Typen als Dokumente im Media-Kind Routing klassifizieren, damit Text-Anhänge nicht als unbekannt behandelt werden. (#12237) Danke @arosstale. - Inbound/Web UI: wörtliche `\n`-Sequenzen beim Normalisieren eingehender Texte beibehalten, damit Windows-Pfade wie `C:\\Work\\nxxx\\README.md` nicht beschädigt werden. (#11547) Danke @mcaxtr. - TUI/Streaming: reichere gestreamte Assistant-Text-Bereiche beibehalten, wenn finales Payload vor Tool-Aufruf Textblöcke verliert, while finales Payload weiterhin maßgeblich für Klartext-Updates ist. (#15452) Danke @TsekaLuk. - Providers/MiniMax: impliziten MiniMax API-Key Provider von `openai-completions` zu `anthropic-messages` wechseln mit korrekter Anthropic-kompatibler Basis-URL, Fehler `invalid role: developer (2013)` bei MiniMax M2.5 reparieren. (#15275) Danke @lailoo. - Ollama/Agents: gelöste Modell-/Provider-Basis-URLs für nativen `/api/chat` Streaming verwenden (einschließlich alias Provider), `/v1` Endpunkte normalisieren, Abort + `maxTokens`-Streaming-Optionen für zuverlässige Abbruchvorgänge und Token-Grenzen weiterleiten. (#11853) Danke @BrokenFinger98. - OpenAI Codex/Spark: End-to-End-Unterstützung `gpt-5.3-codex-spark` über Fallback/Thinking/Model-Resolution und `models list` Forward-Compat- Sichtbarkeit implementieren. (#14990, #15174) Danke @L-U-C-K-Y, @loiie45e. - Agents/Codex: `gpt-5.3-codex-spark` in Forward-Compat-Fallback, Live-Modell-Filterung und Thinking-Presets zulassen, Modell-Auswahl-Erkennung für spark korrigieren. (#14990) Danke @L-U-C-K-Y. - Models/Codex: konfigurierte `openai-codex/gpt-5.3-codex-spark` über Forward-Compat-Fallback bei `models list` lösen, damit es nicht fälschlich als fehlend markiert wird, wenn Laufzeitauflösung gelingt. (#15174) Danke @loiie45e. - OpenAI Codex/Auth: OpenClaw OAuth-Profile in `pi` `auth.json` übertragen, damit Modell-Erkennung und Models-List-Registry-Auflösung Codex OAuth-Anmeldeinformationen nutzen können. (#15184) Danke @loiie45e. - Auth/OpenAI Codex: OAuth-Login-Behandlung über Onboarding und `models auth login --provider openai-codex` hinweg teilen, Onboarding beibehalten falls OAuth fehlschlägt, direkte OAuth-Hilfe-Hinweis statt Wizard-Beendung anzeigen. (#15406, Folge zu #14552) Danke @zhiluo20. - Onboarding/Providers: vLLM als Onboarding-Provider mit Modellerkennung, Auth-Profil-Verkabelung und nicht-interaktiver Auth-Choice-Validierung hinzufügen. (#12577) Danke @gejifeng. - Onboarding/CLI: Terminalzustand wiederherstellen, ohne pausierte `stdin` fortzufahren, Onboarding sauber beenden nachdem Web UI gewählt wurde und der Installer zurückkehrt statt stecken zu bleiben. - Signal/Install: automatisches Installieren von `signal-cli` via Homebrew auf Nicht-x64 Linux-Architekturen, Vermeidung von `Exec format error`-Fehlern bei arm64/arm-Hosts. (#15443) Danke @jogvan-k. - macOS Voice Wake: Absturz bei Trigger-Trimmung für CJK/Unicode-Transkripte reparieren, indem Original-String-Bereiche statt transformierter-String-Indizes gematcht und geschnitten werden. (#11052) Danke @Flash-LHR. - Mattermost (Plugin): Websocket-Monitor-Verbindungen mit exponentiellem Backoff erneut versuchen und abort-bewusste Bereinigung, sodass
Features
13. Februar 2026
### Änderungen - CLI: füge `openclaw logs --local-time` hinzu, um Zeitstempel von Logs in der lokalen Zeitzone anzuzeigen. (#13818) Danke an @xialonglee. - Telegram: rendern Blockzitate als native `<blockquote>`-Tags statt sie zu entfernen. (#14608) - Konfiguration: vermeide das Redaktieren von Feldern ähnlich `maxTokens` während des Snapshot-Redaction der Config, um Round-Trip-Validierungsfehler in `/config` zu verhindern. (#14006) Danke an @constansino. ### Breaking - Hooks: `POST /hooks/agent` lehnt Payload-Überschreibungen des `sessionKey` standardmäßig ab. Um den festen Hook-Kontext beizubehalten, setzen Sie `hooks.defaultSessionKey` (empfohlen mit `hooks.allowedSessionKeyPrefixes: ["hook:"]`). Falls Legacy-Verhalten erforderlich ist, setzen Sie explizit `hooks.allowRequestSessionKey: true`. Danke an @alpernae für den Hinweis. ### Fixes - Gateway/OpenResponses: härtet URL-basierte Verarbeitung von `input_file`/`input_image` mit expliziter SSRF-Verweigerungsrichtlinie, Host-Whitelist (`files.urlAllowlist` / `images.urlAllowlist`), pro-Anfrage URL-Input-Begrenzungen (`maxUrlParts`), blockierte-Abfrage-Audit-Logging und Regression-Abdeckung/Docs-Updates. - Sicherheit: behebt unauthentifizierte Remote-Konfig-Manipulation des Nostr-Profils API. (#13719) Danke an @coygeek. - Sicherheit: entfernt gebündelten bösen Hook. (#14757) Danke an @Imccccc. - Sicherheit/Audit: fügt Hardening-Prüfungen für Hook-Session-Routing hinzu (`hooks.defaultSessionKey`, `hooks.allowRequestSessionKey` und Präfix-Whitelists) und warnt, wenn HTTP-API-Endpunkte explizites Session-Key-Routing zulassen. - Sicherheit/Sandbox: beschränkt abgeglichene Skill-Sync-Ziele auf das Sandbox-Wurzelverzeichnis `skills/` und vermeidet die Verwendung von Frontmatter-gesteuerten Skill-Namen als Dateisystem-Destinationen. Danke an @1seal. - Sicherheit/Web-Tools: behandelt Browser/Web-Inhalte standardmäßig als untrusted (wrappe Ausgaben für Browser-Snapshots/Tabs/Console und strukturierte External-Content-Metadaten für Web-Tools) und entfernt `toolResult.details` aus modellnahen Transkript-/Compaction-Eingaben, um Replay-Risiko von Prompt-Injection zu verringern. - Sicherheit/Hooks: härtere Verifizierung von Webhook- und Geräte-Token durch konstantzeit-vergleichbaren Secrets-Vergleich und pro-Client-Authentifizierungs-Rate-Limiting für Hook-Endpunkte (`429` + `Retry-After`). Danke an @akhmittra. - Sicherheit/Browser: Authentifizierung für Loopback-Browsersteuerungs-HTTP-Routen erforderlich, auto-generiertes `gateway.auth.token` wenn Browser-Steuerung ohne Auth startet, und Sicherheits-Audit-Prüfung für unauthentisierte Browser-Steuerung. Danke an @tcusolle. - Sitzungen/Gateway: härtet Transkriptpfadauflösung und lehnt unsichere Session-IDs/Dateipfade ab, damit Session-Operationen in Agenten-Sessions-Verzeichnissen bleiben. Danke an @akhmittra. - Gateway: erhöhen der WS-Payload-/Buffer-Limits, damit 5.000.000-Byte große Bildanhänge zuverlässig funktionieren. (#14486) Danke an @0xRaini. - Logging/CLI: lokale Zeitzonen-Zeitstempel für Konsolen-Präfixing verwenden, und `±HH:MM`-Offsets einbeziehen beim Verwenden von `openclaw logs --local-time`, um Mehrdeutigkeit zu vermeiden. (#14771) Danke an @0xRaini. - Gateway: aktive Turns vor dem Neustart leeren, um Nachrichtenverlust zu verhindern. (#13931) Danke an @0xRaini. - Gateway: beim Installieren automatisch Auth-Token generieren, um Neustart-Schleifen von launchd zu verhindern. (#13813) Danke an @cathrynlavery. - Gateway: verhindern, dass `undefined`/fehlendes Token in der Auth-Konfiguration auftritt. (#13809) Danke an @asklee-klawd. - Gateway: asynchrones `EPIPE` auf stdout/stderr während des Herunterfahrens behandeln. (#13414) Danke an @keshav55. - Gateway/Control UI: fehlende Dashboard-Ressourcen beim globalen Openclaw-Install über symlink-basierte Node-Manager (nvm/fnm/n/Homebrew) auflösen. (#14919) Danke an @aynorica. - Cron: angefordetes `agentId` für isolierte Job-Auth-Auflösung verwenden. (#13983) Danke an @0xRaini. - Cron: verhindern, dass Cron-Jobs die Ausführung überspringen, wenn `nextRunAtMs` vorrückt. (#14068) Danke an @WalterSumbon. - Cron: übergibt `agentId` an `runHeartbeatOnce` für Haupt-Session-Jobs. (#14140) Danke an @ishikawa-pro. - Cron: Timer neu starten, wenn `onTimer` auslöst, während ein Job noch ausgeführt wird. (#14233) Danke an @tomron87. - Cron: Duplizierte Ausführungen verhindern, wenn mehrere Jobs gleichzeitig ausgelöst werden. (#14256) Danke an @xinhuagu. - Cron: Scheduler-Fehler isolieren, damit ein schlecht laufender Job nicht alle jobs bricht. (#14385) Danke an @MarvinDontPanic. - Cron: verhindern, dass One-shot-`at`-Jobs nach Neustart erneut feuern, wenn Runs übersprungen/fehlerhaft waren. (#13878) Danke an @lailoo. - Heartbeat: verhindern Scheduler-Verzögerungen bei unerwarteten Lauf-Fehlern und vermeiden sofortige Wiederholungs-Schleifen nach `requests-in-flight`-Skips. (#14901) Danke an @joeykrug. - Cron: geerbte gespeicherte Session-Modell-Overrides für isolierte-Agenten-Läufe beachten, während Priorität von `hooks.gmail.model` für Gmail-Hook-Sitzungen beibehalten wird. (#14983) Danke an @shtse8. - Logging/Browser: fallback auf `os.tmpdir()/openclaw`, wenn `/tmp/openclaw` nicht verfügbar ist, für Standard-Log, Browser-Spur und Browser-Download-Temp-Pfade. - WhatsApp: Markdown-Formatierung für Fett/Durchgestrichen in WhatsApp-Formatierung umwandeln. (#14285) Danke an @Raikan10. - WhatsApp: nur-Medien-Sendungen zulassen und führende leere Payloads normalisieren. (#14408) Danke an @karimnaguib. - WhatsApp: Standard-MIME-Typ für Sprachnachrichten, wenn Baileys ihn weglässt. (#14444) Danke an @mcaxtr. - Telegram: keine Textnachrichten im Modell-Auswahlbearbeiter editMessageText behandeln. (#14397) Danke an @0xRaini. - Telegram: REACTION_INVALID als nicht-fatal-warnung anzeigen. (#14340) Danke an @0xRaini. - BlueBubbles: Webhook-Auth-Bypass über Loopback-Proxy-Vertrauen korrigieren. (#13787) Danke an @coygeek. - Slack: Standard-ReplyToMode von "off" auf "all" ändern. (#14364) Danke an @nm-de. - Slack: Kontrollen erkennen, wenn Channel-Nachrichten mit Bot-Erwähnungs-Prefixen beginnen (z. B. `@Bot /new`). (#14142) Danke an @beefiker. - Signal: E.164-Validierung für Signal-Bot-Kontoaufforderung erzwingen, damit falsch eingegebene Nummern früh erkannt werden. (#15063) Danke an @Duartemartins. - Discord: DM-Reaktionen verarbeiten statt sie still zu verwerfen. (#10418) Danke an @mcaxtr. - Discord: Relevanz von replyToMode in Threads beachten. (#11062) Danke an @cordx56. - Heartbeat: Rausfiltern von Rausch-Systemereignissen, damit geplante Erinnerungsbenachrichtigungen nicht feuern, wenn Cron-Läufe nur Heartbeat-Markierungen tragen. (#13317) Danke an @pvtclawn. - Signal: Erwähnungs-Platzhalter als `@uuid`/`@phone` rendern, damit Erwähnungs-Gating und Clawdbot-Zielsetzung funktionieren. (#2013) Danke an @alexgleason. - Discord: leere Inhaltsfelder bei Medien-Nachrichten weglassen, Caption-Whitespace beibehalten. (#9507) Danke an @leszekszpunar. - Onboarding/Anbieter: z-AI-spezifische Auth-Auswahlmöglichkeiten hinzufügen (`zai-coding-global`, `zai-coding-cn`, `zai-global`, `zai
Features
9. Februar 2026
### Added - iOS: alpha node app + setup-code onboarding. (#11756) Thanks @mbelinky. - Channels: umfassende BlueBubbles- und Channel-Aufräumarbeiten. (#11093) Thanks @tyler6204. - Plugins: Geräte-Pairing + Telefonsteuerungs-Plugins (Telegram `/pair`, iOS/Android Node-Steuerung). (#11755) Thanks @mbelinky. - Tools: Grok (xAI) als `web_search`-Provider hinzufügen. (#12419) Thanks @tmchow. - Gateway: API-Methoden zur Agentenverwaltung für die Web UI hinzufügen (`agents.create`, `agents.update`, `agents.delete`). (#11045) Thanks @advaitpaliwal. - Web UI: in der Chat-Historie einen Compaction-Trenner anzeigen. (#11341) Thanks @Takhoffman. - Agents: Laufzeit-Shell in Agentenumschlägen einbeziehen. (#1835) Thanks @Takhoffman. - Paths: `OPENCLAW_HOME` hinzufügen, um das Home-Verzeichnis für die interne Pfadauflösung zu überschreiben. (#12091) Thanks @sebslight. ### Fixes - Telegram: Quote-Parsing abgesichert; Zitierkontext beibehalten; QUOTE_TEXT_INVALID vermeiden; falsche Kategorisierung verschachtelter Reply-Zitate vermeiden. (#12156) Thanks @rybnikov. - Telegram: proaktive Sends wiederherstellen, wenn veraltete Topic-Thread-IDs verwendet werden, durch erneutes Senden ohne `message_thread_id`. (#11620) - Telegram: Markdown-Spoiler mit `<tg-spoiler>` HTML-Tags rendern. (#11543) Thanks @ezhikkk. - Telegram: Registrierung von Befehlsregistrierungen auf 100 Einträge beschränken, um `BOT_COMMANDS_TOO_MUCH`-Fehler beim Start zu vermeiden. (#12356) Thanks @arosstale. - Telegram: übereinstimmende DM-`allowFrom` gegen Sender-Benutzer-ID (Fallback auf Chat-ID) und Logs zum Pairing klären. (#12779) Thanks @liuxiaopai-ai. - Onboarding: QuickStart installiert Shell-Completion automatisch (Prompt nur im Manual). - Auth: eingebettete Zeilenumbrüche aus eingefügten API-Schlüsseln und Tokens entfernen, bevor Anmelde-/Credentialen gespeichert/auflöst werden. - Web UI: Chat-Aktualisierung sanft zum neuesten Nachrichten-Stand scrollen und Flashen des New-Messages-Badges während manueller Aktualisierung unterdrücken. - Tools/web_search: plattformspezifische Einstellungen in den Web-Such-Cache-Schlüssel aufnehmen und `inlineCitations` für Grok übergeben. (#12419) Thanks @tmchow. - Tools/web_search: direkte Perplexity-Modell-IDs normalisieren, OpenRouter-Modell-IDs unverändert lassen. (#12795) Thanks @cdorsey. - Model Failover: HTTP-400-Fehler als failover-fähig behandeln, automatisches Modell-Fallback ermöglichen. (#1879) Thanks @orenyomtov. - Errors: falsche Positiv-Erkennung von Kontextüberlauf vermeiden, wenn Unterhaltung das Topic „context overflow“ erwähnt. (#2078) Thanks @sbking. - Gateway: kein Post-Compaction-Amnesie mehr; injizierte Transkript-Schreibvorgänge bewahren nun die Pi-Sitzungs-`parentId`-Kette, damit Agenten sich wieder erinnern können. (#12283) Thanks @Takhoffman. - Gateway: Multi-Agent-Sessions.Usage-Erkennung fixen. (#11523) Thanks @Takhoffman. - Agents: aus Kontextüberlauf durch zu große Tool-Ergebnisse wiederherstellen (vorausschauendes Begrenzen + Fallback-Trunkierung). (#11579) Thanks @tyler6204. - Subagents/compaction: Timing der Ankündigungen stabilisieren und Kompaktion-Metriken über Wiederholungen hinweg erhalten. (#11664) Thanks @tyler6204. - Cron: isolierte Ankündigungs-Flow teilen und Zuverlässigkeit von Scheduling/Lieferung erhöhen. (#11641) Thanks @tyler6204. - Cron-Tool: flache Parameter wiederherstellen, wenn LLM das `job`-Wrapper für Add-Anfragen auslässt. (#12124) Thanks @tyler6204. - Gateway/CLI: bei `gateway.bind=lan` eine LAN-IP für Proben-URLs und Control-UI-Links verwenden. (#11448) Thanks @AnonO6. - Hooks: gebündelte Hooks seit 2026.2.2 reparieren (tsdown-Migration). (#9295) Thanks @patrickshao. - Routing: Bindings pro Nachricht aktualisieren durch Laden der Config bei der Routenzuordnung, damit Änderungen ohne Neustart wirksam werden. (#11372) Thanks @juanpablodlc. - Exec-Bewertungen: weitergeleitete Befehle in Monospace rendern für sichereres Freigabe-Scanning. (#11937) Thanks @sebslight. - Config: `maxTokens` an `contextWindow` anpassen, um ungültige Modell-Konfigurationen zu verhindern. (#5516) Thanks @lailoo. - Thinking: xhigh für `github-copilot/gpt-5.2-codex` und `github-copilot/gpt-5.2` zulassen. (#11646) Thanks @LatencyTDH. - Discord: Starter-Nachrichten für Foren-/Medien-Threads unterstützen, `message thread create --message` verarbeiten und Routing härten. (#10062) Thanks @jarvis89757. - Paths: strukturiertes Auflösen von OPENCLAW_HOME-abgeleiteten Home-Pfaden und Windows-Laufwerksbuchstaben-Behandlung bei Tool-Meta-Verkürzungen korrigieren. (#12125) Thanks @mcaxtr. - Memory: Voyage-Embeddings `input_type` für verbesserte Abfrage. (#10818) Thanks @mcinteerj. - Memory/QMD: Standard-Modell-Cache über Agents hinweg wiederverwenden statt pro Agent erneut herunterladen. (#12114) Thanks @tyler6204. - Media Understanding: `.caf`-Audioanhänge für Transkription erkennen. (#10982) Thanks @succ985. - State dir: `OPENCLAW_STATE_DIR` für Standard-Geräte-Identität und Canvas-Speicherpfade berücksichtigen. (#4824) Thanks @kossoy.
Features
7. Februar 2026
### Changes - Models: unterstützt Anthropic Opus 4.6 und OpenAI Codex gpt-5.3-codex (Forward-compat-Fallbacks). (#9853, #10720, #9995) Danke an @TinyTb, @calvin-hpnet, @tyler6204. - Providers: xAI (Grok) Unterstützung hinzufügen. (#9885) Danke an @grp06. - Web UI: Token-Nutzungs-Dashboard hinzufügen. (#10072) Danke an @Takhoffman. - Memory: Native Voyage AI-Unterstützung. (#7078) Danke an @mcinteerj. - Sessions: cap payloads von sessions_history, um Kontextüberlauf zu reduzieren. (#10000) Danke an @gut-puncture. - CLI: Befehle alphabetisch in der Help-Ausgabe sortieren. (#8068) Danke an @deepsoumya617. - Agents: pi-mono auf 0.52.7 erhöhen; eingebettete Forward-Compat-Fallback für Opus 4.6 Modell-IDs hinzufügen. ### Fixes - Telegram: DM-Topic-threadId automatisch in Nachrichtentool + Subagent-Ankündigung einfügen. (#7235) Danke an @Lukavyi. - Security: Auth für Gateway-Canvas-Host und A2UI-Assets erforderlich machen. (#9518) Danke an @coygeek. - Cron: Scheduling- und Erinnerungslieferungs-Regressionen beheben; Next-Run-Neuberechnung + Timer-Nearmung + Legacy-Scheduling-Felder härten. (#9733, #9823, #9948, #9932) Danke an @tyler6204, @pycckuu, @j2h4u, @fujiwara-tofu-shop. - Update: Control UI-Asset-Handling im Update-Fluss härten. (#10146) Danke an @gumadeiras. - Security: Skill/Plugin-Code-Safety-Scanner hinzufügen; Anmeldeinformationen aus config.get Gateway-Antworten redigieren. (#9806, #9858) Danke an @abdelsfane. - Exec Approvals: Bare-String-Whitelist-Einträge in Objekte konvertieren. (#9903) Danke an @mcaxtr. - Slack: Erwähnungs-StripPatterns für /new und /reset hinzufügen. (#9971) Danke an @ironbyte-rgb. - Chrome-Erweiterung: Bündelpfad-Auflösung korrigieren. (#8914) Danke an @kelvinCB. - Kompaktion/Fehler: Mehrere Kompaktionsversuche bei Kontext-Overflow zulassen; klare Abrechnungsfehler anzeigen. (#8928, #8391) Danke an @Glucksberg.
5. Februar 2026
### Changes - Telegram: letzte `@ts-nocheck` aus `bot-handlers.ts` entfernen, Grammy-Typen direkt verwenden, `StickerMetadata` duplizierungsfrei machen. Keine `@ts-nocheck` mehr in `src/telegram/`. (#9206) - Telegram: `@ts-nocheck` aus `bot-message.ts` entfernen, Typ-Abhängigkeiten via `Omit<BuildTelegramMessageContextParams>`, `allMedia` auf `TelegramMediaRef[]` erweitern. (#9180) - Telegram: `@ts-nocheck` aus `bot.ts` entfernen, doppelten `bot.catch` Fehler-Handler fixen (Grammy-Overrides), Dead-Reaktion `message_thread_id`-Routing entfernen, Sticker-Cache-Guard härten. (#9077) - Onboarding: Cloudflare AI Gateway-Anbieter-Setup und Docs hinzufügen. (#7914) Danke @roerohan. - Onboarding: Moonshot (.cn) Auth-Auswahl hinzufügen und die China-Base-URL beim Beibehalten von Defaults behalten. (#7180) Danke @waynelwz. - Docs: tmux send-keys für TUI klären, Text und Enter trennen. (#7737) Danke @Wangnov. - Docs: die Überarbeitung der Landing-Page für zh-CN spiegeln (Features, Quickstart, docs-Verzeichnis, Netzwerkmodell, Credits). (#8994) Danke @joshp123. - Messages: pro Kanal und pro Konto Overrides für responsePrefix über alle Kanäle hinweg hinzufügen. (#9001) Danke @mudrii. - Cron: Delivery-Modus für Ankündigungs-Jobs (CLI + Control UI) und Delivery-Modus-Konfiguration hinzufügen. - Cron: isolierte Jobs standardmäßig auf Announce-Delivery setzen; ISO 8601 `schedule.at` in Tool-Eingaben akzeptieren. - Cron: isolierte Jobs migrationssicher auf announce/none Delivery migrieren; veraltete post-to-main/payload Delivery-Felder und `atMs`-Eingaben entfernen. - Cron: One-Shot-Jobs nach Erfolg standardmäßig löschen; CLI-Flag `--keep-after-run` hinzufügen. - Cron: Messaging-Tools während Announce-Delivery unterdrücken, damit Zusammenfassungen konsistent posten. - Cron: doppelte Deliveries vermeiden, wenn isolierte Runs Nachrichten direkt senden. ### Fixes - Heartbeat: explizite accountId-Routing für Multi-Account-Kanäle zulassen. (#8702) Danke @lsh411. - TUI/Gateway: Nicht-Streaming-Finals behandeln, History bei Nicht-Local-Chat-Läufen aktualisieren, Warnungen zu Event-Lücken für zielgerichtete Tool-Streams vermeiden. (#8432) Danke @gumadeiras. - Shell-Vervollständigung: langsame dynamische Muster automatisch erkennen und in gecachte Dateien migrieren für schnelleren Terminal-Start; Vervollständigungs-Gesundheitschecks zu Doctor/Update/Onboard hinzufügen. - Telegram: Sitzungs-Modell-Overrides bei Inline-Modell-Auswahl berücksichtigen. (#8193) Danke @gildo. - Web UI: Speichern der Modell-Auswahl für Standard-/Nicht-Standard-Agenten korrigieren und lange Arbeitsbereich-Pfade einwickeln. Danke @Takhoffman. - Web UI: Kopfzeilen-Logo-Pfad lösen, wenn `gateway.controlUi.basePath` gesetzt ist. (#7178) Danke @Yeom-JinHo. - Web UI: Button-Styles auf das neue Nachrichten-Indikator anwenden. - Onboarding: Auth-Auswahl aus Flags für API-Key (nicht interaktiv) ableiten. (#8484) Danke @f-trycua. - Sicherheit: unzuverlässige Kanal-Metadaten aus System-Prompts (Slack/Discord) fernhalten. Danke @KonstantinMirin. - Sicherheit: sandboxespezifische Medienpfade für Nachrichten-Tool-Anhänge erzwingen. (#9182) Danke @victormier. - Sicherheit: explizite Credentials für Gateway-URL-Overrides erforderlich machen, um Credential-Leckage zu verhindern. (#8113) Danke @victormier. - Sicherheit: `whatsapp_login`-Tool nur Besitzern senden und Kontexten von Nicht-Besitzern standardmäßig verweigern. (#8768) Danke @victormier. - Voice Call: Webhook-Überprüfung härten mit Host-Allowlists/Proxy-Vertrauen und Ngrok-Loopback-Bypass beibehalten. - Voice Call: Regression-Abdeckung für anonyme eingehende Anrufer-IDs mit Allowlist-Policy hinzufügen. (#8104) Danke @victormier. - Cron: Epoch-Timestamps und 0ms-Dauern in CLI `--at`-Parsing akzeptieren. - Cron: Store-Daten neu laden, wenn Store-Datei neu erstellt wird oder mtime sich ändert. - Cron: Announce-Läufe direkt liefern, Delivery-Modus beachten und WakeMode für Zusammenfassungen respektieren. (#8540) Danke @tyler6204. - Telegram: Forward-from-chat-Metadaten in weitergeleiteten Nachrichten einbeziehen und harte Cron-Lieferziel-Checks verbessern. (#8392) Danke @Glucksberg. - macOS: Cron-Payload-Zusammenfassung rendering beheben und ISO 8601-Formatter-Konkurrenzsicherheit.
Features
4. Februar 2026
### Changes - Feishu: add Feishu/Lark plugin support + docs. (#7313) Thanks @jiulingyun (openclaw-cn). - Web UI: add Agents dashboard for managing agent files, tools, skills, models, channels, and cron jobs. - Memory: implement the opt-in QMD backend for workspace memory. (#3160) Thanks @vignesh07. - Security: add healthcheck skill and bootstrap audit guidance. (#7641) Thanks @Takhoffman. - Config: allow setting a default subagent thinking level via `agents.defaults.subagents.thinking` (and per-agent `agents.list[].subagents.thinking`). (#7372) Thanks @tyler6204. - Docs: zh-CN translations seed + polish, pipeline guidance, nav/landing updates, and typo fixes. (#8202, #6995, #6619, #7242, #7303, #7415) Thanks @AaronWander, @taiyi747, @Explorer1092, @rendaoyuan, @joshp123, @lailoo. ### Fixes - Security: require operator.approvals for gateway /approve commands. (#1) Thanks @mitsuhiko, @yueyueL. - Security: Matrix allowlists now require full MXIDs; ambiguous name resolution no longer grants access. Thanks @MegaManSec. - Security: enforce access-group gating for Slack slash commands when channel type lookup fails. - Security: require validated shared-secret auth before skipping device identity on gateway connect. - Security: guard skill installer downloads with SSRF checks (block private/localhost URLs). - Security: harden Windows exec allowlist; block cmd.exe bypass via single &. Thanks @simecek. - fix(voice-call): harden inbound allowlist; reject anonymous callers; require Telnyx publicKey for allowlist; token-gate Twilio media streams; cap webhook body size (thanks @simecek) - Media understanding: apply SSRF guardrails to provider fetches; allow private baseUrl overrides explicitly. - fix(webchat): respect user scroll position during streaming and refresh (#7226) (thanks @marcomarandiz) - Telegram: recover from grammY long-poll timed out errors. (#7466) Thanks @macmimi23. - Agents: repair malformed tool calls and session transcripts. (#7473) Thanks @justinhuangcode. - fix(agents): validate AbortSignal instances before calling AbortSignal.any() (#7277) (thanks @Elarwei001) - Media understanding: skip binary media from file text extraction. (#7475) Thanks @AlexZhangji. - Onboarding: keep TUI flow exclusive (skip completion prompt + background Web UI seed); completion prompt now handled by install/update. - TUI: block onboarding output while TUI is active and restore terminal state on exit. - CLI/Zsh completion: cache scripts in state dir and escape option descriptions to avoid invalid option errors. - fix(ui): resolve Control UI asset path correctly. - fix(ui): refresh agent files after external edits. - Docs: finish renaming the QMD memory docs to reference the OpenClaw state dir. - Tests: stub SSRF DNS pinning in web auto-reply + Gemini video coverage. (#6619) Thanks @joshp123.
Features
2. Februar 2026
### Changes - Docs: onboarding/install/i18n/exec-approvals/Control UI/exe.dev/cacheRetention updates + misc nav/typos. (#3050, #3461, #4064, #4675, #4729, #4763, #5003, #5402, #5446, #5474, #5663, #5689, #5694, #5967, #6270, #6300, #6311, #6416, #6487, #6550, #6789) - Telegram: use shared pairing store. (#6127) Danke @obviyus. - Agents: add OpenRouter app attribution headers. Danke @alexanderatallah. - Agents: add system prompt safety guardrails. (#5445) Danke @joshp123. - Agents: update pi-ai to 0.50.9 and rename cacheControlTtl -> cacheRetention (mit Rückkompat-Mapping). - Agents: extend CreateAgentSessionOptions with systemPrompt/skills/contextFiles. - Agents: add tool policy conformance snapshot (no runtime behavior change). (#6011) - Auth: update MiniMax OAuth hint + portal auth note copy. - Discord: inherit thread parent bindings for routing. (#3892) Danke @aerolalit. - Gateway: timestamps in agent- und chat.send messages injizieren. (#3705) Danke @conroywhitney, @CashWilliams. - Gateway: TLS 1.3 minimum for TLS listeners erzwingen. (#5970) Danke @loganaden. - Web UI: Chat-Layout verfeinern + Sitzungs aktive Dauer verlängern. - CI: formale Conformance + Alias-Consistency-Checks hinzufügen. (#5723, #5807) ### Fixes - Plugins: validiere Plugin/Hook-Installationspfade und lehne Traversal-ähnliche Namen ab. - Telegram: Download-Timouts für File-Fetches hinzufügen. (#6914) Danke @hclsys. - Telegram: Thread-Specs für DM vs Forum-Sends erzwingen. (#6833) Danke @obviyus. - Streaming: Block-Streaming bei Absatzgrenzen flushen (Newline-Chunking). (#7014) - Streaming: partielle Streaming-Filter stabilisieren. - Auto-reply: Verweise auf Workspace-Dateien im /new Greeting Prompt vermeiden. (#5706) Danke @bravostation. - Tools: Align Tool Execute Adapters/Signatures (Legacy + Parameter-Reihenfolge + Arg-Normalisierung). - Tools: treat `"*"` Tool-Allowlist-Einträge als gültig, um spurious unknown-entry-Warnungen zu vermeiden. - Skills: Sitzung-Logs-Pfade von .clawdbot zu .openclaw aktualisieren. (#4502) - Slack: Medien-Abruffolgen härten und Slack-Datei-URL-Validierung verbessern. (#6639) Danke @davidiach. - Lint: Curly-Regel nach Import-Sortierung erfüllen. (#6310) - Process: Windows `spawn()`-Fehler bei npm-familien CLIs durch Anhängen von `.cmd` beheben. (#5815) Danke @thejhinvirtuoso. - Discord: PluralKit proxied Sender für Allowlists und Labels auflösen. (#5838) Danke @thewilloftheshadow. - Tlon: Timeout zu SSE-Client-Fetch-Aufrufen hinzufügen (CWE-400). (#5926) - Memory search: L2-Normalisierung lokaler Embedding-Vektoren für semantische Suche. (#5332) - Agents: Embedded Runner + Typings an pi-coding-agent API-Updates anpassen (pi 0.51.0). - Agents: sicherstellen, dass OpenRouter Attribution Headers im Embedded Runner angewendet werden. - Agents: Kontextfenster-Auflösung für Kompaktion begrenzen. (#6187) Danke @iamEvanYT. - System prompt: Overrides lösen und Hint mit session_status für aktuelles Datum/Zeit verwenden. (#1897, #1928, #2108, #3677) - Agents: Pi-Prompt-Template-Argument-Syntax beheben. (#6543) - Subagents: Announce-Failover-Race beheben (immer Lifecycle-End auslösen; timeout=0 bedeutet kein Timeout). (#6621) - Teams: Media-Auth-Retries begrenzen. - Telegram: Draft-Streaming-Partials wiederherstellen. (#5543) Danke @obviyus. - Onboarding: Freundlicher Windows-Onboarding-Message. (#6242) Danke @shanselman. - TUI: Absturz verhindern bei Suche mit Ziffern im Model-Selector. - Agents: vor_tool_call Plugin-Hook in Tool-Execution einbinden. (#6570, #6660) Danke @ryancnelson. - Browser: Chrome Extension Relay CDP-Sessions sichern. - Docker: Container-Port für Gateway-Befehl statt Host-Port verwenden. (#5110) Danke @mise42. - fix(lobster): blockiere beliebige exec via lobsterPath/cwd-Injektion (GHSA-4mhr-g7xj-cg8j). (#5335) Danke @vignesh07. - Security: WhatsApp accountId bereinigen, um Pfad-Traversal zu verhindern. (#4610) - Security: MEDIA Pfad-Extraktion einschränken, um LFI zu verhindern. (#4930) - Security: validate message-tool filePath/path gegen Sandbox-Root. (#6398) - Security: LD*/DYLD*-Umgebungs-Overrides für Host-Exec blockieren. (#4896) Danke @HassanFleyah. - Security: Web-Tool-Content-Wrapping + Dateiprüf-Schutzmaßnahmen härten. (#4058) Danke @VACInc. - Security: Twitch `allowFrom` Allowlist-Gating erzwingen (verweigere nicht-allowlisted Sender). Danke @MegaManSec.
Features
31. Januar 2026
### Änderungen - CLI: füge Befehl `completion` hinzu (Zsh/Bash/PowerShell/Fish) und automatische Einrichtung während Post-Install/Onboarding. - CLI: füge pro-Agent `models status` (`--agent` Filter) hinzu. (#4780) Danke @jlowin. - Agents: füge Kimi K2.5 zum synthetischen Modellkatalog hinzu. (#4407) Danke @manikv12. - Auth: Kimi Coding auf integrierten Anbieter umstellen; OAuth-Profil-E-Mail normalisieren. - Auth: füge MiniMax OAuth-Plugin + Onboarding-Option hinzu. (#4521) Danke @Maosghoul. - Agents: aktualisiere pi SDK/API-Nutzung und Abhängigkeiten. - Web UI: Sitzungen nach Chat-Befehlen neu laden und Anzeigenamen von Sitzungen verbessern. - Build: verschiebe TypeScript-Builds zu `tsdown` + `tsgo` (schnellere Builds, CI-Typprüfungen), aktualisiere Ziel in tsconfig und säubere Lint-Regeln. - Build: richte npm-Tar-Override und Bin-Metadaten aus, damit der `openclaw` CLI-Einstiegspunkt in npm-Veröffentlichungen erhalten bleibt. - Dokumentation: füge pi/pi-dev-Dokumentation hinzu und aktualisiere OpenClaw Branding + Installationslinks. ### Fehlerbehebungen - Sicherheit: beschränke lokale Pfad-Extraktion im Medienparser, um LFI zu verhindern. (#4880) - Gateway: verhindere, dass Token-Standards wörtlich „undefined“ werden. (#4873) Danke @Hisleren. - Control UI: behebe Auflösung von Assets bei npm-Global-Installationen. (#4909) Danke @YuriNachos. - macOS: vermeide Backpressure im STDERR-Pipe bei Gateway-Erkennung. (#3304) Danke @abhijeet117. - Telegram: normalisiere Token-Suche für nicht-normalisierte IDs. (#5055) Danke @jasonsschin. - Telegram: Behalte Deliver-Thread-Fallback bei und behebe threadId-Handling im Delivery-Kontext. - Telegram: behebe HTML-Verschachtelung bei sich überschneidenden Stilen/Links. (#4578) Danke @ThanhNguyxn. - Telegram: akzeptiere numerische messageId/chatId in React-Aktionen. (#4533) Danke @Ayush10. - Telegram: respektiere plattformweite Proxy-Dispatcher pro Konto über undici fetch. (#4456) Danke @spiceoogway. - Telegram: begrenze Skill-Befehle auf dem gebundenen Agenten pro Bot. (#4360) Danke @robhparker. - BlueBubbles: entprellen nach messageId, um Anhänge in Text+Bild-Nachrichten zu erhalten. (#4984) - Routing: bevorzuge requesterOrigin gegenüber veralteten Sitzungs-Einträgen für Sub-Agenten-Ankündigungszustellung. (#4957) - Erweiterungen: wiederherstelle eingebettete Erweiterungs-Erkennungs-Typen. - CLI: behebe Portauflösung bei `tui:dev`. - LINE: behebe TypeError im Status-Befehl. (#4651) - OAuth: überspringe Warnungen zu abgelaufenen Tokens, wenn Refresh Tokens noch gültig sind. (#4593) - Build: überspringe redundanten UI-Installationsschritt im Dockerfile. (#4584) Danke @obviyus.
Features
30. Januar 2026
- Rebrand: npm-Paket/CLI umbenennen zu `openclaw`, eine `openclaw`-Kompatibilitätshim hinzufügen und Extensions in den `@openclaw/*`-Bereich verschieben. - Onboarding: Sicherheitshinweis-Text für Beta verstärken + Erwartungen an Zugriffskontrollen. - Onboarding: Venice API-Schlüssel in den nicht-interaktiven Flow aufnehmen. (#1893) Danke @jonisjongithub. - Config: Legacy-State/Config-Pfade automatisch migrieren und Config-Auflösung konsistent über legacy Dateinamen hinweg halten. - Gateway: Warnung bei Hook-Tokens über Abfrageparameter; Dokumentation zur bevorzugten Header-Auth. (#2200) Danke @YuriNachos. - Gateway: gefährlichen Control UI-Geräte-Auth-Bypass-Flag + Audit-Warnungen hinzufügen. (#2248) - Doctor: Warnung bei Gateway-Exposition ohne Auth. (#2016) Danke @Alex-Alaniz. - Web UI: Sub-Agent-Ankündigungs-Antworten in WebChat sichtbar halten. (#1977) Danke @andrescardonas7. - Browser: Browser-Control über Gateway/Node routen; eigenständigen Browser-Control-Befehl und Config für Kontroll-URL entfernen. - Browser: `browser.request` über Node-Proxy routen, wenn verfügbar; Proxy-Timeouts beachten; Browser-Ports aus `gateway.port` ableiten. - Browser: Falls nötig auf URL-Abgleich für Extension-Relay-Zielauflösung zurückgreifen. (#1999) Danke @jonit-dev. - Telegram: Caption-Parameter für Media-Sendungen zulassen. (#1888) Danke @mguellsegarra. - Telegram: Plugin sendPayload channelData (Media/Buttons) unterstützen und Plugin-Befehle validieren. (#1917) Danke @JoshuaLelon. - Telegram: Block-Antworten vermeiden, wenn Streaming deaktiviert ist. (#1885) Danke @ivancasco. - Telegram: optionale stillen Send-Flag (Benachrichtigungen deaktivieren) hinzufügen. (#2382) Danke @Suksham-sharma. - Telegram: Bearbeitung gesendeter Nachrichten via message(action="edit") unterstützen. (#2394) Danke @marcelomar21. - Telegram: QUIRRE Antworten für Message-Tool und eingehenden Kontext unterstützen. (#2900) Danke @aduk059. - Telegram: Sticker-Empfang/-Versand mit Vision-Caching hinzufügen. (#2629) Danke @longjos. - Telegram: Sticker-Pixel an Vision-Modelle senden. (#2650) - Telegram: Topic-IDs in Neustart-Sentinel-Benachrichtigungen beibehalten. (#1807) Danke @hsrvc. - Discord: konfigurierbare privilegierte Gateway-Intents für Präsenz/Members hinzufügen. (#2266) Danke @kentaro. - Slack: ACK-Reaktion nach gestreamten Antworten löschen. (#2044) Danke @fancyboi999. - Matrix: Plugin-SDK auf @vector-im/matrix-bot-sdk umstellen. - Tlon: Thread-Antwort-IDs als @ud formatieren. (#1837) Danke @wca4a. - Tools: pro-Sender-Gruppen-Tool-Richtlinien hinzufügen und Priorität klären. (#1757) Danke @adam91holt. - Agents: zusammenfassende Darstellung der gelöschten Nachrichten während der Kompaktions-Sicherheitsprüfungen. (#2509) Danke @jogi47. - Agents: Cron-Tool-Beschreibung mit vollständigen Schema-Dokumenten erweitern. (#1988) Danke @tomascupr. - Agents: Tools.exec.safeBins in Exec-Allowlist-Prüfungen berücksichtigen. (#2281) - Memory Search: zusätzliche Pfade für Memory-Indexierung zulassen (Ignore-Symlinks). (#3600) Danke @kira-ariaki. - Skills: Multi-Bild-Eingabeunterstützung für Nano Banana Pro Skill hinzufügen. (#1958) Danke @tyler6204. - Skills: fehlende Abhängigkeits-Metadaten für GitHub, Notion, Slack, Discord ergänzen. (#1995) Danke @jackheuberger. - Commands: Ausgabe von /help und /commands mit Telegram-Paging gruppieren. (#2504) Danke @hougangdev. - Routing: pro-Konto DM-Sitzungsumfang hinzufügen und Multi-Konto-Isolation dokumentieren. (#3095) Danke @jarvis-sam. - Routing: Sitzungs-Schlüssel-Regex vorcompilieren. (#1697) Danke @Ray0907. - CLI: Node-Modul-Compile-Cache für schnelleren Start verwenden. (#2808) Danke @pi0. - Auth: nach ASCII-Eingabeaufforderung URL für Google-Auth kopierbar anzeigen. (#1787) Danke @robbyczgw-cla. - TUI: Breitenüberschuss beim Rendern von Auswahllisten vermeiden. (#1686) Danke @mossein. - macOS: OpenClaw-App-Umbenennung für macOS-Quellen, Bundle-IDs und gemeinsame Kit-Pfade abschließen. (#2844) Danke @fal3. - Branding: Launchd-Labels, mobile Bundle-IDs und Logging-Subsysteme auf bot.molt aktualisieren (Legacy-Migrationen von com.clawdbot). Danke @thewilloftheshadow. - macOS: Projekt-lokales `node_modules/.bin` PATH-Preference auf Debug-Builds begrenzen (reduziert PATH-Hijacking-Risiko). - macOS: benutzerdefinierte SSH-Benutzernamen im Remote-Target behalten. (#2046) Danke @algal. - macOS: Absturz beim Rendern von Code-Blöcken vermeiden durch Erhöhung von Textual auf 0.3.1. (#2033) Danke @garricn. - Update: dist/control-ui bei Dirty-Checks ignorieren und nach UI-Builds wiederherstellen. (#1976) Danke @Glucksberg. - Build: A2UI-Assets während des Builds bündeln und Generierung von Bundles aufhören. (#2455) Danke @0oAstro. - CI: Node-Heap-Größe für macOS-Checks erhöhen. (#1890) Danke @realZachi. - Config: config.env vor ${VAR}-Substitution anwenden. (#1813) Danke @spanishflu-est1918. - Gateway: bevorzugt neueste Sitzungs-Metadaten bei der Zusammenführung von Stores. (#1823) Danke @emanuelst. - Docs: Fly-Private-Deployment-Schritte straffen. (#2289) Danke @dguido. - Docs: Migrationsleitfaden für den Umzug auf eine neue Maschine hinzufügen. (#2381) - Docs: One-Click-Deployment-Guide für Northflank hinzufügen. (#2167) Danke @AdeboyeDN. - Docs: Verweis auf Vercel AI Gateway in der Providern-Seitenleiste hinzufügen. (#1901) Danke @jerilynzheng. - Docs: Render-Deployment-Guide hinzufügen. (#1975) Danke @anurag. - Docs: Claude Max API Proxy-Anleitung hinzufügen. (#1875) Danke @atalovesyou. - Docs: DigitalOcean-Deployment-Guide hinzufügen. (#1870) Danke @0xJonHoldsCrypto. - Docs: Oracle Cloud (OCI) Plattformleitfaden + Cross-Links hinzufügen. (#2333) Danke @hirefrank. - Docs: Raspberry Pi-Installationsanleitung hinzufügen. (#1871) Danke @0xJonHoldsCrypto. - Docs: GCP Compute Engine-Deployment-Guide hinzufügen. (#1848) Danke @hougangdev. - Docs: LINE-Kanal-Anleitung hinzufügen. Danke @thewilloftheshadow. - Docs: Credits beider Mitwirkende für Control UI-Refresh. (#1852) Danke @EnzeD. - Docs: Kopfzeile der Docs fixieren, damit die Navbar beim Scrollen sichtbar bleibt. (#2445) Danke @chenyuan99. - Docs: exe.dev-Installationsanleitung aktualisieren. ([#3047](https://github.com/openclaw/openclaw/pull/3047)) Danke @zackerthescar. ### Breaking - **BREAKING:** Gateways-Auth-Modus "none" entfernt; Gateway erfordert nun Token/Passwort (Tailscale Serve-Identität weiterhin erlaubt). ### Fixes - Telegram: stille leere Antworten vermeiden durch Verfolgung von Normalisierungssprüngen vor dem Fallback. (#3796) - Mentions: Berücksichtige mentionPatterns auch wenn explizite Mentions vorhanden sind. (#3303) Danke @HirokiKobayashi-R. - Discord: Benutzernamensverzeichnis-Auflösung in Zielauflösung wiederherstellen. (#3131) Danke @bonald. - Agents: MiniMax-Base-URL-Tests mit Standardanbieter-Konfiguration abgleichen. (#3131) Danke @bonald. - Agents: Wiederholungen bei zu großen Bildfehlern verhindern und Größenbeschränkungen offenlegen. (#2871) Danke @Suksham-sharma. - Agents: Provider-BaseUrl/api für Inline-Modelle erben. (#2740) Danke @l
Features
25. Januar 2026
## 2026.1.24 ### Highlights - Providers: Ollama discovery + docs; Venice guide upgrades + cross-links. (#1606) Thanks @abhaymundhara. https://docs.clawd.bot/providers/ollama https://docs.clawd.bot/providers/venice - Channels: LINE plugin (Messaging API) with rich replies + quick replies. (#1630) Thanks @plum-dawg. - TTS: Edge fallback (keyless) + `/tts` auto modes. (#1668, #1667) Thanks @steipete, @sebslight. https://docs.clawd.bot/tts - Exec approvals: approve in-chat via `/approve` across all channels (including plugins). (#1621) Thanks @czekaj. https://docs.clawd.bot/tools/exec-approvals https://docs.clawd.bot/tools/slash-commands - Telegram: DM topics as separate sessions + outbound link preview toggle. (#1597, #1700) Thanks @rohannagpal, @zerone0x. https://docs.clawd.bot/channels/telegram ### Changes - Channels: add LINE plugin (Messaging API) with rich replies, quick replies, and plugin HTTP registry. (#1630) Thanks @plum-dawg. - TTS: add Edge TTS provider fallback, defaulting to keyless Edge with MP3 retry on format failures. (#1668) Thanks @steipete. https://docs.clawd.bot/tts - TTS: add auto mode enum (off/always/inbound/tagged) with per-session `/tts` override. (#1667) Thanks @sebslight. https://docs.clawd.bot/tts - Telegram: treat DM topics as separate sessions and keep DM history limits stable with thread suffixes. (#1597) Thanks @rohannagpal. - Telegram: add `channels.telegram.linkPreview` to toggle outbound link previews. (#1700) Thanks @zerone0x. https://docs.clawd.bot/channels/telegram - Web search: add Brave freshness filter parameter for time-scoped results. (#1688) Thanks @JonUleis. https://docs.clawd.bot/tools/web - UI: refresh Control UI dashboard design system (typography, colors, spacing). (#1786) Thanks @mousberg. - Exec approvals: forward approval prompts to chat with `/approve` for all channels (including plugins). (#1621) Thanks @czekaj. https://docs.clawd.bot/tools/exec-approvals https://docs.clawd.bot/tools/slash-commands - Gateway: expose config.patch in the gateway tool with safe partial updates + restart sentinel. (#1653) Thanks @Glucksberg. - Diagnostics: add diagnostic flags for targeted debug logs (config + env override). https://docs.clawd.bot/diagnostics/flags - Docs: expand FAQ (migration, scheduling, concurrency, model recommendations, OpenAI subscription auth, Pi sizing, hackable install, docs SSL workaround). - Docs: add verbose installer troubleshooting guidance. - Docs: add macOS VM guide with local/hosted options + VPS/nodes guidance. (#1693) Thanks @f-trycua. - Docs: add Bedrock EC2 instance role setup + IAM steps. (#1625) Thanks @sergical. https://docs.clawd.bot/bedrock - Docs: update Fly.io guide notes. - Dev: add prek pre-commit hooks + dependabot config for weekly updates. (#1720) Thanks @dguido. ### Fixes - Web UI: fix config/debug layout overflow, scrolling, and code block sizing. (#1715) Thanks @saipreetham589. - Web UI: show Stop button during active runs, swap back to New session when idle. (#1664) Thanks @ndbroadbent. - Web UI: clear stale disconnect banners on reconnect; allow form saves with unsupported schema paths but block missing schema. (#1707) Thanks @Glucksberg. - Web UI: hide internal `message_id` hints in chat bubbles. - Gateway: allow Control UI token-only auth to skip device pairing even when device identity is present (`gateway.controlUi.allowInsecureAuth`). (#1679) Thanks @steipete. - Matrix: decrypt E2EE media attachments with preflight size guard. (#1744) Thanks @araa47. - BlueBubbles: route phone-number targets to DMs, avoid leaking routing IDs, and auto-create missing DMs (Private API required). (#1751) Thanks @tyler6204. https://docs.clawd.bot/channels/bluebubbles - BlueBubbles: keep part-index GUIDs in reply tags when short IDs are missing. - iMessage: normalize chat_id/chat_guid/chat_identifier prefixes case-insensitively and keep service-prefixed handles stable. (#1708) Thanks @aaronn. - Signal: repair reaction sends (group/UUID targets + CLI author flags). (#1651) Thanks @vilkasdev. - Signal: add configurable signal-cli startup timeout + external daemon mode docs. (#1677) https://docs.clawd.bot/channels/signal - Telegram: set fetch duplex="half" for uploads on Node 22 to avoid sendPhoto failures. (#1684) Thanks @commdata2338. - Telegram: use wrapped fetch for long-polling on Node to normalize AbortSignal handling. (#1639) - Telegram: honor per-account proxy for outbound API calls. (#1774) Thanks @radek-paclt. - Telegram: fall back to text when voice notes are blocked by privacy settings. (#1725) Thanks @foeken. - Voice Call: return stream TwiML for outbound conversation calls on initial Twilio webhook. (#1634) - Voice Call: serialize Twilio TTS playback and cancel on barge-in to prevent overlap. (#1713) Thanks @dguido. - Google Chat: tighten email allowlist matching, typing cleanup, media caps, and onboarding/docs/tests. (#1635) Thanks @iHildy. - Google Chat: normalize space targets without double `spaces/` prefix. - Agents: auto-compact on context overflow prompt errors before failing. (#1627) Thanks @rodrigouroz. - Agents: use the active auth profile for auto-compaction recovery. - Media understanding: skip image understanding when the primary model already supports vision. (#1747) Thanks @tyler6204. - Models: default missing custom provider fields so minimal configs are accepted. - Messaging: keep newline chunking safe for fenced markdown blocks across channels. - Messaging: treat newline chunking as paragraph-aware (blank-line splits) to keep lists and headings together. (#1726) Thanks @tyler6204. - TUI: reload history after gateway reconnect to restore session state. (#1663) - Heartbeat: normalize target identifiers for consistent routing. - Exec: keep approvals for elevated ask unless full mode. (#1616) Thanks @ivancasco. - Exec: treat Windows platform labels as Windows for node shell selection. (#1760) Thanks @ymat19. - Gateway: include inline config env vars in service install environments. (#1735) Thanks @Seredeep. - Gateway: skip Tailscale DNS probing when tailscale.mode is off. (#1671) - Gateway: reduce log noise for late invokes + remote node probes; debounce skills refresh. (#1607) Thanks @petter-b. - Gateway: clarify Control UI/WebChat auth error hints for missing tokens. (#1690) - Gateway: listen on IPv6 loopback when bound to 127.0.0.1 so localhost webhooks work. - Gateway: store lock files in the temp directory to avoid stale locks on persistent volumes. (#1676) - macOS: default direct-transport `ws://` URLs to port 18789; document `gateway.remote.transport`. (#1603) Thanks @ngutman. - Tests: cap Vitest workers on CI macOS to reduce timeouts. (#1597) Thanks @rohannagpal. - Tests: avoid fake-timer dependency in embedded runner stream mock to reduce CI flakes. (#1597) Thanks @rohannagpal. - Tests: increase embedded runner ordering test timeout to reduce CI flakes. (#1597) Thanks @rohannagpal.
Features
24. Januar 2026
## 2026.1.23 ### Highlights - TTS: verschiebe Telegram TTS in den Kern + aktiviere standardmäßig modellgesteuerte TTS-Tags für expressive Audio-Antworten. (#1559) Danke @Glucksberg. https://docs.clawd.bot/tts - Gateway: füge HTTP-Endpunkt `/tools/invoke` für direkte Tool-Aufrufe hinzu (Auth + Tool-Policy durchgesetzt). (#1575) Danke @vignesh07. https://docs.clawd.bot/gateway/tools-invoke-http-api - Heartbeat: kanalspezifische Sichtbarkeitssteuerungen (OK/Alerts/Indicator). (#1452) Danke @dlauer. https://docs.clawd.bot/gateway/heartbeat - Deploy: füge Fly.io Deployment-Unterstützung + Anleitung hinzu. (#1570) https://docs.clawd.bot/platforms/fly - Channels: füge Tlon/Urbit Channel-Plugin hinzu (DMs, Gruppen-Nennungen, Thread-Antworten). (#1544) Danke @wca4a. https://docs.clawd.bot/channels/tlon ### Changes - Channels: erlaube pro-Gruppe Tool-Allow/Deny-Policies über integrierte + Plugin-Channels hinweg. (#1546) Danke @adam91holt. https://docs.clawd.bot/multi-agent-sandbox-tools - Agents: füge Bedrock Auto-Discovery-Defaults + Config-Overrides hinzu. (#1553) Danke @fal3. https://docs.clawd.bot/bedrock - CLI: füge `clawdbot system` für System-Ereignisse + Heartbeat-Steuerungen hinzu; entferne eigenständiges `wake`. (Commit 71203829d) https://docs.clawd.bot/cli/system - CLI: füge Live-Auth-Probes zu `clawdbot models status` für pro-Profil-Verifizierung hinzu. (Commit 40181afde) https://docs.clawd.bot/cli/models - CLI: starte Gateway standardmäßig neu nach `clawdbot update`; füge `--no-restart` hinzu, um das zu überspringen. (Commit 2c85b1b40) - Browser: füge node-host Proxy-Auto-Routing für Remote Gateways hinzu (je Gateway/Knoten konfigurierbar). (Commit c3cb26f7c) - Plugins: füge optionalen `llm-task` JSON-nur Tool für Workflows hinzu. (#1498) Danke @vignesh07. https://docs.clawd.bot/tools/llm-task - Markdown: füge pro-Kanal Tabellenkonvertierung hinzu (Aufzählungen für Signal/WhatsApp, Code-Blöcke sonst). (#1495) Danke @odysseus0. - Agents: behalte System-Prompt Zeitzone nur und verschiebe aktuelle Zeit zu `session_status` für bessere Cache-Treffer. (Commit 66eec295b) - Agents: entferne redundante Bash-Tool-Benennung aus Tool-Registrierung/Anzeige. (#1571) Danke @Takhoffman. - Docs: füge Cron- vs. Heartbeat-Entscheidungsleitfaden hinzu (mit Lobster-Workflow-Hinweisen). (#1533) Danke @JustYannicc. https://docs.clawd.bot/automation/cron-vs-heartbeat - Docs: kläre, dass HEARTBEAT.md leere Dateien Herzschläge überspringt, fehlende Datei läuft weiterhin. (#1535) Danke @JustYannicc. https://docs.clawd.bot/gateway/heartbeat ### Fixes - Sessions: akzeptiere non-UUID SessionIds für History/Send/Status bei Beibehaltung der Agenten-Scope. (#1518) - Messaging/Sessions: spiegel outbound Sends in Ziel-Session-Schlüssel wider (Threads + dmScope), erstelle Session-Einträge beim Senden und normalisiere Groß-/Kleinschreibung des Session-Schlüssels. (#1520, Commit 4b6cdd1d3) - Sessions: lehne array-basierte Session-Stores ab, um stille Löschungen zu verhindern. (#1469) - Gateway: vergleiche Startzeit des Linux-Prozesses, um PID-Wiederverwendung-Lock-Loops zu vermeiden; halte Locks, sofern sie nicht veraltet sind. (#1572) Danke @steipete. - Gateway: akzeptiere `null` optionale Felder in Ausführungs-Autorisierungsanfragen. (#1511) Danke @pvoo. - Exec-Berechtigungen: speichere Allowlist-Eintrags-IDs, um macOS-Allowlist-Zeilen stabil zu halten. (#1521) Danke @ngutman. - Exec: berücksichtige `tools.exec`-Ask/Security-Standards für erhöhte Freigaben (vermeide unerwünschte Abfragen). (Commit 5662a9cdf) - Daemon: benutze Plattform PATH-Trennzeichen beim Aufbau minimaler Service-Pfade. (Commit a4e57d3ac) - Linux: schließe env-konfigurierte User-Bin-Verzeichnisse in systemd PATH ein und angle PATH-Audits aus. (#1512) Danke @robbyczgw-cla. - Tailscale: erneute Bereitstellung von Serve/Funnel nur bei Berechtigungsfehlern mit sudo und behalte ursprüngliche Fehlermeldungen. (#1551) Danke @sweepies. - Docker: aktualisiere Gateway-Befehl in docker-compose und Hetzner-Anleitung. (#1514) - Agents: zeige Tool-Fehler-Fallback an, wenn der letzte Assistant-Turn nur Tools aufgerufen hat (verhindert stille Stopps). (Commit 8ea8801d0) - Agents: ignoriere IDENTITY.md Template-Platzhalter beim Parsen der Identität. (#1556) - Agents: entferne verwaiste OpenAI-Responses-Begründungsblöcke bei Modellwechseln. (#1562) Danke @roshanasingh4. - Agents: füge CLI-Log-Hinweis zu „Agent fehlgeschlagen vor Antwort“ hinzu. (#1550) Danke @sweepies. - Agents: warnen und ignorieren Tool-Allowlists, die nur unbekannte oder entladene Plugin-Tools referenzieren. (#1566) - Agents: behandeln Plugin-nur Tool-Allowlists als Opt-ins; Kern-Tools bleiben aktiviert. (#1467) - Agents: berücksichtige Queue-Overrides für eingebettete Runs, um Deadlocks in Tests zu vermeiden. (Commit 084002998) - Slack: berücksichtige offene GroupPolicy für nicht aufgeführte Kanäle bei Nachrichten + Slash-Gating. (#1563) Danke @itsjaydesu. - Discord: Beschränkung der AutoThread-Nennung-Bypass auf bot-eigenen Threads; ack-Reaktionen mention-gated belassen. (#1511) Danke @pvoo. - Discord: erneute Versuche bei rate-limitiertem Allowlist-Auflösung + Befehl-Deployment, um Gateway-Abstürze zu vermeiden. (Commit f70ac0c7c) - Mentions: ignoriere MentionPattern-Matches, wenn in Gruppen-Chats eine andere explizite Erwähnung vorhanden ist (Slack/Discord/Telegram/WhatsApp). (Commit d905ca0e0) - Telegram: Markdown in Media-Untertitel rendern. (#1478) - MS Teams: entferne `.default`-Suffix aus Graph-Scope und Bot Framework-Probe-Scope. (#1507, #1574) Danke @Evizero. - Browser: halte Extensions-Relay-Tabs steuerbar, wenn die Extension eine Session-ID nach Tab-Wechsel wiederverwendet. (#1160) - Voice Wake: Wake-Words beim Blur/Submit auf iOS/Android automatisch speichern und Limits an macOS anpassen. (Commit 69f645c66) - UI: halte die Control-UI-Seitenleiste sichtbar beim Scrollen langer Seiten. (#1515) Danke @pookNast. - UI: cached die Control-UI-Markdown-Darstellung + memoisiere Chat-Text-Extraktion, um Safari-Tippel-Jank zu reduzieren. (Commit d57cb2e1a) - TUI: weiterleite unbekannte Slash-Befehle, inkludiere Gateway-Befehle in Auto-Vervollständigung und renderSlash-Antworten als System-Ausgabe. (Commit 1af227b61, Commit 8195497ce, Commit 6fba598ea) - CLI: Auth-Probe-Ausgabe verfeinern (Tabellen-Ausgabe, Inline-Fehler, reduziert Noise, Wrap-Fixes in `clawdbot models status`). (Commit da3f2b489, Commit 00ae21bed, Commit 31e59cd58, Commit f7dc27f2d, Commit 438e782f8, Commit 886752217, Commit aabe0bed3, Commit 81535d512, Commit c63144ab1) - Media: parse nur `MEDIA:`-Tags, wenn sie am Anfang der Zeile stehen, um Prosa-Nennungen nicht zu entfernen. (#1206) - Media: bewahre PNG-Alpha, wenn möglich; fallback auf JPEG
Features
23. Januar 2026
### Änderungen - Highlight: Compaction-Schutz verwendet jetzt adaptives Chunking, progressiven Fallback und UI-Status + Retries. (#1466) Danke @dlauer. - Providers: Antigravity-Nutzungstracking zum Statusausgabe hinzufügen. (#1490) Danke @patelhiren. - Slack: Chat-Typ Antwort-Threading-Overrides via `replyToModeByChatType` hinzufügen. (#1442) Danke @stefangalescu. - BlueBubbles: `asVoice`-Support für MP3/CAF-Sprachnotizen in sendAttachment hinzufügen. (#1477, #1482) Danke @Nicell. - Onboarding: Hatch-Auswahl (TUI/Web/Later), Token-Erklärung, Hintergrund-Dashboard-Seed auf macOS und Showcase-Link hinzufügen. ### Fehlerbehebungen - BlueBubbles: Tippindikator bei Idle/Kein-Antwort stoppen. (#1439) Danke @Nicell. - Message-Tool: Pfad/Dateipfad unverändert belassen beim Senden; Buffers nur für sendAttachment hydratisieren. (#1444) Danke @hopyky. - Auto-Antwort: Modellwechsel nur melden, wenn Sitzungsstatus verfügbar ist. (#1465) Danke @robbyczgw-cla. - Control UI: Lokale Avatar-URLs mit basePath über Injection + Identity RPC auflösen. (#1457) Danke @dlauer. - Agents: Assistenten-Verlaufstext säubern, Marker für Tool-Aufrufe entfernen. (#1456) Danke @zerone0x. - Discord: Klarstellung des Onboardings-Hinweises zur Message Content Intent. (#1487) Danke @kyleok. - Gateway: Dienst vor Deinstallation stoppen und scheitern, wenn er geladen bleibt. - Agents: Konkrete API-Fehlerdetails statt generischer AI-Service-Fehler anzeigen. - Exec: Bei PTY-Spawn-Ausfall (EBADF) auf Nicht-PTY zurückfallen. (#1484) - Exec-Zulassungen: Pro-Segment erlaubte Ausschlüsse für verkettete Shell-Befehle auf Gateway- + Node-Hosts zulassen. (#1458) Danke @czekaj. - Agents: OpenAI-Sitzungen bildschirmreinigungsfähig gestalten; Reinigung von Tool-ID/Repair durch Anbieter steuern. - Doctor: CLAWDBOT_GATEWAY_TOKEN für Auth-Checks und Wiederverwendung von Sicherheits-Audit-Tokens beachten. (#1448) Danke @azade-c. - Agents: Tool-Summen übersichtlicher gestalten und optionale Parameter nur anzeigen, wenn gesetzt. - Agents: SOUL.md-Richtlinien auch berücksichtigen, wenn Datei verschachtelt oder pfadqualifiziert ist. (#1434) Danke @neooriginal. - Matrix (Plugin): m.direct für gelöste DMs persistieren und Fallback für Räume härten. (#1436, #1486) Danke @sibbl. - CLI: Bevorzugt `~`-Pfad-Angaben für Home-Verzeichnisse in Ausgaben verwenden. - Mattermost (Plugin): Pairing/Allowlist-Gating erzwingen, Targeting von @Benutzernamen beibehalten und plugin-only-Dokumentation klären. (#1428) Danke @damoahdominic. - Agents: Transcript-Sanitation im Runner zentralisieren; `<final>`-Tags und Fehler-Turns unverändert belassen. - Auth: Auth-Profile während der initialen Auswahl und Rotation im Cooldown überspringen. (#1316) Danke @odrobnik. - Agents/TUI: Benutzers-pinned Auth-Profile während Cooldown berücksichtigen und Ranking der Suchauswahl beibehalten. (#1432) Danke @tobiasbischoff. - Docs: Gog-Auth-Services-Beispiel korrigieren, um Docs-Scopes einzuschließen. (#1454) Danke @zerone0x. - Slack: WebClient-Wiederholungen reduzieren, um doppelte Sendungen zu vermeiden. (#1481) - Slack: Thread-Antworten beim Lesen von Nachrichten berücksichtigen, falls threadId angegeben (Replies-only). (#1450) Danke @rodrigouroz. - macOS: Verknüpfte Kanäle in Gateway-Zusammenfassung bevorzugen, um falschen „nicht verlinkt“-Status zu vermeiden. - macOS/tests: Gateway-Summen-Lookup nach Guard-Unwrap korrigieren; verhindern, dass Browser während Tests geöffnet werden. (ECID-1483)
Features
22. Januar 2026
### Highlights - Lobster optionales Plugin-Tool für typisierte Arbeitsabläufe + Approvals-Gates. [docs](https://docs.clawd.bot/tools/lobster) - Custom Assistant Identity + Avatare in der Control UI. [docs](https://docs.clawd.bot/cli/agents) [docs](https://docs.clawd.bot/web/control-ui) - Cache-Optimierungen: cache-ttl Pruning + Defaults reduzieren Token-Verbrauch bei Cold Requests. [docs](https://docs.clawd.bot/concepts/session-pruning) - Exec Approvals + Elevated Ask/Full-Modi. [docs](https://docs.clawd.bot/tools/elevated) [docs](https://docs.clawd.bot/tools/exec-approvals) - Signal Typing/Read Receipts + MSTeams-Anhänge. [docs](https://docs.clawd.bot/channels/signal) [docs](https://docs.clawd.bot/channels/msteams) - `/models` UX-Refresh + `clawdbot update wizard`. [docs](https://docs.clawd.bot/cli/models) [docs](https://docs.clawd.bot/cli/update) ### Changes - Highlight: Lobster optionales Plugin-Tool für typisierte Workflows + Genehmigungsgates. [docs](https://docs.clawd.bot/tools/lobster) (#1152) Thanks @vignesh07. - Agents/UI: Identity-Avatar-Konfig-Support hinzufügen und Control-UI-Avatar-Rendering. (#1329, #1424) Thanks @dlauer. [docs](https://docs.clawd.bot/gateway/configuration) [docs](https://docs.clawd.bot/cli/agents) - Control UI: benutzerdefinierte Assistant-Identity-Unterstützung und per-Session Identity-Anzeige hinzufügen. (#1420) Thanks @robbyczgw-cla. [docs](https://docs.clawd.bot/web/control-ui) - CLI: `clawdbot update wizard` mit interaktiver Channel-Auswahl + Neustart-Prompts, plus Preflight-Checks vor dem Rebasing. [docs](https://docs.clawd.bot/cli/update) - Models/Commands: `/models` hinzufügen, UX von `/model` verbessern und Paging von `clawdbot models` erweitern. (#1398) Thanks @vignesh07. [docs](https://docs.clawd.bot/cli/models) - CLI: Gateways-Service-Befehle unter `clawdbot gateway` verschieben, Node-Service-Befehle unter `clawdbot node` flattenen, und `gateway probe` für Reichweite hinzufügen. [docs](https://docs.clawd.bot/cli/gateway) [docs](https://docs.clawd.bot/cli/node) - Exec: Elevated Ask/Full-Modi hinzufügen, Allowlist-Gating straffen, und Genehmigungs-Tabellen beim Schreiben rendern. [docs](https://docs.clawd.bot/tools/elevated) [docs](https://docs.clawd.bot/tools/exec-approvals) - Exec Approvals: standardmäßig auf localhost setzen, Gateway/Node-Targeting + Ziel-Details hinzufügen, Wildcard-Agent-Allowlists unterstützen und Allowlist-Parsing/Safe-Bins straffen. [docs](https://docs.clawd.bot/cli/approvals) [docs](https://docs.clawd.bot/tools/exec-approvals) - Heartbeat: explizite Session-Keys und aktive Stunden zulassen. (#1256) Thanks @zknicker. [docs](https://docs.clawd.bot/gateway/heartbeat) - Sessions: pro-Kanal inaktive Dauer via `sessions.channelIdleMinutes` hinzufügen. (#1353) Thanks @cash-echo-bot. - Nodes: Execution im Stil von Exec ausführen, PATH-Umgebung im Status/Beschreibung sichtbar machen, und PATH für Node-Host-Execution bootstrappern. [docs](https://docs.clawd.bot/cli/node) - Cache: `cache.ttlPrune`-Modus hinzufügen und auth-aware Defaults für Cache-TTL-Verhalten. - Queue: pro-Kanal Debounce-Overrides für Auto-Reply hinzufügen. [docs](https://docs.clawd.bot/concepts/queue) - Discord: Wildcard-Channel-Konfig-Unterstützung hinzufügen. (#1334) Thanks @pvoo. [docs](https://docs.clawd.bot/channels/discord) - Signal: Tipp-/Typing-Indikatoren und DM-Read-Receipts über signal-cli hinzufügen. [docs](https://docs.clawd.bot/channels/signal) - MSTeams: Dateiuploads, Adaptive Cards und Verbesserungen bei Attachment-Handling. (#1410) Thanks @Evizero. [docs](https://docs.clawd.bot/channels/msteams) - Onboarding: Run-Setup-token Auth-Option entfernen (stattdessen Setup-token einfügen oder CLI-Creds verwenden). - macOS: Settings aktualisieren (Standortzugriff in Permissions, Verbindungsmodus im Menü, CLI-Installations-UI entfernen). - Diagnostics: Cache-Trace-Konfiguration zum Debugging hinzufügen. (#1370) Thanks @parubets. - Docs: Lobster-Guides + Organisations-URL-Updates, /model-Allowlist-Fehlerbehebung, Gmail-Nachrichten-Suchbeispiele, gateway.mode-Fehlerbehebung, Prompt-Injection-Anleitung, npm-Prefix/Node-CLI-Hinweise, Control-UI Dev-GatewayUrl-Hinweis, Tool_use FAQ, Showcase-Video, und sharp/node-gyp-Workaround. (#1427, #1220, #1405) Thanks @vignesh07, @mbelinky. ### Breaking - **BREAKING:** Control UI lehnt insecure HTTP ohne Geräte-Identity standardmäßig ab. Verwenden Sie HTTPS (Tailscale Serve) oder setzen Sie `gateway.controlUi.allowInsecureAuth: true`, um tokenbasierte Auth zu ermöglichen. [docs](https://docs.clawd.bot/web/control-ui#insecure-http) - **BREAKING:** Umschlag- und Systemereignis-Timestamps standardmäßig auf host-lokale Zeit (früher UTC), damit Agents nicht ständig konvertieren müssen. ### Fixes - Streaming/Typing/Media: Antwort-Tags über gestreamte Chunks beibehalten, Typing-Indikatoren zu Beginn des Laufes starten, und MEDIA-Pfade mit Leerzeichen/tilde akzeptieren, während das Nachrichten-Tool-Hinweis für Bildantworten bevorzugt wird. - Agents/Providers: unsigned Thinking-Blocks für Claude-Modelle (Google Antigravity) entfernen und alphanumerische Tool-Call-IDs bei strengen Providers (Mistral/OpenRouter) erzwingen. (#1372) Thanks @zerone0x. - Exec Approvals: Main als Standard-Agent behandeln, Node/Gateway-Allowlist-Prechecks angleichen, aufgelöste Pfade validieren, Rennen bei Allowlist-Auflösung vermeiden und optionale Parameter null vermeiden. (#1417, #1414, #1425) Thanks @czekaj. - Exec/Windows: Windows-Exec-Pfade mit Erweiterungen auflösen und sichere-Bin-Exe-Namen behandeln. - Nodes/macOS: Hinweis bei Allowlist-Miss für Node-Exec-Approvals, Allowlist-Entscheidungen persistieren, und Node-Invoke-Fehler flattenen. (#1394) Thanks @ngutman. - Gateway: Verhindern, dass mehrere Gateways dieselbe Config/State teilen (Singleton-Lock), Auto-Bind-Schleife beibehalten mit expliziter Tailnet-Bindung, und SSH-Auth-Handling verbessern. (#1380) - Control UI: Chat-Stopp-Button entfernen, Composer am unteren Rand ausrichten, Session-Previews stabilisieren, Debug-Panel bei route-gesteuerten Tab-Wechseln aktualisieren. (#1373) Thanks @yazinsai. - UI/config: SECTION_META für Config-Form-Module exportieren. (#1418) Thanks @MaudeBot. - macOS: Chat während Streaming-Antworten anheften, Textual-Ressourcen einschließen, Wildcard-Exec-Approvals respektieren, SSH-Agent-Auth erlauben, Standard-Distributions-Builds auf Universal-Binaries setzen. (#1279, #1362, #1384, #1396) Thanks @ameno-, @JustYannicc. - BlueBubbles: Kurze Message-IDs sicher auflösen, volle IDs in Templates sichtbar machen, Short-ID-Fetch-Wrappers absichern. (#1369, #1387) Thanks @tyler6204. - Models/Configure: Session-Model-Overrides in Threads/Topics vererben, OpenCode Zen-Modelle den korrekten APIs zuordnen, Anthropic OAuth-Allowlist-Handhabung einschränken, Allowlist-Fallbacks seed, vollständigen Katalog listen, wenn keine Allowlist gesetzt ist, und `/model`-Listenausgabe begrenzen. (#1376, #1416) - Memory: CLI-Hänger verhindern durch Verzögerung von Vektor-Probes, sqlite-vec/Embedding-Timeouts hinzufügen, und Session-Memory-Indexierung asynchron gestalten. - Cron: Erinnerungs-Kontextverlauf auf 10 Nachrichten begrenzen und `contextMessages` beachten. (#1103) Thanks @mkbehr. - Cache: die 1h Cache-T
Features
21. Januar 2026
### Änderungen - Control UI: Kopieren als Markdown mit Fehler-Rückmeldung hinzufügen. (#1345) https://docs.clawd.bot/web/control-ui - Control UI: die Legacy-Listenansicht entfernen. (#1345) https://docs.clawd.bot/web/control-ui - TUI: Syntaxhervorhebung für Code-Blöcke hinzufügen. (#1200) https://docs.clawd.bot/tui - TUI: Sitzungs-Auswahl zeigt abgeleitete Titel, fuzzy Suche, relative Zeiten und Vorschau der letzten Nachricht. (#1271) https://docs.clawd.bot/tui - TUI: eine durchsuchbare Modell-Auswahl hinzufügen für schnellere Modell-Auswahl. (#1198) https://docs.clawd.bot/tui - TUI: Eingabeliste (Auf-/Ab) für eingereichte Nachrichten hinzufügen. (#1348) https://docs.clawd.bot/tui - ACP: `clawdbot acp` für IDE-Integrationen hinzufügen. https://docs.clawd.bot/cli/acp - ACP: `clawdbot acp client` interaktives Harness zum Debugging hinzufügen. https://docs.clawd.bot/cli/acp - Skills: Download-Installationen mit OS-Filter-Optionen hinzufügen. https://docs.clawd.bot/tools/skills - Skills: die lokale sherpa-onnx-tts Skill hinzufügen. https://docs.clawd.bot/tools/skills - Memory: hybride BM25 + Vektor-Suche (FTS5) mit gewichteter Zusammenführung und Fallback hinzufügen. https://docs.clawd.bot/concepts/memory - Memory: SQLite-Embedding-Cache zum Beschleunigen von Reindexing und häufigen Updates hinzufügen. https://docs.clawd.bot/concepts/memory - Memory: OpenAI Batch Indexing für Embeddings bei Konfiguration hinzufügen. https://docs.clawd.bot/concepts/memory - Memory: OpenAI Batch Indexing standardmäßig für OpenAI-Embeddings aktivieren. https://docs.clawd.bot/concepts/memory - Memory: parallele OpenAI Batch Indexing-Jobs zulassen (Standard-Konkurrenz: 2). https://docs.clawd.bot/concepts/memory - Memory: Fortschritt sofort rendern, Batch-Status in verbose Logs farblich kennzeichnen und OpenAI-Batch-Status alle 2s standardmäßig abfragen. https://docs.clawd.bot/concepts/memory - Memory: `--verbose` Logging für Memory-Status + Batch-Indexing-Details hinzufügen. https://docs.clawd.bot/concepts/memory - Memory: native Gemini-Embeddings-Anbieter für Memory-Suche hinzufügen. (#1151) https://docs.clawd.bot/concepts/memory - Browser: Standardwerte für effiziente Snapshots im Tool/CLI zulassen. (#1336) https://docs.clawd.bot/tools/browser - Nostr: Nostr-Kanalkanal-Plugin mit Profilverwaltung + Onboarding-Standards hinzufügen. (#1323) https://docs.clawd.bot/channels/nostr - Matrix: Migration zu matrix-bot-sdk mit E2EE-Unterstützung, Standort-Handhabung und Upgrades des Gruppen-Allowlists. (#1298) https://docs.clawd.bot/channels/matrix - Slack: HTTP-Webhook-Modus über Bolt HTTP-Empfänger hinzufügen. (#1143) https://docs.clawd.bot/channels/slack - Telegram: Kontext von weitergeleiteten Nachrichten mit normalisierten Origin-Details + Legacy-Fallback anreichern. (#1090) https://docs.clawd.bot/channels/telegram - Discord: fallback auf `/skill`, wenn native Befehlslimits überschritten sind. (#1287) - Discord: globalen Zugriff auf `/skill` freischalten. (#1287) - Zalouser: Channel-Dock-Metadaten, Konfigurationsschema, Aufbau-Verkabelung, Probe und Statusprobleme hinzufügen. (#1219) https://docs.clawd.bot/plugins/zalouser - Plugins: Manifest-integrierte Config-Schemas mit Preflight-Validierungswarnungen required. (#1272) https://docs.clawd.bot/plugins/manifest - Plugins: Channel-Katalog-Metadaten in Plugin-Manifeste verschieben. (#1290) https://docs.clawd.bot/plugins/manifest - Plugins: Nextcloud Talk-Policy-Helfer mit Kernmustern ausrichten. (#1290) https://docs.clawd.bot/plugins/manifest - Plugins/UI: Channel-Plugin-Metadaten steuern UI-Bezeichnungen/Icons und Cron-Channel-Optionen. (#1306) https://docs.clawd.bot/web/control-ui - Plugins: Plugin-Slots mit dediziertem Memory-Slot-Auswähler hinzufügen. https://docs.clawd.bot/plugins/agent-tools - Plugins: das gebundene BlueBubbles Channel-Plugin ausliefern (standardmäßig deaktiviert). https://docs.clawd.bot/channels/bluebubbles - Plugins: gebundene Messaging-Erweiterungen auf das Plugin-SDK migrieren und Plugin-SDK-Importe im Loader lösen. - Plugins: Zalo-Plugin auf das shared Plugin-SDK-Laufzeitumgebung migrieren. https://docs.clawd.bot/channels/zalo - Plugins: Zalo Personal-Plugin auf das shared Plugin-SDK-Laufzeitumgebung migrieren. https://docs.clawd.bot/plugins/zalouser - Plugins: optionale Agent-Tools mit expliziten Allow-Listen erlauben und Guide zum Plugin-Tool-Erstellen hinzufügen. https://docs.clawd.bot/plugins/agent-tools - Plugins: gebundene Channel/Provider-Plugins automatisch aktivieren, wenn Konfiguration vorhanden ist. - Plugins: Plugin-Quellen bei Channel-Wechsel synchronisieren und Plugins, die via npm installiert sind, während `clawdbot update` aktualisieren. - Plugins: npm-Plugin-Aktualisierungslogik zwischen `clawdbot update` und `clawdbot plugins update` teilen. - Gateway/API: `/v1/responses` (OpenResponses) mit item-basiertem Input + semantischen Streaming-Ereignissen hinzufügen. (#1229) - Gateway/API: `/v1/responses` erweitern um Datei-/Bild-Eingaben, tool_choice, Nutzung und Output-Limits. (#1229) - Usage: `/usage cost` Übersichten und macOS-Menü-Kosten-Diagramme hinzufügen. https://docs.clawd.bot/reference/api-usage-costs - Security: Warnung, wenn Modelle <= 300B ohne Sandbox laufen, während Web-Tools aktiviert sind. https://docs.clawd.bot/cli/security - Exec: Host/Security/Ask Routing für Gateway + Node-Exec hinzufügen. https://docs.clawd.bot/tools/exec - Exec: `/exec` Direktiv für per-Session-Defaults (host/security/ask/node) hinzufügen. https://docs.clawd.bot/tools/exec - Exec approvals: Freigaben-Überprüfung auf `~/.clawdbot/exec-approvals.json` mit per-Agent-Allowlists + Skill-Auto-Allow Toggle migrieren, und Approvals-UI + Node-Exec-Lifecycle-Ereignisse hinzufügen. https://docs.clawd.bot/tools/exec-approvals - Nodes: Headless Node-Host hinzufügen (`clawdbot node start`) für `system.run`/`system.which`. https://docs.clawd.bot/cli/node - Nodes: Node-Daemon-Service Install/Status/Start/Stop/Restart hinzufügen. https://docs.clawd.bot/cli/node - Bridge: `skills.bins` RPC hinzufügen um Auto-Allow-Skill-Bins für Node-Host zu unterstützen. - Sessions: tägliche Rücksetzrichtlinie mit Typ-spezifischen Overrides und Idle-Fenstern (Standard 4 Uhr lokal), Legacy-Idle-Konfigurationen beibehalten. (#1146) https://docs.clawd.bot/concepts/session - Sessions: `sessions_spawn` zulassen, um das Thinking-Level für Sub-Agenten-Läufe zu überschreiben. https://docs.clawd.bot/tools/subagents - Channels: einheitliche Thread/Topic-Allowlist-Matching + Helper für Command/Mention-Gating über alle Core-Provider. https://docs.clawd.bot/concepts/groups - Models: Qwen Portal OAuth-Anbieter-Unterstützung hinzufügen. (#1120) https://docs.clawd.bot/providers/qwen - Onboarding: Allowlist-Eingabeaufforderungen und Username-zu-ID-Auflösung über Core- und Extensions-Channel hinweg hinzufügen. https://docs.clawd.bot/start/onboarding - Docs: klären Allowlist-Eingabetypen und Onboarding-Verhalten für Messaging-Channels. https://docs.clawd.bot/start/onboarding - Docs: Android-Knoten-Erkennungsdokumentation für Gateway WS-Service-Typ aktualisieren. https://docs.clawd.bot/platforms/android - Docs: Amazon Bedrock in Providerschlüssel-Listen aufführen und Bedrock-Auth-Umgebungsvariablen klären. (#1289) https://docs.clawd.bot/bedrock - Docs: WhatsApp-Sprachnachrichten klären. https://docs.clawd.bot/channels/whatsapp - Docs: Windows WSL Portproxy LAN-ZugriffsNotizen klären. https://docs.clawd.bot/platforms/windows - Docs: Bird-Skill-Installations-Metadaten und
Features
17. Januar 2026
### Highlights - Hooks: System zum Hinzufügen von Hooks mit gebündelten Hooks, CLI-Tools und Dokumentation. (#1028) — danke @ThomsenDrake. https://docs.clawd.bot/hooks - Media: inbound media Understanding (Bild/Audio/Video) mit Provider + CLI-Fallbacks hinzufügen. https://docs.clawd.bot/nodes/media-understanding - Plugins: Zalo Personal Plugin (`@clawdbot/zalouser`) hinzufügen und Verzeichnisstruktur der Plugin-Kanäle vereinheitlichen. (#1032) — danke @suminhthanh. https://docs.clawd.bot/plugins/zalouser - Models: Auth-Auswahl für Vercel AI Gateway hinzufügen + Onboarding-Updates. (#1016) — danke @timolins. https://docs.clawd.bot/providers/vercel-ai-gateway - Sessions: `session.identityLinks` für plattform-übergreifende DM-Session-Verlinkung hinzufügen. (#1033) — danke @thewilloftheshadow. https://docs.clawd.bot/concepts/session - Web search: Parameter `country`/`language` (Schema + Brave API) und Docs hinzufügen. (#1046) — danke @YuriNachos. https://docs.clawd.bot/tools/web ### Breaking - **BREAKING:** `clawdbot message` und Nachrichten-Tool benötigen jetzt `target` (Verwerfen von `to`/`channelId` für Ziele). (#1034) — danke @tobalsan. - **BREAKING:** Channel-Auth bevorzugt jetzt Config über Env für Discord/Telegram/Matrix (Env-Fallback nur). (#1040) — danke @thewilloftheshadow. - **BREAKING:** Drop der Legacy-Unterstützung für `chatType: "room"`; verwenden Sie `chatType: "channel"`. - **BREAKING:** Entferne legacy provider-spezifische Zielauflösungs-Fallbacks; Zielauflösung zentralisiert mit Plugin-Hints + Verzeichnis-Lookups. - **BREAKING:** `clawdbot hooks` ist jetzt `clawdbot webhooks`; Hooks befinden sich unter `clawdbot hooks`. https://docs.clawd.bot/cli/webhooks - **BREAKING:** `clawdbot plugins install <path>` kopiert jetzt in `~/.clawdbot/extensions` (verwenden Sie `--link`, um Pfad-basierte Laden zu behalten). ### Changes - Plugins: gebündelte Plugins standardmäßig deaktiviert; Überschreibungen durch installierte Versionen erlauben. (#1066) — danke @ItzR3NO. - Plugins: gebündelte Antigravity + Gemini CLI OAuth + Copilot Proxy Provider-Plugins hinzufügen. (#1066) — danke @ItzR3NO. - Tools: Verbesserung der `web_fetch`-Extraktion mittels Readability (mit Fallback). - Tools: Firecrawl-Fallback für `web_fetch`, wenn konfiguriert. - Tools: Chrome-ähnliche Header standardmäßig für `web_fetch` senden, um Extraktion auf bot-sensitiven Seiten zu verbessern. - Tools: Firecrawl-Fallback nutzt standardmäßig Bot-Umgehung + Cache; entfernen Sie den einfachen HTML-Fallback bei fehlender Extraktion. - Tools: Standardmäßige Exit-Benachrichtigungen von `exec` und automatische Migration des legacy `tools.bash` zu `tools.exec`. - Tools: `exec` PTY-Unterstützung für interaktive Sessions hinzufügen. https://docs.clawd.bot/tools/exec - Tools: tmux-Style `process send-keys` und bracketed paste-Helfer für PTY-Sitzungen. - Tools: `process submit`-Hilfsfunktion zum Senden von CR für PTY-Sitzungen. - Tools: Antworten auf PTY-Cursor-Position-Anfragen, um interaktive TUIs zu freischalten. - Tools: Tool-Ausgaben in verbose Mode einschließen und ausführliches Tool-Feedback erweitern. - Skills: Aktualisierung der Coding-Agent-Richtlinien, bevorzugte PTY-fähige Exec-Läufe und Vereinfachung der tmux-Nutzung. - TUI: Token-Anzahlen der Session nach Abschluss oder Fehlschlag aktualisieren. (#1079) — danke @d-ploutarchos. - Status: `/status` auf aktuelle Provider-Nutzung beschränken und OAuth/Token-Block entfernen. - Directory: Vereinheitlichung des `clawdbot directory` über Kanäle und Plugin-Kanäle hinweg. - UI: Löschen von Sessions im Control UI zulassen. - Skills: benutzbare Skill-Befehle hinzufügen und erweiterte Skill-Befehl-Registrierung. - Telegram: Standardreaktionsstufe auf minimal setzen und Reaktions-Benachrichtigungen standardmäßig aktivieren. - Telegram: Antworten-Ketten-Nachrichten dürfen Erwähnungs-Gating in Gruppen umgehen. (#1038) — danke @adityashaw2. - iMessage: Remote-Anhang-Unterstützung für VM/SSH-Deployments hinzufügen. - Messages: Live-Verzeichnis-Cache-Ergebnisse beim Auflösen von Zielen aktualisieren. - Messages: Delivery-Text/Media in Transcripts der Sessions spiegeln. (#1031) — danke @TSavo. - Messages: Redundante Absender-Umhüllungen für iMessage + Signal-Gruppenchats vermeiden. (#1080) — danke @tyler6204. - Media: Deepgram Audio-Upload-Bytes für Fetch-Kompatibilität normalisieren. - Cron: isolierte Cron-Jobs starten bei jedem Lauf eine frische Session-ID, um Kontextaufbau zu verhindern. - Docs: `/help`-Hub, Node/npm PATH-Anleitung und erweiterte Directory-CLI-Dokumentation hinzufügen. - Config: Umgebungsvariablen-Substitution in Config-Werten unterstützen. (#1044) — danke @sebslight. - Health: pro-Agenten-Sitzungszusammenfassungen und kontenbasierte Health-Details hinzufügen, sowie selektive Probes ermöglichen. (#1047) — danke @gumadeiras. - Hooks: Hook-Paket-Installationen (npm/Pfad/Zip/Tar) mit `clawdbot.hooks`-Manifests und `clawdbot hooks install/update`. - Plugins: Zip-Installationen hinzufügen und `--link`, um Kopieren lokaler Pfade zu vermeiden. ### Fixes - macOS: Subprozess-Pipes leeren, bevor gewartet wird, um Deadlocks zu vermeiden. (#1081) — danke @thesash. - Verbose: Tool-Zusammenfassungen/Ausgaben nur in Markdown-Channels formatieren. - Telegram: tg/Group/Telegram-Präfixe + Target-Topics für Inline-Button-Validierung akzeptieren. (#1072) — danke @danielz1z. - Telegram: Lange Bildunterschriften in Follow-up-Nachrichten aufteilen. - Config: Startvorgang bei ungültiger Config blockieren, bestmögliche Doctor-Config bewahren und rollende Config-Backups beibehalten. (#1083) — danke @mukhtharcm. - Sub-Agents: Normalisieren von Announcement-Delivery-Origin + Queue-Bucketing nach accountId, um Multi-Account-Routing stabil zu halten. (#1061, #1058) — danke @adam91holt. - Sessions: DeliveryContext in sessions.list aufnehmen und normalisierte Delivery-Routing für Announcement/Restart-Fallbacks wiederverwenden. (#1058) - Sessions: DeliveryContext in Last-Route-Updates propagieren, um Routing-Stabilität zu bewahren. (#1058) - Sessions: Overrides beim `/new`-Reset beibehalten. - Memory: Ungehandelte Rejections verhindern, wenn Watch/Interval-Sync fehlschlägt. (#1076) — danke @roshanasingh4. - Memory: Gateway-Absturz vermeiden, wenn Embeddings 429/insufficient_quota zurückgeben (Tool deaktivieren + Fehler anzeigen). (#1004) - Gateway: Explizite Delivery Targets beachten, kein impliziter accountId-Fallback; letzte AccountId für implizites Routing beibehalten. - Gateway: Vermeide Wiederverwendung von Last-zu/accountId, wenn der angeforderte Kanal abweicht; DeliveryContext mit letzten Route-Feldern synchronisieren. - Build: `@lydell/node-pty`-Builds auf unterstützten Plattformen zulassen. - Repo: Oxlint-Konfigurations-Dateiname korrigieren und Ignore-Muster in Konfig verschieben. (#1064) — danke @connorshea. - Messages: `/stop` bricht jetzt hart laufende Follow-ups und Sub-Agenten-Läufe ab; Null-Zähl-Stop-Notizen unterdrücken. - Messages: Berücksichtige Channel, wenn Nachrichten-Tools zusammengeführt werden. - Messages: Sender-Labels für Live-Gruppen-Nachrichten über alle Kanäle hinweg einbeziehen, passend zu Queued/Historic-Formatierung. (#1059) - Sessions: `compactionCount` bei `/new` und `/reset` zurücksetzen und Dateimodus von `sessions.json` beibehalten (0600). - Sessions: Nicht mehr verbundene Benutzer-Turns vor eingebetteten Prompts reparieren. - Sessions: harten Stop von
Features
16. Januar 2026
### Highlights - Plugins: Provide-Auth-Registry hinzufügen + `clawdbot models auth login` für plugin-gesteuerte OAuth/API-Key-Flows. - Browser: remote CDP/Browserless Support verbessern (Auth-Passthrough, `wss`-Upgrade, Timeouts, klarere Fehler). - Heartbeat: pro-Agent-Konfiguration + 24h Duplikat-Suppressions. (#980) — Danke an @voidserf. - Security: Audit-warnt vor schwachen Modell-Tiers; App-Nodes speichern Auth-Tokens verschlüsselt (Keychain/SecurePrefs). ### Breaking - **BREAKING:** iOS-Minimumversion ist jetzt 18.0, um native Chat-Textual-Markdown-Darstellung zu unterstützen. (#702) - **BREAKING:** Microsoft Teams ist jetzt ein Plugin; installiere `@clawdbot/msteams` über `clawdbot plugins install @clawdbot/msteams`. ### Changes - CLI: Prozess-Titel auf `clawdbot-<command>` setzen für klarere Prozesslisten. - CLI/macOS: entfernte SSH-Targets/Identitäten mit der config synchronisieren und `gateway status` SSH-Targets automatisch ableiten lassen (ssh-config-aware). - Heartbeat: Prompt-Anleitung straffen + Duplikat-Warnungen für 24h unterdrücken. (#980) — Danke an @voidserf. - Repo: lokale Identity-Dateien ignorieren, um versehentliches Committen zu vermeiden. (#1001) — Danke an @gerardward2007. - Sessions/Security: `session.dmScope` für Multi-User-DM-Isolation hinzufügen und Audit-Warnungen. (#948) — Danke an @Alphonse-arianee. - Plugins: Provider-Auth-Registry hinzufügen + `clawdbot models auth login` für plugin-gesteuerte OAuth/API-Key-Flows. - Onboarding: Kanal-Einrichtung auf eine Single-Select-Schleife umgestellt mit per-Kanal-Aktionen und disable-Hints im Picker. - TUI: Provider-/Model-Labels für die aktive Sitzung und das Standardmodell anzeigen. - Heartbeat: pro-Agenten-Heartbeat-Konfiguration und Multi-Agenten-Dokumentations-Beispiel hinzufügen. - UI: Anleitungs-Beistellung für Gateway-Auth + Doc-Link bei unautorisierten Control-UI-Verbindungen anzeigen. - Security: Warnung vor schwachen Modell-Tiers (Haiku, unter GPT-5, unter Claude 4.5) in `clawdbot security audit`. - Apps: Node-Auth-Tokens verschlüsselt speichern (Keychain/SecurePrefs). - Daemon: Freigabe von Profil-/State-Dir-Auflösung über Service-Helfer und Berücksichtigung von `CLAWDBOT_STATE_DIR` für Windows-Task-Skripte. - Docs: Klarstellung zu Multi-Gateway Rescue-Bot-Anleitungen. (#969) — Danke an @bjesuiter. - Agents: Current Date & Time System-Prompt-Sektion mit konfigurierbarem Zeitformat (auto/12/24). - Tools: Normalisieren von Slack/Discord-Nachrichten-Timestamps mit `timestampMs`/`timestampUtc` bei Erhaltung roher Provider-Felder. - macOS: `system.which` für prompt-freie Remote-Skill-Erkennung hinzufügen (mit Gateway-Fallback zu `system.run`). - Docs: Datums- & Zeitleitfaden hinzufügen und Prompt-/Timezone-Konfigurationsdokumentation aktualisieren. - Messages: Debounce schneller eingehender Nachrichten über Kanäle mit per-Connector-Overrides. (#971) — Danke an @juanpablodlc. - Messages: Media-only-Sendungen (CLI/Tool) zulassen und Telegram-Sprachnachrichten-Status für Sprachnotizen anzeigen. (#957) — Danke an @rdev. - Auth/Status: Auth-Profile pro Sitzung sticky halten (Rotieren bei Kompaktierung/Neu), Provider-Nutzungs-Header in `/status` und `clawdbot models status` anzeigen und Docs aktualisieren. - CLI: `--json`-Ausgabe für `clawdbot daemon` Lifecycle/Installationsbefehle hinzufügen. - Memory: `node-llama-cpp` zu einer optionalen Abhängigkeit machen (Installationsfehler bei Node 25 vermeiden) und lokale-Embeddings-Fallback/Fehler verbessern. - Browser: `snapshot refs=aria` (Playwright aria-ref-IDs) für selbstauflösende Referenzen über `snapshot` → `act` hinzufügen. - Browser: `profile="chrome"` dient jetzt standardmäßig der Host-Steuerung und gibt klarere “Tab anhängen”-Fehler zurück. - Browser: stabilen Chrome für Auto-Erkennung bevorzugen, Brave/Edge-Fallbacks und aktualisierte Docs. (#983) — Danke an @cpojer. - Browser: Remote-CDP-Erreichbarkeits-Timeouts erhöhen + `remoteCdpTimeoutMs`/`remoteCdpHandshakeTimeoutMs` hinzufügen. - Browser: Auth-/Abfrage-Tokens für Remote-CDP-Endpunkte bewahren und Basic-Auth für CDP HTTP/WS übergeben. (#895) — Danke an @mukhtharcm. - Telegram: bidirektionale Reaktionsunterstützung mit konfigurierbaren Benachrichtigungen und Agentenführung. (#964) — Danke an @bohdanpodvirnyi. - Telegram: benutzerdefinierte Befehle im Bot-Menü zulassen (mit Native verschmolzen; Konflikte ignoriert). (#860) — Danke an @nachoiacovino. - Discord: whitelist-Guilds ohne Channel-Listen empfangen Nachrichten erlauben, wenn `groupPolicy="allowlist"`. — Danke an @thewilloftheshadow. - Discord: Emoji/Sticker-Uploads + Channel-Aktionen in Config-Standards zulassen. (#870) — Danke an @JDIVE. ### Fixes - Fix: Modelauswahl-Entries als Provider/Model-Paare anzeigen für klare Auswahl. (#970) — Danke an @mcinteerj. - Fix: OpenAI Image-Gen-Standards an DALL-E 3 Standardqualität angleichen und Ausgabeformate dokumentieren. (#880) — Danke an @mkbehr. - Fix: Persistieren von `gateway.mode=local` nach Auswahl des Local-Run-Modus in `clawdbot configure`, auch wenn keine anderen Abschnitte gewählt werden. - Daemon: fehlertolerante Profil-abhängige Service-Label-Auflösung (umweltgesteuert) korrigieren und Abdeckung für launchd/systemd/schtasks hinzufügen. (#969) — Danke an @bjesuiter. - Agents: false Positives vermeiden bei Logging-Schema-Schlüsselwörter der Google-Tools. - Agents: Gemini-Historie-Niederrangstellungen für google-antigravity überspringen, um Tool-Aufrufe zu bewahren. (#894) — Danke an @mukhtharcm. - Status: Nutzungszusammenfassungszeile für den aktuellen Provider wiederherstellen, wenn keine OAuth-Profile existieren. - Fix: Modell-Fallback gegen undefinierte Provider/Model-Werte absichern. (#954) — Danke an @roshanasingh4. - Fix: Sitzungs-Store-Updates refactoren, chat.inject hinzufügen, Subagent-Cleanup-Flow härten. (#944) — Danke an @tyler6204. - Fix: suspendierte CLI-Prozesse über Backends bereinigen. (#978) — Danke an @Nachx639. - Fix: MiniMax-Kodierungsplan-Antworten mit `model_remains`/`current_interval_*` Payloads unterstützen. - Fix: WhatsApp-Pairing-Antworten für historische Catch-up DMs beim ersten Link unterdrücken. (#904) - Browser: Extensionsmodus wiederhergestellt, wenn nur ein Tab verbunden ist (veralteter targetId-Fallback). - Browser: `tab not found` für Extension-Relay-Snapshots/Aktionen beheben, wenn Playwright `newCDPSession` blockiert (verwende die einzige verfügbare Page). - Browser: `ws` auf `wss` aktualisieren, wenn remote CDP `https` verwendet (Behebung des Browserless-Handshakes). - Telegram: `message_thread_id=1` für General-Themen-Sends überspringen, während Typing-Indikatoren beibehalten werden. (#848) — Danke an @azade-c. - Fix: benutzerorientierte Fehlermeldung bereinigen + `<final>`-Tags über Reply-Pipelines hinweg entfernen. (#975) — Danke an @ThomsenDrake. - Fix: Pairing-CLI-Aliase normalisieren, Extensions-Kanäle erlauben und Zalo-Webhook-Payload-Parsing härten. (#991) — Danke an @longmaba. - Fix: lokale Tailscale-Serve-Hostnamen zulassen, ohne Tailnet-Clients als Direkt-Verbindung zu behandeln. (#885) — Danke an @oswalpalash. - Fix: Sitzungen nach Konflikten bei Rollen-Reihenfolge zurücksetzen, um auf aufeinanderfolgende Benutzerzüge zu reagieren. (#998)
Features
15. Januar 2026
### Install - npm i -g clawdbot@2026.1.14-1 ### Highlights - Web-Suche: `web_search`/`web_fetch` Tools (Brave API) + Ersteinrichtung im Onboarding/Setup. - Browser-Steuerung: Chrome-Erweiterungs-Relay-Übernahme-Modus + Remote-Browser-Steuerung über `clawdbot browser serve`. - Plugins: Kanal-Plugins (Gateway HTTP-Hooks) + Zalo-Plugin + Onboarding-Installations-Flow. (#854) — thanks @longmaba. - Sicherheit: erweitertes `clawdbot security audit` (+ `--fix`), detect-secrets CI-Scan und eine `SECURITY.md` Berichts-Richtlinie. ### Changes #### Web Tools - Tools: hinzufügen `web_search`/`web_fetch` (Brave API), einschließlich hilfreicher Setup-Hinweise, wenn der Schlüssel fehlt. - Tools: Standardmäßiges Aktivieren von `web_fetch` (sofern nicht explizit in der Konfiguration deaktiviert). - CLI/Docs: hinzufügen `clawdbot configure --section web` zum Speichern Brave-API-Schlüssel und Onboarding-Tipps aktualisieren. #### Browser / Control UI - Browser: Chrome-Erweiterungs-Relay-Übernahme-Modus (Symbolleiste) + `clawdbot browser serve` Remote-Steuerung + `browser.controlToken`. - Browser: integriertes `chrome`-Profil für Extension-Relay liefern und das Relay beim lokalen Start automatisch starten. - Browser: Standardwert `browser.defaultProfile` auf `chrome` setzen (vorhandener Chrome-Übernahme-Modus). - Browser: hinzufügen `clawdbot browser extension install/path` und Erweiterungs-Pfad in die Zwischenablage kopieren. - Control UI: rohe Any-Map-Einträge in den Config-Ansichten anzeigen; Docs-Link in die linke Navigation verschieben. #### Plugins - Plugins: hinzufügen HTTP-Hooks von Plugins + Loader-Updates zur Unterstützung von Channel-Plugins. (#854) — thanks @longmaba. - Plugins: onboarding Plugin-Installations-Flow hinzufügen. (#854) — thanks @longmaba. - Channels: Matrix-Plugin (extern) hinzufügen mit Docs + Onboarding-Hooks. - Voice Call: Plivo-Anbieter hinzufügen (kein SDK-Abhängigkeit). (#846) — thanks @vrknetha. #### Security - Security: Prüfung von `clawdbot security audit` erweitern und Richtlinie in `SECURITY.md` veröffentlichen. - Security: erweitern `clawdbot security audit --fix`, um sensiblere Pfade stärker abzusichern. - Security: detect-secrets CI-Scan und Baseline-Anleitungen hinzufügen. (#227) — thanks @Hyaxia. #### Onboarding / Daemon - Onboarding: Sicherheits-Checkpunkt-Abfrage hinzufügen (Docs-Link + Sandboxing-Hinweis); für `--non-interactive` `--accept-risk` erforderlich. - Daemon: unterstütze profilabhängige Servicenamen für Multi-Gateway-Setups. (#671) — thanks @bjesuiter. #### Auth / Usage / Config - Usage: MiniMax-Codierungsplan-Nutzungs-Tracking hinzufügen. - Auth: Claude Code CLI Auth-Optionen kennzeichnen. (#915) — thanks @SeanZoR. - Agents: optionale Auth-Profile-Kopie-Eingabe bei `agents add` hinzufügen und Auth-Fehlermeldungen verbessern. - Auth: dynamische Template-Variablen zu `messages.responsePrefix` hinzufügen. (#928) — thanks @sebslight. - Config: hinzufügen `channels.<provider>.configWrites` Gatekeeper für channel-initiierte Config-Schreibvorgänge; Slack-Channel-IDs migrieren. #### Channels - Telegram: Aktion zum Löschen von Nachrichten im Nachricht-Tool hinzufügen. (#903) — thanks @sleontenko. - WhatsApp: `channels.whatsapp.sendReadReceipts` hinzufügen, um automatische Lesebestätigungen zu deaktivieren. (#882) — thanks @chrisrodz. #### Docs - Docs: Klarstellung zu pro-Agent Auth-Stores, sandboxed Skill-Binaries und elevierten Semantiken. - Docs: FAQ-Einträge zu fehlendem Provider-Auth nach dem Hinzufügen von Agents und Gemini Thinking Signatur-Fehlern. - Docs: Erweiterte Gateway-Sicherheits-Härtungshinweise und Incident-Response-Checkliste. - Docs: DM-Historie-Limits für Channel-DMs dokumentieren. (#883) — thanks @pkrmf. - Docs: Claude Code CLI-Namenskonventionen in allen Docs und Prompts standardisieren. (Fortsetzung zu #915) - Docs: pro-Befehl CLI-Dokumentationsseiten hinzufügen und von `clawdbot <command> --help` verlinken. - Docs: Multi-Gateway-Guide hinzufügen (Sidebar + Navigation). ### Fixes #### Gateway / Daemon / Sessions - Gateway: Terminationssignale an neu gestartete CLI-Unterprozesse weiterleiten, um verwaiste systemd-Runs zu vermeiden. (#933) — thanks @roshanasingh4. - Gateway/UI: Sitzungs-Defaults im Hello-Snapshot liefern, sodass die Control-UI Haupt-Sitzungsschlüssel canonicalisiert (kein bloßes `main`-Alias). - Agents: Denk- und Final-Tag-Stripping innerhalb von Markdown-Code-Spans überspringen. (#939) — thanks @ngutman. - Browser: Tests für Snapshot-Labels/efficient Query-Params und gelabelte Bildantworten hinzufügen. - Browser: Rollen-Snapshot-Refs pro CDP-Target persistieren, sodass `snapshot` → `act` Klicks auch dann funktionieren, wenn Playwright eine andere Page-Instanz zurückgibt. - macOS: sicherstellen, dass das Launchd-Protokollverzeichnis existiert (Test-Override). (#909) — thanks @roshanasingh4. - macOS: ConnectionsStore-Konfig formatieren, um SwiftFormat-Lint zu erfüllen. (#852) — thanks @mneves75. - Packaging: `pnpm build` bei `prepack` ausführen, damit npm Publikationen frische `dist/`-Ausgaben enthalten. - Telegram: native Befehls-Command mit Unterstrichen registrieren, um `BOT_COMMAND_INVALID` zu vermeiden (#929, fixes #901) — thanks @grp06. - Google: unsignierte Thinking-Blöcke vor dem Senden verringern, um fehlende Signaturfehler zu vermeiden. - Agents: Benutzerzeitzone und 24-Stunden-Zeit explizit im Systemprompt festlegen. (#859) — thanks @CashWilliams. - Agents: Text des downgrade Tools entfernen, Adjacent-Replies nicht verschlingen und Thinking-Tag-Lecks filtern. (#905) — thanks @erikpr1994. - Agents: Tool-Call-IDs für OpenAI/OpenRouter begrenzen, um Anforderungsablehnungen zu vermeiden. (#875) — thanks @j1philli. - Doctor: vermeiden, WhatsApp-Konfiguration erneut hinzuzufügen, wenn nur Legacy-Ack-Reaktionen gesetzt sind. (#927, fixes #900) — thanks @grp06. - Agents: Tupel-Items-Schemas für Gemini-Tool-Aufrufe säubern. (#926, fixes #746) — thanks @grp06. - Agents: Sub-Agent-Announce-Status aus Laufzeitergebnissen stabilisieren und Result/Notes normalisieren. (#835) — thanks @roshanasingh4. - Apps: canonical main Session-Keys aus Gateway-Defaults MAC-/iOS-/Android-weite verwenden, um bloße `main`-Sitzungen zu vermeiden. - Embedded runner: rohe API-Fehlerpayloads in Antworten unterdrücken. (#924) — thanks @grp06. - Auth: Claude Code CLI-Profilmodus auf OAuth normalisieren und Config automatisch migrieren. (#855) — thanks @sebslight. - Daemon: persistierte Launchd-Disabled-State vor Bootstrap löschen (fixes `daemon install` nach Deinstallation). (#849) — thanks @ndraiman. - Sessions: tiefe Klone (`structuredClone`) zurückgeben, damit zwischengespeicherte Sitzungseinträge nicht mutiert werden können. (#934) — thanks @ronak-guliani. - Heartbeat: `updatedAt` monoton halten beim Restore von Heartbeat-Sessions. (#934) — thanks @ronak-guliani. - Agent: Ausführungskontext nach CLI-Lauf löschen (`clearAgentRunContext`), um entlaufende Kontexte zu vermeiden. (#934) — thanks @ronak-guliani. - Gateway/Dev: sicherstellen, dass `pnpm gateway:dev` immer das Dev-Profil-Config + State verwendet (`~/.clawdbot-dev`). #### CLI / Onboarding - Onboarding: Web-Suche-Setup am Ende anzeigen (nicht am Anfang). - Onboarding: Anzeige von Daemon-Installations-/Neu-starting-Fortschritt (kein “Blinken des Cursors”) und Ausgabe-Formatierung der Daemon-Installation korrigieren. - Health: Farben für “nicht konfiguriert” Provider-Zeilen zum leichteren Scannen. #### Control UI / TUI - Control UI: Cron-Lauf-Histor
Features
13. Januar 2026
### Highlights - **BREAKING:** Umbenennung von Chat-“Providers” (Slack/Telegram/WhatsApp/…) zu **Channels** über CLI/RPC/Config; Legacy-Config-Schlüssel migrieren beim Laden automatisch (und werden beim Schreiben wieder als `channels.*` gespeichert). - Memory: Speicher für Agenten-Gedächtnisse um eine vektorbasierte Suche (Markdown-only) mit SQLite-Index, Chunking, lazy Sync + Dateiwache, und per-Agentaktivierung/-fallback. - Plugins: vollständige Parität des Voice-Call-Plugins wiederherstellen (Telnyx/Twilio, Streaming,Inbound-Richtlinien, Tools/CLI). - Models: synthetischen Provider hinzufügen plus Moonshot Kimi K2 0905 + turbo/Thinking-Varianten (mit Docs). (#811) — danke @siraht; (#818) — danke @mickahouan. - Cron: One-Shot-Schedules akzeptieren ISO-Timestamps (UTC) mit optionalem Delete-after-Run; Cron-Jobs können auf einen bestimmten Agenten abzielen (CLI + macOS/Control UI). - Agents: Kompaktions-Modus-Konfig hinzufügen mit optionaler Sicherheitszusammenfassung und Per-Agent-Modell-Fallbacks. (#700) — danke @thewilloftheshadow; (#583) — danke @mitschabaude-bot. ### New & Improved - Memory: benutzerdefinierte OpenAI-kompatible Embedding-Endpunkte hinzufügen; OpenAI/local `node-llama-cpp` Embeddings mit per-Agent-Overrides und Provider-Metadaten in tools/CLI unterstützen. (#819) — danke @mukhtharcm. - Memory: neuer `clawdbot memory` CLI plus Tools `memory_search`/`memory_get` mit Snippets + Zeilenbereichen; Index gespeichert unter `~/.clawdbot/memory/{agentId}.sqlite` mit standardmäßig aktivem Watch. - Agents: Gedächtnisabruf-Richtlinien verstärken; Workspace-Bootstrap-Trunkierung konfigurierbar machen (Standard 20k) mit Warnungen; Standard-Sub-Agent-Modellkonfiguration hinzufügen. - Tools/Sandbox: Tool-Profile + Gruppen-Abkürzungen hinzufügen; Unterstützung von Tool-Policy-Gruppen in `tools.sandbox.tools`; Legacy-`memory`-Abkürzung entfernen; Docker-Bind-Mounts über `docker.binds` zulassen. (#790) — danke @akonyer. - Tools: Browser-`scrollintoview`-Aktion hinzufügen; Aliase für Claude/Gemini Tool-Parameter zulassen; Thinking-Modus `xhigh` für GPT-5.2/Codex mit sicherem Downgrade zulassen. (#793) — danke @hsrvc; (#444) — danke @grp06. - Gateway/CLI: Tailscale Binary Discovery, benutzerdefinierter Bind-Modus, und Probe-Auth-Retry hinzufügen; `clawdbot dashboard`-Auto-Open-Flow hinzufügen; Standard-native Slash-Befehle auf `"auto"` mit provider-spezifischen Overrides. (#740) — danke @jeffersonwarrior. - Auth/Onboarding: Chutes OAuth (PKCE + Refresh + Onboarding-Choice) hinzufügen; API-Key-Eingaben normalisieren; Default TUI-Onboarding auf `deliver: false`. (#726) — danke @FrieSei; (#791) — danke @roshanasingh4. - Providers: `discord.allowBots` hinzufügen; legacy MiniMax M2 aus Standard-Katalogen trimmen; MiniMax Vision zum Coding Plan VLM-Endpunkt routen (nimmt auch Inputs wie `@/path/to/file.png` an). (#802) — danke @zknicker. - Gateway: Tailscale Serve Identity-Header zulassen, um Token-Auth zu befriedigen; Control-UI-Assets neu aufbauen, wenn das Protokoll-Schema neuer ist. (#823) — danke @roshanasingh4; (#786) — danke @meaningfool. - Heartbeat: Standard `ackMaxChars` auf 300 setzen, damit kurze `HEARTBEAT_OK`-Antworten intern bleiben. ### Installer - Install: Führe nach Git-Installationen/-Updates `clawdbot doctor --non-interactive` aus und benachrichtige Daemon-Neustarts, wenn erkannt. ### Fixes - Doctor: Warnungen bei pnpm-Workspaces-Mismatches, fehlenden Control-UI-Assets und fehlenden tsx-Binärdateien; UI-Neubaukosten anbieten. - Models/Providers: Behandlung von Credential-Validierungsfehlern als Auth-Fehler zur Triggerung von Fallbacks; Normalisierung von `${ENV_VAR}`-apiKey-Werten und Auto-Fill fehlender Provider-Schlüssel; explizite GitHub Copilot-Anbieter-Konfig + Agent-DIR-Auth-Profile beibehalten. (#822) — danke @sebslight; (#705) — danke @TAGOOZ. - Auth: Ungültige Auth-Profile aus der Reihenfolge entfernen, damit Umgebungsvariablen weiterhin für Provider wie MiniMax nutzbar bleiben. - Gemini: Gemini 3-IDs zu Preview-Varianten normalisieren; Gemini CLI-Tool-Aufrufs-/Antwort-IDs entfernen; fehlende `thought_signature` downgraden; Claude `msg_*`-Thought-Signature-Felder entfernen, um Base64-Dekodierungsfehler zu vermeiden. (#795) — danke @thewilloftheshadow; (#783) — danke @ananth-vardhan-cn; (#793) — danke @hsrvc; (#805) — danke @marcmarg. - Agents: Auto-Wiederherstellung aus Kompaktions-Kontext-Overflows durch Zurücksetzen der Sitzung und erneuten Versuch; Overflow-Details aus eingebetteten Durchläufen an Weitergeber weiterreichen. - MiniMax: Fehlformatierte Tool-Aufruf-XML entfernen; `MiniMax-VL-01` im impliziten Provider für Image-Paarung einschließen. (#809) — danke @latitudeki5223. - Onboarding/Auth: Berücksichtigung von `CLAWDBOT_AGENT_DIR` / `PI_CODING_AGENT_DIR` beim Schreiben von Auth-Profilen (MiniMax). (#829) — danke @roshanasingh4. - Anthropic: `overloaded_error` mit freundlicher Meldung handeln und Failover-Klassifikation; zusammenführen aufeinanderfolgender Benutzerspuren (neueste Metadaten bewahren) vor Validierung, um falsche Rollen-Fehler zu vermeiden. (#832) — danke @danielz1z; (#804) — danke @ThomsenDrake. - Messaging: Kontext-Isolation für Nachrichten-Tool-Sends erzwingen; Tipp-Indikatoren während der Tool-Ausführung aktiv halten. (#793) — danke @hsrvc; (#450, #447) — danke @thewilloftheshadow. - Auto-Reply: `/status`-Whitelist-Verhalten, Begründungs-Tag-Verfolgung bei Fallback, und System-Ereignis-Verarbeitung für erhöhte/Begründungs-Toggle. (#810) — danke @mcinteerj. - System-Ereignisse: Lokale Zeitstempel einbeziehen, wenn Ereignisse in Prompts injiziert werden. (#245) — danke @thewilloftheshadow. - Auto-Reply: Unklare `/model`-Treffe vermeiden; Streaming-Block-Antwort-Mediendateien korrigieren; Heartbeat-Antworten >300 Zeichen beibehalten statt Abbruch. - Discord/Slack: Zentralisieren der Reply-Thread-Planung; AutoThread-Routing korrigieren + pro-Channel AutoThread hinzufügen; doppelte Listener vermeiden; Behalte Begründungs-Format-Italics; Kanal-Eltern über Nachrichten-Tool löschen zulassen. (#800, #807) — danke @davidguttman; (#744) — danke @thewilloftheshadow. - Telegram: Foren-Topic-Thread-IDs beibehalten, Polling-Offsets persistieren, Bindings im Webhook-Modus respektieren und Tipp-Indikator in General-Themen anzeigen. (#727, #739) — danke @thewilloftheshadow; (#821) — danke @gumadeiras; (#779) — danke @azade-c. - Slack: Slash-Befehle mit oder ohne führendem `/` für benutzerdefinierte Befehls-Konfigurationen akzeptieren. (#798) — danke @thewilloftheshadow. - Cron: Fehlende Jobs korrekt persistieren; Alias `jobId` für Update/Run/Remove-Param verwenden. (#205, #252) — danke @thewilloftheshadow. - Gateway/CLI: Berücksichtigen von `CLAWDBOT_LAUNCHD_LABEL` / `CLAWDBOT_SYSTEMD_UNIT` Overrides; `agents.list` respektiert explizite Config; weniger noisy Loopback-WS-Logs während Tests; führe `clawdbot doctor --non-interactive` bei Updates aus. (#781) — danke @ronyrus. - Onboarding/Control UI: Ungültige Configs ablehnen (erst Doctor ausführen); Windows-Browser-URLs für OAuth quoten; Chat-Scroll
Features
12. Januar 2026
### Fixes - CLI: vermeiden Top-Level-Await-Warnungen im Entry-Point bei frischen Installationen. - CLI: zeige einen Commit-Hash im Banner bei npm-Installationen an (package.json gitHead Fallback).
Features
12. Januar 2026
### Fixes - Installer: ensure the CLI entrypoint is executable after npm installs. - Packaging: include `dist/plugins/` in the npm package to avoid missing module errors.
Features
12. Januar 2026
## Fixes - Installer: `patches/` in das npm-Paket aufnehmen, damit das Patchen nach der Installation bei npm/bun-Installationen funktioniert.
Features
12. Januar 2026
### Highlights - Plugins sind jetzt erstklassig: Loader + CLI-Management, plus das neue Voice Call Plugin. - Config: modulares `$include`-Support für geteilte Config-Dateien. (#731) — thanks @pasogott. - Agents/Pi: Reserviere Kompressions-Spielraum, damit Pre-Compaction-Memory-Schreibungen vor der Auto-Compaction laufen können. - Agents: automatische Pre-Compaction-Memory-Flush-Umstellung, um durable memories vor der Kompaktion zu speichern. ### Changes - Deps: aktualisiere pi-agent-core/pi-ai/pi-coding-agent/pi-tui und aktualisiere den pi-ai Patch. - Dev: @types/node erhöhen. - macOS: Wizard-Debug-CLI hinzufügen und Wizard-Parsing-Hilfen teilen. - CLI/Onboarding: MiniMax-Authetik-Auswahl auf eine einzige M2.1-Option vereinfachen. - CLI: Konfigurationsabschnittsauswahl läuft jetzt in einer Schleife bis Continue. - Docs: MiniMax vs MiniMax Lightning (schneller vs Kosten) erläutern und LM Studio-Beispiel wiederherstellen. - Docs: Cerebras GLM 4.6/4.7 Config-Beispiel (OpenAI-kompatibler Endpoint) hinzufügen. - Onboarding/CLI: Modell-/Auth-Auswahl pro Anbieter gruppieren und Z.AI als GLM 4.7 kennzeichnen. - Onboarding/Docs: Moonshot AI (Kimi K2) Auth-Auswahl + Config-Beispiel hinzufügen. - CLI/Onboarding: Aufforderung zur Wiederverwendung erkannter API-Keys für Moonshot/MiniMax/Z.AI/Gemini/Anthropic/OpenCode. - CLI/Onboarding: MiniMax an den Anfang der Anbieterliste verschieben. - CLI/Onboarding: MiniMax M2.1 Lightning Auth-Auswahl hinzufügen. - CLI/Onboarding: Schlüsselvorschauen anzeigen, wenn erkannte API-Keys wiederverwendet werden. - Auto-Reply: kompakter `/model`-Picker (Modelle + verfügbare Provider) hinzufügen und Provider-Endpunkte in `/model status` anzeigen. - Control UI: Config-Tab mit Modell-Presets (MiniMax M2.1, GLM 4.7, Kimi) für One-Click-Setup. - Plugins: Erweiterungslader (tools/RPC/CLI/services), Discover-Pfade, Config-Schema + Control UI Labels (uiHints). - Plugins: `clawdbot plugins install` (Path/tgz/npm) hinzufügen, sowie UX für `list|info|enable|disable|doctor`. - Plugins: Voice-Call-Plugin jetzt real (Twilio/Log), start/status RPC/CLI/Tool + Tests hinzufügen. - Docs: Plugins-Dokumentation + Querverweise von Tools/Skills/Gateway-Config. - Docs: Speicherlöschverhalten + schreibbare Arbeitsbereich-Anforderung in Memory/Session/FAQ klären. - Docs: anfängerfreundlichen Plugin-Quickstart hinzufügen + Voice-Call-Plugin-Dokumentation erweitern. - Tests: Docker Plugin-Loader + tgz-Install-Smoketest hinzufügen. - Tests: Docker Plugin E2E erweitern, um Installationen aus lokalen Ordnern (`plugins.load.paths`) und `file:` npm-Spezifikationen abzudecken. - Tests: Abdeckung für Pre-Compaction-Memory-Flush-Einstellungen (einschließlich readonly/CLI-Skip) hinzufügen. - Tests: Modernisierung der Live-Model-Smokeselektion für aktuelle Releases und Durchsetzung von Tools/Images/Thinking-High-Abdeckung. (#769) — thanks @steipete. - Agents/Tools: `apply_patch`-Tool für Multi-Datei-Bearbeitungen (experimentell; gated by tools.exec.applyPatch; OpenAI-only). - Agents/Tools: Bash-Tool in Exec umbenennen (Konfig-Alias beibehalten). (#748) — thanks @myfunc. - Agents: Pre-Compaction-Memory-Flush-Konfiguration (`agents.defaults.compaction.*`) mit soft Threshold + System Prompt hinzufügen. - Config: `$include`-Direktiv für modulare Config-Dateien hinzufügen. (#731) — thanks @pasogott. - Build: Mindestalter für pnpm-Releases auf 2880 Minuten (2 Tage) setzen. (#718) — thanks @dan-dr. - macOS: Aufforderung zur Installation der globalen `clawdbot` CLI, wenn sie im Local-Modus fehlt; Installation über `clawd.bot/install-cli.sh` (kein Onboarding) und externes Launchd/CLI statt eingebettetem Gateway-Runtime verwenden. - Docs: gog Kalender-Ereignis-Farb-IDs aus `gog calendar colors` hinzufügen. (#715) — thanks @mjrussell. - Cron/CLI: `--model`-Flag zu Cron Add/Edit-Befehlen hinzufügen. (#711) — thanks @mjrussell. - Cron/CLI: Modell-Overrides bei Cron-Edits trimmen und Haupt-Sitzungsleitfaden dokumentieren. (#711) — thanks @mjrussell. - Skills: Bündelung von `skill-creator` zur Anleitung beim Erstellen und Verpacken von Skills. - Providers: pro-DM History-Overridess (`dmHistoryLimit`) mit provider-spezifischer Config hinzufügen. (#728) — thanks @pkrmf. - Discord: Kanal/Kategorie-Verwaltungsaktionen im Message-Tool freigeben. (#730) — thanks @NicholasSpisak. - Docs: README “macOS app” Abschnitt in “Apps” umbenennen. (#733) — thanks @AbhisekBasu1. - Gateway: `client.id` in WebSocket-Connect-Paramen verlangen; `client.instanceId` für Presence-Deduplikation verwenden; Docs/Tests aktualisieren. - macOS: Attach-only Gateway-Einstellung entfernen; Local-Modus verwaltet nun Launchd immer noch, falls ein Gateway vorhanden ist. ### Installer - Postinstall: `git apply` durch eingebauten JS-Patcher ersetzen (funktioniert mit npm/pnpm/bun; kein Git-Dependency) плюс Regressionstests. - Postinstall: PNPM-Patch-Fallback überspringen, wenn der neue Patcher aktiv ist. - Installer-Tests: Root+Non-Root Docker Smoke-Tests hinzufügen, CI-Workflow zum Abrufen von clawd.bot-Skripten und Ausführen von Install-Sh/CLI mit übersprungenem Onboarding. - Installer-UX: Unterstützung `CLAWDBOT_NO_ONBOARD=1` für nicht-interaktive Installationen; npm-Prefix unter Linux korrigieren und Git automatisch installieren. - Installer-UX: `install.sh --help` mit Flags/Env und Git-Installationshinweis hinzufügen. - Installer-UX: `--install-method git|npm` hinzufügen und Quell-Checkouts automatisch erkennen (Aufforderung zum Update des Git-Checkouts vs Migration zu npm). ### Fixes - Control UI: Navigation in eine einzige horizontale Scroll-Reihe auf Tablet/Mobile flatten (und immer Collapsed Group Items anzeigen). (#771) — thanks @carlulsoe. - macOS: Starte lokale Gateway-Dienste und warte, bevor der Onboarding-Wizard beginnt. - macOS: Onboarding-Wizard beim Schließen abbrechen, wiederherstellen, falls das Gateway die Session trennt, und Timeouts bei hängenden Gateway-Verbindungen. - macOS: Wizard Debug-CLI zeigt nun FehlStatus statt als abgeschlossen zu beenden. - Models/Onboarding: MiniMax (minimax.io) standardmäßig über Anthropic-kompatiblen `/anthropic`-Endpoint konfigurieren (Beibehaltung von `minimax-api` als Legacy-Alias). - Agents/Browser: Playwright AI-Snapshots für Tool-Aufrufe begrenzen (maxChars); CLI-Snapshots bleiben vollständig. (#763) — thanks @thesash. - Models: Gemini 3 Pro/Flash IDs auf Preview-Namen für Live-Model- Lookups normalisieren. (#769) — thanks @steipete. - CLI: GuardCancel-Typisierung für Configure-Prompts korrigieren. (#769) — thanks @steipete. - Providers: Standard-Gruppenpolitik auf Across-Provider-Allowlist setzen und bei offenen Gruppen in Doctor warnen. - MS Teams: Gruppenpolitik/GroupAllowFrom-Gating für Gruppen-Chats hinzufügen und warnen, wenn Gruppen offen sind. - Providers: Tool-Call/Result-IDs aus Gemini CLI-Payloads entfernen, um API-400s zu vermeiden. (#756) - Gateway/WebChat: Handshake-Validierungsdetails im WebSocket-Close-Reason speichern für einfacheres Debugging; Close-Codes beibehalten. - Gateway/Auth: Ungültige Connect-Antworten vor dem Schließen des Handshakes senden; ungültiger-Connect-Auth-Test stabilisieren. - Gateway: Gateway-Listener-Erkennung verschärfen. - Control UI: Onboarding-Chat ausblenden, wenn konfiguriert, und mobile Chat-Sidebar-Overlay absichern. - Auth: Codex Keychain Credentials lesen und die Lookup plattform-aware machen. - macOS/Release: Verteilungsartefakte in Relay-Builds vermeiden und Appcasts aus zip-only-Quellen generieren. - Doctor: Plugin-Diagnostik im Report
Features
11. Januar 2026
### Highlights - CLI: `clawdbot status` jetzt tabelliert + zeigt OS/Update/Gateway/Daemon/Agents/Sessions; `status --all` fügt einen vollständigen read-only Debug-Bericht hinzu ( Tabellen, Log-Tails, Tailscale-Zusammenfassung und Scan-Fortschritt über OSC-9 + Spinner). - CLI Backends: Kodex-CLI-Fallback mit Resume-Unterstützung (Textausgabe) und JSONL-Parsing für neue Runs, plus eine Live CLI-Resume-Probe. - CLI: füge `clawdbot update` (Safe-ish Git-Checkout-Update) + `--update` Kurzform hinzu. (#673) — danke an @fm1randa. - Gateway: füge OpenAI-kompatiblen HTTP-Endpunkt `/v1/chat/completions` hinzu (Auth, SSE-Streaming, pro-Agent-Routing). (#680) — danke an @steipete. ### Changes - Onboarding/Models: erstklassige Z.AI (GLM) Auth-Auswahl hinzufügen (`zai-api-key`) + `--zai-api-key` Flag. - CLI/Onboarding: OpenRouter API-Key-Auth-Option in configure/onboard hinzufügen. (#703) — danke an @mteam88. - Agents: menschliche Verzögerungs-Tempo zwischen Block-Antworten hinzufügen (Modi: aus/natürlich/kundenspezifisch, pro-Agent konfigurierbar). (#446) — danke an @tony-freedomology. - Agents/Browser: `browser.target` (Sandbox/Host/Custom) mit Sandbox-Host-Control-Gating über `agents.defaults.sandbox.browser.allowHostControl`, Whitelists für benutzerdefinierte Kontroll-URLs/Hosts/Ports, und Erweiterung der Browser-Tool-Dokumentation (Remote-Control, Profiles, Internals). - Onboarding/Models: katalog-gestützter Default-Modell-Auswahl-Assistent beim Onboarding + Configure. (#611) — danke an @jonasjancarik. - Agents/OpenCode Zen: Fallback-Modelle + Defaults aktualisieren, Legacy-Alias-Mappings beibehalten. (#669) — danke an @magimetal. - Providers: gruppenübergreifende History-Kontext-Wrapper über Providers hinweg vereinheitlichen mit pro-Provider/pro-Account `historyLimit` Overrides (Fallback zu `messages.groupChat.historyLimit`). Setze `0` zum Deaktivieren. (#672) — danke an @steipete. - Gateway/Heartbeat: optional Heartbeat-Ausgabe `Reasoning:` liefern (`agents.defaults.heartbeat.includeReasoning`). (#690) - Docker: optionale Home-Volume + zusätzliche Bind-Mounts in `docker-setup.sh` zulassen. (#679) — danke an @gabriel-trigo. ### Fixes - CLI/Status: Tabellen auf volle Terminalbreite erweitern; Klarstellung bei Provider-Setup vs Runtime-Warnungen; reichhaltigere Provider-Details; Token-Vorschau in `status` bei Redaction in `status --all`; Troubleshooting-Link-Footer hinzufügen; Log-Tails kopierbar behalten; Gateway-Auth bei Erreichbarkeit anzeigen; Provider-Laufzeitfehler (Signal/iMessage/Slack) surfaces; harte Verbesserung der `tailscale status --json`-Parserung; `status --all` Scan-Fortschritt determiniert gestalten; Footer durch eine 3-zeilige “Nächste Schritte”-Empfehlung ersetzen (teilen/debug/probe). - CLI/Gateway: klarstellen, dass `clawdbot gateway status` RPC-Gesundheit (Connect + RPC) meldet und RPC-Fehler separat von Verbindungsfehlern zeigt. - CLI/Update: Fortschritt-Spinner an stdout TTY binden und Label des Clean-Check-Schritts angleichen. (#701) — danke an @bjesuiter. - Telegram: `/whoami` + `/id` Befehle hinzufügen, um Absender-ID für Allowlists offenzulegen; `@username` und prefixed IDs in `allowFrom`-Prompts zulassen (mit Stabilitäts-Warnung). - Control UI: verhindern, dass automatisch `telegram.groups["*"]` geschrieben wird; Warnung/Bestätigung vor Aktivierung von Wildcard-Gruppen. - WhatsApp: Ack-Reaktionen nur für bearbeitete Nachrichten senden und Legacy `messages.ackReaction` ignorieren (Arzt-Kopien in `whatsapp.ackReaction`). (#629) — danke an @pasogott. - Sandbox/Skills: Skills in Sandbox-Arbeitsbereiche duplizieren (Read-Only-Mounts), damit SKILL.md zugänglich bleibt. - Terminal/Table: ANSI-sichere Wraps zur Vermeidung von Tabellen-Clipping/Color-Verlust; Regression-Abdeckung hinzufügen. - Docker: optionale apt-Pakete während Build zulassen und Build-Arg dokumentieren. (#697) — danke an @gabriel-trigo. - Gateway/Heartbeat: Reasoning auch liefern, wenn die Haupt-Heartbeat-Antwort `HEARTBEAT_OK` ist. (#694) — danke an @antons. - macOS: unsigned launchd-Overrides bei signierten Neustarts löschen und beim Attach-Modus/Deaktivierung-Marker Doctor-mäßig warnen. (#695) — danke an @jeffersonwarrior. - Agents: Ein-Writers-Sessions-Locks erzwingen und orphan Tool-Ergebnisse droppen, um Fehler bei Tool-Call IDs zu verhindern (MiniMax/Anthropic-kompatible APIs). - Docs: `clawdbot status` als ersten Diagnostik-Schritt festlegen, Verhalten von `status --deep` klären und `/whoami` + `/id` dokumentieren. - Docs/Testing: Live-Tools+Image-Probes klären und auflisten, welche `provider/model`-IDs testbar sind. - Tests/Live: Gateway-Bash+Read-Probes robust gegen Provider-Formatierungen machen, während reale Tool-Aufrufe weiter validiert werden. - WhatsApp: Erkennung von @lid Erwähnungen in Gruppen via authDir-Reverse-Mapping + Auflösung der eigenen JID E.164 für Filterung von Erwähnungen. (#692) — danke an @peschee. - Gateway/Auth: Standardmäßig Token-Auth auf Loopback während Onboarding, Doctor-Token-Generierungs-Flow hinzufügen, Audio-Transkriptions-Konfig zu Whisper-only straffen. - Providers: eingehende Nachrichten über Provider hinweg deduplizieren, um doppelte LLM-Durchläufe bei erneuter Lieferung/Neuverbindung zu vermeiden. (#689) — danke an @adam91holt. - Agents: `<thought>`/`<antthinking>`-Tags aus versteckten Denkprozessen entfernen und Tag-Varianten in Tests abdecken. (#688) — danke an @theglove44. - macOS: Modell-Auswahl-Selektoren als normalisierte Provider/Model-IDs speichern und manuelle Einträge angleichen. (#683) — danke an @benithors. - Agents: Erkenne „usage limit“-Fehler als Rate Limits für Failover. (#687) — danke an @evalexpr. - CLI: Erfolgsnachrichten vermeiden, wenn Daemon-Neustart übersprungen wird. (#685) — danke an @carlulsoe. - Commands: Standardmäßig `/config` + `/debug` deaktivieren; via `commands.config`/`commands.debug` absichern und aus native Registration/Hilfe-Ausgabe ausblenden. - Agents/System: Klarstellen, dass Sub-Agents sandboxed bleiben und keinen erhöhten Host-Zugriff verwenden können. - Gateway: OpenAI-kompatiblen `/v1/chat/completions` Endpunkt standardmäßig deaktivieren; über `gateway.http.endpoints.chatCompletions.enabled=true` aktivieren. - macOS: Bridge-Tunnels stabilisieren, Invoke-Sender bei Disconnect schützen, stdout/stderr abfließen lassen, um Deadlocks zu vermeiden. (#676) — danke an @ngutman. - Agents/System: Klarstellen, dass Sandbox-Runtime im System-Prompt vorhanden ist und erhöhte Verfügbarkeit bei Sandboxing anzeigen. - Auto-reply: Bevorzugen von `RawBody` zur Parsing von Commands/Direktiven (WhatsApp + Discord) und verhindern, dass Fallback-Läufe gleichzeitige Session-Updates überschreiben. (#643) — danke an @mcinteerj. - WhatsApp: Gruppen-Reaktionen durch Beibehaltung von Nachrichten-IDs und Sender-JIDs in der Verlaufshistorie korrigieren; Teilnehmer-Telefonnummern zu JIDs in ausgehenden Reaktionen normalisieren. (#640) — danke an @mcinteerj. - WhatsApp: Gruppen-Teilnehmer-IDs dem Modell zugänglich machen, damit Reaktionen den richtigen Sender adressieren können. - Cron: `wakeMode: "now"` wartet auf Abschluss des Heartbeats (undRetry, wenn die Hauptspur beschäftigt ist). (#666) — danke an @roshanasingh4. - Agents/OpenAI: Fehlerbehebung bei Responses-Tool-nur → Folge-Turn-Behandlung (vermeiden eigenständiger `reasoning`-Items, die 400 “required following item” auslösen) und Reasoning-Items in Responses/Codex-Responses-Verlauf für tool-call-only Turns erneut abspielen. - Sandbox: füge `clawdbot sandbox explain
Features
10. Januar 2026
### Highlights - Microsoft Teams provider: polling, attachments, outbound CLI send, per-channel policy. - Models/Auth expansion: OpenCode Zen + MiniMax API onboarding; token auth profiles + auth order; OAuth health in doctor/status. - CLI/Gateway UX: message subcommands, gateway discover/status/SSH, /config + /debug, sandbox CLI. - Provider reliability sweep: WhatsApp contact cards/targets, Telegram audio-as-voice + streaming, Signal reactions, Slack threading, Discord stability. - Auto-reply + status: block-streaming controls, reasoning handling, usage/cost reporting. - Control UI/TUI: queued messages, session links, reasoning view, mobile polish, logs UX. ### Breaking - CLI: `clawdbot message` now subcommands (`message send|poll|...`) and requires `--provider` unless only one provider configured. - Commands/Tools: `/restart` und gateway restart tool disabled by default; enable with `commands.restart=true`. ### New Features and Changes - Models/Auth: OpenCode Zen onboarding (#623) — thanks @magimetal; MiniMax Anthropic-compatible API + hosted onboarding (#590, #495) — thanks @mneves75, @tobiasbischoff. - Models/Auth: setup-token + token auth profiles; `clawdbot models auth order {get,set,clear}`; per-agent auth candidates in `/model status`; OAuth expiry checks in doctor/status. - Agent/System: claude-cli runner; `session_status` tool (und sandbox allowed); adaptive context pruning default; system prompt messaging guidance + no auto self-update; eligible skills list injection; sub-agent context trimmed. - Commands: `/commands` list; `/models` alias; `/usage` alias; `/debug` runtime overrides + effective config view; `/config` chat updates + `/config get`; `config --section`. - CLI/Gateway: unified message tool + message subcommands; gateway discover (local + wide-area DNS-SD) with JSON/timeout; gateway status human-readable + JSON + SSH loopback; wide-area records include gatewayPort/sshPort/cliPath + tailnet DNS fallback. - CLI UX: logs output modes (pretty/plain/JSONL) + colorized health/daemon output; global `--no-color`; lobster palette in onboarding/config. - Dev ergonomics: gateway `--dev/--reset` + dev profile auto-config; C-3PO dev templates; dev gateway/TUI helper scripts. - Sandbox/Workspace: sandbox list/recreate commands; sync skills into sandbox workspace; sandbox browser auto-start. - Config/Onboarding: inline env vars; OpenAI API key flow to shared `~/.clawdbot/.env`; Opus 4.5 default prompt for Anthropic auth; QuickStart auto-install gateway (Node-only) + provider picker tweaks + skip-systemd flags; TUI bootstrap prompt (`tui --message`); remove Bun runtime choice. - Providers: Microsoft Teams provider (polling, attachments, outbound sends, requireMention, config reload/DM policy). (#404) — thanks @onutc - Providers: WhatsApp broadcast groups for multi-agent replies (#547) — thanks @pasogott; inbound media size cap configurable (#505) — thanks @koala73; identity-based message prefixes (#578) — thanks @p6l-richard. - Providers: Telegram inline keyboard buttons + callback payload routing (#491) — thanks @azade-c; cron topic delivery targets (#474/#478) — thanks @mitschabaude-bot, @nachoiacovino; `[[audio_as_voice]]` tag support (#490) — thanks @jarvis-medmatic. - Providers: Signal reactions + notifications with allowlist support. - Status/Usage: /status cost reporting + `/cost` lines; auth profile snippet; provider usage windows. - Control UI: mobile responsiveness (#558) — thanks @carlulsoe; queued messages + Enter-to-send (#527) — thanks @YuriNachos; session links (#471) — thanks @HazAT; reasoning view; skill install feedback (#445) — thanks @pkrmf; chat layout refresh (#475) — thanks @rahthakor; docs link + new session button; drop explicit `ui:install`. - TUI: agent picker + agents list RPC; improved status line. - Doctor/Daemon: audit/repair flows, permissions checks, supervisor config audits; provider status probes + warnings for Discord intents and Telegram privacy; last activity timestamps; gateway restart guidance. - Docs: Hetzner Docker VPS guide + cross-links (#556/#592) — thanks @Iamadig; Ansible guide (#545) — thanks @pasogott; provider troubleshooting index; hook parameter expansion (#532) — thanks @mcinteerj; model allowlist notes; OAuth deep dive; showcase refresh. - Apps/Branding: refreshed iOS/Android/macOS icons (#521) — thanks @fishfisher. ### Fixes - Packaging: include MS Teams send module in npm tarball. - Sandbox/Browser: auto-start CDP endpoint; proxy CDP out of container for attachOnly; relax Bun fetch typing; align sandbox list output with config images. - Agents/Runtime: gate heartbeat prompt to default sessions; /stop aborts between tool calls; require explicit system-event session keys; guard small context windows; fix model fallback stringification; sessions_spawn inherits provider; failover on billing/credits; respect auth cooldown ordering; restore Anthropic OAuth tool dispatch + tool-name bypass; avoid OpenAI invalid reasoning replay; harden Gmail hook model defaults. - Agent history/schema: strip/skip empty assistant/error blocks to prevent session corruption/Claude 400s; scrub unsupported JSON Schema keywords + sanitize tool call IDs for Cloud Code Assist; simplify Gemini-compatible tool/session schemas; require raw for config.apply. - Auto-reply/Streaming: default audioAsVoice false; preserve audio_as_voice propagation + buffer audio blocks + guard voice notes; block reply ordering (timeout) + forced-block fence-safe; avoid chunk splits inside parentheses + fence-close breaks + invalid UTF-16 truncation; preserve inline directive spacing + allow whitespace in reply tags; filter NO_REPLY prefixes + normalize routed replies; suppress <think> leakage with separate Reasoning; block streaming defaults (off by default, minChars/idle tuning) + coalesced blocks; dedupe followup queue; restore explicit responsePrefix default. - Status/Commands: provider prefix in /status model display; usage filtering + provider mapping; auth label + usage snapshots (claude-cli fallback + optional claude.ai); show Verbose/Elevated only when enabled; compact usage/cost line + restore emoji-rich status; /status in directive-only + multi-directive handling; mention-bypass elevated handling; surface provider usage errors; wire /usage to /status; restore hidden gateway-daemon alias; fallback /model list when catalog unavailable. - WhatsApp: vCard/contact cards (prefer FN, include numbers, show all contacts, keep summary counts, better empty summaries); preserve group JIDs + normalize targets; resolve @lid mappings/JIDs (Baileys/auth-dir) + inbound mapping; route queued replies to sender; improve web listener errors + remove provider name from errors; record outbound activity account id; fix web media fetch errors; broadcast group history consistency. - Telegram: keep streamMode draft-only; long-poll conflict retries + update dedupe; grammY fetch mismatch fixes + restrict native fetch to Bun; suppress getUpdates stack traces; include user id in pairing; audio_as_voice handling fixes. - Discord/Slack: thread context helpers + forum thread starters; avoid category parent overrides; gateway reconnect logs + HELLO timeout + stop provider after reconnect exhaustion; DM recipient parsing for numeric IDs; remove incorrect limited warning; reply threading + mrkdwn edge cases; remove ack reactions after reply; gateway debug event visibility. - Signal: reaction handling safety; own-reaction matching (uuid+phone); UUID-only senders accepted; ignore reaction-only messages. - MS Teams: download image attachments reliably; fix top-level replies; stop on shutdown + honor chunk limits; normalize poll providers/deps; pairing label fixes. - iMessage: isolate group-ish threads by chat_id. - Gateway/Daemon/Doctor: atomic config writes; repair gateway service entrypoint + install switches; non-interactive legacy migrations; systemd unit alignment + KillMode=process; node bridge keepalive/pings; Launch at Login persistence; bundle ClawdbotKit resources + Swift 6.2 compat dylib; relay version check + remove smoke test; regen Swift GatewayModels + keep agent provider string; cron jobId alias + channel alias migration + main session key normalization; heartbeat Telegram accountId resolution; avoid WhatsApp fallback for internal runs; gateway listener error wording; serveBaseUrl param; honor gateway --dev; fix wide-area discovery updates; align agents.defaults schema; provider account metadata in daemon status; refresh Carbon patch for gateway fixes; restore doctor prompter initialValue handling. - Control UI/TUI: persist per-session verbose off + hide tool cards; logs tab opens at bottom; relative asset paths + landing cleanup; session labels lookup/persistence; stop pinning main session in recents; start logs at bottom; TUI status bar refresh + timeout handling + hide reasoning label when off. - Onboarding/Configure: QuickStart single-select provider picker; avoid Codex CLI false-expiry warnings; clarify WhatsApp owner prompt; fix Minimax hosted onboarding (agents.defaults + msteams heartbeat target); remove configure Control UI prompt; honor gateway --dev flag. ### Maintenance - Dependencies: bump pi-* stack
Features
8. Januar 2026
## 2026.1.8 ### Highlights - Security: DMs standardmäßig über alle Anbieter hinweg eingeschränkt; pairing-first + Anwhitelist-Anleitung. - Sandbox: standardisierte Bereichsgrenzen pro Agent + Arbeitsbereichszugriffssteuerungen; Tool-/Session-Isolierung angepasst. - Agenten-Schleife: Kompaktion, Bereinigung, Streaming und Fehlerbehandlung härter. - Provider: Zuverlässigkeit, Threading, Reaktionen, Medien und Wiederholungen bei Telegram/WhatsApp/Discord/Slack verbessert. - Kontroll-UI: Logs-Tab, Streaming-Stabilität, Fokusmodus und Rendering großer Ausgaben behoben. - CLI/Gateway/Doctor: Daemon/Logs/Status, Auth-Migration und Diagnosen deutlich erweitert. ### Breaking - **SICHERHEIT (so schnell wie möglich aktualisieren):** eingehende DMs sind jetzt standardmäßig auf Telegram/WhatsApp/Signal/iMessage/Discord/Slack eingeschränkt. - Zuvor konnte dein Bot offen für jedermann sein (insbesondere auffindbare Telegram-Bots), wenn du keine Allowlist konfiguriert hattest. - Neue Standardsetzung: DM-Paarung (`dmPolicy="pairing"` / `discord.dm.policy="pairing"` / `slack.dm.policy="pairing"`). - Um das alte Verhalten „offen für jedermann“ beizubehalten: setze `dmPolicy="open"` und füge `"*"` in das relevante `allowFrom` ein (Discord/Slack: `discord.dm.allowFrom` / `slack.dm.allowFrom`). - Genehmige Anfragen über `clawdbot pairing list --provider <provider>` + `clawdbot pairing approve --provider <provider> <code>` (Telegram unterstützt auch `clawdbot telegram pairing ...`). - Sandbox: Standard `agent.sandbox.scope` auf `"agent"` (ein Container/Arbeitsbereich pro Agent). Verwende `"session"` für Isolation pro Sitzung; `"shared"` deaktiviert die länderübergreifende Isolation. - Zeitstempel in Agentenumschlägen jetzt UTC (kompakt `YYYY-MM-DDTHH:mmZ`); entfernt `messages.timestampPrefix`. Füge `agent.userTimezone` hinzu, um dem Modell die lokale Zeit des Nutzers mitzuteilen (nur System-Prompt). - Modellerconfig-Schemaänderungen (Auth-Profile + Modelllisten); Doctor migriert automatisch und Gateway schreibt Legacy-Konfigurationen beim Start neu. - Befehle: Alle Slash-Befehle auf autorisierte Sender beschränken; füge `/compact` hinzu, um Sitzungs-Kontext manuell zu komprimieren. - Gruppen: `whatsapp.groups`, `telegram.groups` und `imessage.groups` wirken jetzt als Allowlisten, wenn gesetzt. Füge `"*"` hinzu, um das Ganze offen zu halten. - Auto-Reply: Entfernt `autoReply` aus Discord/Slack/Telegram Kanal-Konfigurationen; stattdessen `requireMention` verwenden (Telegram-Themen unterstützen jetzt Overrides für `requireMention`). - CLI: entferne `update`, `gateway-daemon`, `gateway {install|uninstall|start|stop|restart|daemon status|wake|send|agent}`, und `telegram` Befehle; verschiebe `login/logout` zu `providers login/logout` (Top-Level-Aliasse versteckt); nutze `daemon` zur Service-Steuerung, `send`/`agent`/`wake` für RPC, und `nodes canvas` für Canvas-Operationen. ### Fixes - **CLI/Gateway/Doctor:** Daemon-Laufzeit-Auswahl + verbesserte Logs/Status/Gesundheit/Fehler; Auth/Passwort-Behandlung für lokale CLI; reichhaltigere Close-/Timeout-Details; automatische Migration alter Configs/Sitzungszustände; Integritätsprüfungen + Reparaturhinweise; `--yes`/`--non-interactive`; `--deep` Gateway-Scans; bessere Neustart-/Service-Hinweise. - **Agenten-Schleife + Kompaktion:** Feineinstellungen bei Kompaktion/Bereinigen, Overflow-Handling, sicherer Bootstrap-Kontext, pro-Anbieter-Threading/Bestätigungen; Opt-in Tool-Ergebnis-Verkleinerung + kompakte Nachverfolgung. - **Sandbox + Tools:** Overrides pro Agenten-Sandbox, WorkspaceAccess-Zugriffe, Sitzungs-Tool-Sichtbarkeit, Tool-Policy-Overrides, Prozess-Isolation, Vereinheitlichung von Tool-Schema/Timeout/Reaktion. - **Provideren (Telegram/WhatsApp/Discord/Slack/Signal/iMessage):** Retry/Backoff, Threading, Reaktionen, Media-Gruppen/Anhänge, Erwähnungs-Gate, Tippverhalten, Stabilität von Fehlern/Logs; Langpolling + Foren-Themen-Isolation für Telegram. - **Gateway/CLI UX:** `clawdbot logs`, Cron-Listen-Farben/Aliase, Docs-Suche, Flows zum Listen/Hinzufügen/Löschen von Agenten, Status-Nutzungs-Schnappschüsse, Laufzeit-/Auth-Quellanzeige, Vereinheitlichung von `/status`/Befehls-Authentifizierung. - **Control UI/Web:** Logs-Tab, Fokus-Modus-Polish, Konfigurations-Formular-Robustheit, Streaming-Stabilität, Output-Limits von Tools, fensterbasierter Chat-Verlauf, und Neuanmeldungs-/Passwort-URL-Auth. - **macOS/Android/TUI/Build:** macOS-Gateway-Races, QR-Bundling, JSON5-Konfigurationssicherheit, Voice Wake-Härtung; Android EXIF-Drehung + APK-Namensgebung/-Versionierung; TUI-Tastenbehandlung; Fehler bei Tooling/Bundle. - **Packaging/Kompatibilität:** npm Dist-Ordner-Abdeckung, Node 25 qrcode-terminal-Importfehlerbehebungen, Bun/Playwright/WebSocket-Patches, und Docker Bun-Installationen. - **Docs:** neue FAQ/ClawdHub/Config-Beispiele/Showcase-Einträge und klärende Auth-, Sandbox- und systemd-Dokumentation. ### Maintenance - Skill-Erweiterungen (Himalaya E-Mail, CodexBar, 1Password). - Abhängigkeits-Refreshes (pi-* Stack, Slack SDK, discord-api-types, file-type, zod, Biome, Vite). - Refactors: Zentralisierte Gruppen-Allowlist/Mention-Policy; Lint-/Import-Aufräumarbeiten; Wechsel von tsx → bun für die TS-Ausführung. ## 2026.1.5
Features
5. Januar 2026
## Fixes - NPM package: fehlende Runtime-dist-Ordner einschließen (slack/signal/imessage/tui/wizard/control-ui/daemon), um ERR_MODULE_NOT_FOUND bei Node 25 npx-Installationen zu vermeiden.
Features
5. Januar 2026
### Fixes - NPM package: include `dist/sessions` so `clawdbot agent` resolves session helpers in npx installs. - Node 25: avoid unsupported directory import by targeting `qrcode-terminal/vendor/QRCode/index.js`.
Features
5. Januar 2026
### Highlights - Models: added image-spezifische Modellkonfiguration (`agent.imageModel` + Fallbacks) und Scan-Unterstützung. - Agent Tools: neues `image` Tool, das zum image Modell geroutet wird (falls konfiguriert). - Config: standardisierte Modell-Abkürzungen (`opus`, `sonnet`, `gpt`, `gpt-mini`, `gemini`, `gemini-flash`). - Docs: dokumentieren integrierte Modell-Abkürzungen + Priorität (Benutzer-Konfiguration gewinnt). ### Fixes - Control UI: Markdown in Tool-Ergebnis-Karten rendern. - Control UI: Verhindern von überlappenden Aktions-Buttons in Discord-Serverregeln auf schmalen Layouts. - Android: Antippen der Foreground-Service-Benachrichtigung bringt die App nach vorn. (#179) — thanks @Syhids - Cron-Tool verwendet `id` für Update/Remove/Run/Runs (angleicht sich an Gateway-Parametern). (#180) — thanks @adamgall - Control UI: Chat-Ansicht verwendet Seiten-Scrollen mit sticky Header/Sidebar und festem Composer (kein inneres Scrollrahmen). - macOS: Behandle Standortberechtigung als immer-nur, um iOS-exklusive Enums zu vermeiden. (#165) — thanks @Nachx639 - macOS: Generierte Gateway-Protokoll-Modelle `Sendable` für Swift 6 strikte Concurrency. (#195) — thanks @andranik-sahakyan - macOS: bundle QR-Code-Renderer-Module, damit der DMG-Gateway-Boot bei fehlenden qrcode-terminal Vendor-Dateien nicht abstürzt. - WhatsApp: Tippindikator während Hintergrundaufgaben der Heartbeat-Sitzung unterdrücken. (#190) — thanks @mcinteerj - WhatsApp: Offline-Verlauf-Synchronisationsnachrichten als gelesen markieren ohne Auto-Antwort. (#193) — thanks @mcinteerj - Discord: Duplizierte Antworten vermeiden, wenn ein Provider späte Streaming-Events `text_end` emittiert (OpenAI/GPT). - CLI: Tailnet-IP für lokale Gateway-Anrufe verwenden, wenn Bind tailnet/auto (Behebt #176). - Env: globale `$CLAWDBOT_STATE_DIR/.env` laden (`~/.clawdbot/.env`) als Fallback nach CWD `.env`. - Env: optionale Login-Shell env-Fallback (Opt-in; importiert erwartete Keys ohne vorhandene Env zu überschreiben). - Agent Tools: OpenAI-kompatible Tool-JSON-Schemas (Fehler bei `browser` beheben, Unions-Schemas normalisieren). - Onboarding: beim Ausführen aus dem Quellcode automatisch fehlende Control-UI-Assets bauen (`pnpm ui:build`). - Discord/Slack: Reaktionen + Systembenachrichtigungen der richtigen Session zuordnen (kein Überschneiden mit Haupt-Session). - Agent Tools: Berücksichtigen der `agent.tools` Allow/Deny-Policy auch wenn Sandbox deaktiviert ist. - Discord: Duplizierte Antworten vermeiden, wenn OpenAI wiederholt `message_end` emittiert. - Commands: `/status` (Inline) und Befehls-Auth über Provider hinweg vereinheitlichen; Gruppen-Bypass für autorisierte Control-Befehle; Discord `/clawd` Slash-Handler entfernen. - Control UI: Markdown in Chat-Nachrichten rendern (gesäubert).
Features
3. Januar 2026
### Fixed - Media: beibehalten GIF-Animation beim Hochladen zu Discord/anderen Anbietern (JPEG-Optimierung für image/gif überspringen). - Agent runtime: pi-mono Abhängigkeiten auf 0.31.1 aktualisieren (Agent-Core-Split). - Dependencies: auf neueste kompatible Versionen erhöhen (TypeBox, grammY, Zod, Rolldown, oxlint-tsgolint). - Tests: Abdeckung von Read Tool Image-Metadaten + Textausgabe. - Tests: Queue-Modus-Abdeckung hinzufügen (collect/followup + directive parsing). ### Breaking - Skills Config-Schema verschoben unter `skills.*`: - `skillsLoad.extraDirs` → `skills.load.extraDirs` - `skillsInstall.*` → `skills.install.*` - Mapping der einzelnen Skill-Konfigurationen wurde zu `skills.entries` verschoben (z. B. `skills.peekaboo.enabled` → `skills.entries.peekaboo.enabled`) - Neues optional gebundene Allowlist: `skills.allowBundled` (beeinflusst nur gebundene Skills) - Sessions: Gruppen-Schlüssel verwenden jetzt `surface:group:<id>` / `surface:channel:<id>`; Legacy-Keys `group:*` migrieren beim nächsten Message; `groupdm`-Keys werden nicht mehr erkannt. - Discord: veraltete `discord.allowFrom`, `discord.guildAllowFrom` und `discord.requireMention` entfernen; verwenden Sie `discord.dm` + `discord.guilds`. - Providers: Discord/Telegram starten nicht mehr automatisch aus Token-Umgebungsvariablen; fügen Sie `discord: { enabled: true }` / `telegram: { enabled: true }` zu Ihrer Konfiguration hinzu, wenn Sie `DISCORD_BOT_TOKEN` / `TELEGRAM_BOT_TOKEN` verwenden. - Config: entfernen Sie `routing.allowFrom`; verwenden Sie stattdessen `whatsapp.allowFrom` (führen Sie `clawdis doctor` zur Migration aus). - Config: entfernen Sie `routing.groupChat.requireMention` + `telegram.requireMention`; verwenden Sie stattdessen Standardwerte von `whatsapp.groups`, `imessage.groups` und `telegram.groups` (führen Sie `clawdis doctor` zur Migration aus). ### Features - Discord: erweitern Sie Aktionen des Tools `discord` (Reaktionen, Sticker, Umfragen, Threads, Suche, Moderations-Gates) (#115) — Dank an @thewilloftheshadow. - Discord/Telegram: Antworten-Tags hinzufügen (`[[reply_to_current]]`, `[[reply_to:<id>]]`) mit provider-spezifischem `replyToMode` (off|first|all) für native Threaded Replies. - Talk-Modus: kontinuierliche Sprachgespräche (macOS/iOS/Android) mit ElevenLabs TTS, Antwort-Direktiven und optionalem Unterbrechungsauslöser bei Sprache. - Auto-Antwort: erweiterte Queue-Modi (steer/followup/collect/steer-backlog) mit Debounce-/Limit-/Drop-Optionen und Followup-Backlog-Verarbeitung. - UI: Optionales `ui.seamColor` Akzent zur Tönung der Talk Mode Seitenblase (macOS/iOS/Android). - Nix-Modus: deklarative Konfiguration + schreibgeschützte Einstellungs-UI, wenn `CLAWDIS_NIX_MODE=1` (danke an @joshp123 für die Persistenz — vertraute mir; ich integriere das künftig). - CLI: Google Antigravity OAuth-Auth-Option für Claude Opus 4.5/Gemini 3 (#88) — Dank an @mukhtharcm. - Agent Runtime: akzeptieren Sie legacy `Z_AI_API_KEY` für Z.AI Provider-Auth ( mapped zu `ZAI_API_KEY` ). - Gruppen: pro-Gruppe Mentions-Gating-Defaults/Overrides für Telegram/WhatsApp/iMessage via `*.groups` mit `"*"` Defaults; Discord unterstützt nun `discord.guilds."*"` als Default. - Discord: Benutzer-installierte Slash-Command-Handhabung mit per-User Sessions und automatischer Registrierung (#94) — Danke an @thewilloftheshadow. - Discord: DM-Enable/Allowlist plus Guild Channel/User/Guild Allowlists mit ID/Name Matching. - Signal: JSON-RPC-Support via `signal-cli` zum Senden/Empfangen über den Signal Provider. - iMessage: iMsg JSON-RPC-Integration (stdio), Chat-ID-Routing und Group-Chat-Unterstützung. - Chat-UI: Recent-Session-Dropdown-Switcher (erstes Main) in macOS/iOS/Android + Control UI. - UI: Discord/Signal/iMessage Verbindungs-Panels in macOS + Control UI (Danke an @thewilloftheshadow). - Discord: erlauben Sie agenten-getriggerte Reaktionen via `clawdis_discord`, wenn aktiviert, und surface Message-IDs im Kontext. - Discord: überarbeitet Guild Routing-Konfiguration mit pro-Guild/Channel-Regeln und slugged Display-Namen; optionale Group-DM-Unterstützung (Standard aus). - Discord: entfernen veralteter Guild/Channel Ignore-Listen zugunsten von pro-Guild Allowlists (und vorgeschlagene pro-Guild Ignore-Listen). - Skills: Trello-Skill für Boards/Listen/Karten-Management (Danke an @clawd). - Docker: containerisierte Gateway/CLI Setup via Dockerfile, Compose und Setup-Skript (Danke an @dan-dr). - Tests: Live-Z.AI Test-Gate für Smoke-Validierung bei vorhandenem Key. - macOS Debug: App-Log-Verbose-Modus und Rolling-File-Log-Umschaltung für swift-log-basierte App-Logs. - CLI: Onboarding-Assistent (Gateway + Workspace + Skills) mit Daemon-Installern und Anthropic/Minimax Setup-Pfaden. - CLI: ASCII-Banner-Header zu Wizard-Entry-Punkten hinzufügen. - CLI: Wizards für `configure`, `doctor` und `update` für fortlaufende Einrichtung, Health-Checks und Modernisierung. - CLI: Signal CLI Auto-Install aus GitHub-Releases im Wizard und Persistierung der Run-Metadaten im Config. - CLI: Remote Gateway Client Config `gateway.remote.*` mit Bonjour-unterstützter Erkennung. - CLI: `clawdis tui` gateway-verbundene Terminal-UI (lokal oder remote). - Skills: Erlauben Sie `bun` als Node-Manager für Skill-Installationen. - Skills: Trello-like Things-Mac (Things 3 CLI) für Read/Search plus Add/Update via URL-Schema. - Skills: Apple Notes + Reminders Skills via Memo-CLI (Danke an @tylerwince). - Tests: Docker-basierte Onboarding-E2E-Harness hinzufügen. - Tests: Wizard-E2E-Flows für Reset, Provider, Skills und Remote non-interaktive Runs härten. - Browser-Tools: Remote CDP URL-Unterstützung, Linux-Launcher-Optionen (`executablePath`, `noSandbox`) und Surface `cdpUrl` im Status. - Skills: tmux-basierter Coding-Agent-Skill + `requires.anyBins` Gate für Multi-CLI-Setup (Danke an @sreekaransrinath). ### Fixes - Gog-Kalender: Datumsbereiche RFC 3339 mit Zeitzone formatieren, um Google Calendar API zu erfüllen (Danke an @jayhickey). - macOS-Onboarding: Scrollbarer Seitenrand für überlaufenden Inhalt (#105) — Danke an @thewilloftheshadow. - Chat-UI: Chat-Ansicht nach Wechseln der Sessions bis zum neuesten Nachricht beibehalten. - Chat-UI: Anzeigen von Rich Session Display-Namen in Web Chat + SwiftUI + Android. - Auto-Antwort: Streaming von fertigen Antwort-Blöcken, sobald sie abgeschlossen sind (konfigurierbare Default-Einstellung + Break); leere Tool-Only-Blocks überspringen, außer verbose. - Discord: Duplizierte Senden vermeiden, wenn Block-Streaming aktiv ist (Race mit Typing-Hook). - Providers: Outbound-Text-Chunk-Limits konfigurierbar machen via `*.textChunkLimit` (Standards bleiben 4000/Discord 2000). - CLI-Onboarding: Gateway-Token in Config persistieren, damit lokales CLI-Auth funktioniert; Auth Off empfehlen, sofern kein Multi-Machine Access benötigt wird. - Control-UI: Akzeptieren Sie einen `?token=` Query-Parameter zum Auto-Ausfüllen der Gateway-Auth; Onboarding öffnet nun das Dashboard mit Token-Auth, wenn konfiguriert. - Agent-Prompt: Entfernen Sie hartcodierten Benutzernamen im System-Prompt-Beispiel. - Chat-UI: Extra oberes Padding vor dem ersten Nachrichten-Bubble in Web Chat (macOS/iOS/Android). - Control-UI: Verfeinern Sie das Web Chat Session-Selector-Layout (Chevron-Abstand + Hintergrund). - WebChat: Streamen Sie Live-Updates für Sessions, auch wenn Runs außerhalb der Chat-UI starten. - Gateway CLI: `CLAWDIS_GATEWAY_PASSWORD` aus der Umgebung in `callGateway()` lesen — ermöglicht Auth mit `doctor`/`
Features
27. Dezember 2025
## 2.0.0-beta4 — 2025-12-27 ### Fixes - Package contents: eingebundene Discord/hooks Build-Ausgaben in das npm-Tarball aufnehmen, um fehlende Modul-Fehler zu vermeiden.
Features
27. Dezember 2025
### Highlights - First-class Clawdis Tools (Browser, Canvas, Nodes, Cron) ersetzen die alten `clawdis-*` Skills; Tool-Schemas werden nun direkt in die Agenten-Laufzeit injiziert. - Pro-Session Modellwahl + benutzerdefinierte Modell-Anbieter: `models.providers` fügt sich in `~/.clawdis/agent/models.json` zusammen (Merge/Replace-Modi) für LiteLLM, lokale OpenAI-kompatible Server, Anthropic-Proxy, etc. - Gruppen-Chat-Aktivierungsmodi: pro-Gruppe `/activation mention|always` Befehl mit Statusanzeige. - Discord-Bot-Transport für DMs und Guild-Textkanäle, mit Allowlisten + Mention-Gating. - Gateway-Webhooks: externe `wake` und isolierte `agent` Hooks mit dedizierter Token-Auth. - Hook-Zuordnungen + Gmail Pub/Sub Helfer (`clawdis hooks gmail setup/run`) mit Auto-Erneuerung + Tailscale Funnel-Unterstützung. - Befehlswarteschlangen-Modi + pro-Session-Overrides (`/queue ...`) und neue `agent.maxConcurrent` Obergrenze für sichere Parallelität über Sessions hinweg. - Hintergrund-Bash-Aufgaben: `bash` liefert nach 20s automatisch weiter (oder auf Nachfrage) mit einem `process`-Tool zum Auflisten/Polling/Logging/Schreiben/Beenden von Sessions. - Gateway-In-Process-Neustart: `clawdis_gateway` Tool-Aktion löst einen SIGUSR1-Neustart aus, ohne Aufsicht nötig. ### Breaking - Config-Refactor: `inbound.*` entfernt; nutze oberste Ebenen `routing` (Allowlisten + Gruppierung + Transkription), `messages` (Präfixe/Zeitstempel) und `session` (Geltungsbereich/Speicherung/Schlüssel). Keine Legacy-Keys werden gelesen. - Heartbeat-Konfig moved zu `agent.heartbeat`: setze `every: "30m"` (Dauer-String) und optionales `model`. `agent.heartbeatMinutes` wird entfernt, und Herzschläge werden deaktiviert, es sei denn `agent.heartbeat.every` ist gesetzt. - Herzschläge laufen nun über den Gateway Runner (Haupt-Session) und liefern standardmäßig an den zuletzt genutzten Kanal. WhatsApp-Antwort-Herzschlag-Verhalten wurde entfernt; nutze `agent.heartbeat.target`/`to` (oder `target: "none"`) um Lieferung zu steuern. - Browser `act` akzeptiert kein CSS `selector` mehr; nutze `snapshot`-Refs (Standard `ai`) oder `evaluate` als Escape-Hatch. ### Fixes - Heartbeat-Antworten straffen nun wiederholte `HEARTBEAT_OK`-Anhänge, um versehentlichen Spam „OK OK“ zu vermeiden. - Heartbeat-Lieferung nutzt nun die letzte nicht-leere Payload, verhindert, dass Tool-Einleitungen die finale Antwort verschlucken. - Heartbeat-Fehlerprotokolle enthalten nun den Fehlergrund statt `[object Object]`. - Dauer-Strings akzeptieren nun `h` (Stunden) bei der Parsing-Logik (z. B. Heartbeat-Intervalle). - WhatsApp inbound normalisiert nun mehr Wrapper-Typen, so dass zitierte Antworttexte zuverlässig extrahiert werden. - WhatsApp-Send specializes: JIDs (einschließlich Gruppen-`@g.us`) werden beibehalten statt in `@s.whatsapp.net` zu zwingen. (Danke an @arun-8687.) - Telegram/WhatsApp: Antwort-Kontext bleibt in `Body`/`ReplyTo*`, outbound Replies verweisen nicht mehr auf die Originalnachricht. (Danke an @joshp123 für den PR und Folgefrage.) - Spam zur Bereinigung von libsignal-Sessions aus Konsolen-Logs unterdrückt, außer Verbose-Modus aktiv. - WhatsApp Web-Creds-Persistenz gehärtet; Credentials werden vor Auth-Checks wiederhergestellt und QR-Login-Neustart bei Verzögerung automatisch erneut gestartet. - Gruppenchats greifen nun standardmäßig `routing.groupChat.requireMention=false` als Aktivierungsstandard, wenn keine Gruppen-spezifische Override existiert. - Gateway-Auth unterstützt nicht mehr PAM/System-Modus; nutze Token oder gemeinsames Passwort. - Tailscale Funnel erfordert nun Passwort-Authentifizierung (keine Token-öffentliche Offenlegung). - Gruppen- `/new` Resets funktionieren jetzt mit @Mentions, sodass Aktivierungs-Hinweise in frischen Sessions erscheinen. - Gruppen-Chat-Aktivierungs-Kontext wird nun beim System-Prompt zu Session-Beginn injiziert (und nach Aktivierungs-Änderungen), einschließlich neuer Begrüßungen. - Tipp-Indikatoren starten nun erst, wenn eine Antwort-Payload erzeugt wird (kein „Denken“-Tipp bei stillen Läufen). - WhatsApp Gruppen-Tippen beginnt sofort nur, wenn der Bot erwähnt wird; andernfalls wartet er auf reale Ausgabe. - Gestreamte `<think>`-Segmente werden vor partiellen Antworten entfernt. - System-Prompt markiert erlaubte Eigentümer-Nummern nun als Benutzer-Identität, um falsche “Freund”-Annahmen zu vermeiden. - LM Studio/Ollama-Antworten benötigen nun `<final>`-Tags; Streaming ignoriert Inhalte, bis `<final>` beginnt. - LM Studio Antworten-API: Tools-Payloads enthalten kein `strict: null` mehr, und LM Studio erhält keine erzwungenen `<think>/<final>`-Tags mehr. - Identity-Emoji prefixt Antworten nicht mehr automatisch (setze `messages.responsePrefix` explizit, falls gewünscht). - Modellwechsel schieben nun ein System-Event in die Warteschlange, damit der nächste Run das aktive Modell kennt. - `/model status` listet nun verfügbare Modelle auf (gleich wie `/model`). - `process log` Pagination basiert jetzt auf Zeilen (ohne `offset` die letzten N Zeilen holen). - macOS WebChat: Assistenten-Blasen aktualisieren sich korrekt beim Umschalten von Hell/Dunkel-Modus. - macOS: Verhindert das Starten eines Duplikat-Gateway-Prozesses, wenn ein externer Listener bereits existiert. - Node-Bridge: Bindung an einen Nicht-Loopback-Host (z. B. Tailnet-IP) hört auch auf `127.0.0.1` für lokale Verbindungen (ohne Duplikate von Loopback-Listenern für `0.0.0.0`/`127.0.0.1`). - UI-Performance: Pausen von Wiederholungs-Animationen, wenn Szenen inaktiv sind (Tipppunkte, Onboarding-Leuchte, iOS-Status-Puls), Drosselung von Updates der Sprach-Overlay-Stufe, Reduktion von Overlay-Fokus-Wechsel. - Canvas-Standards/A2UI Auto-Navigation ausgerichtet; Debug-Status-Overlay zentriert; redundante `await`-Anweisung in `CanvasManager` entfernt. - Gateway-Launchd-Loop behoben durch Entfernen redundanter `kickstart -k`. - CLI weist nun darauf hin, wenn Peekaboo unautorisiert ist. - WhatsApp Web Inbox-Listener räumen beim Schließen auf, um doppelte Handler zu vermeiden. - Gateway-Start verbessert: Browser-Steuerung kommt vor externen Anbietern; WhatsApp/Telegram/Discord-Autostart kann mit `web.enabled`, `telegram.enabled` oder `discord.enabled` deaktiviert werden. ### Providers & Routing - Neuer Discord-Anbieter für DMs + Guild-Textkanäle mit Allowlists und standardmäßig gegebener Mention-Filterung bei Antworten. - `routing.queue` steuert globales Queue-Verhalten + pro Surface (Standardwerte: WhatsApp/Telegram Interrupt, Discord/WebChat Queue). - `/queue <mode>` unterstützt One-Shot oder pro-Session Overrides; `/queue reset|default` löscht Overrides. - `agent.maxConcurrent` begrenzt globale parallele Läufe, während pro-Session-Serialisierung erhalten bleibt. ### macOS-App - Aktualisierungsbereiter Zustand im Menü ersichtlich; Menüabschnitte neu gruppiert mit Session-Untermenüs. - Menüleiste zeigt nun einen eigenständigen Nodes-Bereich unter Kontext mit Inline-Zeilen, Overflow-Untermenü und iconisierten Aktionen. - Nodes zeigen konsistente Inline-Details mit pro-Node-Untermenüs zum schnellen Kopieren von Schlüssel-Feldern. - Node-Zeilen zeigen kompakte App-Versionen (Build-Nummern in Untermenüs verschoben) und bieten SSH-Start von Bonjour, wenn verfügbar. - Menü-Aktionen gruppiert unter Schaltern; Open Canvas wird versteckt, wenn deaktiviert, und Voice Wake verankert nun den Mic-Picker. - Verbindungen zeigen nun den Status des Discord-Anbieters + Konfigurations-UI. - Menüleiste erhält zusätzliche „Camera erlauben“-Toggle neben Canvas. - Sitzungsliste-Pflege: Schlaf- / getrennt / Fehlerzustände, Nutzungsbalken wiederhergestellt, Padding + Balken-Größen angepasst, Synchronisierungsmenü entfernt, Kopfzeile bei Trennung versteckt. - Chat-UI-Verfeinerung:
Features
21. Dezember 2025
Highlights - Bundled gateway packaging: bun-compiled embedded gateway, new gateway-daemon command, launchd support, DMG packaging (zip+DMG). - Skills platform: managed/bundled skills, install metadata + installers (uv), skill search + website, media/transcription helpers. - macOS app: new Connections settings w/ provider status + QR login, skills settings redesign w/ install targets, models list loaded from the Gateway, clearer local/remote gateway choices. - Web/agent UX: tool summary streaming + runtime toggle, WhatsApp QR login tool, agent steering queue, voice wake routes to main session, workspace bootstrap ritual. Gateway & providers - Gateway: models.list, provider status events + RPC coverage, tailscale auth + PAM, bind-mode config, enriched agent WS logs, safer upgrade socket handling, fixed handshake auth crash. - WhatsApp Web: QR login flow improvements (logged-out clearing, wait flow), self-chat mode handling, removed batching delay, web inbox made non-blocking. - Telegram: normalized chat IDs with clearer error reporting. Canvas & browser control - Canvas host served on Gateway port; removed standalone canvasHost port config; restored action bridge; refreshed A2UI bundle + message context; bridge canvas host for nodes. - A2UI full-screen gutters + status clearance after successful load to avoid overlay collisions. - Browser control API simplified; added MCP tool dispatch + native actions; control server can start without Playwright; hook timeouts extended. macOS UI polish - Onboarding chat UI: kickoff flow, bubble tails, spacing + bottom bar refinements, window sizing tweaks, show Dock icon during onboarding. - Skills UI: stabilized action column, fixed install target access, refined list layout and sizing, always show CLI installer. - Remote/local gateway: auto-enable local gateway, clearer labels, re-ensure remote tunnel, hide local bridge discovery in remote mode. Build, CI, deps - Bundled playwright-core + chromium-bidi/long; bun gateway bytecode builds; swiftformat/biome CI fixes; iOS lint script updates; Android icon/compiler updates; ignored new ClawdisKit .swiftpm path. Docs - README architecture refresh + npm header image fix; onboarding/bootstrap steps; skills install guidance + new skills; browser/canvas control docs; bundled gateway + DMG packaging notes.
Features
2. Dezember 2025
warelay 1.3.0 (2025-12-02) ### Highlights - **Pluggable agents (Claude, Pi, Codex, Opencode):** Neuer `inbound.reply.agent`-Block wählt per Befehl-Antwort CLI und Parser; pro-Agent argv-Builder injiziert die richtigen Flags/Identität/Prompt-Behandlung und parst NDJSON-Streams, ermöglicht Pi/Codex-Tausch ohne Vorlagenänderung. - **Sicherheits-Stoppwörter für Agents:** Wenn eine eingehende Nachricht genau `stop`, `esc`, `abort`, `wait` oder `exit` ist, antwortet warelay sofort mit „Agent was aborted.“, beendet den laufenden Agenten-Lauf und markiert die Sitzung, sodass der nächste Prompt mit einer Erinnerung an den Abbruch der vorherigen Ausführung eingeleitet wird. - **Agenten-Sitzungslauffestigkeit:** Nur Claude gibt derzeit eine `session_id` zurück, die warelay persistent speichert; andere Agents (Gemini, Opencode, Codex, Pi) geben keine stabilen Sitz Identifiers aus, sodass Mehr-Turn-Kontinuität zwischen Läufen für diese Harnesses verloren gehen kann. ### Bug Fixes - **Leeres Ergebnisfeld-Verhalten:** Behobener Fehler, bei dem Claude CLI `result: ""` (leerer String) dazu führte, dass rohes JSON zu WhatsApp gesendet wurde statt als gültige leere Ausgabe behandelt zu werden. Wahrheitswert-Check in `command-reply.ts` durch expliziten Typ-Check ersetzt. - **Antwort-Präfix bei Heartbeat-Antworten:** `responsePrefix` (z. B. `🦞`) wurde nicht auf Heartbeat-Alert-Nachrichten angewendet. Das Präfix wurde nur im regulären Nachrichten-Handler angewendet, nicht in `runReplyHeartbeat`. - **Für Benutzer sichtbare Fehlermeldungen:** Fehler bei Befehlen (nicht-null Exit, Prozess-Abbrüche, Ausnahmen) liefern jetzt benutzerfreundliche Fehlermeldungen an WhatsApp statt stiller Fehler mit leeren Antworten. - **Test-Sitzungs-Isolation:** Tests korrumpierten produktive `sessions.json`, indem die Sitzungs-Persistenz in allen Testdateien gemockt wurde. - **Signaling-Sitzungskorruptionsprävention:** IPC-Mechanismus hinzugefügt, sodass `warelay send` und `warelay heartbeat` die laufende Relay-WhatsApp-Verbindung reuseen, statt neue Baileys-Sockets zu erzeugen. Zuvor konnte die Nutzung dieser Befehle während des laufenden Relays die Signal-Sitzung beschädigen (beide Verbindungen schrieben auf denselben Auth-Status), wodurch spätere Relay-Sendungen fehlschlugen. - **Web-Send-Medienarten:** `sendMessageWeb` berücksichtigt nun Medientyp beim Senden über WhatsApp Web: Audio → PTT mit korrektem Opus-MIME-Typ, Video → Video, Bild → Bild, Sonstiges → Dokument mit Dateiname. Zuvor wurden alle Medien als Bilder gesendet, wodurch Audio/Video/Dokument-Sendungen fehlerhaft wurden. ### Changes - **IPC-Server für Relay:** Der Web-Relay startet jetzt einen Unix-Socket-Server unter `~/.warelay/relay.sock`. Befehle wie `warelay send --provider web` verbinden sich automatisch über IPC, wenn der Relay läuft, andernfalls wird eine Direkts-Verbindung verwendet. - **Batch-Inbound-Messaging mit Zeitstempeln:** Wenn mehrere WhatsApp-Nachrichten in der Warteschlange sind, werden sie dem Agenten in einem kombinierten Batch gesendet, jede Zeile konsistent mit Zeitstempel, um Reihenfolge und Kontext zu bewahren. - **Typing-Indikator nach IPC-Sende:** Nach dem Senden einer Nachricht via IPC (z. B. `warelay send`) zeigt der Relay automatisch den Typing-Indikator ("composing"), um anzudeuten, dass weitere Nachrichten kommen könnten. - **Auto-Wiederherstellung bei festhängenden WhatsApp-Sitzungen:** Hinzugefügt wurde ein Watchdog-Timer, der erkennt, wenn der WhatsApp-Ereignis-Emitter keine Signale mehr sendet (z. B. nach Bad-MAC-Verschlüsselungsfehlern) und die Verbindung nach 30 Minuten ohne Nachrichtenaktivität automatisch neu startet. Heartbeat-Logging umfasst nun `minutesSinceLastMessage` und warnt, wenn mehr als 30 Minuten ohne Nachrichten verstrichen sind. Der 30-Minuten-Timeout ist absichtlich länger als typische `heartbeatMinutes`-Konfigurationen, um Fehlalarme zu vermeiden. - **Frühe AllowFrom-Filterung:** Unbefugte Absender werden in `inbound.ts` VOR Verschlüsselungs-/Entschlüsselungsversuchen blockiert, um Bad-MAC-Fehler daran zu hindern, den Sitzungszustand zu beschädigen. Früher führten Nachrichten von unbefugten Absendern zu Entschlüsselungsfehlern, die den Event-Emitter still schädigen konnten. - **Test-Isolationsverbesserungen:** Mock `loadConfig()` in allen Testdateien, um das Laden realer Benutzerkonfigurationen (mit Emojis/Prefixes) während Tests zu verhindern. Standard-Testkonfiguration hat jetzt keine Prefixe/Zeitstempel für sauberere Assertions. - **Same-Phone-Modus (Selbst-Nachrichten):** warelay unterstützt jetzt das Laufen auf derselben Telefonnummer, von der aus du schreibst. Das ermöglicht Setups, bei denen du dich mit dir selbst unterhältst, um einen AI-Assistenten zu steuern. Same-phone-Modus (`from === to`) ist immer zulässig, auch ohne `allowFrom` zu konfigurieren. Echo-Erkennung verhindert Endlosschleifen, indem der kürzlich gesendete Nachrichtentext verfolgt wird und Auto-Antworten übersprungen werden, wenn eingehende Nachrichten übereinstimmen. - **Echo-Erkennung:** Der `fromMe`-Filter in `inbound.ts` wurde bewusst für Same-Phone-Setups entfernt; stattdessen verfolgt die textbasierte Echo-Erkennung in `auto-reply.ts` gesendete Nachrichten in einem begrenzten Set (max. 100 Einträge) und überspringt die Verarbeitung bei Treffer. - **Same-Phone Erkennungs-Logging:** Im Verbose-Modus wird jetzt `📱 Same-phone mode detected` protokolliert, wenn `from === to`. - **Konfigurierbares Same-Phone-Markierungssignal:** Neuer Config-Parameter `inbound.samePhoneMarker`, um das Präfix zu Nachrichten im Same-Phone-Modus anzupassen (Standard: `[same-phone]`). Auf etwas Niedliches wie `[🦞 same-phone]` setzen, um Bot-Antworten besser zu unterscheiden. ### Contributors - @RealSid08 (Sidhaarth Krishnan) ### Testing - pnpm lint - pnpm test - pnpm build
Features
28. November 2025
- Manuelle Heartbeat-Sendungen: warelay heartbeat akzeptiert --message/--body mit --provider web|twilio, um echte ausgehende Nachrichten zu pushen; --dry-run zeigt Payloads als Vorschau, ohne zu senden. - SHA256: bb4f80a8c4d92ceede657b43abb67864939c580155716963c3207b566719bd58
Features
28. November 2025
warelay 1.2.1 - Heartbeat: warelay heartbeat now supports --message/--body for manual sends on web or twilio, with --dry-run to preview payloads. - Media handling: MIME-first detection (magic bytes > headers > extension) so images/audio/video/doc send correctly even with wrong suffixes, and images still recompress under caps. - Hosting/inbound: hosted and saved media files are renamed with the detected extension, ensuring correct Content-Type for Twilio/web round-trips (including Baileys inbound saves). - Docs/tests: changelog and image docs updated; added coverage for inbound media extension preservation.
27. November 2025
- Heartbeat UX: Standard 10 m; Prompt `HEARTBEAT ultrathink`; `HEARTBEAT_OK` unterdrückt Sends; übersprungene Heartbeats refreshing sessions nicht; Fallback-Heartbeats starten keine neuen Sessions mehr; unterstützt `heartbeatIdleMinutes`. - Heartbeat-Tooling: `warelay heartbeat --session-id`, Relay `--heartbeat-now`, Hilfsprogramme `warelay relay:heartbeat` und `warelay relay:heartbeat:tmux`. - Prompt-Struktur: einmalig `sessionIntro`, pro-Nachricht `ultrathink`-Präfix; Sessions idle-expiQuieren nach 7 Tagen (konfigurierbar). - Robustheit: WebSocket-Fehlerabfangung und globale ungefangene-Handler; Baileys @lid-Auflösung; Webhook-Medienhosting verwendet gemeinsames Host-Modul (Test-Abdeckung). - Docs: README hebt Clawd hervor; `docs/claude-config.md` aktualisiert mit aktueller Konfiguration, Verhalten bei Heartbeat und Home-Verzeichnis.
Features
26. November 2025
- Web auto-replies resize/recompressen jetzt Medien, berücksichtigen inbound.reply.mediaMaxMb, erkennen Medienart und setzen Provider-Limits durch. - Sessions können das System-Prompt nur einmal senden (optional sessionIntro) und Tipp-Indikatoren aktualisieren sich in einem konfigurierbaren Intervall. - Optionale Sprachnotizen-Transkription speist einen Transcript-Block plus Medienpfad in Prompts vor der Antwort ein. - Command auto-replies geben strukturierte {payload, meta} zurück, berücksichtigen mediaMaxMb für lokale Medien, loggen Claude-Metadaten und schließen den Command-CWD in Timeout-Meldungen ein. - Geprüfte fokussierte Tests für Command- und Transcription-Helper hinzugefügt. Checksum (sha256): 9aaaaad7ca87287529b86f857d66d2c3123c23f7a764e36c68b520f57ae82bfa
Features
25. November 2025
### Features - Added `cwd` option to command reply config so external reply commands (e.g., Claude Code) run in the intended working directory for correct context. - Added configurable file-based logging (default `/tmp/warelay/warelay.log`), with level set via `logging.level` in `~/.warelay/warelay.json`; `--verbose` still forces debug. ### Developer notes - Command auto-replies now pass `{ timeoutMs, cwd }` into the command runner; custom runners/tests that stub `runCommandWithTimeout` should accept the options object as well as the legacy numeric timeout.
Features
25. November 2025
- Behebe Commander-Help-Konfiguration für TypeScript-Build (subcommandTerm). - Versionsnummer und Web-UA auf 0.1.2 erhöhen; behält Tagline/Help-Verfeinerung von 0.1.1 bei. Install: ```bash npm install -g warelay@0.1.2 # oder npx warelay@0.1.2 --help ```
Features
25. November 2025
- Hinzugefügt erzeugbarer Shim, damit npx warelay@0.1.x direkt das CLI ausführt. - Hilfs-/Versionsbanner verwendet den README-Tagline mit Farbe und einen farbigen Footer mit Beispielen. - --verbose hinzugefügt, um Senden und Status für konsistent lauten Output bereitzustellen. - Branding in Kleinbuchstaben gesetzt und UA des Web Providers auf warelay/cli/0.1.1 aktualisiert. Install: ```bash npm install -g warelay@0.1.1 # oder npx warelay@0.1.1 --help ```
Features