runanywhere_protos library
Public generated proto type surface for RunAnywhere Flutter.
Import this library with a prefix when an app needs canonical IDL types alongside the Flutter facade:
import 'package:runanywhere/runanywhere_protos.dart' as ra_proto;
Classes
- AccelerationPreference
- AcceleratorPolicy
- Requested execution placement for a load. LiteRT/ExecuTorch-aligned.
- AgentLoopConfig
- AppStorageInfo
- ArchiveArtifact
- ArchiveStructure
- ArchiveType
- Compression flavor of a multi-file model package.
- ArtifactInferFromUrlRequest
- ArtifactInferFromUrlResult
- AssistantTokenEvent
- Single token decoded by the LLM. is_final=true on the last token of a response (end-of-stream marker).
- AudioEncoding
- Sample layout of a raw audio payload, as opposed to AudioFormat above, which names the container. CONTAINER means the bytes carry their own header and the companion AudioFormat field says which one.
- AudioFormat
- Container format of an audio payload.
- AudioFrameEvent
- A chunk of synthesized PCM audio, ready for the sink. The frontend is expected to copy the bytes out; the C ABI does NOT retain ownership.
- AudioSource
- AuthEvent
- AuthEventKind
- BatteryFilter
- CancellationEvent
- CancellationEventKind
- CapabilityOperationEvent
- =========================================================================== SECTION 6 — EMBEDDINGS / SECTION 7 — DIFFUSION / SECTION 8 — RAG / SECTION 9 — LORA / SECTION 2b — VLM (capability operations)
- CapabilityOperationEventKind
- ChatAttachment
- ChatGenerationRequest
- ChatMessage
- ChatMessageStatus
- CloudSttBackendConfig
- ComponentLifecycleEvent
- Operation-aware lifecycle event. The oneof arms intentionally reference the operation result/progress protos from this contract slice instead of adding another broad event taxonomy. Covers both component bring-up (absorbed from ComponentInitializationEvent) and steady-state model lifecycle.
- ComponentLifecycleEventKind
- ComponentLifecycleSnapshot
- Snapshot of a component's current model-backed lifecycle state.
- ComponentLifecycleSnapshotResult
- ComponentLifecycleState
-
Component runtime lifecycle state for model-backed SDK components. Platform
adapters own native component handles; this enum carries the C++ lifecycle
state every SDK can expose uniformly. Previously lived in sdk_events.proto
(also used by voice_events.proto's VoiceAgentComponentStates after the
former hand-rolled
ComponentLoadStatewas consolidated into this single richer taxonomy). - ConfidenceCascade
- Below this on-device confidence, the router escalates to cloud.
- ConfigurationEvent
- ConfigurationEventKind
- CurrentModelRequest
- CurrentModelResult
- CustomFilter
- DeviceAffinity
- DeviceEvent
- DeviceEventKind
- DeviceStorageInfo
- DiarizationOptions
- DiarizationRequest
- DiarizationResult
- DiarizationSegment
- DiarizationStreamEvent
- UPDATE and FINAL carry a complete snapshot of the session hypothesis, not a delta. Speaker indices/IDs are stable only within one offline call or stream session. Segments belonging to different speakers may overlap.
- DiarizationStreamEventKind
- DiffusionGenerationOptions
- DiffusionGenerationRequest
- DiffusionImage
-
One generated image. Per-image, because with n > 1 each image has its
own seed and its own safety verdict (Stability
seeds/finish_reasons, Diffusersnsfw_content_detected). - DiffusionOutputFormat
- Encoding of the returned image bytes.
- DiffusionProgress
- DiffusionResult
- DiffusionScheduler
- Only values with a C carrier are listed. UNSPECIFIED = the model's configured scheduler, which is what every engine does.
- DiffusionStreamEvent
- DiffusionStreamEventKind
- DiscoveredModel
- DownloadCancelRequest
- DownloadCancelResult
- DownloadFailureReason
- Structured reason for a download plan/start/resume rejection. Lets every SDK branch on a stable enum instead of substring-matching the human-readable error_message (the prior approach, which silently broke on any reword).
- DownloadFilePlan
- DownloadPlanRequest
- DownloadPlanResult
- DownloadProgress
- DownloadStartRequest
- DownloadStartResult
- DownloadState
- DownloadSubscribeRequest
- EdgePolicy
- EdgeSpec
- EmbeddingsCreateRequest
- EmbeddingsCreateResult
- EmbeddingsInputType
- EmbeddingsOptions
- Per-call overrides. Unset fields fall back to the loaded bundle's defaults.
- EmbeddingsPoolingStrategy
- The required public spelling in every SDK is exactly "mean" / "cls" / "last". LAST is the final token's hidden state (llama.cpp --pooling last), which decoder-style embedders require. It is NOT max-pooling; no SDK may expose it as "max".
- EmbeddingsRequest
- One text = embed, multiple texts = embed_batch.
- EmbeddingsResult
- EmbeddingVector
- ErrorCategory
- Coarse routing bucket. Per-modality errors (STT, TTS, LLM, VAD, VLM) fold into COMPONENT; use SDKError.component to tell them apart.
- ErrorCode
- proto3 forbids negative enum values, so each constant is the absolute magnitude of its C ABI code: ERROR_CODE_
- ErrorSeverity
- EventCategory
- Canonical event category carried by every SDKEvent envelope. Lives here (instead of sdk_events.proto) so voice_events.proto and voice_agent_service .proto can reference it without importing sdk_events.proto (which itself imports voice_events.proto — cycle resolution).
- EventDestination
- ExecutionTarget
- ExpectedModelFiles
- What a multi-file model should contain on disk after extraction. Verified before hand-off to the inference framework.
- FrameworkEvent
- FrameworkEventKind
- GenerationEvent
- GenerationEventKind
- HardwareRoutingEvent
- HardwareRoutingEventKind
- HexagonArch
-
Pre-flight Qualcomm Hexagon NPU probe. Mirrors QHexRT's engine-owned C ABI
(
rac/qhexrt/rac_qhexrt.h) and is serialized by rac_qhexrt_probe_proto(). Enum values equal the Hexagon HTP version number to stay in lock-step with rac_qhexrt_hexagon_arch_t. - HttpDownloadStatus
- HTTP transport download status — numeric values MUST match rac_http_download_status_t (RAC_HTTP_DL_) in core/include/rac/infrastructure/http/rac_http_download.h. rac_http_download_execute returns this int directly through the C ABI; every SDK consumes the proto-generated enum so a new RAC_HTTP_DL_ value added in commons fails compilation across all bindings until the enum is extended here. OK = 0 mirrors the C ABI's success sentinel (no separate UNSPECIFIED needed — success is the proto3 zero default).
- HybridCascade
- HybridFilter
- A candidate must pass every hard filter to stay in the running.
- HybridInferenceMode
- Firebase AI Logic / developer.android.com InferenceMode, verbatim. PREFER_* falls back silently across the boundary; ONLY_* fails instead.
- HybridModelDescriptor
- HybridRoutedMetadata
- What the router actually did, including the failed primary attempt.
- HybridRoutingPolicy
-
The candidate chain for one routed request: tried first to last, first
success wins, position IS the priority.
modestill governs whether the chain may cross the on-device/cloud line. - HybridSttTranscribeOptions
- HybridSttTranscribeRequest
- HybridSttTranscribeResponse
- InferenceFramework
- Engine that executes a model. Reached from ModelInfo.framework, so the reserved values below are manifest-critical.
- InitializationEvent
- InitializationStage
- InterruptedEvent
- Assistant playback was interrupted by a barge-in. The reason distinguishes user barge-in from app-initiated cancel.
- InterruptReason
- LLMConfiguration
- LLMGenerateRequest
- The single request envelope for both unary and streaming generation.
- LLMGenerationOptions
- LLMGenerationResult
- LLMStreamEvent
-
LLMStreamFinalResult is deleted: the stream terminates with the same
LLMGenerationResult type the unary call returns (see
resultbelow), so one mapper serves both paths instead of two near-identical ones. - LLMStreamEventKind
- LogEntry
- LoggingConfiguration
- Per-environment presets stay in each SDK as factory helpers.
- LogLevel
- Mirrors rac_log_level_t exactly so the generated enum round-trips with the platform-adapter log callback without a translation table. 0 is TRACE, not UNSPECIFIED, to keep numeric parity with the C enum.
- LoraAdapterCatalogEntry
- The adapter-specific facts only. Everything generic about the artifact — where it is fetched from, how large it is, how to verify it, who published it, and whether it has been fetched — lives on the ModelInfo record for this adapter.
- LoraAdapterCatalogGetRequest
- LoraAdapterCatalogGetResult
- LoraAdapterCatalogListRequest
- LoraAdapterCatalogListResult
- LoraAdapterCatalogQuery
- LoraAdapterConfig
- LoraAdapterInfo
- LoraApplyRequest
- LoraApplyResult
- LoraCompatibilityResult
- LoraRemoveRequest
- LoraState
- Response only. The state read takes no arguments; base_model_id is reported, never a filter.
- MessageRole
- MetricsEvent
- Per-primitive latency breakdown. Emitted at barge-in and at pipeline stop.
- ModelArtifactType
- What kind of bundle a model ships as.
- ModelCategory
- What a model does.
- ModelCompatibilityRequest
- ModelCompatibilityResult
- ModelDeleteResult
-
delete(model_id) frees DISK. It always unloads the model first if it is
resident -- there is no flag, and no failure mode for "still loaded".
Entries whose source is MODEL_SOURCE_BUILT_IN are never deletable and fail
with an SDKError. Success is the absence of
error. - ModelDiscoveryRequest
- ModelDiscoveryResult
- ModelEvent
- ModelEventKind
- ModelFileDescriptor
- ModelFileRole
- Role of a file inside a single/multi-file artifact. The generic COMPANION role covers arbitrary sidecars; specific roles document common public catalog files such as VLM mmproj files and tokenizer/config assets.
- ModelFormat
- On-disk file format, as opposed to ModelArtifactType (bundle kind) or ArchiveType (compression).
- ModelFormatFromUrlRequest
- ModelFormatFromUrlResult
- ModelGetRequest
- ModelGetResult
- ModelImportRequest
- ModelImportResult
- ModelInfo
- Core metadata for a model entry. This message is persisted verbatim to .rac-manifest.binpb, so field numbers here are permanent.
- ModelInfoList
- Repeated model registry responses use this wrapper because protobuf cannot serialize a bare repeated field as a top-level message.
- ModelInfoMakeRequest
- ModelInfoMetadata
- ModelListRequest
- ModelListResult
- ModelLoadRequest
- ModelLoadResult
- ModelQuery
- Registry/query filters shared by SDK model-management APIs. UI-only presentation state and platform filesystem handles are intentionally not represented here. Filters only. Ordering is the client's -- a local catalog is tens of rows.
- ModelRegistryFetchAssignmentsRequest
- ModelRegistryFetchAssignmentsResult
- ModelRegistryRefreshRequest
- ModelRegistryRefreshResult
- ModelRegistryStatus
- Durable catalog state, not a live transfer stream. Byte counters and progress events live in download_service.proto.
- ModelRuntimeCompatibility
- ModelSource
- ModelStorageMetrics
- ModelUnloadRequest
- ModelUnloadResult
- MultiFileArtifact
- NetworkEvent
- NetworkEventKind
- NpuCapability
- The single NPU-capability description in this IDL. Static device description lives in exactly one other place: device_info.proto's DeviceInfo.
- NPUChip
- OperatorSpec
- PerformanceMetrics
- Referenced only by LLMGenerationResult.performance, which no SDK reads.
- PipelineOptions
- PipelineSpec
- PipelineState
- PluginInfo
-
A loaded/registered plugin.
pathis empty for plugins the native registry reports by name only (it does not persist load paths) — proto3 string default "" matches the currentpath: ""placeholder. - Rac_options
- RAGConfig
- RAGConfiguration
- RAGDeleteRequest
-
Remove whole documents from the index for
rac_rag_delete_proto. - RAGDeleteResponse
- RAGDocument
- RAGQueryOptions
- RAGResult
- RAGRetrievalOptions
- The retrieval knobs, declared once. Every field unset = inherit RAGConfiguration.
- RAGSearchRequest
-
Retrieval-only request for
rac_rag_search_proto/ SDKrag.search(). Intentionally omits generation options — that isRAGQueryOptions/rac_rag_query_proto/ SDKrag.query(). - RAGSearchResponse
-
Retrieval-only response for
rac_rag_search_proto. - RAGSearchResult
- RAGStatistics
- RAGStreamEvent
- RAGStreamEventKind
- ReasoningMode
- The single home for reasoning control. Composed surfaces (tool calling, RAG, voice agent) inherit it through the embedded LLMGenerationOptions.
- ReasoningOptions
- RegisterModelFromUrlRequest
- RegisterMultiFileModelRequest
- RoutingPolicy
- On-device versus cloud routing. PREFER_LOCAL and PREFER_CLOUD cover the "preferred" cases; MANUAL is an explicit user override.
- SDKComponent
- SDKEnvironment
- SDKError
- The unified error payload every SDK throws or returns.
- SDKEvent
- SdkInitPhase1Request
- The only platform-supplied values commons cannot derive itself. Platform adapter callbacks are registered separately through rac_platform_adapter_t before this call; this message is purely the data envelope.
- SdkInitPhase2Request
- The one value that legitimately varies between a dev build and a release. Telemetry flushing and registry/local-file reconciliation are commons behaviour, not per-call hints.
- SdkInitResult
- Returned by Phase 1, Phase 2, and retryHTTP.
- SessionEvent
- SDK session lifecycle independent of voice-agent turn sessions.
- SessionEventKind
- SingleFileArtifact
- SolutionConfig
- SolutionHandle
- SolutionType
- Frontends switch on the SolutionConfig oneof case. This enum exists only for logs and handles, and its numbers now match the oneof tags.
- SpeechActivityEvent
- Narrow component-level transition: this detector said speech started or ended. Barge-in is a session-level decision, not a detector verdict — it is reported by InterruptedEvent / InterruptReason in voice_events.proto.
- SpeechActivityKind
- StateChangeEvent
- Pipeline lifecycle state. Ordered — callers can compare numerically.
- StorageAvailability
- StorageAvailabilityRequest
- StorageAvailabilityResult
- StorageDeleteCandidate
- StorageDeletePlan
- Non-destructive: describes what could be reclaimed without doing it.
- StorageDeletePlanRequest
- StorageDeleteRequest
- StorageDeleteResult
- StorageEvent
- StorageEventKind
- StorageInfo
- StorageInfoRequest
- StorageInfoResult
- StreamToken
- StructuredOutputMode
- How commons applies StructuredOutputOptions on the ordinary LLM generate path. Platform SDKs must not invent a second policy.
- StructuredOutputOptions
- StructuredOutputParseRequest
- StructuredOutputPromptResult
- StructuredOutputResult
- StructuredOutputValidation
- STTAudioSource
- STTConfiguration
- Init-time settings. Per-call knobs live on STTOptions; adapters mirror the transcription defaults below into STTOptions when building a request.
- STTOptions
- Per-call overrides.
- STTOutput
- STTPartialResult
-
An in-progress hypothesis.
textreplaces the previous partial in full. The finished result arrives on STTStreamEvent.final_output and never here; correlation (request_id, seq) and failures live on the STTStreamEvent envelope. - STTServiceState
- STTStreamEvent
- STTStreamEventKind
- STTTranscriptionRequest
- TelemetryEvent
-
PerformanceEvent was deleted (had zero producers and zero readers, per
review): a memory/thermal/latency/throughput reading is a named number with
a unit, which TelemetryEvent already models.
namecarries what PerformanceEventKind used to (e.g. "memory_warning", "thermal_state"),value+unitcarry the number (bytes / celsius-state / ms / tokens_per_second), andattributescarries operation/thermal_state text. - TelemetryEventKind
- ThinkingTagPattern
- Extracts a model's reasoning block from raw output, for families like Qwen3 and LFM2 that wrap it in . Used both per-call and as ModelInfo catalog metadata.
- TimeSeriesConfig
- TokenKind
- ToolCall
- ToolCallFormatName
- ToolCallingApi
- Logical tool-calling service contract. Host tool registration, permission checks, execution, callbacks, browser/native APIs, and side effects remain adapter-owned; this service describes only portable parsing, prompt formatting, and validation semantics over generated messages.
- ToolCallingHistoryTurn
- One prior conversation turn, with its speaker stated rather than inferred from list position.
- ToolCallingOptions
- ToolCallingResult
- ToolCallingRole
-
Conversational role of one prior turn in
history. - ToolCallingSessionCreateRequest
- ToolCallingSessionEvent
- ToolCallingSessionStepWithResultRequest
- ToolCallValidationRequest
- ToolCallValidationResult
- ToolChoiceMode
- ToolDefinition
- ToolParseRequest
- ToolParseResult
- ToolPromptFormatRequest
- ToolPromptFormatResult
- ToolResult
- ToolSpec
- ToolValue
- ToolValueArray
- ToolValueJSON
- ToolValueObject
- TranscriptionAlternative
- One n-best hypothesis. Per-word breakdown only when the backend emits it.
- TranscriptionMetadata
- Which model ran, and how long it took.
- TTSOptions
- TTSOutput
- TTSServiceState
- TTSSpeakResult
- Metadata-only view for callers that let the SDK play the audio and never need the raw bytes.
- TTSStreamEvent
- TTSStreamEventKind
- TTSSynthesisMetadata
- TTSSynthesisRequest
- TTSVoiceInfo
- TTSVoiceList
- TurnDetection
-
Turn detection. Field names, units and semantics follow OpenAI Realtime
session.audio.input.turn_detection. - TurnDetection_Type
- TurnLifecycleEvent
- TurnLifecycleEventKind
- UserSaidEvent
- User speech finalized by STT (is_final=false → partial hypothesis).
- VADAudioSource
- VADConfiguration
- Load-time configuration for a VAD instance.
- VADEvent
-
Voice Activity Detection output. Frontends usually do not need this —
exposed for debugging and custom UIs (waveform highlighting, etc.).
typeuses the canonical VADStreamEventKind enum from vad_options.proto (the hand-rolled VADEventType was deleted). - VADOptions
- Per-call options. Field vocabulary follows LiveKit/Silero naming.
- VADProcessRequest
- VADResult
- VADServiceState
- VADStatistics
- Exposed for debugging and waveform UIs.
- VADStreamEvent
- VADStreamEventKind
- Every value here is emitted by commons. Barge-in is a session-level decision, not a detector verdict: it lives on InterruptedEvent / InterruptReason in voice_events.proto.
- VectorStore
- VLMChatTemplate
- VLMGenerationRequest
- VLMImage
- Pixel buffers are tightly packed with NO row padding: RGB is 3 bytes/px, RGBA is 4, and width * height * channels MUST equal the buffer length or the request is rejected. raw_rgba drops alpha at the boundary.
- VLMModelFamily
- VLMResult
- VLMStreamEvent
- VLMStreamEventKind
- VLMVisionOptions
- The four genuinely vision-specific knobs. Everything else in the old VLMGenerationOptions was either a copy of LLMGenerationOptions or dead.
- VoiceAgentAudioFrame
- Streamed capture frame. Same fixed input contract as VoiceAgentTurnRequest.
- VoiceAgentComponentStates
-
Aggregate load state across all four voice-agent components. Mirrors Swift
VoiceAgentComponentStates, KotlinVoiceAgentComponentStates, RNVoiceAgentComponentStates, WebVoiceAgentComponentStates, and FlutterVoiceAgentComponentStates. - VoiceAgentComposeConfig
- Each component takes a path or an id; commons resolves the id through the model registry.
- VoiceAgentConfig
- VoiceAgentResult
- VoiceAgentSynthesizeSpeechProtoRequest
- VoiceAgentTranscribeProtoRequest
- VoiceAgentTurnRequest
- One-shot turn: audio in, transcription plus response plus audio out.
- VoiceEvent
- VoiceEventKind
- VoiceLifecycleEvent
- VoicePipelineComponent
- VoiceSessionError
- WordTimestamp
Enums
- ChatAttachment_Source
- ComponentLifecycleEvent_Payload
- HybridCascade_Kind
- HybridFilter_Kind
- ModelEvent_Result
- ModelInfo_Artifact
- SDKEvent_Event
- SolutionConfig_Config
- StorageEvent_Result
- StructuredOutputOptions_Constraint
- STTAudioSource_Source
- ToolCallingSessionEvent_Kind
- ToolValue_Kind
- VLMImage_Source
- VoiceEvent_Payload
Extensions
- GeneratedMessageGenericExtensions on T
-
Extensions on
GeneratedMessages.