Changelog
Mirrored from CHANGELOG.md in the library repository. For upgrade instructions, see Upgrading.
[0.30.1] - 2026-08-13
- Fixed
PromptCompactorprogress reporting and summary handling so completed compactions are reported reliably without duplicating generated summaries.
[0.30.0] - 2026-08-13
- Breaking: replaced agent-owned history with host-owned transcripts: use
agent.messagesfor active conversation state and attach aTranscriptto the event stream for persistence. - Breaking: renamed
TurnAccumulatortoTranscriptand updated the related transcript exports and persistence APIs. - Breaking: removed built-in memory APIs and automatic recall/record behavior; use tools for model-directed memory and
Instruct.addContext()for host-provided context. - Breaking: removed session-level annotations and transcript state; annotations now belong to turns or parts, with session-wide application state kept by the host.
- Breaking: refactored compaction into trigger, policy, and compactor layers with stateful compaction parts and
compaction:update/complete/errorevents; automatic compaction failures are now recorded without failing the user turn. - Improved
PromptCompactorprogress reporting and summary handling so repeated compactions avoid reusing prior summaries. - Updated the README, terminology docs, and 0.30.0 migration guide.
[0.29.0] - 2026-08-05
- Added Qwen 3.7 Flash and Qwen 3.8 Max model definitions.
- Updated Qwen model metadata with larger output limits for selected Qwen 3.6 and 3.7 models.
- Breaking: renamed tool-loop terminology from “turn” to “step”:
maxIterationsis nowmaxSteps,"max-iterations"is now"max-steps", stream events are nowstep:start/step:complete, andgenerateTurnis nowgenerateStep. - Added a 0.29.0 migration guide and terminology reference for the step/turn naming changes.
[0.28.0] - 2026-07-27
- Added
agent.stop()to stop an active turn at the next tool-batch boundary without interrupting in-flight work. - Added
agent.clear()to cancel queued agent operations while leaving the active turn untouched. - Added
PromptCompactorand automatic before/after-turn compaction triggers for easier long-session management. - Improved compaction cancellation, history handling, and messages for repeated compactions.
- Updated available model definitions and fixed Gemini thinking configuration for newer Gemini 3.x models.
[0.27.1] - 2026-07-17
- Added support for the Kimi K3 model.
[0.27.0] - 2026-07-10
- Improved model registry support for clearer model selection.
- Updated TypeScript support and improved type narrowing definitions.
[0.26.1] - 2026-07-09
- Fixed OpenAI tool schemas so optional properties are accepted correctly.
- Improved generation failure handling and exposed the clearer
AxleFailurename while keepingGenerateErroras an alias. - Improved stream turn accumulation error handling for more reliable failures.
- Removed the Gemini 3.5 Pro model option.
[0.26.0] - 2026-07-06
- Added experimental context compaction:
agent.onCompaction(callback)supplies the policy and strategy,await agent.compact()triggers it. Active history is replaced;agent.historynow exposesmessages(active),archive(raw append-only), andcompactions(receipts). Compaction renders as an agent turn containing a newcompactionpart and emitscompaction:start/compaction:endturn events. - Added
maxContextTokenstostream()/generate(): a token budget for the tool loop, checked after each turn settles. - Behavior change: loop limits are stops, not errors.
maxIterationsandmaxContextTokensreturnok: truewithstopped: "max-iterations" | "token-limit"instead of an error result. Non-positive limits throw at call time. - Breaking:
agent.history.logis nowagent.history.messages. - Breaking:
agent.snapshot()is now async; it waits for in-flight work to settle so snapshots are always at rest. - Breaking: removed
Agent.restore(); resume withnew Agent(config, session). - Breaking: removed
indexfromStreamEvent. Correlate tool events byid; text/thinking deltas belong to the most recently opened part. - Breaking: removed the
createHandleexport. - Added an
agent-compactionbaseline check exercising compaction end to end against live providers.
[0.25.5] - 2026-07-03
- Add Claude Fable, Sonnet 5; Gemini 3.5 models
[0.25.4] - 2026-06-17
- Improved
parallelizehandling for more reliable batched tool execution.
[0.25.3] - 2026-06-16
- Fixed OpenAI file handling so filenames and URLs are resolved correctly.
[0.25.2] - 2026-06-15
- Fixed tool calls with syntactically invalid JSON parameters so they are handled gracefully instead of failing.
[0.25.1] - 2026-06-13
- Consolidate vendor options for ChatCompletions
[0.25.0] - 2026-06-12
- Added a web search fallback for more reliable search behavior.
- Improved handling of non-text tool results.
[0.24.0] - 2026-06-11
- Added experimental subagent tools for delegating bounded work to other agents, with child turn-event forwarding (
action:child-event). - Added experimental parallel tool execution for running batched tool calls concurrently.
- Added tool context helpers for reporting usage and adding contextual information during runs, including a flat per-provider/model
Stats.breakdown. - Added the
tool:exec-errorstream event for fatal/aborted tool calls;Agent.on()now returns an unsubscribe function. - Behavior change: in
stream(), a user-providedonToolCallreturningnull/undefinednow falls through to executing the matching registry tool (matchinggenerate()'s existing semantics) instead of producing anot-foundresult. - Behavior change: a tool throwing an error merely named
AbortErrorwhile the run's signal is live is reported to the model as an ordinary tool error instead of aborting the run. - Fixed output fencing in generated content.
[0.23.1] - 2026-06-08
- Updated Anthropic thinking configuration support
[0.23.0] - 2026-06-08
- Improved observability with a simplified span-based tracing interface
- Added richer trace events, span completion details, and token/content logging for agent and streaming runs
- Added provider tool logging and support for routing observability data to multiple sinks
[0.22.1] - 2026-06-07
- Improved handling of chat-completions streaming errors
- Fixed Gemini citation handling
[0.22.0] - 2026-06-06
- Added support for OpenRouter web search citations
- Improved citation handling for web search results
- Fixed tool handling for interleaved tool calls
[0.21.0] - 2026-05-30
- Added support for Opus 4.8
- Added support for citations and thinking formats
- Added configurable retry options
- Added a convenience method for rehydrating agents
- Added metadata support for turns and messages
[0.20.0] - 2026-05-25
- Split the library and CLI into separate packages for clearer installation and usage
- Added
AgentSessionand snapshot restore APIs for saving and resuming agent sessions - Added
createAgentConfigfor easier agent configuration - Updated memory handling so memory is managed separately from
AgentConfig - Added documentation updates and removed Brave-related docs/support
[0.19.0] - 2026-05-24
- Added a browser-only export for client-side bundles that omits server-only code
- Added annotations support to Turns
[0.18.0] - 2026-05-22
- Added support for Gemini 3.5 Flash
- Standardized request options across providers, including output tokens, temperature, top-p, stop sequences, tool choice, and provider-specific options
- Renamed provider option types and runtime parameters; see the 0.18.0 migration guide for update details
- Updated usage stats to include cached tokens and thinking tokens
- Added a simple context counter and split MCP tools for more flexible tool usage
- Fixed bugs found during smoke testing
[0.17.0] - 2026-05-13
- Updated the Instruct constructor to use object-style options
- Improved Instruct schema typing to support any Zod schema
- Added clearer errors for missing template variables
- Improved result ergonomics for easier handling by applications
[0.16.3] - 2026-05-13
- Added vars mode to Instruct for easier variable-based prompting
- Fixed bugs found through live provider testing
[0.16.2] - 2026-05-11
- Fixed OpenAI and Chat Completions providers:
reasoning: falsenow sends no reasoning effort instead of minimal reasoning
[0.16.1] - 2026-05-11
- Added
z.enumandz.literalsupport to Instruct structured-output schemas
[0.16.0] - 2026-05-11
- Added
instructsupport to generate and stream APIs for supplying structured instructions directly - Updated structured output instructions to use JSON for more reliable parsing
- Added open-weight model options
- Improved cancellation behavior by propagating abort signals through MCP tool calls
[0.15.1] - 2026-05-08
- Added
AxleToolFatalErrorfor fatal tool failures, allowing generation, streaming, and agent runs to stop immediately without retrying or exposing the error to the model - Fatal tool errors now preserve available partial output, messages, usage, and tool context for easier handling by applications
[0.15.0] - 2026-05-08
- Abort operations now throw errors, making cancellation behavior easier to detect and handle
[0.14.0] - 2026-05-07
- Simplified the Agent and Instruct APIs for easier use and better TypeScript support
- Added support for binding inputs to Instruct templates with
withInputs,withInput, andclone - Improved template variable handling by consistently reporting missing required variables
[0.13.0] - 2026-05-06
- Added provider tool registries for configuring and organizing available tools
- Added streaming support for tool outputs and tool arguments
- Improved tool execution with abort-signal support and streamed command output
- Updated available models
[0.12.0] - 2026-04-30
- Added basic thinking/reasoning support to the generation API
- Added file support improvements: better
FileInfotypes, improved image type checks, file data support in chat completions, and new usage examples - Removed
instructionsas a concept fromInstruct, simplifying the interface
[0.11.0] - 2026-04-24
- Added support for OpenAI models
- Provider models are now exported from the package
[0.10.2] - 2026-04-24
- Added timing information to agent/generation output
- Added support for Claude Opus 4.7
[0.10.1] - 2026-04-07
- Update distribution artifacts and config
[0.10.0] - 2026-04-05
- Agent now emits Turns, with an updated agent interface to match
- Agent history now carries both Turn and Message parts in parallel, improving fidelity when converting between representations
- Added configuration support to hooks
- Improved error semantics and error reporting for tool-call not found cases
- Fixed a bug where history could be incorrectly committed when a cancellation was in flight
- Updated to latest dependencies and models
[0.9.0] - 2026-02-22
- Added procedural memory support, allowing agents to retain and recall information across interactions
- Made the tool call callback optional when using
generate, reducing boilerplate for simple use cases - Simplified tracing interfaces for easier integration and usage