#[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
OpenComputer
Opens the gateway-owned computer and foregrounds the chat’s assigned tab.
Fields
SetDesktopStream
Opens or closes this authenticated connection’s remote desktop stream.
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
SetNotifications
Replaces this connection’s optional notification exclusions.
Fields
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.
GetGitDiffTotals
Asks for the line totals of a Git diff, as Git counts them.
Fields
scope: GitDiffScopeThe scope.
SetBrowserRuntime
Registers the local Mac renderer for gateway-assigned browser pages.
BrowserPageReply
Supplies the scoped Unix endpoint of an assigned local browser page.
Fields
SetDesktopRuntime
Selects the set desktop runtime case.
DesktopControlReply
Selects the desktop control reply case.
Pair
Selects the pair case.
Fields
client_kind: ClientKindThe client kind.
RepairPairing
Selects the repair pairing case.
Fields
client_kind: ClientKindThe client kind.
Authenticate
Selects the authenticate case.
Fields
client_kind: ClientKindThe client kind.
catalog: CatalogHintThe 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.
GetTelemetry
Read collector configuration and delivery status.
GetStorageUsage
Read storage ownership and measured sizes without mutating files.
ConfigureTelemetry
Replace collector configuration at an expected revision.
Fields
sinks: Vec<TelemetrySink>Configured collectors.
SendTelemetry
Deliver a snapshot immediately.
Fields
UnpairClient
Selects the unpair client case.
ListSessions
Selects the list sessions case.
ListBotSessions
Selects the list bot sessions case.
CreateSession
Selects the create session case.
Fields
CreateWorkspaceDirectory
Selects the create workspace directory case.
OpenSession
Selects the open session case.
Fields
GetSessionHistory
Selects the get session history case.
Fields
ReassignSession
Selects the reassign session case.
Fields
RenameSession
Selects the rename session case.
Fields
AttachSessionFolder
Selects the attach session folder case.
Fields
SetSessionPinned
Selects the set session pinned case.
Fields
DeleteSessions
Selects the delete sessions case.
Fields
selection: SessionFileSelectionRequired deletion scope; history is removed only for all.
Submit
Selects the submit case.
StartRealtimeVoice
Selects the start realtime voice case.
Fields
EndRealtimeVoice
Selects the end realtime voice case.
GetContributions
Selects the get contributions case.
SubmitContribution
Selects the submit contribution case.
BeginSessionFileUpload
Selects the begin session file upload case.
Fields
UploadSessionFileChunk
Selects the upload session file chunk case.
Fields
FinishSessionFileUpload
Selects the finish session file upload case.
Fields
ListSessionFiles
Selects the list session files case.
ReadSessionFile
Selects the read session file case.
Fields
CreateBot
Selects the create bot case.
Fields
ListBots
Selects the list bots case.
UpdateBot
Selects the update bot case.
DeleteBot
Selects the delete bot case.
Fields
ConfigureBotDefaults
Selects the configure bot defaults case.
Fields
config: AgentCompositionThe config.
InstallExtension
Selects the install extension case.
Fields
UpdateExtension
Selects the update extension case.
UninstallExtension
Selects the uninstall extension case.
TrustExtensionHooks
Selects the trust extension hooks case.
Fields
RevokeExtensionHooksTrust
Selects the revoke extension hooks trust case.
Fields
ProbeGitCredential
Selects the probe git credential case.
ApproveGitCredential
Selects the approve git credential case.
Fields
ListSshIdentities
Selects the list ssh identities case.
GenerateSshIdentity
Selects the generate ssh identity case.
GetGitDiff
Selects the get git diff case.
Fields
scope: GitDiffScopeThe scope.
SwitchGitBranch
Selects the switch git branch case.
Fields
ListDirectories
Selects the list directories case.
Fields
ListWorkspaceFiles
Selects the list workspace files case.
Fields
scope: WorkspaceFileScopeThe scope.
ReadWorkspaceFile
Selects the read workspace file case.
Fields
DeleteWorkspaceFile
Deletes a file inside the selected workspace.
Fields
WriteWorkspaceFile
Writes one workspace text file.
Fields
ClearProviderCredential
Selects the clear provider credential case.
SetProviderCredential
Selects the set provider credential case.
Fields
SetProviderEndpointCredential
Selects the set provider endpoint credential case.
Fields
RegisterProvider
Selects the register provider case.
RemoveProvider
Selects the remove provider case.
CreatePairingCode
Selects the create pairing code case.
StartProviderLogin
Selects the start provider login case.
GetProfile
Selects the get profile case.
Fields
CreateRoutine
Create a validated routine definition.
Fields
definition: RoutineDefinitionEditable content and exact bindings.
ListRoutines
List the current routine definitions.
RoutineCommand
Apply the same typed command used by timers and hooks.
ListRoutineHistory
Selects the list routine history case.
DeleteRoutineRun
Selects the delete routine run case.
GetRoutineRunPreview
Selects the get routine run preview case.