Skip to content
Archived update

This post is kept for reference, but it is not part of the main hosted OpenClaw VPS blog feed.

OpenClaw 2026.1.9 โ€” What Shipped (Operator Guide)

Operator-focused summary of OpenClaw 2026.1.9: what shipped, what matters for hosted bots, and what to check after upgrade.

Jason Cochran
January 10, 2026

This post covers what shipped in v2026.1.9 and what it means for OpenClaw VPS operators.

What shipped

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 and 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 (and sandbox allow); 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; [[audioasvoice]] 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 audioasvoice 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; audioasvoice 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 to 0.42.2.
  • Dependencies: Pi 0.40.0 bump (#543) โ€” thanks @mcinteerj.
  • Build: Docker build cache layer (#605) โ€” thanks @zknicker.

What matters for hosted operators

  • Validate channel delivery behavior (web chat + Telegram).
  • Verify model/provider settings and fallback behavior.
  • Run a smoke test after deploy: message flow, tool call, and response quality.

Post-upgrade checklist

  1. Send/receive test messages in active channels.
  2. Confirm bot settings and auth paths still behave as expected.
  3. Check billing/usage visibility and dashboard status.
  4. Log regressions immediately and keep rollback notes.

Related reading

Start your free 7-day Pro trial

Source

  • https://github.com/openclaw/openclaw/releases/tag/v2026.1.9

Get the free guide

Get the free plain-English PDF on the 10 costly mistakes people make when hosting an AI assistant themselves, plus a few short follow-up tips.

Ready to run OpenClaw without infrastructure headaches?

Start your free 7-day Pro trial on OpenClaw VPS and get a production-ready bot online with managed hosting, updates, and support.

Share this post

Related Posts

Free plain-English PDF

Get the free DIY VPS checklist

Before you host an AI assistant yourself, learn the 10 common mistakes that cause downtime, lost keys, missed alerts, and painful recovery work.

Send me the free PDF

We will send the plain-English PDF on the 10 costly mistakes people make when hosting an AI assistant themselves, plus short follow-up tips. Unsubscribe anytime.