Skip to main content

Crate gestalt

Crate gestalt 

Source
Expand description

§Gestalt Rust SDK

Use the Rust SDK to build compiled Gestalt providers with typed routers, serde input and output types, and schema-derived catalog metadata.

The package is published to crates.io as gestalt-sdk, while Rust code imports the crate as gestalt.

cargo add gestalt-sdk --rename gestalt
cargo add serde --features derive
cargo add schemars --features derive

§API sections

The docs.rs reference is organized around the provider-authoring workflow. Most provider code imports from the crate root after renaming gestalt-sdk to gestalt.

SectionStart withUse it for
Provider authoringProvider, Operation, Router, Request, HTTPSubjectRequest, Response, okExecutable app providers, typed request handlers, hosted HTTP subject hooks, and operation results.
Catalog metadataCatalog, CatalogOperation, Router::registerSchema-derived operation catalogs from serde and schemars types.
Provider runtimesAuthenticationProvider, CacheProvider, S3Provider, SecretsProvider, WorkflowProvider, AgentProvider, RuntimeProviderHost-service backends implemented as Rust providers.
Workflow and agent modelsnew_bound_workflow_target, new_workflow_definition, new_workflow_run, new_workflow_signal, new_agent_message, new_agent_tool_refNative workflow values, agent messages, tool refs, and copy helpers.
Host-service clientsCache, S3, Workflow, Agent, AppCalling sibling services exposed to a provider process by gestaltd.
Runtime and telemetryruntime, telemetry, RuntimeMetadataProvider process entrypoints and provider-authored GenAI spans and metrics.

§Quick start

Register typed operations on a router. The router dispatches requests and emits catalog metadata for gestaltd.

use schemars::JsonSchema;
use serde::{Deserialize, Serialize};
use std::sync::Arc;

#[derive(Default)]
struct SearchProvider;

#[gestalt::async_trait]
impl gestalt::Provider for SearchProvider {}

#[derive(Deserialize, JsonSchema)]
struct SearchInput {
    #[schemars(description = "Search query")]
    query: String,
}

#[derive(Serialize, JsonSchema)]
struct SearchOutput {
    results: Vec<String>,
}

fn router() -> gestalt::Result<gestalt::Router<SearchProvider>> {
    gestalt::Router::new().register(
        gestalt::Operation::<SearchInput, SearchOutput>::new("search")
            .method("GET")
            .title("Search"),
        |_: Arc<SearchProvider>, input, _request| async move {
            Ok::<_, gestalt::Error>(gestalt::ok(SearchOutput {
                results: vec![input.query],
            }))
        },
    )
}

gestalt::export_provider!(constructor = SearchProvider::default, router = router);

Fields are required unless they are modeled as Option<T> or have a serde default. Use schemars attributes for catalog descriptions.

§Provider surfaces

Use Provider, Operation, Router, and export_provider! for integration providers. Use the other provider traits and export macros when you are serving a host-service backend.

TraitExport macroUse it when you want to serve
AuthenticationProviderexport_authentication_provider!Login flows.
CacheProviderexport_cache_provider!App-bound cache storage.
S3Providerexport_s3_provider!S3-compatible object storage.
SecretsProviderexport_secrets_provider!Secret resolution.
WorkflowProviderexport_workflow_provider!Workflow definitions, activations, runs, events, and run output.
AgentProviderexport_agent_provider!Agent sessions, turns, events, interactions, and capabilities.
RuntimeProviderexport_runtime_provider!Hosted app execution backends.

The crate also exposes clients for sibling host services, including Cache, S3, Workflow, Agent, and App.

§Calling sibling host services

Each host-service client connects from the environment with connect()/connect_named(name) and exposes one method per RPC with flattened parameters, plus a _raw sibling that takes the full request message. Optional parameters ride in a per-method options struct (for example AppInvokeOptions) whose default value leaves every option unset. Contextful clients (App, Agent, Workflow) accept a default request context through with_context(...); outgoing requests that leave the context unset get the default injected. Every client accepts a per-call deadline through with_timeout(...); unary calls that run past it fail with DEADLINE_EXCEEDED.

