Releases: VoltAgent/voltagent
@voltagent/libsql@2.1.2
Patch Changes
-
#1085
f275dafThanks @omeraplak! - Fix workflow execution filtering by persisted metadata across adapters.- Persist
options.metadataon workflow execution state so/workflows/executionsfilters can match tenant/user metadata. - Preserve existing execution metadata when updating cancelled/error workflow states.
- Accept
options.metadatain server workflow execution request schema. - Fix LibSQL and Cloudflare D1 JSON metadata query comparisons for
metadataandmetadata.<key>filters.
- Persist
-
#1082
73cf1d3Thanks @omeraplak! - Fix workflow state persistence parity across SQL adapters.This update persists and returns
input,context, and top-levelworkflowStatein workflow state operations. It also ensures suspended workflow state queries includeevents,output, andcancellation, and adds adapter migrations/column additions where needed.
@voltagent/core@2.4.4
Patch Changes
-
#1085
f275dafThanks @omeraplak! - Fix workflow execution filtering by persisted metadata across adapters.- Persist
options.metadataon workflow execution state so/workflows/executionsfilters can match tenant/user metadata. - Preserve existing execution metadata when updating cancelled/error workflow states.
- Accept
options.metadatain server workflow execution request schema. - Fix LibSQL and Cloudflare D1 JSON metadata query comparisons for
metadataandmetadata.<key>filters.
- Persist
-
#1084
95ad610Thanks @omeraplak! - Add stream attach support for in-progress workflow executions.- Add
GET /workflows/:id/executions/:executionId/streamto attach to an active workflow SSE stream. - Add replay support for missed SSE events via
fromSequenceandLast-Event-ID. - Keep
POST /workflows/:id/streambehavior unchanged for starting new executions. - Ensure streamed workflow resume uses a fresh suspend controller so attach clients continue receiving events after resume.
- Add
@voltagent/cloudflare-d1@2.1.2
Patch Changes
-
#1085
f275dafThanks @omeraplak! - Fix workflow execution filtering by persisted metadata across adapters.- Persist
options.metadataon workflow execution state so/workflows/executionsfilters can match tenant/user metadata. - Preserve existing execution metadata when updating cancelled/error workflow states.
- Accept
options.metadatain server workflow execution request schema. - Fix LibSQL and Cloudflare D1 JSON metadata query comparisons for
metadataandmetadata.<key>filters.
- Persist
-
#1082
73cf1d3Thanks @omeraplak! - Fix workflow state persistence parity across SQL adapters.This update persists and returns
input,context, and top-levelworkflowStatein workflow state operations. It also ensures suspended workflow state queries includeevents,output, andcancellation, and adds adapter migrations/column additions where needed.
@voltagent/core@2.4.3
Patch Changes
-
#1078
fbce8aaThanks @omeraplak! - fix: persist workflow context mutations across steps and downstream agents/toolsWorkflows now consistently use the execution context map when building step state.
This ensures context written in one step is visible in later steps and inandAgentcalls.Also aligns workflow event/stream context payloads with the normalized runtime context.
@voltagent/core@2.4.2
Patch Changes
-
#1072
42be052Thanks @omeraplak! - fix: auto-register standalone Agent VoltOps client for remote observability export- When an
Agentis created withvoltOpsClientand no global client is registered, the agent now seedsAgentRegistrywith that client. - This enables remote OTLP trace/log exporters that resolve credentials via global registry in standalone
new Agent(...)setups (withoutnew VoltAgent(...)). - Existing global client precedence is preserved; agent-level client does not override an already configured global client.
- Added coverage in
client-priority.spec.tsfor both auto-register and non-override scenarios.
- When an
-
#1064
047ff70Thanks @omeraplak! - Add multi-step loop bodies forandDoWhileandandDoUntil.- Loop steps now accept either a single
stepor a sequentialstepsarray. - When
stepsis provided, each iteration runs the steps in order and feeds each output into the next step. - Workflow step serialization now includes loop
subStepswhen a loop has multiple steps. - Added runtime and type tests for chained loop steps.
- Loop steps now accept either a single
@voltagent/ag-ui@1.0.4
Patch Changes
- #1074
e2793c1Thanks @omeraplak! - fix: preserve assistant feedback metadata across AG-UI streams- Map VoltAgent
message-metadatastream chunks to AG-UICUSTOMevents, which are the protocol-native channel for application-specific metadata. - Stop emitting legacy internal tool-result metadata markers from the adapter.
- Remove the legacy metadata marker filter from model-input message conversion.
- Map VoltAgent
@voltagent/server-core@2.1.6
Patch Changes
-
#1059
ec82442Thanks @omeraplak! - feat: add persisted feedback-provided markers for message feedback metadataAgentFeedbackMetadatanow supportsprovided,providedAt, andfeedbackId.- Added
Agent.isFeedbackProvided(...)andAgent.isMessageFeedbackProvided(...)helpers. - Added
agent.markFeedbackProvided(...)to persist a feedback-submitted marker on a stored message so feedback UI can stay hidden after memory reloads. - Added
result.feedback.markFeedbackProvided(...)andresult.feedback.isProvided()helper methods for SDK usage. - Updated server response schema to include the new feedback metadata fields.
const result = await agent.generateText("How was this answer?", { userId: "user-1", conversationId: "conv-1", feedback: true, }); if (result.feedback && !result.feedback.isProvided()) { // call after your feedback ingestion succeeds await result.feedback.markFeedbackProvided({ feedbackId: "fb_123", // optional }); }
-
Updated dependencies [
b0482cb,f36545c,ec82442,b0482cb,b0482cb,9e5ef29]:- @voltagent/core@2.4.1
@voltagent/sandbox-e2b@2.0.2
Patch Changes
-
#1051
b0482cbThanks @omeraplak! - fix: align sandbox package core dependency strategy with plugin best practices- Update
@voltagent/sandbox-daytonato use@voltagent/coreviapeerDependencies+devDependenciesinstead of runtimedependencies. - Raise
@voltagent/sandbox-daytonapeer minimum to^2.3.8to match runtime usage ofnormalizeCommandAndArgs. - Align
@voltagent/sandbox-e2bdevelopment dependency on@voltagent/coreto^2.3.8.
- Update
-
#1068
b95293bThanks @omeraplak! - feat: expose the underlying E2B SDK sandbox instance fromE2BSandbox.- Added a public
getSandbox()method that returns the originale2bSandboxinstance so provider-specific APIs (for examplefiles.read) can be used directly. - Added
E2BSandboxInstancetype export for the underlying SDK sandbox type.
- Added a public
@voltagent/sandbox-daytona@2.0.2
Patch Changes
-
#1051
b0482cbThanks @omeraplak! - fix: align sandbox package core dependency strategy with plugin best practices- Update
@voltagent/sandbox-daytonato use@voltagent/coreviapeerDependencies+devDependenciesinstead of runtimedependencies. - Raise
@voltagent/sandbox-daytonapeer minimum to^2.3.8to match runtime usage ofnormalizeCommandAndArgs. - Align
@voltagent/sandbox-e2bdevelopment dependency on@voltagent/coreto^2.3.8.
- Update
-
#1068
b95293bThanks @omeraplak! - feat: expose the underlying Daytona SDK sandbox instance fromDaytonaSandbox.- Added a public
getSandbox()method that returns the original@daytonaio/sdkSandboxinstance so provider-specific APIs can be used directly. - Added
DaytonaSandboxInstancetype export for the underlying SDK sandbox type.
- Added a public
@voltagent/core@2.4.1
Patch Changes
-
#1051
b0482cbThanks @omeraplak! - Fix workspace skill prompt injection and guidance for skill access tools.- Change activated skill prompt injection to include metadata only (
name,id,description) instead of embedding fullSKILL.mdinstruction bodies. - Clarify workspace skills system prompt so agents use workspace skill tools for skill access and avoid sandbox commands like
execute_command,ls /skills, orcat /skills/....
- Change activated skill prompt injection to include metadata only (
-
#1067
f36545cThanks @omeraplak! - fix: persist conversation progress incrementally during multi-step runs- Added step-level conversation persistence checkpoints so completed steps are no longer only saved at turn finish.
- Tool completion steps (
tool-result/tool-error) now trigger immediate persistence flushes in step mode. - Added configurable agent persistence options:
conversationPersistence.mode("step"or"finish")conversationPersistence.debounceMsconversationPersistence.flushOnToolResult
- Added global VoltAgent default
agentConversationPersistenceand wiring to registered agents.
-
#1059
ec82442Thanks @omeraplak! - feat: add persisted feedback-provided markers for message feedback metadataAgentFeedbackMetadatanow supportsprovided,providedAt, andfeedbackId.- Added
Agent.isFeedbackProvided(...)andAgent.isMessageFeedbackProvided(...)helpers. - Added
agent.markFeedbackProvided(...)to persist a feedback-submitted marker on a stored message so feedback UI can stay hidden after memory reloads. - Added
result.feedback.markFeedbackProvided(...)andresult.feedback.isProvided()helper methods for SDK usage. - Updated server response schema to include the new feedback metadata fields.
const result = await agent.generateText("How was this answer?", { userId: "user-1", conversationId: "conv-1", feedback: true, }); if (result.feedback && !result.feedback.isProvided()) { // call after your feedback ingestion succeeds await result.feedback.markFeedbackProvided({ feedbackId: "fb_123", // optional }); }
-
#1051
b0482cbThanks @omeraplak! - Enable workspace skills prompt injection by default when an agent has a workspace with skills configured.- Agents now auto-compose a workspace skills prompt hook by default.
- Added
workspaceSkillsPrompttoAgentOptionsto customize (WorkspaceSkillsPromptOptions), force (true), or disable (false) prompt injection. - When a custom
hooks.onPrepareMessagesis provided, it now composes with the default workspace skills prompt hook unlessworkspaceSkillsPromptis explicitly set tofalse. - Updated workspace skills docs and the
examples/with-workspacesample to document and use the new behavior.
-
#1051
b0482cbThanks @omeraplak! - feat: improve workspace skill compatibility for third-partySKILL.mdfiles that do not declare file allowlists in frontmatter.- Infer
references,scripts, andassetsallowlists from relative Markdown links in skill instructions when explicit frontmatter arrays are missing. - This enables skills like
microsoft/playwright-cli(installed vianpx skills add ...) to read linked reference files through workspace skill tools without manual metadata rewrites.
- Infer
-
#1066
9e5ef29Thanks @omeraplak! - feat: improveproviderOptionsIntelliSense for provider-specific model settingsProviderOptionsnow includes typed option buckets foropenai,anthropic,google, andxai.- Existing top-level call option fields (
temperature,maxTokens,topP,frequencyPenalty,presencePenalty, etc.) remain supported for backward compatibility. - Added type-level coverage for provider-scoped options in the agent type tests.
- Updated docs to show provider-scoped
providerOptionsusage in agent, API endpoint, and UI integration examples.
await agent.generateText("Draft a summary", { temperature: 0.3, providerOptions: { openai: { reasoningEffort: "medium", textVerbosity: "low", }, anthropic: { sendReasoning: true, }, google: { thinkingConfig: { thinkingBudget: 1024, }, }, xai: { reasoningEffort: "medium", }, }, });