Skip to main content

ClientMessage

Enum ClientMessage 

Source
#[non_exhaustive]
pub enum ClientMessage {
Show 76 variants OpenComputer { request_id: String, session_id: String, }, SetDesktopStream { request_id: String, enabled: bool, }, DesktopData { data: Vec<u8>, }, SetDesktopControl { request_id: String, enabled: bool, session_id: Option<String>, }, SetNotifications { request_id: String, disabled: BTreeSet<GatewayNotification>, }, SelectSession { request_id: String, session_id: String, }, GetGitDiffTotals { request_id: String, session_id: String, scope: GitDiffScope, }, SetBrowserRuntime { request_id: String, enabled: bool, }, BrowserPageReply { request_id: String, endpoint: Option<String>, }, SetDesktopRuntime { request_id: String, enabled: bool, }, DesktopControlReply { request_id: String, response: Value, }, Pair { code: String, client_label: String, client_kind: ClientKind, }, RepairPairing { code: String, replacing_token_digest: [u8; 32], client_label: String, client_kind: ClientKind, }, Authenticate { token: String, client_kind: ClientKind, catalog: CatalogHint, }, ListClients { request_id: String, }, GetTelemetry { request_id: String, }, GetStorageUsage { request_id: String, }, ConfigureTelemetry { request_id: String, expected_revision: u64, sinks: Vec<TelemetrySink>, preserve_auth: Vec<String>, }, SendTelemetry { request_id: String, sink_id: String, }, UnpairClient { request_id: String, client_id: String, }, ListSessions { request_id: String, }, ListBotSessions { request_id: String, bot_id: String, }, CreateSession { request_id: String, workspace: PathBuf, bot_id: String, }, CreateWorkspaceDirectory { request_id: String, parent: PathBuf, name: String, }, OpenSession { request_id: String, session_id: String, last_sequence: Option<u64>, }, GetSessionHistory { request_id: String, session_id: String, before_sequence: Option<u64>, }, ReassignSession { request_id: String, session_id: String, bot_id: String, }, RenameSession { request_id: String, session_id: String, title: String, }, AttachSessionFolder { request_id: String, session_id: String, folder: PathBuf, }, SetSessionPinned { request_id: String, session_id: String, pinned: bool, }, DeleteSessions { request_id: String, session_ids: Vec<String>, selection: SessionFileSelection, }, Submit { session_id: String, submission: Submission, }, StartRealtimeVoice { request_id: String, session_id: String, offer_sdp: String, }, EndRealtimeVoice { session_id: String, voice_id: String, }, GetContributions { request_id: String, }, SubmitContribution { request_id: String, operation: Op, }, BeginSessionFileUpload { request_id: String, session_id: String, name: String, size: u64, media_type: String, }, UploadSessionFileChunk { request_id: String, session_id: String, upload_id: String, offset: u64, data: Vec<u8>, }, FinishSessionFileUpload { request_id: String, session_id: String, upload_id: String, }, ListSessionFiles { request_id: String, session_id: String, }, ReadSessionFile { request_id: String, session_id: String, file_id: String, offset: u64, max_bytes: usize, }, CreateBot { request_id: String, name: String, description: String, }, ListBots { request_id: String, }, UpdateBot { request_id: String, id: String, expected_revision: u64, name: String, description: String, tint: ProviderTint, shape: BotShape, config: AgentComposition, }, DeleteBot { request_id: String, id: String, expected_revision: u64, }, ConfigureBotDefaults { request_id: String, expected_revision: u64, config: AgentComposition, }, InstallExtension { request_id: String, source: String, reference: Option<String>, subdirectory: Option<String>, }, UpdateExtension { request_id: String, id: String, }, UninstallExtension { request_id: String, id: String, }, TrustExtensionHooks { request_id: String, id: String, expected_digest: String, }, RevokeExtensionHooksTrust { request_id: String, id: String, expected_digest: String, }, ProbeGitCredential { request_id: String, target: String, }, ApproveGitCredential { request_id: String, target: String, username: String, token: String, }, ListSshIdentities { request_id: String, }, GenerateSshIdentity { request_id: String, }, GetGitDiff { request_id: String, session_id: String, scope: GitDiffScope, }, SwitchGitBranch { request_id: String, session_id: String, branch: String, }, ListDirectories { request_id: String, path: PathBuf, include_files: bool, }, ListWorkspaceFiles { request_id: String, session_id: String, scope: WorkspaceFileScope, }, ReadWorkspaceFile { request_id: String, session_id: String, path: String, offset: u64, max_bytes: usize, }, DeleteWorkspaceFile { request_id: String, session_id: String, path: String, }, WriteWorkspaceFile { request_id: String, session_id: String, path: String, content: String, }, ClearProviderCredential { request_id: String, instance: String, }, SetProviderCredential { request_id: String, instance: String, provider: String, api_key: String, expires_at: Option<u64>, }, SetProviderEndpointCredential { request_id: String, instance: String, provider: String, base_url: String, api_key: String, expires_at: Option<u64>, }, RegisterProvider { request_id: String, config: ProviderConfig, label: String, tint: ProviderTint, model_ids: Vec<String>, reasoning_efforts: Vec<String>, }, RemoveProvider { request_id: String, instance: String, }, CreatePairingCode { request_id: String, }, StartProviderLogin { request_id: String, provider: String, }, GetProfile { request_id: String, include_provider_usage: bool, }, CreateRoutine { request_id: String, bot_id: String, definition: RoutineDefinition, }, ListRoutines { request_id: String, bot_id: Option<String>, }, RoutineCommand { request_id: String, command: RoutineCommand, }, ListRoutineHistory { request_id: String, id: Option<String>, }, DeleteRoutineRun { request_id: String, id: String, }, GetRoutineRunPreview { request_id: String, id: String, before_sequence: Option<u64>, },
}
Expand description

