Patch Changes
-
#1090
a91b598Thanks @threepointone! - Allow MCP clients to connect to localhost and loopback URLs again for local development while continuing to block private, link-local, and metadata endpoints. -
#1088
16e2833Thanks @threepointone! - Embed sub-agent (facet) API into the Agent base class. AddssubAgent(),abortSubAgent(), anddeleteSubAgent()methods directly onAgent, replacing the experimentalwithSubAgentsmixin. Uses composite facet keys for class-aware naming, guards scheduling andkeepAlivein facets, and persists the facet flag to storage so it survives hibernation. -
#1085
0b73a74Thanks @threepointone! - Remove unnecessary storage operations in McpAgent:- Fix redundant
propsread inonStart: skipstorage.get("props")when props are passed directly (only read from storage on hibernation recovery) - Replace elicitation storage polling with in-memory Promise/resolver: eliminates repeated
storage.get/put/deletecalls (up to 6 per elicitation) in favor of zero-storage in-memory signaling
- Fix redundant
-
#1086
e8195e7Thanks @threepointone! - Simplify Agent storage: schema version gating and single-row state- Skip redundant DDL migrations on established DOs by tracking schema version in
cf_agents_state - Eliminate
STATE_WAS_CHANGEDrow — state persistence now uses a single row with row-existence check, correctly handling falsy values (null, 0, false, "") - Clean up legacy
STATE_WAS_CHANGEDrows during migration - Add schema DDL snapshot test that breaks if table definitions change without bumping
CURRENT_SCHEMA_VERSION - Fix corrupted state test helper that was using incorrect row IDs
- Skip redundant DDL migrations on established DOs by tracking schema version in
-
#1081
933b00fThanks @threepointone! - Add default console.error logging to onWorkflowError() so unhandled workflow errors are visible in logs -
#1089
a1eab1dThanks @threepointone! - AddWorkspaceclass — durable file storage for any Agent with hybrid SQLite+R2 backend and optional just-bash shell execution. Usage:new Workspace(this, { r2, idPrefix }). Import fromagents/workspace.