mirror of
https://github.com/lobehub/lobehub.git
synced 2026-03-26 13:19:34 +07:00
* add response api framework * finish response api structure * finish response api structure * ✨ feat: implement basic text generation for Response API (LOBE-5858) - Add instructions extraction from system/developer input messages - Add instructions param to ExecAgentParams, append to agent systemRole - Implement extractPrompt, extractAssistantContent, extractUsage in ResponsesService - Wire up execAgent + executeSync flow for non-streaming and streaming - Add logprobs field to output_text content parts for schema compliance - Fix truncation field to output string enum instead of object Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * ✨ feat: implement real token-level streaming for Response API (LOBE-5859) - Replace fake streaming (executeSync → emit events) with real streaming - Subscribe to InMemoryStreamEventManager for live stream_chunk events - Run executeSync in background, convert text chunks to output_text.delta SSE events - Add missing schema fields: item_id on content_part/text events, logprobs on delta/done events - Fix content_part.added/done to include item_id per OpenResponses spec Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * ✨ feat: implement tool calling output extraction for Response API (LOBE-5860) - Add extractOutputItems to convert AgentState messages to OpenResponses output items - Extract assistant tool_calls → function_call output items - Extract tool result messages → function_call_output output items - Skip message items for assistant messages that have tool_calls (avoid duplicates) - Add status field to function_call_output items per OpenResponses spec - Update FunctionCallOutputItemSchema with optional status field - Output array reflects execution order: function_call → function_call_output → message Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * ✨ feat: implement multi-turn conversations via previous_response_id (LOBE-5861) Encode topicId in response.id to enable stateless multi-turn conversation chaining. When previous_response_id is provided, extract topicId and pass to execAgent via appContext, which automatically loads history messages. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * 🐛 fix: add missing type fields for OpenResponses compliance (logprobs, item_id, input_tokens_details) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>