#[derive(serde::Deserialize)]
struct Issue {
    id: u64,
}

let mut app = gestalt::App::connect().await?;
let data = app
    .invoke(
        "github".to_string(),
        "get_issue".to_string(),
        Some(params),
        gestalt::app::AppInvokeOptions::default(),
    )
    .await?;
let issue: Issue = serde_json::from_value(data)?;

AgentProvider implementations receive and return native structs such as CreateAgentProviderTurnRequest, AgentSession, AgentTurn, and AgentTurnEvent. Structured payload fields use serde_json::Value and timestamp fields use SystemTime; the SDK runtime owns transport serialization at the transport boundary. Workflow builders such as new_bound_workflow_target, new_workflow_definition, new_workflow_run, and new_workflow_signal accept SDK-owned input structs and preserve request shape without asking provider code to assemble transport objects.

§Public surface

The crate exposes higher-level authoring APIs:

  • Provider, Request, Response, and ok(...) model integration providers.
  • HTTPSubjectRequest and Provider::resolve_http_subject let executable apps map verified hosted HTTP requests to concrete subjects.
  • Router and Operation register typed operations and derive catalog metadata from serde and schemars.
  • AuthenticationProvider, CacheProvider, S3Provider, SecretsProvider, WorkflowProvider, AgentProvider, and RuntimeProvider model executable provider runtimes.
  • Cache, S3, Workflow, Agent, and App call sibling host services.
  • RuntimeMetadata lets provider runtimes describe their display metadata and version.
  • Workflow builder inputs such as BoundWorkflowTarget, WorkflowStep, WorkflowActivation, WorkflowDefinition, WorkflowSignal, and WorkflowRun model provider-owned workflow state.

§Package layout

This package intentionally lives outside the existing gestalt/ Cargo workspace so the SDK can evolve independently of the CLI crate graph.

Re-exports§

