Skip to main content

Crate gemini_live_harness

Crate gemini_live_harness 

Source
Expand description

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.

Structs§

Harness
Top-level file-backed durable harness.
HarnessController
Host-facing harness boundary above the runtime layer.
HarnessNotification
Persisted notification record stored under notifications/.
HarnessPaths
File layout configuration for the durable harness.
HarnessProfileStore
Generic typed host profile store backed by the harness filesystem.
HarnessRuntimeBridge
Non-cloneable runtime bridge that owns tool-completion plumbing for one host runtime event loop.
HarnessTask
Primary persisted task record.
HarnessToolBudget
Harness-owned inline budget for host tool calls.
HarnessToolCompletion
Result of one host-side tool call spawned by the harness controller.
HarnessToolForwardFailure
Failure while forwarding one tool completion back into the runtime.
HarnessToolForwardOutcome
Summary of one tool completion after it has been forwarded back into the runtime.
HarnessToolRegistry
Normalized view built from one host-fed provider.
HarnessToolRuntime
Composite harness executor that wraps host-local tools with harness-owned inline-budget policy.
MemoryRecord
Persisted harness memory entry addressed by scope and key.
MemoryWrite
Request to upsert a durable memory record.
NewNotification
Request to enqueue a durable notification.
NewRunningTask
Request to persist a task that is already running inside the current runtime instance.
NoopToolSource
Empty downstream tool source used by hosts that do not expose local tools.
PassiveNotificationDelivery
One queued passive notification that should be injected into the model.
PassiveNotificationPump
Reusable passive notification pump backed by durable harness state.
RegisteredTool
One normalized function entry inside the harness registry.
TaskDetail
Rich task projection returned to hosts and tools.
TaskEvent
Append-only event stream for task lifecycle changes.
TaskResult
Persisted terminal result for a successful task.
TaskRuntimeInstance
Process/runtime instance metadata for a task that is already executing.
ToolCapability
Per-function capability declared by the host and consumed by the harness.
ToolDescriptor
Metadata about a host-defined tool exposed to users or debuggers.
ToolSpecification
One model-callable function declared by a host-fed provider.

Enums§

HarnessError
Failures while reading, writing, or interpreting on-disk harness state.
HarnessToolCompletionDisposition
High-level result class for one host-side tool call.
NotificationKind
Notification categories used by the harness.
NotificationStatus
Durable delivery state for a queued harness notification.
TaskEventKind
Event payload variants stored in events.jsonl.
TaskStatus
High-level durable status for one persisted harness task.
ToolExecutionError
Failures while resolving or executing a host-defined tool call.
ToolKind
High-level tool categories for host-side presentation.

Traits§

ToolExecutor
Host-fed blocking execution surface for locally executable tools.
ToolProvider
Host-fed metadata surface describing which tools exist.

Functions§

format_passive_notification_prompt
Render a durable harness notification into a model-facing prompt.