* feat(agentsapi): project native output and reconcile saved history
* fix(agentsapi): retain observed usage after accounting read failures
ClawSweeper: "Retain observed usage when the final REST read fails"
https://github.com/openclaw/openclaw/pull/156182#issuecomment-5789452458
Merge final REST usage with observed usage by admitted turn ID. Canonical
records replace matching contributions, while omitted turns keep observed
usage and repeated accounting does not double count them.
* test(agentsapi): cover projection usage and authoritative session receipts
* refactor(agentsapi): keep projection implementation helpers module-local
* test(agentsapi): use the projection factory and preserve fixture types
---------
Co-authored-by: Sarah Fortune <sarah.fortune@gmail.com>
* fix(agentsapi): include conversation context in native messages
* refactor(agentsapi): use private attempt context helper
* refactor(agents): keep inbound context type with shared owner
* fix(gateway): preserve context for active harness messages
---------
Co-authored-by: Sarah Fortune <sarah.fortune@gmail.com>
OpenClaw needs an alternative OpenAI harness that owns a hosted agent session instead of connecting to a Codex app-server session.
Add an explicitly selected Agents API plugin for hosted Linux sessions with API-key authentication, text streaming, session reuse, steering, interruption, and native idle settlement. Reuse shared binding and transcript authority, and dispatch the shared completion hooks from the actual attempt result.
Validation: required final-head CI passed; ClawSweeper accepted the real Docker authority proof and reports no remaining findings. Native Linux/arm64 Docker flows verified hosted VM execution, steering, authorized interruption, queued-input cancellation, completion-hook delivery, successor isolation, and strict transcript rejection. No local unit tests, mocks, or fakes were used.
Token accounting is best effort when terminal events omit usage. Apps, connectors, custom executors, file transfer, image generation, and additional configuration remain outside this MVP.
Co-authored-by: Sarah Fortune <sarah.fortune@gmail.com>