pub use agent::Agent;
pub use app::App;
pub use cache::Cache;
pub use invoke_support::InvokeError;
pub use invoke_support::InvokeResultError;
pub use invoke_support::decode_app_result;
pub use invoke_support::decode_graphql_result;
pub use invoke_support::error_for_status;
pub use invoke_support::is_success;
pub use s3::S3;
pub use s3_provider::S3Provider;
pub use s3_provider::S3ReadObjectFrame;
pub use s3_provider::S3ReadObjectStream;
pub use s3_provider::S3WriteObjectFrame;
pub use s3_provider::S3WriteObjectStream;
pub use workflow::Workflow;
pub use workflow_provider::ApplyWorkflowProviderDefinitionRequest;
pub use workflow_provider::BoundWorkflowTarget;
pub use workflow_provider::CancelWorkflowProviderRunRequest;
pub use workflow_provider::DeleteWorkflowProviderDefinitionRequest;
pub use workflow_provider::DeliverWorkflowProviderEventRequest;
pub use workflow_provider::GetWorkflowProviderDefinitionRequest;
pub use workflow_provider::GetWorkflowProviderRunEventsRequest;
pub use workflow_provider::GetWorkflowProviderRunEventsResponse;
pub use workflow_provider::GetWorkflowProviderRunOutputRequest;
pub use workflow_provider::GetWorkflowProviderRunOutputResponse;
pub use workflow_provider::GetWorkflowProviderRunRequest;
pub use workflow_provider::ListWorkflowProviderDefinitionsRequest;
pub use workflow_provider::ListWorkflowProviderDefinitionsResponse;
pub use workflow_provider::ListWorkflowProviderRunsRequest;
pub use workflow_provider::ListWorkflowProviderRunsResponse;
pub use workflow_provider::SetWorkflowProviderActivationPausedRequest;
pub use workflow_provider::SetWorkflowProviderDefinitionPausedRequest;
pub use workflow_provider::SignalOrStartWorkflowProviderRunRequest;
pub use workflow_provider::SignalWorkflowProviderRunRequest;
pub use workflow_provider::SignalWorkflowRunResponse;
pub use workflow_provider::StartWorkflowProviderRunRequest;
pub use workflow_provider::WorkflowActivation;
pub use workflow_provider::WorkflowAgentMessage;
pub use workflow_provider::WorkflowArray;
pub use workflow_provider::WorkflowDefinition;
pub use workflow_provider::WorkflowDefinitionSpec;
pub use workflow_provider::WorkflowEvalContext;
pub use workflow_provider::WorkflowEvalResult;
pub use workflow_provider::WorkflowEvent;
pub use workflow_provider::WorkflowEventActivation;
pub use workflow_provider::WorkflowEventMatch;
pub use workflow_provider::WorkflowEventTriggerInvocation;
pub use workflow_provider::WorkflowExecutionRequest;
pub use workflow_provider::WorkflowJson;
pub use workflow_provider::WorkflowManualTrigger;
pub use workflow_provider::WorkflowObject;
pub use workflow_provider::WorkflowPathSource;
pub use workflow_provider::WorkflowProvider;
pub use workflow_provider::WorkflowRun;
pub use workflow_provider::WorkflowRunEvent;
pub use workflow_provider::WorkflowRunStatus;
pub use workflow_provider::WorkflowRunTrigger;
pub use workflow_provider::WorkflowScheduleActivation;
pub use workflow_provider::WorkflowScheduleTrigger;
pub use workflow_provider::WorkflowSignal;
pub use workflow_provider::WorkflowStep;
pub use workflow_provider::WorkflowStepAction;
pub use workflow_provider::WorkflowStepAgentTurn;
pub use workflow_provider::WorkflowStepAppCall;
pub use workflow_provider::WorkflowStepAttempt;
pub use workflow_provider::WorkflowStepExecution;
pub use workflow_provider::WorkflowStepInputSource;
pub use workflow_provider::WorkflowStepOutputSource;
pub use workflow_provider::WorkflowStepStatus;
pub use workflow_provider::WorkflowStepWhen;
pub use workflow_provider::WorkflowText;
pub use workflow_provider::WorkflowValue;
pub use workflow_provider::evaluate_workflow_value;
pub use workflow_provider::latest_workflow_signal;
pub use workflow_provider::new_bound_workflow_target;
pub use workflow_provider::new_bound_workflow_target_from_target;
pub use workflow_provider::new_workflow_agent_message;
pub use workflow_provider::new_workflow_definition;
pub use workflow_provider::new_workflow_definition_spec;
pub use workflow_provider::new_workflow_event;
pub use workflow_provider::new_workflow_event_from_event;
pub use workflow_provider::new_workflow_event_match;
pub use workflow_provider::new_workflow_run;
pub use workflow_provider::new_workflow_run_from_run;
pub use workflow_provider::new_workflow_signal;
pub use workflow_provider::new_workflow_signal_from_signal;
pub use workflow_provider::new_workflow_step;
pub use workflow_provider::new_workflow_step_agent_turn;
pub use workflow_provider::new_workflow_step_app_call;
pub use workflow_provider::new_workflow_step_when;
pub use workflow_provider::new_workflow_text;
pub use workflow_provider::new_workflow_value;
pub use workflow_provider::path_value;
pub use workflow_provider::render_workflow_template;
pub use workflow_provider::workflow_event_input_from_event;
pub use workflow_provider::workflow_event_match_input_from_match;
pub use workflow_provider::workflow_run_trigger_input_from_trigger;
pub use workflow_provider::workflow_signal_input_from_signal;
pub use workflow_provider::workflow_step_agent_turn_input_from_turn;
pub use workflow_provider::workflow_step_app_call_input_from_call;
pub use workflow_provider::workflow_step_input_from_step;
pub use workflow_provider::workflow_value_array;
pub use workflow_provider::workflow_value_input;
pub use workflow_provider::workflow_value_input_from_value;
pub use workflow_provider::workflow_value_literal;
pub use workflow_provider::workflow_value_object;
pub use workflow_provider::workflow_value_signal;
pub use workflow_provider::workflow_value_step_input;
pub use workflow_provider::workflow_value_step_output;
pub use workflow_provider::workflow_value_template;

