Three releases. Two weeks. A lot happened.
This is a roundup of everything that shipped in OpenClaw from mid-February through March 2 - versions v2026.2.17, v2026.2.19, and v2026.3.1. I'll skip the parts that are mostly maintenance and focus on the things that actually change how the agent works.
Mobile became a first-class citizen
This was the biggest theme across all three releases, and it's worth treating it as one story rather than individual line items.
v2026.2.19 shipped the iOS APNs wake integration. The problem before: if the OpenClaw app was backgrounded on your iPhone, your gateway couldn't reach it. Commands would time out. The fix uses Apple Push Notification service to wake a backgrounded iOS node before invoking any command - so the gateway sends a wake signal, waits for the app to reconnect, then sends the command. In practice it just works now.
The same release shipped an Apple Watch companion MVP. Basic inbox UI, notification relay, and the ability to send commands from your wrist. Early days, but it's there.
v2026.3.1 - released March 2 - is where Android went from "you can pair a device" to "you can actually do things with it." The expanded node control adds:
- Camera - snap photos from front or back, record clips, pull recent photos from the gallery
- Location - GPS coordinates, altitude, speed, heading; three accuracy modes (coarse/balanced/precise); works in background if the user grants it
- Motion sensors - current activity (walking, running, driving, stationary), step count
- Notifications - read them, open them, dismiss them, reply to them; send notifications to the device
- Contacts and Calendar - search and add contacts, read and create calendar events
- Device health - battery, storage, network status
Pair your phone once (from Telegram, using /pair), and your agent can do all of this remotely. No CLI, no server access required.
To give a sense of what this actually enables: imagine a cron job that runs every morning, snaps a photo from a tablet mounted in your office, checks device battery, pulls your location, and sends you a briefing with all of it before you sit down. Or a workflow that detects when your phone switches to in-vehicle activity mode and automatically pauses non-urgent notifications until you're stationary again. Or one that takes a photo the moment a calendar event starts - timestamped proof of presence, no manual action needed.
The phone is no longer just a way to talk to your agent. It's a sensor array your agent can query.
Geofencing without an app. Because location.get returns GPS coordinates on demand, you can build geofence logic directly in your agent workflows. Check location, compare against a known coordinate, take action if within range. No dedicated geofencing app needed, no third-party service.
Apple Watch as a notification hub. The Watch companion (shipped in v2026.2.19) adds a basic inbox UI and notification relay. Your agent can push summaries to your wrist - useful if you want a quick glance at what came in without pulling out your phone. Early feature, but the relay is solid.
v2026.2.17 added the iOS Share Extension - share any URL, image, or text from any app directly to your gateway. Useful for passing things to your agent without switching apps.
Same release: iOS Talk Mode got background listening (so the app doesn't have to be in the foreground) and a Voice Directive Hint toggle that helps the agent understand conversational commands more accurately.
Channels got smarter
A few things that make the daily messaging experience noticeably better:
Telegram inline button styles. Buttons in Telegram messages now support primary, success, and danger styling. Small thing visually, but it makes agent-sent messages with action buttons much cleaner - a destructive action looks different from a confirmation.
Telegram reaction notifications. When someone reacts to one of your agent's messages, it surfaces as a system event. You can configure the scope. Useful if you're using your agent in group contexts and want it to be aware of feedback.
Telegram DM topic handling (v2026.3.1). Each DM can now have its own configuration, with distinct session routing. This also fixed a longstanding issue where cron and heartbeat jobs could land in the wrong topic.
Slack native streaming. Real-time text streaming now works in Slack via chat.startStream. Enabled by default, falls back gracefully if the workspace doesn't support it. Responses feel much faster.
iMessage reply threading. replyToId is now supported on outbound sends, so replies actually thread correctly instead of posting as new messages.
Three features worth actually using
Cron webhook delivery. Scheduled jobs can now POST their output to any external URL via delivery.mode = "webhook". The practical use: connect your OpenClaw cron jobs to Make, Zapier, Slack, your own API, or anything else that accepts HTTP. A job runs, finishes, and the result lands wherever you need it - no polling, no manual retrieval. If you've been treating cron output as Telegram-only, this opens the whole integration surface.
1M context (beta). Opt-in for Opus and Sonnet via model.params.context1m: true. One million tokens is roughly 750,000 words - more than most novels. In practical terms: you can feed the agent an entire codebase, a full year of email history, a large PDF library, or a very long research thread without hitting a wall. Responses stay coherent further into the conversation. It's marked beta, but for the right workloads it's a meaningful unlock.
Subagents and /subagents spawn. This release added a /subagents spawn command for deterministic subagent activation - meaning you can now kick off isolated agent sessions for specific tasks without leaving your main chat. A subagent runs independently, completes its task, and reports back. Useful when you want one agent writing a report while another is processing a different task at the same time, or when you want to sandbox something from your main session context. It's the beginning of proper parallel agent workflows inside OpenClaw.
Under the hood
Lightweight bootstrap mode. Cron jobs and heartbeat runs can now start in a stripped-down mode that skips the full agent initialization. Faster, cheaper, less overhead for scheduled tasks that don't need the full context loaded. Most people running frequent heartbeats will want this.
OpenAI streaming now WebSocket-first. Better performance for OpenAI models - streaming responses are faster and more reliable than the previous polling approach.
Diffs plugin tool. New optional tool for comparing content - useful for before/after analysis, version comparisons, or any workflow where you need to see what changed.
Security
v2026.2.19 included the largest security patch batch in recent memory - 11 fixes. The headline ones: gateway now defaults to token-based auth with an auto-generated token (no more accidentally open endpoints), SSRF hardening against unusual IP formats, browser relay now requires gateway-token auth, and several path containment fixes.
v2026.3.1 added pairing requirements for operator device-identity sessions and enforced WebSocket authentication with origin checks. If you've been running with loose auth settings, these versions may require a config update.
All of this is available on MoltBot Ninja - updates deploy automatically, nothing to manage on your end.