{"status":"ok","service":"vm2api","base_url":"http://127.0.0.1:8787","rewrite":"off","intercept_rules":0,"active_vm":"vm-02","features":["passthrough","stream","verified-stream","protocol-convert","go-slot-worker","account-pool-failover","weighted-round-robin","tools","client-workspace","api-direct-kernel","count_tokens","account_usage"],"capabilities":{"runtime":"docker-container","kernel":"mixed-os-docker","worker":"go-slot-worker","client_tools":true,"images":true,"multi_turn_native":true,"sticky":"vm-account","claude_session":false,"workspace_default":"client","tool_execution":"client","forward_default":"relay","stream_delivery_default":"realtime","stream_delivery_optional":"verified"},"limitations":{"client_tools":"kept in native Messages and executed by the caller","images":"all native Messages image blocks are forwarded by the Go slot worker","multi_turn_native":"full Messages history is preserved for every account attempt","claude_session":"sticky commits only after a terminally verified response","kernel":"one Docker container and one long-lived Go worker per slot; not a KVM guest","workspace":"client only; VM/Claude-CLI inference has been removed","forward":"Rust kernel uses slot egress (SOCKS5 or local) with no Go hop","oauth":"the Go slot worker Refresher.Ensure is the sole refresh manager and uses the same slot SOCKS5","realtime_stream":"account failover stops after the first downstream business event; verified mode buffers to message_stop"},"stats":{"requests":11,"passthrough":11,"convert":0,"rewrite":0,"stream":0,"errors":11,"by_route":{"anthropic.messages":11}},"health_probe":{"ok":false,"at":null,"stale":true,"vm_id":null,"model":null,"message_id":null,"text":null,"status":0,"error":null,"duration_ms":null,"next_at":null,"age_ms":null,"cache_ttl_sec":900,"cache_models":[],"cache_model":""},"api_kernel":{"bin":false,"socket":false,"endpoints":0}}