Modules§

agent
Generated Agent client and native types. Generated native types and clients for agent.proto.
app
Generated App and AppProvider client and native types. Generated native types and clients for app.proto.
authentication
Generated Authentication client and native types. Generated native types and clients for authentication.proto.
authorization
Generated Authorization client and native types. Generated native types and clients for authorization.proto.
cache
Generated Cache client and native types. Generated native types and clients for cache.proto.
external_credential
Generated ExternalCredentials client and native types. Generated native types and clients for external_credential.proto.
indexeddb
Generated IndexedDB client and native types. Generated native types and clients for indexeddb.proto.
invoke_support
Decoded app invocation results and the canonical invoke error.
rpc_support
Shared generated runtime for sdkgen clients: the canonical error model and the native representation of google.rpc.Status.
runtime
Generated ProviderLifecycle client and native types. Generated native types and clients for runtime.proto.
runtime_impl
Runtime entrypoints for serving Gestalt provider surfaces over Unix sockets.
runtime_provider
Generated Runtime and RuntimeLogHost client and native types. Generated native types and clients for runtime_provider.proto.
s3
Generated S3 client and native types. Generated native types and clients for s3.proto.
s3_provider
S3-compatible provider contract and native provider types.
secrets
Generated Secrets client and native types. Generated native types and clients for secrets.proto.
telemetry
OpenTelemetry helpers for provider-authored GenAI instrumentation. OpenTelemetry helpers for provider-authored GenAI instrumentation.
test
Generated Test client and native types. Generated native types and clients for test.proto.
workflow
Generated Workflow client and native types. Generated native types and clients for workflow.proto.
workflow_provider
Workflow provider contract and native workflow types.

Macros§

export_agent_provider
Exports the agent-provider entrypoint expected by gestaltd.
export_authentication_provider
Exports the authentication-provider entrypoint expected by gestaltd.
export_cache_provider
Exports the cache-provider entrypoint expected by gestaltd.
export_provider
Exports the integration-provider entrypoints expected by gestaltd.
export_runtime_provider
Exports the runtime-provider entrypoint expected by gestaltd.
export_s3_provider
Exports the S3-provider entrypoint expected by gestaltd.
export_secrets_provider
Exports the secrets-provider entrypoint expected by gestaltd.
export_workflow_provider
Exports the workflow-provider entrypoint expected by gestaltd.

Structs§

