流式聊天(SSE)
POST /v1/chat/stream:通过 Server-Sent Events 流式执行 Minara 轮次;每个 SSE 事件都是描述中间步骤的 JSON 负载。
POST /v1/chat/stream
通过 Server-Sent Events 流式执行 Minara 轮次。每个 SSE 事件都是描述中间步骤的 JSON 负载:LLM 增量、工具调用、工具结果或最终 Minara 消息。
| 方法 | POST |
| 路径 | /v1/chat/stream |
| 认证 | 设置 GATEWAY_AUTH_TOKEN 时需要 Authorization: Bearer <token> |
| 类别 | chat |
请求体
{ "message": "analyze BTC momentum" }响应体
text/event-stream — see the SSE envelope defined in `apps/agent/src/gateway/api.ts`.说明
除 message 外,所有字段均为可选字段。仅当使用 resume: true 继续已结束的服务商连接故障轮次时,才可省略 message。session_id 用于继续现有会话;省略它会创建新会话(此时 session_kind 选择界面类型,默认为 "chat")。retry: true 会替换会话的最新轮次,而不是叠加重复轮次。resume: true 必须提供现有 session_id;它会保留已完成的工具结果,从最近的持久化边界继续执行,并且不会新增可见的用户消息行。
轮次中途引导事件:通过 POST /v1/chat/interject 排队的消息注入正在运行的轮次时,会发出 user_interjection 事件({ "message": "...", "ts_ms": 1747000000000 })。最终 done 事件数据有两个可选字段:轮次由 POST /v1/chat/interrupt 停止时为 interrupted: true;pending_interjections: string[] 列出到达过晚而未能注入的消息,客户端应将其作为普通消息重新发送。无头调用方可选择提示词变体:可选请求体字段 surface("web" | "cli",默认 "web")和 prompt_mode("full" | "minimal",默认 "full")会调整系统提示词。cli 会省略自定义 URI 线协议;minimal 会挂载精简骨架(身份、技能/工具机制和基础 Markdown),并从注入上下文中移除个性化信息,同时保留技能目录、日期和工作目录。