s2.dev

@s2.dev

API for unlimited, durable, real-time streams

anything | tsf Launching tail.surf: live gists for terminals, apps, and agents. Pipe any output into tsf and get a stable URL. Follow live, scrub back in time, or replay the full history.

You can now use S2 as a backend for Mastra Durable Agents! The @ s2-dev/mastra-pubsub adapter maps each durable topic to an S2 stream, with live delivery, replay after refreshes or process restarts, and distributed leases for coordinating thread ownership across processes.

Bild

S2 source and sink plugins are now available for Streamling. Read durable S2 streams into Arrow batches, or write Streamling output back to S2. ClickHouse ingestion, Postgres CDC, and a full Postgres → S2 → ClickHouse example: s2.dev/docs/integr...

Bild

turns out "stream per session" is not just for agents. it works for browser sessions too. built RePlaya, a self-hosted session replay tool where each visit is just an @s2.dev stream you can play back or tail live. recording = append playback = read live replay = tail github.com/s2-streamsto...

There's two new ways to manage S2 as code! The Terraform provider lets you manage resources with full lifecycle support. Available on the Terraform Registry at s2-streamstore/s2. Or you can use the CLI by `s2 apply` which takes a declarative JSON spec and creates/reconfigures specified resources.

The s2.dev dashboard now has a Data Plane studio to make it convenient to work with streams. You can: -Do one-shot reads, live tail from any stream, start from an offset, seq no., or timestamp -Append records in multiple modes -Run stream commands -Inspect records with command record aware rendering

S2 is now SOC 2 Type II compliant! We are committed to continuously improving our security posture.