Spatient Desktop
Desktop capture client that turns any capture into clean, synchronized, training-ready data at the click of a button.
Download NowCapture training-ready data at the click of a button.
Available on
Traditional screen recorders were built for humans, not agents.
So we built the infrastructure & tooling for capturing training ready data at the click of a button or the call of a tool .
Configure once, press record, and instantly capture rich, extensible data you and your agents can leverage.
Not just an MP4.
Desktop capture client that turns any capture into clean, synchronized, training-ready data at the click of a button.
Download NowPrefer the terminal? Use our CLI for a lightweight, powerful alternative built for power users and AI agents.
Integrate capture directly into your product. Our headless daemon records in the background, driven by our SDK.
Desktop app for opening your captures and exploring all of their data, down to the individual frame.
A preview dataset of 20 hours of first-person shooter gameplay, captured by the Spatient client.
Coming soon on Hugging Face
We capture the foundational per-frame data every model needs, then let you enhance and extend it via jobs and plugins.
Measured on the machine, at the frame it happened on.
Enhance your data using our pre-built jobs, or create your own.
Develop custom plugins to enrich frames with your data at capture time.
The picture, encoded whole within a segment.
5 seconds at 5 frames a second is 25 frames per segment.
Agent readableHuman viewable
One row per frame, describing its position, size and presentation time.
One row per event standardised to support mouse, keyboard and gamepad events.
Working or playing as a team? Capture as one, with your whole team's frames and inputs in perfect sync.
Join a party and inherit its capture configuration.
Press record to ready up. Capture waits for the whole party.
Once everyone is ready, the party starts together on one clock.
Every manifest in the party shares its party_capture_id and details like party_capture_start_time, so you can line up what everyone saw at the same moment:
manifest.json
Each capture generates a detailed manifest describing the session, making it indexable and searchable.
A real session, captured on a MacBook. Nothing here is invented.
Your manifest can also be augmented with your own data:
plugin.py
Frames, inputs and audio, aligned at the source.
Our client records training ready data at capture time. Segmented and encoded for performance and efficiency.
Visuals, audio and inputs all temporally aligned to the machine's monotonic clock. Each frame encoded with the cause and effect.
Capture from multiple agents simultaneously, with each agent's capture aligned to the same timeline across machines.
One size rarely fits all. Tweak quality, FPS, segment length, cursor, audio and more to capture exactly what you need.
We gate our capture so nothing outside the capture target is ever recorded, so record and multi-task without worrying.
Modular and extensible build up of synced video and input data captured in realtime.
Everything you capture, queryable and enrichable.
Bucket storage with a powerful indexing layer on top, turning your captures into data queryable down to the frame.
Your captured data kept on-device or streamed to a storage backend in realtime, at intervals, every few megabytes or on session end, whatever works best.
Run periodic pre-built or custom enhancement jobs over your data so it keeps getting richer e.g. segmentation maps, text extraction, etc.
Access your data on your terms. Use our SDKs, APIs, or Viewer to tap into your information wherever and however you need it.
Explore your data-rich captures in our custom viewer, so you can analyse and review all your captures in one place.
One machine, or a whole network of them.
We support every major platform and wrestle with their native capture APIs, so you can capture anywhere.
Know and understand your capturers for improved sourcing and attribution of your data back to your capturers.
We handle the storage, warehousing, temporal indexing and how you reach it all at scale, so you can focus on capturing.
Let us handle the storage complexities: performance, security and efficiency so you focus on capturing, or handle it yourself.
Agents now have their own native screen recorder. They capture their demos, gameplay and computer use, unsupervised. Spawn a fleet and every one of them writes its own session.
Data Collectors
Building a data rich computer-use corpus, not just a folder of clips.
Auditing
Capture how your agent works, audit it then use the data to improve it.
Game Studios
Capture rich player gameplay within your game client to train better AI bots.
Teams
Fine tune computer-use models on the way you and your team work.
There's plenty of ways to get started, choose the one that works best for you or explore our SDK integration.
Private beta. Downloads open soon.
Contact us for accessLaunch the desktop client and authenticate through your chosen OAuth provider.
If you want to edit the default configurations, head over to the Settings panel, set your desired configuration and save your new profile.
Select your display and window targets from the selector. Then it's as simple as pressing Start.
End the recording by clicking the Stop button in the desktop app or the overlay.
Alternative route
Run our headless capture daemon locally and embed capture logic into any app, game, or harness via our SDK or gRPC.
Feel free to to reach out and ask any questions.
Have any question? Get in touch.