Skip to content

Documentation / @agentick/client / SessionAccessor

Interface: SessionAccessor

Defined in: client/src/client.ts:114

Session accessor for interacting with a specific session.

Cold accessor (from client.session(id)) - no server subscription Hot accessor (from client.subscribe(id)) - actively receiving events

Properties

isSubscribed

readonly isSubscribed: boolean

Defined in: client/src/client.ts:119

Whether this accessor is subscribed (hot)


sessionId

readonly sessionId: string

Defined in: client/src/client.ts:116

Session ID

Methods

abort()

abort(reason?): Promise<void>

Defined in: client/src/client.ts:141

Abort the current execution.

Parameters

reason?

string

Returns

Promise<void>


channel()

channel(name): ChannelAccessor

Defined in: client/src/client.ts:181

Get a channel accessor scoped to this session. Allows pub/sub communication with the server for this session.

Parameters

name

string

Returns

ChannelAccessor


close()

close(): Promise<void>

Defined in: client/src/client.ts:155

Close the session.

Returns

Promise<void>


dispatch()

dispatch(name, input): Promise<ContentBlock[]>

Defined in: client/src/client.ts:187

Dispatch a tool by name (or alias). Ensures the component tree is mounted before dispatch.

Parameters

name

string

input

Record<string, unknown>

Returns

Promise<ContentBlock[]>


interrupt()

interrupt(input?, reason?): Promise<ClientExecutionHandle>

Defined in: client/src/client.ts:147

Abort current execution and start a new one with the given input. Atomic abort+send — no race between the two operations.

Parameters

input?

string | Message[] | SendInput<Record<string, unknown>>

reason?

string

Returns

Promise<ClientExecutionHandle>


invoke()

invoke<T>(method, params?): Promise<T>

Defined in: client/src/client.ts:192

Invoke a custom method with auto-injected sessionId.

Type Parameters

T

T = unknown

Parameters

method

string

params?

Record<string, unknown>

Returns

Promise<T>


onEvent()

onEvent(handler): () => void

Defined in: client/src/client.ts:165

Subscribe to events for this session only.

Parameters

handler

SessionEventHandler

Returns

(): void

Returns

void


onResult()

onResult(handler): () => void

Defined in: client/src/client.ts:170

Subscribe to results for this session only.

Parameters

handler

SessionResultHandler

Returns

(): void

Returns

void


onToolConfirmation()

onToolConfirmation(handler): () => void

Defined in: client/src/client.ts:175

Subscribe to tool confirmation requests for this session.

Parameters

handler

SessionToolConfirmationHandler

Returns

(): void

Returns

void


send()

send(input): ClientExecutionHandle

Defined in: client/src/client.ts:136

Send a message to this session.

Parameters

input

SendInput

Returns

ClientExecutionHandle


stream()

stream<T>(method, params?): AsyncGenerator<T>

Defined in: client/src/client.ts:197

Invoke a streaming method with auto-injected sessionId.

Type Parameters

T

T = unknown

Parameters

method

string

params?

Record<string, unknown>

Returns

AsyncGenerator<T>


submitToolResult()

submitToolResult(toolUseId, result): void

Defined in: client/src/client.ts:160

Submit a tool confirmation response.

Parameters

toolUseId

string

result

ToolConfirmationResponse

Returns

void


subscribe()

subscribe(): void

Defined in: client/src/client.ts:125

Subscribe to session events. Makes this a "hot" accessor.

Returns

void


unsubscribe()

unsubscribe(): void

Defined in: client/src/client.ts:131

Unsubscribe from session events. Makes this a "cold" accessor.

Returns

void

Released under the ISC License.