Authenticated operations accepted by the gateway.

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

OpenComputer

Opens the gateway-owned computer and foregrounds the chat’s assigned tab.

Fields

§request_id: String

The request identifier.

§session_id: String

The chat whose assigned browser tab to show.

§

SetDesktopStream

Opens or closes this authenticated connection’s remote desktop stream.

Fields

§request_id: String

The request identifier.

§enabled: bool

Whether to stream the desktop.

§

DesktopData

Ordered RFB bytes for this connection’s desktop stream.

Fields

§data: Vec<u8>

The raw RFB data, limited to MAX_DESKTOP_CHUNK_BYTES.

§

SetDesktopControl

Requests or releases the gateway’s human desktop lease.

Fields

§request_id: String

The request identifier.

§enabled: bool

Whether to take control.

§session_id: Option<String>

The chat whose computer view requested control.

§

SetNotifications

Replaces this connection’s optional notification exclusions.

Fields

§request_id: String

The request identifier.

§disabled: BTreeSet<GatewayNotification>

Broadcasts to suppress until replaced or the connection closes.

§

SelectSession

Selects a chat for file, history and workspace requests without replaying or streaming its events; answered by session_opened alone.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§

GetGitDiffTotals

Asks for the line totals of a Git diff, as Git counts them.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§scope: GitDiffScope

The scope.

§

SetBrowserRuntime

Registers the local Mac renderer for gateway-assigned browser pages.

Fields

§request_id: String

The request identifier.

§enabled: bool

Whether the renderer is available.

§

BrowserPageReply

Supplies the scoped Unix endpoint of an assigned local browser page.

Fields

§request_id: String

The gateway’s page request identifier.

§endpoint: Option<String>

The endpoint, or none if the renderer cannot provide the page.

§

SetDesktopRuntime

Selects the set desktop runtime case.

Fields

§request_id: String

The request identifier.

§enabled: bool

The enabled.

§

DesktopControlReply

Selects the desktop control reply case.

Fields

§request_id: String

The request identifier.

§response: Value

The response.

§

Pair

Selects the pair case.

Fields

§code: String

The code.

§client_label: String

The client label.

§client_kind: ClientKind

The client kind.

§

RepairPairing

Selects the repair pairing case.

Fields

§code: String

The code.

§replacing_token_digest: [u8; 32]

The digest of the client token being replaced.

§client_label: String

The client label.

§client_kind: ClientKind

The client kind.

§

Authenticate

Selects the authenticate case.

Fields

§token: String

The token.

§client_kind: ClientKind

The client kind.

§catalog: CatalogHint

The catalog this client already holds, or does not need. An empty hint is left out, so the version check that replaces an older running gateway can reach it.

§

ListClients

Selects the list clients case.

Fields

§request_id: String

The request identifier.

§

GetTelemetry

Read collector configuration and delivery status.

Fields

§request_id: String

Correlates this response with its request.

§

GetStorageUsage

Read storage ownership and measured sizes without mutating files.

Fields

§request_id: String

Correlates this response with its request.

§

ConfigureTelemetry

Replace collector configuration at an expected revision.

Fields

§request_id: String

Correlates this response with its request.

§expected_revision: u64

Configuration revision observed before editing.

§sinks: Vec<TelemetrySink>

Configured collectors.

§preserve_auth: Vec<String>

IDs whose existing credential sources must survive a redacted report edit.

§

SendTelemetry

Deliver a snapshot immediately.

Fields

§request_id: String

Correlates this response with its request.

§sink_id: String

Collector to send now.

§

UnpairClient

Selects the unpair client case.

Fields

§request_id: String

The request identifier.

§client_id: String

The client identifier.

§

ListSessions

Selects the list sessions case.

Fields

§request_id: String

The request identifier.

§

ListBotSessions

Selects the list bot sessions case.

Fields

§request_id: String

The request identifier.

§bot_id: String

The bot identifier.

§

CreateSession

Selects the create session case.

Fields

§request_id: String

The request identifier.

§workspace: PathBuf

The workspace.

§bot_id: String

The bot identifier.

§

CreateWorkspaceDirectory

Selects the create workspace directory case.

Fields

§request_id: String

The request identifier.

§parent: PathBuf

The parent.

§name: String

The name.

§

OpenSession

Selects the open session case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§last_sequence: Option<u64>

The last sequence.

§

GetSessionHistory

Selects the get session history case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§before_sequence: Option<u64>

The before sequence.

§

ReassignSession

Selects the reassign session case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§bot_id: String

The bot identifier.

§

RenameSession

Selects the rename session case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§title: String

The title.

§

AttachSessionFolder

Selects the attach session folder case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§folder: PathBuf

The folder.

§

SetSessionPinned

Selects the set session pinned case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§pinned: bool

The pinned.

§

DeleteSessions

Selects the delete sessions case.

Fields

§request_id: String

The request identifier.

§session_ids: Vec<String>

The session identifiers.

§selection: SessionFileSelection

Required deletion scope; history is removed only for all.

§

Submit

Selects the submit case.

Fields

§session_id: String

The session identifier.

§submission: Submission

The submission.

§

StartRealtimeVoice

Selects the start realtime voice case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§offer_sdp: String

The offer sdp.

§

EndRealtimeVoice

Selects the end realtime voice case.

Fields

§session_id: String

The session identifier.

§voice_id: String

The voice identifier.

§

GetContributions

Selects the get contributions case.

Fields

§request_id: String

The request identifier.

§

SubmitContribution

Selects the submit contribution case.

Fields

§request_id: String

The request identifier.

§operation: Op

The operation.

§

BeginSessionFileUpload

Selects the begin session file upload case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§name: String

The name.

§size: u64

The size.

§media_type: String

The media type.

§

UploadSessionFileChunk

Selects the upload session file chunk case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§upload_id: String

The upload identifier.

§offset: u64

The offset.

§data: Vec<u8>

The data.

§

FinishSessionFileUpload

Selects the finish session file upload case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§upload_id: String

The upload identifier.

§

ListSessionFiles

Selects the list session files case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§

ReadSessionFile

Selects the read session file case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§file_id: String

The file identifier.

§offset: u64

The offset.

§max_bytes: usize

The max bytes.

§

CreateBot

Selects the create bot case.

Fields

§request_id: String

The request identifier.

§name: String

The name.

§description: String

The description.

§

ListBots

Selects the list bots case.

Fields

§request_id: String

The request identifier.

§

UpdateBot

Selects the update bot case.

Fields

§request_id: String

The request identifier.

§id: String

The identifier.

§expected_revision: u64

The expected revision.

§name: String

The name.

§description: String

The description.

§tint: ProviderTint

The tint.

§shape: BotShape

The face’s silhouette.

§config: AgentComposition

The config.

§

DeleteBot

Selects the delete bot case.

Fields

§request_id: String

The request identifier.

§id: String

The identifier.

§expected_revision: u64

The expected revision.

§

ConfigureBotDefaults

Selects the configure bot defaults case.

Fields

§request_id: String

The request identifier.

§expected_revision: u64

The expected revision.

§config: AgentComposition

The config.

§

InstallExtension

Selects the install extension case.

Fields

§request_id: String

The request identifier.

§source: String

The source.

§reference: Option<String>

The reference.

§subdirectory: Option<String>

The subdirectory.

§

UpdateExtension

Selects the update extension case.

Fields

§request_id: String

The request identifier.

§id: String

The identifier.

§

UninstallExtension

Selects the uninstall extension case.

Fields

§request_id: String

The request identifier.

§id: String

The identifier.

§

TrustExtensionHooks

Selects the trust extension hooks case.