Access
Summarizes the host-side access decision attached to an operation.
AgentCatalogToolConfig
Native message type for gestalt.provider.v1.AgentCatalogToolConfig.
AgentInteraction
Native message type for gestalt.provider.v1.AgentInteraction.
AgentMessage
Native message type for gestalt.provider.v1.AgentMessage.
AgentMessagePart
Native message type for gestalt.provider.v1.AgentMessagePart.
AgentMessagePartImageRef
Native message type for gestalt.provider.v1.AgentMessagePartImageRef.
AgentMessagePartToolCall
Native message type for gestalt.provider.v1.AgentMessagePartToolCall.
AgentMessagePartToolResult
Native message type for gestalt.provider.v1.AgentMessagePartToolResult.
AgentPreparedWorkspace
Describes the workspace a provider prepared for a session.
AgentProviderCapabilities
Native message type for gestalt.provider.v1.AgentProviderCapabilities.
AgentSession
Native message type for gestalt.provider.v1.AgentSession.
AgentSessionStartConfig
Native message type for gestalt.provider.v1.AgentSessionStartConfig.
AgentSessionStartHook
Native message type for gestalt.provider.v1.AgentSessionStartHook.
AgentSessionStartHookOutput
Native message type for gestalt.provider.v1.AgentSessionStartHookOutput.
AgentStructuredOutput
Native message type for gestalt.provider.v1.AgentStructuredOutput.
AgentTextOutput
Native message type for gestalt.provider.v1.AgentTextOutput.
AgentToolAnnotations
MCP-style behavior hints of a tool.
AgentToolConfig
Native message type for gestalt.provider.v1.AgentToolConfig.
AgentToolRef
Native message type for gestalt.provider.v1.AgentToolRef.
AgentTurn
Native message type for gestalt.provider.v1.AgentTurn.
AgentTurnDisplay
Native message type for gestalt.provider.v1.AgentTurnDisplay.
AgentTurnEvent
Native message type for gestalt.provider.v1.AgentTurnEvent.
AgentTurnStructuredOutput
Native message type for gestalt.provider.v1.AgentTurnStructuredOutput.
AgentTurnTextOutput
Native message type for gestalt.provider.v1.AgentTurnTextOutput.
AgentWorkspace
Native agent workspace request data.
AgentWorkspaceGitCheckout
Native agent workspace git checkout data.
AppendRuntimeLogsRequest
Request for appending runtime logs.
AppendRuntimeLogsResponse
Response returned after appending runtime logs.
AuthSessionSettings
Host persistence settings for authenticated sessions.
AuthenticatedUser
Normalized user identity returned by an authentication provider.
BeginLoginRequest
Starts an interactive login flow.
BeginLoginResponse
Provider-managed authorization URL and opaque state for login completion.
CacheEntry
One cache entry written through CacheProvider::set_many.
CacheSetOptions
Options applied to cache writes.
CancelAgentProviderTurnRequest
Native message type for gestalt.provider.v1.CancelAgentProviderTurnRequest.
Catalog
Catalog schema used by the provider runtime.
CatalogOperation
One operation exposed by a catalog.
CatalogParameter
One input parameter surfaced in a generated catalog operation.
CompleteLoginRequest
Finishes an interactive login flow.
CreateAgentProviderSessionRequest
Request passed to AgentProvider::create_session.
CreateAgentProviderTurnRequest
Native message type for gestalt.provider.v1.CreateAgentProviderTurnRequest.
Credential
Describes the resolved credential used to authorize an operation.
Cursor
Streaming cursor over object store or secondary index rows.
Error
Error returned by typed provider handlers and runtime helpers.
GetAgentProviderCapabilitiesRequest
Native message type for gestalt.provider.v1.GetAgentProviderCapabilitiesRequest.
GetAgentProviderInteractionRequest
Native message type for gestalt.provider.v1.GetAgentProviderInteractionRequest.
GetAgentProviderSessionRequest
Native message type for gestalt.provider.v1.GetAgentProviderSessionRequest.
GetAgentProviderTurnRequest
Native message type for gestalt.provider.v1.GetAgentProviderTurnRequest.
GetRuntimeSessionRequest
Native message type for gestalt.provider.v1.GetRuntimeSessionRequest.
HTTPSubjectRequest
Carries one verified hosted HTTP request into a provider subject resolver.
Host
Describes public host metadata attached to a request.
HostedApp
Native message type for gestalt.provider.v1.HostedApp.
Index
Lookup and cursor access through one secondary index.
IndexSchema
Describes one secondary index on an object store.
IndexedDB
Client for a running IndexedDB provider.
IndexedDBCursorSnapshot
Provider-side IndexedDB cursor snapshot.
IndexedDBCursorSnapshotEntry
One provider-side cursor row.
IndexedDBOpenCursorRequest
Native open-cursor request used by provider-side cursor helpers.
KeyRange
Constrains a query or cursor by lower and upper bounds.
ListAgentProviderInteractionsRequest
Native message type for gestalt.provider.v1.ListAgentProviderInteractionsRequest.
ListAgentProviderInteractionsResponse
Native message type for gestalt.provider.v1.ListAgentProviderInteractionsResponse.
ListAgentProviderSessionsRequest
Native message type for gestalt.provider.v1.ListAgentProviderSessionsRequest.
ListAgentProviderSessionsResponse
Native message type for gestalt.provider.v1.ListAgentProviderSessionsResponse.
ListAgentProviderTurnEventsRequest
Native message type for gestalt.provider.v1.ListAgentProviderTurnEventsRequest.
ListAgentProviderTurnEventsResponse
Native message type for gestalt.provider.v1.ListAgentProviderTurnEventsResponse.
ListAgentProviderTurnsRequest
Native message type for gestalt.provider.v1.ListAgentProviderTurnsRequest.
ListAgentProviderTurnsResponse
Native message type for gestalt.provider.v1.ListAgentProviderTurnsResponse.
ListRuntimeSessionsRequest
Native message type for gestalt.provider.v1.ListRuntimeSessionsRequest.
ListRuntimeSessionsResponse
Native message type for gestalt.provider.v1.ListRuntimeSessionsResponse.
ListedAgentTool
Native message type for gestalt.provider.v1.ListedAgentTool.
ObjectStore
CRUD, range-query, and cursor access for one object store.
ObjectStoreSchema
Describes the indexes attached to an object store.
Operation
Describes one statically declared executable operation.
OperationAnnotations
Optional host hints attached to a catalog operation.
PrepareRuntimeWorkspaceRequest
Native message type for gestalt.provider.v1.PrepareRuntimeWorkspaceRequest.
PrepareRuntimeWorkspaceResponse
Native message type for gestalt.provider.v1.PrepareRuntimeWorkspaceResponse.
RemoveRuntimeWorkspaceRequest
Native message type for gestalt.provider.v1.RemoveRuntimeWorkspaceRequest.
Request
Carries execution-scoped metadata into typed operation handlers.
ResolveAgentProviderInteractionRequest
Native message type for gestalt.provider.v1.ResolveAgentProviderInteractionRequest.
Response
Wraps a typed handler response plus an optional explicit HTTP status code.
Router
Dispatches typed operations and exposes the corresponding static catalog.
RuntimeImagePullAuth
Native message type for gestalt.provider.v1.RuntimeImagePullAuth.
RuntimeLogEntry
One runtime log entry.
RuntimeLogHost
Client for appending runtime logs to the host.
RuntimeMetadata
Describes provider metadata that should be surfaced by the runtime.
RuntimeSession
Native message type for gestalt.provider.v1.RuntimeSession.
RuntimeSessionLifecycle
Native message type for gestalt.provider.v1.RuntimeSessionLifecycle.
RuntimeSupport
Native message type for gestalt.provider.v1.RuntimeSupport.
StartHostedAppRequest
Native message type for gestalt.provider.v1.StartHostedAppRequest.
StartRuntimeSessionRequest
Native message type for gestalt.provider.v1.StartRuntimeSessionRequest.
StopRuntimeSessionRequest
Native message type for gestalt.provider.v1.StopRuntimeSessionRequest.
Subject
Identifies the caller that initiated an operation.
Transaction
Explicit transaction over one or more object stores.
TransactionIndex
Secondary-index operations scoped to an explicit transaction.
TransactionObjectStore
Object-store operations scoped to an explicit transaction.
TransactionOptions
Options for an explicit transaction.
UpdateAgentProviderSessionRequest
Native message type for gestalt.provider.v1.UpdateAgentProviderSessionRequest.

