Skip to content

Bump agents from 0.10.0 to 0.11.3 - #13

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/agents-0.11.3
Closed

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/agents-0.11.3

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Apr 18, 2026

Copy link
Copy Markdown
Contributor

Bumps agents from 0.10.0 to 0.11.3.

Release notes

Sourced from agents's releases.

agents@0.11.3

Patch Changes

  • #1330 b4d3fcf Thanks @​threepointone! - Fix subAgent() cross-DO I/O errors on first use and drop the "experimental" compatibility flag requirement.

    subAgent() cross-DO I/O fix

    Three issues in the facet initialization path caused "Cannot perform I/O on behalf of a different Durable Object" errors when spawning sub-agents in production:

    • subAgent() constructed a Request in the parent DO and passed it to the child via stub.fetch(). The Request carried native I/O tied to the parent isolate, which the child rejected.
    • The facet flag was set after the first onStart() ran, so broadcastMcpServers() fired with _isFacet === false on the initial boot.
    • _broadcastProtocol(), the inherited broadcast(), and _workflow_broadcast() iterated the connection registry without an _isFacet guard, letting broadcasts reach into the parent DO's WebSocket registry from a child isolate.

    Replaces the fetch-based handshake with a new _cf_initAsFacet(name) RPC that runs entirely in the child isolate, sets _isFacet before init, and seeds partyserver's __ps_name key directly. Adds _isFacet guards to _broadcastProtocol() and overrides broadcast() to no-op on facets so downstream callers (chat-streaming paths, workflow broadcasts, user this.broadcast(...)) are covered. Removes the previous internal _cf_markAsFacet() method — _cf_initAsFacet(name) is the correct entry point (it sets the flag before running the first onStart(), which _cf_markAsFacet did not).

    "experimental" compatibility flag no longer required

    ctx.facets, ctx.exports, and env.LOADER (Worker Loader) have graduated out of the "experimental" compatibility flag in workerd. agents and @cloudflare/think no longer require it:

    • subAgent() / abortSubAgent() / deleteSubAgent() — the @experimental JSDoc tag and runtime error messages no longer reference the flag. The runtime guards on ctx.facets / ctx.exports stay in place and now nudge users toward updating compatibility_date instead.
    • Think — the @experimental JSDoc tag no longer references the flag.

    No code change is required; remove "experimental" from your compatibility_flags in wrangler.jsonc if it was only there for these features.

  • #1332 7cb8acf Thanks @​threepointone! - Expose createdAt on fiber and chat recovery contexts so apps can suppress continuations for stale, interrupted turns.

    • FiberRecoveryContext (from agents) gains createdAt: number — epoch milliseconds when runFiber started, read from the cf_agents_runs row that was already tracked internally.
    • ChatRecoveryContext (from @cloudflare/ai-chat and @cloudflare/think) gains the same createdAt field, threaded through from the underlying fiber.

    With this, the stale-recovery guard pattern described in #1324 is a short override:

    override async onChatRecovery(ctx: ChatRecoveryContext): Promise<ChatRecoveryOptions> {
      if (Date.now() - ctx.createdAt > 2 * 60 * 1000) return { continue: false };
      return {};
    }

    No behavior change for existing callers. See docs/chat-agents.md (new "Guarding against stale recoveries" section) for the full recipe, including a loop-protection pattern using onChatResponse.

agents@0.11.2

Patch Changes

  • #1326 d5042a9 Thanks @​threepointone! - fix(mcp): block full IPv6 link-local range fe80::/10 in SSRF check

    isBlockedUrl in the MCP client claimed to block fe80::/10 but the previous startsWith("fe80") check only matched the narrower fe80::/16, letting valid link-local addresses in the fe81::febf:: range slip through. Replaced with a regex that matches the full /10 (first hextet fe80 through febf), factored the IPv6 private-range

... (truncated)

Changelog

Sourced from agents's changelog.

0.11.3

