@voltagent/resumable-streams@2.0.2
VoltAgent/voltagent@voltagent/resumable-streams@2.0.2Mar 6, 2026by voltagent-bot
AI Summary
Added runtime memory envelope support and deprecated legacy top-level memory fields for resumable streams.
Key Highlights
- Added preferred per-call memory envelope with conversationId, userId, and options
- Deprecated legacy top-level memory fields
- Resumable stream identity resolution now reads from options.memory first
New Features
- Runtime memory envelope
- Deprecation of legacy memory fields
Full Release Notes
### Patch Changes
- [`99680b1`](https://github.com/VoltAgent/voltagent/commit/99680b1a9e22e9e94019ef014734da898c493e6c) Thanks [@omeraplak](https://github.com/omeraplak)! - feat: add runtime memory envelope (`options.memory`) and deprecate legacy top-level memory fields
### What's New
- Added a preferred per-call memory envelope:
- `options.memory.conversationId` for conversation-scoped memory
- `options.memory.userId` for user-scoped memory
- `options.memory.options` for memory behavior overrides (`contextLimit`, `semanticMemory`, `conversationPersistence`)
- Kept legacy top-level fields for backward compatibility:
- `options.conversationId`, `options.userId`, `options.contextLimit`, `options.semanticMemory`, `options.conversationPersistence`
- Legacy fields are now marked deprecated in type/docs, and envelope values are preferred when both are provided.
### Usage Examples
Legacy (still supported, deprecated):
```ts
await agent.generateText("Hello", {
userId: "user-123",
conversationId: "conv-123",
contextLimit: 20,
semanticMemory: {
enabled: true,
semanticLimit: 5,
},
conversationPersistence: {
mode: "step",
debounceMs: 150,
},
});
```
Preferred (new `memory` envelope):
```ts
await agent.generateText("Hello", {
memory: {
userId: "user-123",
conversationId: "conv-123",
options: {
contextLimit: 20,
semanticMemory: {
enabled: true,
semanticLimit: 5,
},
conversationPersistence: {
mode: "step",
debounceMs: 150,
},
},
},
});
```
### Server and Resumable Stream Alignment
- `@voltagent/server-core` now accepts/documents the `options.memory` envelope in request schemas.
- Resumable stream identity resolution now reads `conversationId`/`userId` from `options.memory` first and falls back to legacy fields.
- Added tests for:
- parsing `options.memory` in server schemas
- resolving resumable stream keys from `options.memory`
- Updated dependencies \[[`99680b1`](https://github.com/VoltAgent/voltagent/commit/99680b1a9e22e9e94019ef014734da898c493e6c)]:
- @voltagent/core@2.6.6