close

Ably's changelog
Ably's changelog
ably.com

Ably Pub/Sub Dart SDK v0.1.0

 

New Client Library SDK

  

Version 0.1.0 of the Ably Pub/Sub Dart SDK has been released on pub.dev as an early adoption release. The SDK is well-tested and ready to build with. The API is stable for the majority of use cases, though some changes are possible before 1.0. We'd love to hear feedback from developers building with Dart and Flutter.

The SDK is a pure-Dart implementation that works across Flutter (mobile, desktop, web) and standalone Dart applications. This release covers the core Pub/Sub surface:

  • REST client — publish messages, retrieve channel history, manage presence, and fetch account stats

  • Realtime client — persistent connection with full connection state management (connecting, connected, disconnected, suspended, failed)

  • Authentication — API key, token auth, token request callbacks, and authUrl-based token fetching

  • MessagePack encoding — binary transport encoding alongside the default JSON encoding

  • Fallback host support — automatic failover to fallback endpoints on connection failure

  • Pagination — cursor-based pagination on history, presence, and stats responses

    The main entry points are RestClient and RealtimeClient. A working Flutter example app covering mobile, desktop, and web targets is included in the repository.

    For the full changelog, see the GitHub release page.

Ably CLI Release V1.1.1

 

Improvement

  

npx -p @ably/cli ably init now installs the CLI globally as part of the onboarding step, so the Ably CLI is available in every shell from then on. Run ably init --help to list available flags for finer control.

The install step is non-blocking: if it can't complete, for example because npm install -g would require elevated permissions on a system-wide Node install, init carries on with authentication and Agent Skills installation, and tells the user how to install manually afterwards.

For the full changelog, see the Github release page.

Ably CLI Release V1.1.0

 

New feature

  

The headline addition is ably init, a single command that takes a new developer from zero to fully set up. Run it through npx @ably/cli ably init and it will install the CLI on your machine, walk you through the OAuth login flow, and install the Ably Agent Skills bundle into whichever AI coding tools you have configured, all in one step. No separate npm install -g, no manual auth, no copy-pasting skill files into your editor's config directory. One command, and you're ready to build with Ably from your terminal or from inside Claude, Cursor, Windsurf, or VS Code.

The skills themselves are also installable on their own via ably skills install, for developers who already have the CLI set up and just want to add or refresh the AI assistant integration. Out of the box the CLI supports Claude Code, Cursor, VS Code, and Windsurf, with auto-detection of whichever of these you already have on your machine. Run ably init --help or ably skills install --help to see the available flags for finer control.

This release also adds ably channels get-message, a one-shot command for fetching the latest version of a message on a channel by its serial, completing the message lifecycle alongside the existing update, append, and delete commands.

For the full changelog, see the Github release page.

Ably CLI Release V1.0.0

 

New product

  

Version 1.0.0 of the Ably CLI has been released, marking the first stable major version of @ably/cli.

For anyone wiring the CLI into automation or AI agents, long-running commands now emit a structured JSON envelope with status and completed signals. Agents can tell exactly when a connection is live, a stream is flowing, or a command has finished. No more scraping log lines or guessing at exit timing. When a command fails, errors include a hint field that suggests the next step. The hint usually names a specific command to run resulting in agents that can self-heal in fewer turns, without a human in the loop.

Destructive operations now sit behind a unified --force flag. For a developer at the keyboard, that's a confirmation prompt before the command runs. For a script or an agent, the command refuses to run at all unless --force is passed explicitly. An agent given general access to the CLI therefore can't accidentally delete an app, revoke a token, or wipe a queue.

Authentication is simpler too. A new OAuth Device Authorization login flow replaces manual token handling, and works in SSH sessions, containers, and headless CI without any localhost callback. Multi-account is built in: sign in once per account, switch contexts with a single command, and tokens refresh transparently in the background. Authentication can also flow entirely through environment variables for CI and ephemeral runners.

For day-to-day work, output, flags, and positional arguments now follow the same conventions across every command. Commands also accept either a resource name or an ID where it makes sense, so you no longer have to look up an app ID before running apps update.

Coverage is also much broader. Pub/Sub, Chat, Spaces, push notifications, integrations, rules, queues, and the Control API now all have first-class commands. They share the same output, error, and pagination conventions, whether you're publishing a test message, pushing a notification, or rotating an API key.

For the full changelog, see the GitHub release page.

AI Transport SDK Release v0.1.0

 

Client Library SDK Improvement

  

Version 0.1.0 of the Ably AI Transport SDK has been released.

This release introduces end-to-end tool-calling support (including server-side tool-approval helpers for the Vercel AI SDK), new React context providers (TransportProvider and ChatTransportProvider) for simpler transport setup, improved error surfacing in useChat to match the default Vercel transport, and channel continuity detection on both client and server transports. The release also includes various API and type improvements around the Tree/View separation and associated React hooks.

For the full changelog, please visit the GitHub release page.

JS Client Library Release v2.21.0

 

Client Library SDK Improvement

  

Version 2.21.0 of the JS Client Library has been released.

This release introduces LiveObjects REST client: channel.object is now available on REST channel instances, exposing get() to read object state, publish() to send object operations, and generateObjectId() to create object IDs on the client side for atomic batch operations with cross-references between newly created objects.

For the full changelog, please visit the GitHub release page.

Laravel Broadcaster Library Release v1.0.8

 

Client Library SDK Improvement

  

Added support for laravel 13.

For the full changelog, please visit GitHub release page.

Python Client Library Release v3.1.1

 

Client Library SDK Fix

 

Pub/Sub

  

Version 3.1.1 of the Python Client Library has been released. This update fixes handling of normal WebSocket close frames and improved reconnection logic.

For the full changelog, please visit GitHub release page.

JS Client Library Release v2.20.0

 

Client Library SDK Improvement

  

Version 2.20.0 of the JS Client Library has been released.

With this release, the ably-js LiveObjects API is no longer in Public Preview and is now generally available.

This release introduces Ably protocol version 6 with improvements to LiveObjects subscription callback payloads, support for partial sync of LiveObjects state and server-initiated MAP_CLEAR operations. The useChannel React hook now also returns the history function.

For the full changelog, please visit the GitHub release page.

JS Chat SDK Release v1.3.0

 

Chat

    

Client Library SDK Improvement

  

Version 1.3.0 of the JS/React Chat SDK has been released.

This adds support for a new detail field on error responses received by a client. It can be used to transport custom moderation rejection data from Before Publish moderation integrations to clients.

For the full changelog, please visit the GitHub release page.