Patch Changes

  • #1330 b4d3fcf Thanks @​threepointone! - Fix subAgent() cross-DO I/O errors on first use and drop the "experimental" compatibility flag requirement.

    subAgent() cross-DO I/O fix

    Three issues in the facet initialization path caused "Cannot perform I/O on behalf of a different Durable Object" errors when spawning sub-agents in production:

    • subAgent() constructed a Request in the parent DO and passed it to the child via stub.fetch(). The Request carried native I/O tied to the parent isolate, which the child rejected.
    • The facet flag was set after the first onStart() ran, so broadcastMcpServers() fired with _isFacet === false on the initial boot.
    • _broadcastProtocol(), the inherited broadcast(), and _workflow_broadcast() iterated the connection registry without an _isFacet guard, letting broadcasts reach into the parent DO's WebSocket registry from a child isolate.

    Replaces the fetch-based handshake with a new _cf_initAsFacet(name) RPC that runs entirely in the child isolate, sets _isFacet before init, and seeds partyserver's __ps_name key directly. Adds _isFacet guards to _broadcastProtocol() and overrides broadcast() to no-op on facets so downstream callers (chat-streaming paths, workflow broadcasts, user this.broadcast(...)) are covered. Removes the previous internal _cf_markAsFacet() method — _cf_initAsFacet(name) is the correct entry point (it sets the flag before running the first onStart(), which _cf_markAsFacet did not).

    "experimental" compatibility flag no longer required

    ctx.facets, ctx.exports, and env.LOADER (Worker Loader) have graduated out of the "experimental" compatibility flag in workerd. agents and @cloudflare/think no longer require it:

    • subAgent() / abortSubAgent() / deleteSubAgent() — the @experimental JSDoc tag and runtime error messages no longer reference the flag. The runtime guards on ctx.facets / ctx.exports stay in place and now nudge users toward updating compatibility_date instead.
    • Think — the @experimental JSDoc tag no longer references the flag.

    No code change is required; remove "experimental" from your compatibility_flags in wrangler.jsonc if it was only there for these features.

  • #1332 7cb8acf Thanks @​threepointone! - Expose createdAt on fiber and chat recovery contexts so apps can suppress continuations for stale, interrupted turns.

    • FiberRecoveryContext (from agents) gains createdAt: number — epoch milliseconds when runFiber started, read from the cf_agents_runs row that was already tracked internally.
    • ChatRecoveryContext (from @cloudflare/ai-chat and @cloudflare/think) gains the same createdAt field, threaded through from the underlying fiber.

    With this, the stale-recovery guard pattern described in #1324 is a short override:

    override async onChatRecovery(ctx: ChatRecoveryContext): Promise<ChatRecoveryOptions> {
      if (Date.now() - ctx.createdAt > 2 * 60 * 1000) return { continue: false };
      return {};
    }

    No behavior change for existing callers. See docs/chat-agents.md (new "Guarding against stale recoveries" section) for the full recipe, including a loop-protection pattern using onChatResponse.

0.11.2

Patch Changes

  • #1326 d5042a9 Thanks @​threepointone! - fix(mcp): block full IPv6 link-local range fe80::/10 in SSRF check

    isBlockedUrl in the MCP client claimed to block fe80::/10 but the previous startsWith("fe80") check only matched the narrower fe80::/16, letting valid link-local addresses in the fe81::febf::

... (truncated)

Commits

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 [agents](https://github.com/cloudflare/agents/tree/HEAD/packages/agents) from 0.10.0 to 0.11.3.
- [Release notes](https://github.com/cloudflare/agents/releases)
- [Changelog](https://github.com/cloudflare/agents/blob/main/packages/agents/CHANGELOG.md)
- [Commits](https://github.com/cloudflare/agents/commits/agents@0.11.3/packages/agents)

---
updated-dependencies:
- dependency-name: agents
  dependency-version: 0.11.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot @github

dependabot Bot commented on behalf of github Apr 18, 2026

Copy link
Copy Markdown
Contributor Author

Labels

The following labels could not be found: dependencies. Please create it before Dependabot can add it to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

@keefetang

Copy link
Copy Markdown
Owner

Superseded — bumped all dependencies to latest in main

@keefetang keefetang closed this May 18, 2026
@dependabot @github

dependabot Bot commented on behalf of github May 18, 2026

Copy link
Copy Markdown
Contributor Author

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot
dependabot Bot deleted the dependabot/npm_and_yarn/agents-0.11.3 branch May 18, 2026 02:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant