---
title: "onescope docs"
url: https://recursiveai.org/onescope/docs/
description: "Everything about OneScope 1.0.0: getting started, the shell and its operations, time and forks, watching a running program, writing a module for a…"
version: "1.0.0"
---

# onescope docs

Everything about OneScope 1.0.0: getting started, the shell and its operations, time and forks, watching a running program, writing a module for a library, and the file formats. These docs are for OneScope 1.0.0, read at the v1.0.0 tag (d681be5).

## Start

- [Getting started](https://recursiveai.org/onescope/docs/getting-started/index.md): Install the onescope tool, record a short OnePhysics replay, and open it headless: seek to a step, inspect the world and one body, and capture a frame.
- [Overview](https://recursiveai.org/onescope/docs/overview/index.md): A viewer for deterministic libraries. Open a scene, snapshot or replay, or attach to a running program, and watch the world: scrub its history, inspect…
- [The shell and its operations](https://recursiveai.org/onescope/docs/shell/index.md): onescope is a onegame program. One process holds the opened sources, the scene views and the UI. Everything the shell does is an operation, and the…
- [Time, history and forks](https://recursiveai.org/onescope/docs/history/index.md): Time is a step index. Nothing in the SDK reads a clock; playback speed belongs to the viewer.

## Watch a running program

- [Live attach](https://recursiveai.org/onescope/docs/live-attach/index.md): A viewer connects to a probe (see probe-wire.md) and turns its stream into a source that the history re-simulates locally.
- [Probe wire format](https://recursiveai.org/onescope/docs/probe-wire/index.md): What a host program's probe and a viewer say to each other over a local socket. The probe carries the library's own replay bytes without reading them…

## Add a library

- [Writing a module](https://recursiveai.org/onescope/docs/module-authoring/index.md): A module teaches the shell one library. It is a package in the library's own repository, built against RecursiveAI.OneScope.Sdk (BCL only, no other…
- [Fields, links and ghost sources](https://recursiveai.org/onescope/docs/fields-links-ghosts/index.md): Four parts of the SDK contract that a module declares as data. Each is optional: a module built before they existed still loads and runs (every addition…
- [The test module](https://recursiveai.org/onescope/docs/test-module/index.md): The test module is a small integer simulation: up to 64 bodies bouncing in a 10 m box (lengths in millimetres), with a stage axis (apply input, gravity…
- [Public API](https://recursiveai.org/onescope/docs/api/index.md): Generated by tools/ApiList from the built assemblies; every member has an XML doc comment in the source (units, limits, exceptions).

## Files and formats

- [Session file](https://recursiveai.org/onescope/docs/session-file/index.md): The open sources of a session, the forks with their poke replays, the shared time cursor, and an opaque blob the shell uses for layout and cameras. All…
- [Pose cache](https://recursiveai.org/onescope/docs/pose-cache/index.md): A pose cache holds the positions and orientations of a fixed set of things over consecutive steps, with no simulation behind them: a reference engine's…
- [Fuzzing](https://recursiveai.org/onescope/docs/fuzzing/index.md): tools/Fuzz is a coverage-guided harness for the three formats onescope parses from untrusted bytes: the probe handshake and stream frame headers…

## Project

- [Building and releasing](https://recursiveai.org/onescope/docs/releasing/index.md): Everything the app, samples and tests reference comes from nuget.org: onegame's packages, the libraries the bundled modules sit on, and the modules…
- [Changelog](https://recursiveai.org/onescope/docs/changelog/index.md): What changed in each release, newest first. The libraries (RecursiveAI.OneScope.Sdk, .Probe and .Attach) are released with a v tag, under a ## [] heading…
