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.
| Section | Start with | Use it for |
|---|---|---|
| Provider authoring | Provider, Operation, Router, Request, HTTPSubjectRequest, Response, ok | Executable app providers, typed request handlers, hosted HTTP subject hooks, and operation results. |
| Catalog metadata | Catalog, CatalogOperation, Router::register | Schema-derived operation catalogs from serde and schemars types. |
| Provider runtimes | AuthenticationProvider, CacheProvider, S3Provider, SecretsProvider, WorkflowProvider, AgentProvider, RuntimeProvider | Host-service backends implemented as Rust providers. |
| Workflow and agent models | new_bound_workflow_target, new_workflow_definition, new_workflow_run, new_workflow_signal, new_agent_message, new_agent_tool_ref | Native workflow values, agent messages, tool refs, and copy helpers. |
| Host-service clients | Cache, S3, Workflow, Agent, App | Calling sibling services exposed to a provider process by gestaltd. |
| Runtime and telemetry | runtime, telemetry, RuntimeMetadata | Provider 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.
| Trait | Export macro | Use it when you want to serve |
|---|---|---|
AuthenticationProvider | export_authentication_provider! | Login flows. |
CacheProvider | export_cache_provider! | App-bound cache storage. |
S3Provider | export_s3_provider! | S3-compatible object storage. |
SecretsProvider | export_secrets_provider! | Secret resolution. |
WorkflowProvider | export_workflow_provider! | Workflow definitions, activations, runs, events, and run output. |
AgentProvider | export_agent_provider! | Agent sessions, turns, events, interactions, and capabilities. |
RuntimeProvider | export_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, andok(...)model integration providers.HTTPSubjectRequestandProvider::resolve_http_subjectlet executable apps map verified hosted HTTP requests to concrete subjects.RouterandOperationregister typed operations and derive catalog metadata fromserdeandschemars.AuthenticationProvider,CacheProvider,S3Provider,SecretsProvider,WorkflowProvider,AgentProvider, andRuntimeProvidermodel executable provider runtimes.Cache,S3,Workflow,Agent, andAppcall sibling host services.RuntimeMetadatalets provider runtimes describe their display metadata and version.- Workflow builder inputs such as
BoundWorkflowTarget,WorkflowStep,WorkflowActivation,WorkflowDefinition,WorkflowSignal, andWorkflowRunmodel 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.
- Agent
Catalog Tool Config - Native message type for
gestalt.provider.v1.AgentCatalogToolConfig. - Agent
Interaction - Native message type for
gestalt.provider.v1.AgentInteraction. - Agent
Message - Native message type for
gestalt.provider.v1.AgentMessage. - Agent
Message Part - Native message type for
gestalt.provider.v1.AgentMessagePart. - Agent
Message Part Image Ref - Native message type for
gestalt.provider.v1.AgentMessagePartImageRef. - Agent
Message Part Tool Call - Native message type for
gestalt.provider.v1.AgentMessagePartToolCall. - Agent
Message Part Tool Result - Native message type for
gestalt.provider.v1.AgentMessagePartToolResult. - Agent
Prepared Workspace - Describes the workspace a provider prepared for a session.
- Agent
Provider Capabilities - Native message type for
gestalt.provider.v1.AgentProviderCapabilities. - Agent
Session - Native message type for
gestalt.provider.v1.AgentSession. - Agent
Session Start Config - Native message type for
gestalt.provider.v1.AgentSessionStartConfig. - Agent
Session Start Hook - Native message type for
gestalt.provider.v1.AgentSessionStartHook. - Agent
Session Start Hook Output - Native message type for
gestalt.provider.v1.AgentSessionStartHookOutput. - Agent
Structured Output - Native message type for
gestalt.provider.v1.AgentStructuredOutput. - Agent
Text Output - Native message type for
gestalt.provider.v1.AgentTextOutput. - Agent
Tool Annotations - MCP-style behavior hints of a tool.
- Agent
Tool Config - Native message type for
gestalt.provider.v1.AgentToolConfig. - Agent
Tool Ref - Native message type for
gestalt.provider.v1.AgentToolRef. - Agent
Turn - Native message type for
gestalt.provider.v1.AgentTurn. - Agent
Turn Display - Native message type for
gestalt.provider.v1.AgentTurnDisplay. - Agent
Turn Event - Native message type for
gestalt.provider.v1.AgentTurnEvent. - Agent
Turn Structured Output - Native message type for
gestalt.provider.v1.AgentTurnStructuredOutput. - Agent
Turn Text Output - Native message type for
gestalt.provider.v1.AgentTurnTextOutput. - Agent
Workspace - Native agent workspace request data.
- Agent
Workspace GitCheckout - Native agent workspace git checkout data.
- Append
Runtime Logs Request - Request for appending runtime logs.
- Append
Runtime Logs Response - Response returned after appending runtime logs.
- Auth
Session Settings - Host persistence settings for authenticated sessions.
- Authenticated
User - Normalized user identity returned by an authentication provider.
- Begin
Login Request - Starts an interactive login flow.
- Begin
Login Response - Provider-managed authorization URL and opaque state for login completion.
- Cache
Entry - One cache entry written through
CacheProvider::set_many. - Cache
SetOptions - Options applied to cache writes.
- Cancel
Agent Provider Turn Request - Native message type for
gestalt.provider.v1.CancelAgentProviderTurnRequest. - Catalog
- Catalog schema used by the provider runtime.
- Catalog
Operation - One operation exposed by a catalog.
- Catalog
Parameter - One input parameter surfaced in a generated catalog operation.
- Complete
Login Request - Finishes an interactive login flow.
- Create
Agent Provider Session Request - Request passed to
AgentProvider::create_session. - Create
Agent Provider Turn Request - 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.
- GetAgent
Provider Capabilities Request - Native message type for
gestalt.provider.v1.GetAgentProviderCapabilitiesRequest. - GetAgent
Provider Interaction Request - Native message type for
gestalt.provider.v1.GetAgentProviderInteractionRequest. - GetAgent
Provider Session Request - Native message type for
gestalt.provider.v1.GetAgentProviderSessionRequest. - GetAgent
Provider Turn Request - Native message type for
gestalt.provider.v1.GetAgentProviderTurnRequest. - GetRuntime
Session Request - Native message type for
gestalt.provider.v1.GetRuntimeSessionRequest. - HTTP
Subject Request - Carries one verified hosted HTTP request into a provider subject resolver.
- Host
- Describes public host metadata attached to a request.
- Hosted
App - Native message type for
gestalt.provider.v1.HostedApp. - Index
- Lookup and cursor access through one secondary index.
- Index
Schema - Describes one secondary index on an object store.
- IndexedDB
- Client for a running IndexedDB provider.
- IndexedDB
Cursor Snapshot - Provider-side IndexedDB cursor snapshot.
- IndexedDB
Cursor Snapshot Entry - One provider-side cursor row.
- IndexedDB
Open Cursor Request - Native open-cursor request used by provider-side cursor helpers.
- KeyRange
- Constrains a query or cursor by lower and upper bounds.
- List
Agent Provider Interactions Request - Native message type for
gestalt.provider.v1.ListAgentProviderInteractionsRequest. - List
Agent Provider Interactions Response - Native message type for
gestalt.provider.v1.ListAgentProviderInteractionsResponse. - List
Agent Provider Sessions Request - Native message type for
gestalt.provider.v1.ListAgentProviderSessionsRequest. - List
Agent Provider Sessions Response - Native message type for
gestalt.provider.v1.ListAgentProviderSessionsResponse. - List
Agent Provider Turn Events Request - Native message type for
gestalt.provider.v1.ListAgentProviderTurnEventsRequest. - List
Agent Provider Turn Events Response - Native message type for
gestalt.provider.v1.ListAgentProviderTurnEventsResponse. - List
Agent Provider Turns Request - Native message type for
gestalt.provider.v1.ListAgentProviderTurnsRequest. - List
Agent Provider Turns Response - Native message type for
gestalt.provider.v1.ListAgentProviderTurnsResponse. - List
Runtime Sessions Request - Native message type for
gestalt.provider.v1.ListRuntimeSessionsRequest. - List
Runtime Sessions Response - Native message type for
gestalt.provider.v1.ListRuntimeSessionsResponse. - Listed
Agent Tool - Native message type for
gestalt.provider.v1.ListedAgentTool. - Object
Store - CRUD, range-query, and cursor access for one object store.
- Object
Store Schema - Describes the indexes attached to an object store.
- Operation
- Describes one statically declared executable operation.
- Operation
Annotations - Optional host hints attached to a catalog operation.
- Prepare
Runtime Workspace Request - Native message type for
gestalt.provider.v1.PrepareRuntimeWorkspaceRequest. - Prepare
Runtime Workspace Response - Native message type for
gestalt.provider.v1.PrepareRuntimeWorkspaceResponse. - Remove
Runtime Workspace Request - Native message type for
gestalt.provider.v1.RemoveRuntimeWorkspaceRequest. - Request
- Carries execution-scoped metadata into typed operation handlers.
- Resolve
Agent Provider Interaction Request - 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.
- Runtime
Image Pull Auth - Native message type for
gestalt.provider.v1.RuntimeImagePullAuth. - Runtime
LogEntry - One runtime log entry.
- Runtime
LogHost - Client for appending runtime logs to the host.
- Runtime
Metadata - Describes provider metadata that should be surfaced by the runtime.
- Runtime
Session - Native message type for
gestalt.provider.v1.RuntimeSession. - Runtime
Session Lifecycle - Native message type for
gestalt.provider.v1.RuntimeSessionLifecycle. - Runtime
Support - Native message type for
gestalt.provider.v1.RuntimeSupport. - Start
Hosted AppRequest - Native message type for
gestalt.provider.v1.StartHostedAppRequest. - Start
Runtime Session Request - Native message type for
gestalt.provider.v1.StartRuntimeSessionRequest. - Stop
Runtime Session Request - 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.
- Transaction
Index - Secondary-index operations scoped to an explicit transaction.
- Transaction
Object Store - Object-store operations scoped to an explicit transaction.
- Transaction
Options - Options for an explicit transaction.
- Update
Agent Provider Session Request - Native message type for
gestalt.provider.v1.UpdateAgentProviderSessionRequest.
Enums§
- Agent
Execution Status - Native enum for
gestalt.provider.v1.AgentExecutionStatus. - Agent
Interaction State - Native enum for
gestalt.provider.v1.AgentInteractionState. - Agent
Interaction Type - Native enum for
gestalt.provider.v1.AgentInteractionType. - Agent
Message Part Type - Native enum for
gestalt.provider.v1.AgentMessagePartType. - Agent
Output - Native enum for
gestalt.provider.v1.AgentOutput. - Agent
Session State - Native enum for
gestalt.provider.v1.AgentSessionState. - Agent
Tool Config Source - Selects where a session’s tools come from.
- Agent
Tool Source Mode - Native enum for
gestalt.provider.v1.AgentToolSourceMode. - Agent
Turn Output - The structured-or-text output of a finished turn.
- Cursor
Direction - Controls cursor traversal order.
- IndexedDB
Error - Errors returned by the IndexedDB transport client.
- Runtime
Egress Mode - Native enum for
gestalt.provider.v1.RuntimeEgressMode. - Runtime
LogHost Error - Errors returned by
RuntimeLogHost. - Runtime
LogStream - Runtime log stream for runtime log entries.
- Transaction
Durability Hint - Provider durability hint for explicit transactions.
- Transaction
Mode - 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
gestaltdfor the main integration-provider surface. - ENV_
RUNTIME_ SESSION_ ID - Environment variable containing the current runtime session id.
Traits§
- Agent
Provider - Provider trait for serving the Gestalt agent-provider protocol.
- Authentication
Provider - Lifecycle and login contract for Gestalt authentication providers.
- Cache
Provider - Lifecycle and RPC contract for cache providers.
- Cursor
Api - Fakeable IndexedDB cursor contract.
- Index
Api - Fakeable IndexedDB secondary-index contract.
- IndexedDB
Api - Fakeable client contract for IndexedDB-compatible storage.
- Object
Store Api - Fakeable IndexedDB object-store contract.
- Provider
- Shared lifecycle contract for Gestalt integration providers.
- Runtime
Provider - Provider trait for serving hosted runtime sessions.
- Secrets
Provider - Lifecycle and lookup contract for secrets providers.
- Transaction
Api - Fakeable explicit IndexedDB transaction contract.
- Transaction
Index Api - Fakeable transaction-scoped secondary-index contract.
- Transaction
Object Store Api - 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_contexton contextful clients such asApp,Agent, andWorkflow. - 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:adainto 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§
- Agent
Json - 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.