OpenClaw Claude Extension Updated to Use Agent SDK After Anthropic Billing Changes

The developer of an OpenClaw extension for Claude has rewritten their implementation to use Anthropic's official claude-agent-sdk after encountering billing issues with the previous CLI-based approach.
What Changed
Anthropic started detecting the Claude CLI's -p (print/headless) mode server-side and reclassifying it as "third-party app usage." This caused usage to bill against a separate extra usage credit pool instead of users' Max plan limits, with users receiving messages about claiming $200 credits.
Failed Workarounds
- PTY-based spawning so the CLI sees a real terminal — didn't help because detection is server-side metadata
- Full interactive mode without
-p— the Ink TUI swallows programmatic input and output is unparseable (ANSI codes, spinners, words with no spaces) - Session reuse, request jitter, stdin piping — all cosmetic changes that don't affect what the CLI reports upstream
The Solution
The developer switched to the claude-agent-sdk after discovering that Nanoclaw (26k stars) uses this approach without billing issues. The SDK provides the same full Claude Code experience — tool use, file editing, multi-step reasoning, MCP servers, memory — but as a Node.js library instead of a subprocess.
The SDK authenticates through existing Claude Code login, so it bills as regular Max plan usage rather than third-party usage. The architecture remains similar: OpenClaw gateway receives requests, hands them to the extension, which calls query() from the SDK, parses streaming messages, and translates them back to OpenAI-compatible SSE.
Installation
git clone https://github.com/siimvene/openclaw-claude-runner.git
cd openclaw-claude-runner
bash install.sh
claude login
openclaw gateway restart
Compatibility
Works with Opus 4.6, Opus 4.5, Sonnet 4.6, Sonnet 4, Haiku 4.5 — whatever the SDK supports. The developer also rewrote the Codex runner using OpenAI's codex-sdk for the OpenAI side.
This approach maintains the same functionality while avoiding the billing classification issues that affected the CLI-based implementation.
📖 Read the full source: r/openclaw
👀 See Also

Chrome Extension Bridges Google Messages to Claude Code via MCP
A developer built a Chrome extension that connects Google Messages Web to Claude Code using MCP with stdio and WebSocket transport. The extension lists chats, reads messages, and drafts replies but currently can't send messages due to Angular's zone.js isolation.

BusyDog Desktop: A Local AI Agent with P2P Networking for Mac
BusyDog Desktop is a local AI agent that runs Claude directly on a Mac, can read/write files, run terminal commands, control browsers, and connect with other agents via a P2P network using Hyperswarm DHT and a custom BDP protocol.

Fino: Open-Source MCP Server for Personal Finance Analysis with Claude
Fino is a free, open-source MCP server that connects Claude to bank accounts through Plaid, stores transaction data locally in SQLite, and provides Claude with tools for financial analysis.

Reddit user experiments with failure-learning coding agents to break retry loops
A developer on r/LocalLLaMA describes experimenting with coding agents that learn from failures by storing simplified root causes and matching fixes, reducing repetitive error loops.