Skip to main content

Changelog — Weeks of Apr 27 & May 4, 2026

New features and improvements

ServiceNow

  • Added the ServiceNow integration — use Neo to manage ServiceNow tickets.

Agents & Tools

  • Added a Microsoft Graph TEAMS_AND_CHATS permission group

  • Calendar tools now let agents set a custom description on service calls, schedule entries, and appointments instead of only the ticket subject.

  • Expanded ConnectWise Automate API coverage to v2.5.7 — 96 operations across 68 endpoints.

  • Adaptive rate limiter on ConnectWise Asio RMM — learns from response headers and downgrades automatically on 429 responses.

  • Customer replies on a ticket now bypass the 180-second callback dedup window across ConnectWise, Autotask, and Halo, so agents react immediately when a customer responds.

  • Event history rows include a deep link to the ticket in your PSA.

Workflows & Triggers

  • Added a Stop Execution button on running workflows — cancel a misfiring run from the dashboard with a confirmation prompt.

  • Workflow update triggers now support ticket type as a watched field.

  • Workflow filter values are validated before save so you can't accidentally ship a workflow that references missing values.

Dashboard

  • Redesigned Create-from-template dialog — every workflow and agent has a plain-English name, scope meter, and integration requirements grouped by category so you can satisfy them with whichever vendor you have.

  • Analytics page now shows the in-progress (current) bucket and week-range labels for clearer trend reading.

  • "Enabled only" filter on the permission matrix now applies to integration permissions too, hiding noise from disabled integrations.

Sandbox

  • Sandbox scripts can now generate PDFs via reportlab + matplotlib (replacing fpdf2) — better fonts, charts, and layout control.

  • Sandbox emails sent via neo.client support file attachments end-to-end.

Billing

  • Agentic workflows are now billed on the resolved toolbox — auto-injected tools count toward the max tier, matching what's actually executed.

Performance

  • LLM prompt cache retention extended to 24 hours on supported models, dramatically reducing cold-start cache misses.

  • Compacted the Dispatch agenda table to reduce prompt tokens per run.

  • Capped PSA, RMM, and External API tool response sizes to protect agent input budget on large datasets.

Notifications

  • Suppressed transient ITGlue auth-failure emails — only final-attempt failures notify, eliminating false positives during brief outages.

  • Per-tenant deduplication on concurrency-cap Teams notifications so one busy tenant doesn't suppress alerts for unrelated tenants.


Bug fixes

Agents & Tools

  • Fixed RMM find_configurations not tagging devices with their source system, causing ambiguous matches across multiple RMMs.

  • Fixed empty-string ticket IDs bypassing the entityless TIL lookup path.

  • Fixed master-agent stalling on COMMENTED TIL approvals — added a code-level safety net.

  • Fixed agents accepting string query_parameters instead of objects in generic API tools — they now get a clear validation error.

  • Fixed the time-entry tool falling back to a "Time logged" placeholder when no summary was provided.

  • Fixed RMM dynamic-script execution running multiple times within the dedup TTL.

ConnectWise

  • Fixed CW PATCH failures when Service Item/Type/SubType IDs didn't match the destination board — values now carry over by name.

  • Fixed assigner using the pre-update board ID after a board change in the same workflow.

  • Fixed CW custom-fields JSON Patch guidance and added CW_ITEM validation.

  • Fixed triage matching CW predefined options by board-scoped name instead of global ID.

Autotask

  • Fixed Autotask "script upgrade mode" 500 errors — now treated as transient and retried.

  • Fixed Autotask billable-cycle PSA patch-retry recursion that could spike API calls.

  • Fixed dispatch including cancelled/rejected Autotask PTO entries when calculating availability.

Halo PSA

  • Fixed Halo dispatch using dateclosed IS_NULL instead of the open_only parameter, missing some open tickets.

  • Fixed Halo default-outcome behavior — now uses the first allowed outcome when none is configured.

  • Fixed Halo treating the "Unassigned" pseudo-agent (id=1) as a real owner.

Dispatch

  • Fixed dispatch losing the agenda "Now:" header when a tech had no appointments.

  • Fixed CW holiday matching and rejected past-dated schedule entries.

  • Added optimistic locking so parallel dispatch workflows can't double-book the same slot.

RMM

  • Fixed RMM components batch upsert using :name::type casts that failed on certain types — now uses CAST().

  • Fixed RMM device-sync heartbeats timing out at 5 minutes — bumped to 30 minutes for large fleets.

  • Fixed CW Asio RMM 404s on orphan companies — they're now skipped instead of failing the sync.

Integrations

  • Fixed Exchange Online connection failures going undetected — EXO session is now verified after Connect-ExchangeOnline and retried on transient errors.

  • Fixed a trailing comma in allowed_cmdlets.ps1 that broke every Exchange Online run.

  • Improved ITGlue test_connection — 5 attempts with exponential backoff to handle brief outages.

Sandbox

  • Fixed sandbox proxy JWT expiring mid-run — now refreshed automatically and fails loudly on expiry.

  • Fixed sandbox stderr overwhelming the agent's input budget on noisy commands.

Workflows & Triggers

  • Fixed in-flight chained-action runs ignoring stop signals.

  • Fixed test-mode notes not preserving the agent-authored body in MSP-visible logs.

Performance

  • Fixed analytics rolling 7-day buckets — they now end at the requested to_date instead of "now".

  • Fixed OpenAI client not retrying on aiohttp errors and asyncio.TimeoutError — these now engage the OpenAI-direct fallback.

Templates

  • Renamed BI templates category to "For vCIOs" and restored ScalePad in Integrations Needed.