Skip to content

Repository files navigation

Persisting

Persistent infrastructure for the Agent era.

CI Documentation License: Apache-2.0

Persisting connects durable model state—parameters and KV caches—with durable Agent history—trajectories and execution records. The current product is the path from execution to queryable history:

  • pvisor is an executor that produces persistable, reviewable facts: staged Effects and execution records from one Agent Run;
  • pchronicle browses, queries, exchanges, and serves trajectory Datasets.

Each command works on its own. Connected, they cover pvisor run --safe → review/apply → configured capture → a queryable Dataset.

Current Persisting workflows and the execution-to-history throughline

Install

pip install persisting[lance]
pvisor --version
pchronicle --version

The rolling nightly build installs the same commands without a Rust toolchain:

curl -fsSL https://raw.githubusercontent.com/DeepLink-org/Persisting/main/scripts/install-nightly.sh | bash

See the installation guide for platform requirements and executor setup.

Run one Agent and review its changes

pvisor run --safe codex
pvisor review last
pvisor apply last --all   # or: pvisor drop last

--safe stages workspace changes; nothing enters your project tree before you accept it. The exact boundary is platform-dependent and recorded with the Run—consult the execution guide before treating it as a security boundary.

Query Agent trajectory history

pchronicle onboard
pchronicle onboard query
pchronicle agent codex ./trajectory-data --ask "Which tools fail most often?"

The onboarding flow creates a temporary example Dataset—no source checkout required. pchronicle import accepts ATIF, ACTF, and OpenAI Messages; pchronicle serve starts a loopback-only, read-only Dataset UI and API.

After capture is configured, selected pVisor Run events can enter a pChronicle Dataset. See the capture guide.

Current maturity

Capability Status
pVisor host execution, review, checkpoints, and transactional workspace Implemented
pChronicle local/S3 catalog, bounded SQL, analysis, find, import/export Implemented
pChronicle loopback-only read API and embedded Web UI Implemented
Gateway capture and cooperative proxy policy Implemented
Container/libkrun executors and transparent network boundaries Platform-dependent; see the pVisor and OverlayNet docs
Queue and document Search Separate stable capabilities
Tensor Memory / TTAS Experimental

Documentation

Criterion.rs microbenchmarks and hyperfine lifecycle scenarios are compared against main in CI; see the benchmark contract.

Latest nightly pChronicle benchmark: 073a70bdf4ff on linux/x86_64 (2026-09-02T15:21:52.794687+00:00).

Case Metric Value
criterion/atif_conversion/parse_corpus latency_median_ns 4.979e+06 ns
criterion/atif_conversion/roundtrip_corpus latency_median_ns 6.552e+06 ns
criterion/projection_cpu/events_to_storyline_corpus latency_median_ns 2.968e+05 ns
system/projection_pipeline/event_append initial_append_ms 66.059 ms
system/projection_pipeline/projection_build build_ms 5765.31 ms
system/projection_pipeline/projection_incremental sync_ms 44.614 ms
system/lance_vs_json/lifecycle cold_query_ms 3666.153 ms
system/lance_vs_json/lifecycle get_storyline_full_ms 10.341 ms
system/lance_vs_json/lifecycle replace_storyline_ms 44.332 ms
system/lance_vs_json/selective lance_qps 310.7 ops/s
system/lance_vs_json/group_by lance_qps 423.4 ops/s
system/lance_vs_json/summary lance_over_json 0.244 ratio
system/json_streaming_ndjson/json_streaming p95_ms 13.891 ms
system/json_streaming_ndjson/json_streaming rows_s 3.055e+05 ops/s
system/json_streaming_ndjson/json_streaming process_peak_rss_mib 36.508 MiB
hyperfine/projection_pipeline wall_median_seconds 5.961 s
hyperfine/lance_vs_json wall_median_seconds 47.511 s

Open the complete benchmark run.

License

Apache License 2.0. See NOTICE for third-party attributions and separately licensed bundled components.

About

Persistent Storage for Parameters, KV Cache, and Trajectories

Resources

Stars

4 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages