Xagent v0.7.4
Zendesk, Shopify and Xero connectors, conflict-checked calendar writes, much deeper Google Workspace and OneDrive support, configurable Auto model routing, OpenTelemetry metrics, and a task execution architecture overhaul
π Released September 13, 2026
π How to update
cd xagent && git pull
docker compose up -d
pip install --upgrade xagent-ai
β Highlights
Conflict-checked calendar
Conflicts are checked before Calendar writes, with recurring and all-day events, real Meet links and attendee invites.
Workspace & OneDrive
Drive sharing and permission tools, real binary uploads, Slides slide editing, Gmail attachments and OneDrive large-file sessions.
Execution architecture
Task coordinator ownership and lifecycle foundations, with execution moved out of the web API routes into runner services.
π What's New
π Three new connectors
Adds Zendesk and Shopify MCP connectors and registers personal Xero OAuth; team members can now edit a team-shared Custom API.
π Conflict checking and full calendar events
Adds conflict-checking foundations and OAuth scopes, checks conflicts before Calendar writes, creates recurring and all-day events, and attaches real Google Meet links while inviting attendees.
π Google Workspace and OneDrive
Drive gains sharing and permission tools plus real binary uploads, and writes downloaded/exported files to disk instead of decoding them as text; Slides adds update_slide/delete_slide and per-slide layouts; Gmail sends attachments; OneDrive supports large-file upload sessions.
π§ Configurable Auto model routing
Adds configurable Auto model routing and keeps Auto model bindings and resolution consistent; supports DeepSeek Flash and inactive model guards.
π§± Task execution overhaul
Adds task coordinator ownership and lifecycle foundations, a dormant task start protocol, shared execution data and event foundations, and execution event storage; task execution, control commands, reply recovery and startup orchestration move out of the web API routes into runner services.
π Actor-scoped isolation and OAuth hardening
Isolates the actor OAuth runtime, adds actor-scoped stdio connection storage and enforces actor-scoped stdio execution, supports frozen remote OAuth classification, and tells the OAuth token resolver hook what auth a connector declares.
π§ Memory subsystem
Adds a compatibility capability surface, resumable LanceDB maintenance, and safe admission and fallback primitives.
π OpenTelemetry runtime metrics
Adds OpenTelemetry runtime performance metrics, with a bounded runtime performance baseline runner.
π§© Artifacts and attachments
Adds modular artifact format validation, and delivers explicit Base64 outputs as managed attachments.
π API key verification on SHA-256
Migrates API key verification to SHA-256.
β° Local-time validation tool
Adds a tzdata-backed local-time validation tool.
π Stability & Polish
- Read pre-partition checkpoints under the run a resume just minted
- KB: own team ingest jobs by the acting member
- RAG: stop the chunk splitter from deleting separators
- Preserve currency in Markdown rendering
- Stabilize concurrency tests with explicit synchronization and drop flaky wall-clock assertions
- Tests: clear the whole degradation registry between interaction tests
- Connectors: state the hook session contract and refuse a hook that ends the caller transaction
- Preserve Markdown table content and readability
- Agent: activate request-only language guidance
- Triggers: only stamp finished_at when the run reaches a terminal status
- Connectors: run the app-teardown hook call off the event loop thread
- Add bounded setup and trigger diagnostics
- Fence task execution writes by lease attempt
- Agent: discard the parked tool plan before the waiting_for_user checkpoint
- Report a mismatched checkpoint run tag as its own anchor failure reason
- Agent: suppress same-turn duplicate write-tool calls in the ReAct loop
- Aggregate tool usage from persisted trace events
- Stop the grounding rule and compaction summaries from licensing fabricated answers
- MCP: drop the caller allow-list from unavailable MCP placeholder tools
- Google Slides: support per-slide layout and require body for content slides
- Give create()βs unclassified handoff degradation its own reason word
- Frontend: reconcile user turns by identity, not by matching text
- KB: pool async LanceDB connections across event loops
- Compaction: bound what a summary request is asked to read
- Clean up completed background task owners
- Drain cancelled persistence and isolate heartbeat lock contention
- ReAct: give every waiting_for_user message an answerable field
- Replay one event per assistant question
- Stabilize concurrent auth and cancellation tests
- Agents: resolve an empty model config instead of failing the delegation, and inherit the ownerβs default general model when none is stated
- Upload real OneDrive file bytes with a bounded single request
- Tighten task control boundary regressions
- Pin reply recovery error contracts
- Keep authentication database sessions worker-owned
- Frontend: give ClarificationFormβs onSend a typed failure contract
- Yield between buffered LLM stream chunks
- Reduce trace dispatch logging overhead and skip task event work when a task has no audience
- KB: drop the dead legacy cleanup-cascade helper, make the store data plane concurrency-safe, and relocate LanceDB cleanup filters to the storage layer
- Frontend: remove dead user-message frame handlers
- Share the ReAct tool invocation lifecycle boundary
- Docs: correct stale premises in checkpoint recovery and staging comments