zeroclaw/src
argenis de la rosa d94e78c621 feat(streaming): add streaming support for LLM responses (fixes #211)
Implement Server-Sent Events (SSE) streaming for OpenAI-compatible providers:

- Add StreamChunk, StreamOptions, and StreamError types to traits module
- Add supports_streaming() and stream_chat_with_system() to Provider trait
- Implement SSE parser for OpenAI streaming responses (data: {...} format)
- Add streaming support to OpenAiCompatibleProvider
- Add streaming support to ReliableProvider with error propagation
- Add futures dependency for async stream support

Features:
- Token-by-token streaming for real-time feedback
- Token counting option (estimated ~4 chars per token)
- Graceful error handling and logging
- Channel-based stream bridging for async compatibility

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 05:01:13 -05:00
..
agent fix(agent): preserve native tool-call fallbacks and history fidelity 2026-02-17 17:55:38 +08:00
channels Implement cron job management tools and types 2026-02-17 17:06:28 +08:00
config style(cron): apply rustfmt ordering for exports 2026-02-17 17:06:28 +08:00
cost feat(browser): add optional computer-use sidecar backend (#335) 2026-02-17 00:31:45 +08:00
cron style(cron): apply rustfmt ordering for exports 2026-02-17 17:06:28 +08:00
daemon Implement cron job management tools and types 2026-02-17 17:06:28 +08:00
doctor feat(doctor): harden provider and workspace diagnostics 2026-02-17 17:20:56 +08:00
gateway fix(gateway): remove unused prompt bootstrap variables 2026-02-17 17:06:28 +08:00
hardware Ehu shubham shaw contribution --> Hardware support (#306) 2026-02-16 11:40:10 -05:00
health test: deepen and complete project-wide test coverage (#297) 2026-02-16 05:58:24 -05:00
heartbeat test: deepen and complete project-wide test coverage (#297) 2026-02-16 05:58:24 -05:00
integrations feat(channels): add DingTalk channel via Stream Mode 2026-02-17 00:53:13 +08:00
memory fix(channels): use platform message IDs to prevent duplicate memories 2026-02-16 19:04:37 -05:00
observability chore(clippy): clear warning backlog and harden conversions (#383) 2026-02-17 00:32:33 +08:00
onboard Implement cron job management tools and types 2026-02-17 17:06:28 +08:00
peripherals chore(lint): extend low-risk clippy cleanup batch 2026-02-17 16:40:58 +08:00
providers feat(streaming): add streaming support for LLM responses (fixes #211) 2026-02-17 05:01:13 -05:00
rag chore(lint): extend low-risk clippy cleanup batch 2026-02-17 16:40:58 +08:00
runtime fix: replace std::sync::Mutex with parking_lot::Mutex (#350) 2026-02-16 15:02:46 -05:00
security docs(security): document single-ampersand blocking in command policy 2026-02-16 23:06:27 -05:00
service refactor: consolidate CLI command definitions to lib.rs 2026-02-15 06:52:33 -05:00
skillforge fix(providers): use Bearer auth for Gemini CLI OAuth tokens 2026-02-15 14:32:33 -05:00
skills fix(skills): prevent path traversal in skill remove command 2026-02-15 08:15:41 -05:00
tools Implement cron job management tools and types 2026-02-17 17:06:28 +08:00
tunnel test: deepen and complete project-wide test coverage (#297) 2026-02-16 05:58:24 -05:00
identity.rs fix(providers): use Bearer auth for Gemini CLI OAuth tokens 2026-02-15 14:32:33 -05:00
lib.rs Implement cron job management tools and types 2026-02-17 17:06:28 +08:00
main.rs Implement cron job management tools and types 2026-02-17 17:06:28 +08:00
migration.rs feat(memory): lucid memory integration with optional backends (#285) 2026-02-17 00:31:50 +08:00
util.rs fix(channels): check response status in send() for Telegram, Slack, and Discord 2026-02-15 09:48:58 -05:00