Fields

§request_id: String

The request identifier.

§id: String

The identifier.

§expected_digest: String

The expected digest.

§

RevokeExtensionHooksTrust

Selects the revoke extension hooks trust case.

Fields

§request_id: String

The request identifier.

§id: String

The identifier.

§expected_digest: String

The expected digest.

§

ProbeGitCredential

Selects the probe git credential case.

Fields

§request_id: String

The request identifier.

§target: String

The target.

§

ApproveGitCredential

Selects the approve git credential case.

Fields

§request_id: String

The request identifier.

§target: String

The target.

§username: String

The username.

§token: String

The token.

§

ListSshIdentities

Selects the list ssh identities case.

Fields

§request_id: String

The request identifier.

§

GenerateSshIdentity

Selects the generate ssh identity case.

Fields

§request_id: String

The request identifier.

§

GetGitDiff

Selects the get git diff case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§scope: GitDiffScope

The scope.

§

SwitchGitBranch

Selects the switch git branch case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§branch: String

The branch.

§

ListDirectories

Selects the list directories case.

Fields

§request_id: String

The request identifier.

§path: PathBuf

The path.

§include_files: bool

The include files.

§

ListWorkspaceFiles

Selects the list workspace files case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§scope: WorkspaceFileScope

The scope.

§

ReadWorkspaceFile

Selects the read workspace file case.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§path: String

The path.

§offset: u64

The offset.

§max_bytes: usize

The max bytes.

§

DeleteWorkspaceFile

Deletes a file inside the selected workspace.

Fields

§request_id: String

Request correlation identifier.

§session_id: String

Selected project chat.

§path: String

Relative regular file path.

§

WriteWorkspaceFile

Writes one workspace text file.

Fields

§request_id: String

The request identifier.

§session_id: String

The session identifier.

§path: String

The path.

§content: String

The content.

§

ClearProviderCredential

Selects the clear provider credential case.

Fields

§request_id: String

The request identifier.

§instance: String

The instance.

§

SetProviderCredential

Selects the set provider credential case.

Fields

§request_id: String

The request identifier.

§instance: String

The instance.

§provider: String

The provider.

§api_key: String

The API key.

§expires_at: Option<u64>

The expires at.

§

SetProviderEndpointCredential

Selects the set provider endpoint credential case.

Fields

§request_id: String

The request identifier.

§instance: String

The instance.

§provider: String

The provider.

§base_url: String

The base URL.

§api_key: String

The API key.

§expires_at: Option<u64>

The expires at.

§

RegisterProvider

Selects the register provider case.

Fields

§request_id: String

The request identifier.

§config: ProviderConfig

The config.

§label: String

The label.

§tint: ProviderTint

The tint.

§model_ids: Vec<String>

The model identifiers.

§reasoning_efforts: Vec<String>

The reasoning efforts.

§

RemoveProvider

Selects the remove provider case.

Fields

§request_id: String

The request identifier.

§instance: String

The instance.

§

CreatePairingCode

Selects the create pairing code case.

Fields

§request_id: String

The request identifier.

§

StartProviderLogin

Selects the start provider login case.

Fields

§request_id: String

The request identifier.

§provider: String

The provider.

§

GetProfile

Selects the get profile case.

Fields

§request_id: String

The request identifier.

§include_provider_usage: bool

The include provider usage.

§

CreateRoutine

Create a validated routine definition.

Fields

§request_id: String

Request identity.

§bot_id: String

Owning Bot.

§definition: RoutineDefinition

Editable content and exact bindings.

§

ListRoutines

List the current routine definitions.

Fields

§request_id: String

Request identity.

§bot_id: Option<String>

Optional owning Bot.

§

RoutineCommand

Apply the same typed command used by timers and hooks.

Fields

§request_id: String

Request and command identity.

§command: RoutineCommand

Target and action.

§

ListRoutineHistory

Selects the list routine history case.

Fields

§request_id: String

The request identifier.

§id: Option<String>

The identifier.

§

DeleteRoutineRun

Selects the delete routine run case.

Fields

§request_id: String

The request identifier.

§id: String

The identifier.

§

GetRoutineRunPreview

Selects the get routine run preview case.

Fields

§request_id: String

The request identifier.

§id: String

The identifier.

§before_sequence: Option<u64>

The before sequence.

Trait Implementations§

Source§

impl Clone for ClientMessage

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ClientMessage

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for ClientMessage

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl PartialEq for ClientMessage

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl Serialize for ClientMessage

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for ClientMessage

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more