Skip to content

Bump sagents from 0.3.1 to 0.7.0#8

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/hex/sagents-0.7.0
Open

Bump sagents from 0.3.1 to 0.7.0#8
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/hex/sagents-0.7.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github May 14, 2026

Copy link
Copy Markdown

Bumps sagents from 0.3.1 to 0.7.0.

Release notes

Sourced from sagents's releases.

v0.7.0

What's Changed

New Contributors

Full Changelog: sagents-ai/sagents@v0.6.0...v0.7.0

v0.6.0

What's Changed

Full Changelog: sagents-ai/sagents@v0.5.1...v0.6.0

v0.5.1

Full Changelog: sagents-ai/sagents@v0.5.0...v0.5.1

v0.4.4

What's Changed

Full Changelog: sagents-ai/sagents@v0.4.3...v0.4.4

v0.4.3

What's Changed

... (truncated)

Changelog

Sourced from sagents's changelog.

Upgrading from v0.7.0 to v0.8.0-rc.1

Transport change (PR #79): Sagents.PubSub is removed. Subscriptions to per-agent and per-filesystem events now go through Sagents.Subscriber and the producer's own subscriber tracking. Phoenix.Presence (for discovery) is unchanged.

To migrate a host application:

  1. Remove any direct calls to Sagents.PubSub.subscribe/1 / broadcast/2. Replace with use Sagents.Subscriber in your LiveViews/GenServers and call the generated subscribe/2 helper, or pass :initial_subscribers when starting servers to enroll the caller inside init/1 and avoid the start/subscribe race.
  2. Re-run mix sagents.setup (or the relevant generators) on a clean, committed workspace and merge customizations back in. The generator now emits a new agent_subscriber_session.ex template; coordinator.ex and agent_live_helpers.ex are substantially trimmed.
  3. Existing handle_info/2 clauses keep matching — event payload shapes ({:agent, _}, {:file_system, _}, {:status_changed, _, _}, {:llm_deltas, _}, etc.) are unchanged.

SubAgent argument rename (PR #78): The task and get_task_instructions tools now take task_name instead of subagent_type. The available-tasks listing moved out of the task tool's description into an ## Available Tasks system-prompt section (suppressible via the new :include_task_list option).

To migrate:

  1. Persisted state: No action needed if you use Sagents.Persistence.StateSerializer.deserialize_server_state/2. The serializer bumps the on-disk format to v2 and auto-rewrites "subagent_type""task_name" on stored task / get_task_instructions tool-call arguments.
  2. Pattern matches on interrupt data: Rename the key in any match like %{type: :subagent_hitl, subagent_type: type, sub_agent_id: id} to task_name. Shape is otherwise unchanged.
  3. Resume-info maps: Callers building context.resume_info for sub-agent resume must use :task_name instead of :subagent_type.
  4. Custom prompts: Update any prompt or doc referencing the old subagent_type argument or "Available SubAgents" wording — the new section is ## Available Tasks and the argument is task_name. get_task_instructions is now async: false, so the model blocks until the usage guide is returned.

Added

  • Optional debug_summary/1 callback on the Sagents.Middleware behaviour — middleware authors can return a small map or string for the live debugger to render instead of inspect/2 on the full config. Implemented for SubAgent middleware to drop the heavy agent_map from the debugger's Middleware tab #80
  • :include_task_list option on SubAgent middleware (default true) — opt out of rendering the auto-generated task menu when integrators want to drive task selection externally #78
  • Sagents.Publisher and Sagents.Subscriber modules — new direct-delivery transport replacing Phoenix.PubSub, with :initial_subscribers start option to enroll subscribers inside init/1 and a Presence-based recovery loop for crash-restart and Horde migration #79
  • New agent_subscriber_session.ex generator template — captures the LiveView subscribe/recovery lifecycle in one place #79
  • docs/subscriptions_and_presence.md — documents the Publisher/Subscriber model, :initial_subscribers, and the five lifecycle scenarios #79

Changed

  • BREAKING: SubAgent middleware tools (task, get_task_instructions) now take task_name instead of subagent_type. Interrupt-data and resume-info maps use :task_name. Persisted v1 state is migrated to v2 automatically by StateSerializer #78
  • BREAKING: Sagents.PubSub removed. Agent and FileSystem events now flow over Sagents.Publisher / Sagents.Subscriber instead of Phoenix.PubSub. Generator templates (coordinator.ex, agent_live_helpers.ex) updated #79
  • get_task_instructions is now async: false — the model waits for the usage guide before calling task #78
  • Available sub-agents now rendered as an ## Available Tasks section in the middleware system prompt instead of being inlined into the task tool description #78
  • Bumped langchain dependency to >= 0.8.4 to pick up the stabilized delta_conversion_failed error type #77

Fixed

  • Friendlier user-facing message when the LLM returns a malformed streaming delta — delta_conversion_failed errors now render a short "please try again" message instead of leaking internal jargon. Applied in both AgentServer and the generated agent_live_helpers.ex template #77
  • Doc-generation warning resolved #75

v0.7.0

Introduces first-class scope propagation across all integration boundaries — persistence, file system callbacks, and message preprocessing — so multi-tenant and authorization-aware applications can stop threading scope through tool_context workarounds. Also adds a configurable max_run guard on agents and sub-agents, fixes a bug where on_server_start state updates were silently discarded, hardens the FileSystem line-number semantics, and patches several generator template issues.

Breaking changes — see Upgrading section below.

Upgrading from v0.6.0 to v0.7.0

A MIGRATION_PROMPT_v0.6.0_TO_v0.7.0.md file is included in the repository root. Give it to your coding assistant — it contains exact before/after signatures, step-by-step instructions, and coverage of non-obvious call sites (tests, direct calls, tool functions that previously used the tool_context scope workaround).

The four affected behaviour modules are AgentPersistence, DisplayMessagePersistence, FileSystemCallbacks, and MessagePreprocessor — every callback in each gains scope as a new first positional argument. The AgentPersistence context argument also changed from a bare atom/string to a typed map. The Coordinator call site gains a scope: option that must be threaded through from the caller.

For generated files, re-run mix sagents.setup with the same options on a clean, committed workspace, accept the overwrites, and merge your customizations back in with a diff tool.

Added

... (truncated)

Commits
  • 2bd6544 updated readme an lock file
  • 77246ea updated changed (#74)
  • cbaf972 Update docs and templates for first-class scope channel (#73)
  • e6e7a8e major refactoring for "scope" access (#72)
  • 99f6f75 Handle linked port EXIT in FileSystemServer when trap_exit is on (#70)
  • 6e846a9 Fix filesystem line-number semantics and return post-edit preview (#71)
  • 5afec8c expose max_run configuration option (#69)
  • dff884f Use state returned from middleware on_server_start (#67)
  • 5068313 fix generated load_display_messages (#68)
  • 0ef21b5 make SubAgent.task_subagent_boilerplate public (#66)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [sagents](https://github.com/sagents-ai/sagents) from 0.3.1 to 0.7.0.
- [Release notes](https://github.com/sagents-ai/sagents/releases)
- [Changelog](https://github.com/sagents-ai/sagents/blob/main/CHANGELOG.md)
- [Commits](sagents-ai/sagents@v0.3.1...v0.7.0)

---
updated-dependencies:
- dependency-name: sagents
  dependency-version: 0.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file elixir Pull requests that update elixir code labels May 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file elixir Pull requests that update elixir code

Development

Successfully merging this pull request may close these issues.

0 participants