Enums§

AgentExecutionStatus
Native enum for gestalt.provider.v1.AgentExecutionStatus.
AgentInteractionState
Native enum for gestalt.provider.v1.AgentInteractionState.
AgentInteractionType
Native enum for gestalt.provider.v1.AgentInteractionType.
AgentMessagePartType
Native enum for gestalt.provider.v1.AgentMessagePartType.
AgentOutput
Native enum for gestalt.provider.v1.AgentOutput.
AgentSessionState
Native enum for gestalt.provider.v1.AgentSessionState.
AgentToolConfigSource
Selects where a session’s tools come from.
AgentToolSourceMode
Native enum for gestalt.provider.v1.AgentToolSourceMode.
AgentTurnOutput
The structured-or-text output of a finished turn.
CursorDirection
Controls cursor traversal order.
IndexedDBError
Errors returned by the IndexedDB transport client.
RuntimeEgressMode
Native enum for gestalt.provider.v1.RuntimeEgressMode.
RuntimeLogHostError
Errors returned by RuntimeLogHost.
RuntimeLogStream
Runtime log stream for runtime log entries.
TransactionDurabilityHint
Provider durability hint for explicit transactions.
TransactionMode
Controls whether an explicit transaction may mutate scoped stores.

Constants§

CURRENT_PROTOCOL_VERSION
Current Gestalt provider protocol version spoken by this SDK.
ENV_HOST_SERVICE_SOCKET
Unified host-service socket env var for app-side clients.
ENV_HOST_SERVICE_TOKEN
Unified host-service relay token env var for app-side clients.
ENV_PROVIDER_SOCKET
Unix socket path exposed by gestaltd for the main integration-provider surface.
ENV_RUNTIME_SESSION_ID
Environment variable containing the current runtime session id.

