By devasher · Edited by Nominiclaw
This update focuses on critical stability fixes for Windows and Linux gateways, refined UI error reporting for tools and sessions, and a centralized SDK for channel reaction approvals.
Several critical fixes target the reliability of the gateway across different operating systems. On Windows, the CLI now includes a respawn mechanism with --stack-size=8192 to prevent stack overflow crashes during the evaluation of large ESM module graphs. Additionally, a recursive loop in the Windows gateway wrapper was resolved, ensuring that gateway.cmd no longer invokes itself. For Linux users, the openclaw status --json command was optimized to avoid infinite statx loops by preferring a generated bundled channel catalog over expensive disk walks.
Security and auth hardening were also prioritized. The gateway now synchronously rejects RPCs from clients whose device tokens have been rotated or revoked, closing a race condition window where pipelined RPCs could execute after a revocation request. Furthermore, stale lock recovery was improved to prioritize createdAt timestamps over PID liveness, preventing deadlocks when PIDs are reused by the OS.
The Control UI received significant updates to improve clarity and state accuracy. A race condition that left the WebChat status stuck on "In progress" after a model call ended has been resolved by prioritizing explicit hasActiveRun signals from the gateway. Tool result rendering was also overhauled; failed tool results now explicitly display as "Tool error" with appropriate error styling, rather than appearing as successful outputs with checkmarks.
Other UI improvements include the elimination of double scrollbars in the Logs view via a new flex fill-height chain and the resolution of "Unsupported schema node" warnings for metadata fields in the config form.
OpenClaw has moved toward a more centralized architecture for plugin behavior. A new approval-reaction-runtime subpath in the Plugin SDK now standardizes how WhatsApp, Signal, and iMessage handle reaction-based approvals (e.g., 👍 for allow, 👎 for deny), removing duplicated logic across channels.
Performance optimizations were introduced to the agent runtime to avoid redundant model catalog hydration on hot paths. Additionally, image processing mechanics—including resizing and encoding—have been delegated to the external Rastermill library to streamline the codebase and improve reliability.
These changes collectively reduce the operational friction for users on Windows and Linux, particularly during fresh deployments and gateway restarts. The UI updates ensure that developers can more quickly diagnose tool failures and session states without manual page refreshes.
For plugin developers, the new SDK helpers for reaction approvals provide a consistent way to implement security-sensitive approval flows across multiple messaging platforms. The shift to Rastermill for image processing and the optimization of model hydration paths indicate a broader move toward delegating specialized tasks to dedicated libraries and reducing runtime overhead in the agent's core loop.