everruns-local
SQLite-backed, restart-survivable runtime stores for embedded, single-process Everruns hosts.
everruns-local populates the optional host-backend slots of
everruns-runtime with local,
file-backed implementations. The runtime ships in-memory by default; this crate
swaps in durable, SQLite-backed stores so a freshly-spawned process can read,
continue, and inspect work an earlier process started.
The runtime stays generic and owns only the seams — durable local storage choices live here, behind an opt-in crate, so embedders (terminal coding agents, personal agents, …) don't each reinvent them.
Part of the Everruns ecosystem — the durable agentic harness engine for building unstoppable agents.
What It Provides
LocalSessionTaskRegistry— aSessionTaskRegistryover SQLite, persisting session tasks and their message channel.LocalScheduleStore— aSessionScheduleStoreover SQLite, with an additive JSONmetadatabag (name/color/kind/…) kept local rather than widening the shared core primitive.LocalPlatformStore— aPlatformStorethat implements the subagent-critical core honestly and returns explicit unsupported errors for platform-management-only operations.LocalProfile— named local environment config (data dir, workspace, base URL, org/principal identity defaults).LocalBackends— composable construction ofRuntimeBackendsplus the local stores, preserving a caller-supplied event bus and session file-system factory.LocalRuntimeBuilder— optional sugar overInProcessRuntimeBuilder.
Task and message state persists to a SQLite file, so process restarts survive: the next process picks up exactly where the last one left off.
Install
Requires Rust 1.94+ (edition 2024).
Quick Example
use ;
use ;
#
See the integration tests under tests/ for end-to-end coverage of
task lifecycle, restart survivability, schedule round-trips, composability, and
embedded turns.
Documentation
License
Licensed under the MIT License.