Traits§

AgentProvider
Provider trait for serving the Gestalt agent-provider protocol.
AuthenticationProvider
Lifecycle and login contract for Gestalt authentication providers.
CacheProvider
Lifecycle and RPC contract for cache providers.
CursorApi
Fakeable IndexedDB cursor contract.
IndexApi
Fakeable IndexedDB secondary-index contract.
IndexedDBApi
Fakeable client contract for IndexedDB-compatible storage.
ObjectStoreApi
Fakeable IndexedDB object-store contract.
Provider
Shared lifecycle contract for Gestalt integration providers.
RuntimeProvider
Provider trait for serving hosted runtime sessions.
SecretsProvider
Lifecycle and lookup contract for secrets providers.
TransactionApi
Fakeable explicit IndexedDB transaction contract.
TransactionIndexApi
Fakeable transaction-scoped secondary-index contract.
TransactionObjectStoreApi
Fakeable transaction-scoped object-store contract.

Functions§

compare_indexeddb_values
Compares native IndexedDB key values.
current_native_request_context
Returns the current ambient request context in the generated clients’ native form, for with_context on contextful clients such as App, Agent, and Workflow.
current_request_context
Returns the host-supplied request context for the currently executing provider handler.
indexeddb_range_bounds
Normalizes object-store or index cursor range bounds.
new_agent_image_ref
Creates a native agent image-reference payload.
new_agent_message
Creates a native agent message.
new_agent_message_part
Creates a native agent message part.
new_agent_tool_call
Creates a native agent tool-call payload.
new_agent_tool_ref
Creates a native agent tool reference.
new_agent_tool_result
Creates a native agent tool-result payload.
new_indexeddb_cursor_snapshot
Creates an empty provider-side cursor snapshot from a native request.
ok
Returns a successful JSON response with status code 200.
parse_subject_id
Split a canonical subject ID such as user:ada into kind and id.
runtime_session_id
Returns the current runtime session id from GESTALT_RUNTIME_SESSION_ID.
with_request_context
Runs an async operation with the supplied request context available to Gestalt clients.

Type Aliases§

AgentJson
Native JSON object used by authored agent providers.
Record
JSON-like value stored in an object store row.
Result
Convenient result alias for Gestalt SDK operations.

Attribute Macros§

async_trait