pub struct ClientContext {
pub protocol_version: Option<ProtocolVersion>,
pub capabilities: ClientCapabilities,
pub progress_token: Option<ProgressToken>,
kind: ClientKind,
}Expand description
The calling client and what it declared in the request’s _meta.
Fields§
§protocol_version: Option<ProtocolVersion>§capabilities: ClientCapabilities§progress_token: Option<ProgressToken>§kind: ClientKindImplementations§
Source§impl ClientContext
impl ClientContext
Sourcepub fn from_meta(meta: Map<String, Value>) -> Self
pub fn from_meta(meta: Map<String, Value>) -> Self
The context a request’s _meta declares; missing fields fall back to defaults.
Sourcepub fn client_kind(&self) -> ClientKind
pub fn client_kind(&self) -> ClientKind
The kind of client, guessed from its client_info name.
Sourcepub fn supports_url_elicitation(&self) -> bool
pub fn supports_url_elicitation(&self) -> bool
Whether the client declared support for URL elicitation.
Sourcepub fn can_use_input_required(&self) -> bool
pub fn can_use_input_required(&self) -> bool
Whether an input_required result will reach the human. Codex’s opt-in 2026-07-28 path
errors on these results, so it gets the text fallback.
Sourcepub fn result_budget_bytes(&self) -> usize
pub fn result_budget_bytes(&self) -> usize
Serialized result size reads aim under: Codex drops the middle of results over about 10 KB, Claude Code moves results over about 50k characters to a file.
Sourcepub fn read_back_budget_bytes(&self) -> usize
pub fn read_back_budget_bytes(&self) -> usize
A smaller budget for read_back, which follows a write summary in the same result.
Trait Implementations§
Source§impl Clone for ClientContext
impl Clone for ClientContext
Source§fn clone(&self) -> ClientContext
fn clone(&self) -> ClientContext
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ClientContext
impl RefUnwindSafe for ClientContext
impl Send for ClientContext
impl Sync for ClientContext
impl Unpin for ClientContext
impl UnsafeUnpin for ClientContext
impl UnwindSafe for ClientContext
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> ServiceExt for T
impl<T> ServiceExt for T
§fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
Apply a transformation to the response body. Read more
§fn decompression(self) -> Decompression<Self>where
Self: Sized,
fn decompression(self) -> Decompression<Self>where
Self: Sized,
Decompress response bodies. Read more
§fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using HTTP status codes. Read more
§fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using gRPC headers. Read more