#notifications #gemini #background-task #durable #state #tool-execution #file-backed #passive #blocking #owns

gemini-live-harness

Durable file-backed harness state and tools for Gemini Live hosts

1 unstable release

Uses new Rust 2024

0.1.8 Apr 12, 2026

#17 in #file-backed


Used in 3 crates

MIT license

355KB
7K SLoC

Durable harness state that sits above gemini-live-runtime and below a concrete host application.

gemini-live-runtime already owns hot-session orchestration, tool-call request fanout, and short-lived in-process conversation continuity. This crate is the next layer up:

  • tasks are durable filesystem records under one harness root
  • notifications are durable queue items, not ephemeral callbacks
  • memory is stored on disk and may be inspected directly by other agents
  • shared host-tool execution contracts live next to harness policy
  • harness-owned wrappers may keep blocking host tools within an inline latency budget and spill eligible calls into durable background tasks
  • HarnessController is the preferred host-facing boundary for combining tool execution and passive notification delivery

The default root is ~/.gemini-live/harness, but callers may supply any alternative path for testing or custom deployments.


gemini-live-harness

Durable file-backed harness state, shared host-tool execution contracts, and host-side orchestration for Gemini Live applications.

This crate sits above gemini-live-runtime and below concrete hosts. It keeps tasks, notifications, and long-lived memory on disk so state survives process restarts and remains inspectable by other local agents. It also owns the host-fed ToolProvider / ToolExecutor surface used by hosts and reusable tool families, plus the harness-side execution wrapper that can keep blocking tools inline within a latency budget and spill eligible calls into durable background tasks. The preferred host boundaries are:

  • HarnessController for durable tools + passive notification delivery
  • HarnessRuntimeBridge for runtime tool-call orchestration and completion forwarding

Dependencies

~17–33MB
~459K SLoC