Skip to main content

SessionRpcPermissions

Struct SessionRpcPermissions 

Source
pub struct SessionRpcPermissions<'a> { /* private fields */ }
Expand description

session.permissions.* RPCs.

Implementations§

Source§

impl<'a> SessionRpcPermissions<'a>

Source

pub fn folder_trust(&self) -> SessionRpcPermissionsFolderTrust<'a>

session.permissions.folderTrust.* sub-namespace.

Source

pub fn locations(&self) -> SessionRpcPermissionsLocations<'a>

session.permissions.locations.* sub-namespace.

Source

pub fn paths(&self) -> SessionRpcPermissionsPaths<'a>

session.permissions.paths.* sub-namespace.

Source

pub fn urls(&self) -> SessionRpcPermissionsUrls<'a>

session.permissions.urls.* sub-namespace.

Source

pub async fn configure( &self, params: PermissionsConfigureParams, ) -> Result<PermissionsConfigureResult, Error>

Replaces selected permission policy fields (rules, paths, URLs, exclusions, allow-all flags) on the session.

Wire method: session.permissions.configure.

§Parameters
  • params - Patch of permission policy fields to apply (omit a field to leave it unchanged).
§Returns

Indicates whether the operation succeeded.

Experimental. This API is part of an experimental wire-protocol surface and may change or be removed in future SDK or CLI releases. Pin both the SDK and CLI versions if your code depends on it.

Source

pub async fn handle_pending_permission_request( &self, params: PermissionDecisionRequest, ) -> Result<PermissionRequestResult, Error>

Provides a decision for a pending tool permission request.

Wire method: session.permissions.handlePendingPermissionRequest.

§Parameters
  • params - Pending permission request ID and the decision to apply (approve/reject and scope).
§Returns

Indicates whether the permission decision was applied; false when the request was already resolved.

Experimental. This API is part of an experimental wire-protocol surface and may change or be removed in future SDK or CLI releases. Pin both the SDK and CLI versions if your code depends on it.

Source

pub async fn pending_requests( &self, ) -> Result<PendingPermissionRequestList, Error>

Reconstructs the set of pending tool permission requests from the session’s event history.

Wire method: session.permissions.pendingRequests.

§Returns

List of pending permission requests reconstructed from event history.

Experimental. This API is part of an experimental wire-protocol surface and may change or be removed in future SDK or CLI releases. Pin both the SDK and CLI versions if your code depends on it.

Source

pub async fn set_approve_all( &self, params: PermissionsSetApproveAllRequest, ) -> Result<PermissionsSetApproveAllResult, Error>

Enables or disables automatic approval of tool permission requests for the session.

Wire method: session.permissions.setApproveAll.

§Parameters
  • params - Allow-all toggle for tool permission requests, with an optional telemetry source.
§Returns

Indicates whether the operation succeeded.

Experimental. This API is part of an experimental wire-protocol surface and may change or be removed in future SDK or CLI releases. Pin both the SDK and CLI versions if your code depends on it.

Source

pub async fn modify_rules( &self, params: PermissionsModifyRulesParams, ) -> Result<PermissionsModifyRulesResult, Error>

Adds or removes session-scoped or location-scoped permission rules.

Wire method: session.permissions.modifyRules.

§Parameters
  • params - Scope and add/remove instructions for modifying session- or location-scoped permission rules.
§Returns

Indicates whether the operation succeeded.

Experimental. This API is part of an experimental wire-protocol surface and may change or be removed in future SDK or CLI releases. Pin both the SDK and CLI versions if your code depends on it.

Source

pub async fn set_required( &self, params: PermissionsSetRequiredRequest, ) -> Result<PermissionsSetRequiredResult, Error>

Sets whether the client wants permission prompts bridged into session events.

Wire method: session.permissions.setRequired.

§Parameters
  • params - Toggles whether permission prompts should be bridged into session events for this client.
§Returns

Indicates whether the operation succeeded.

Experimental. This API is part of an experimental wire-protocol surface and may change or be removed in future SDK or CLI releases. Pin both the SDK and CLI versions if your code depends on it.

Source

pub async fn reset_session_approvals( &self, ) -> Result<PermissionsResetSessionApprovalsResult, Error>

Clears session-scoped tool permission approvals.

Wire method: session.permissions.resetSessionApprovals.

§Returns

Indicates whether the operation succeeded.

Experimental. This API is part of an experimental wire-protocol surface and may change or be removed in future SDK or CLI releases. Pin both the SDK and CLI versions if your code depends on it.

Source

pub async fn notify_prompt_shown( &self, params: PermissionPromptShownNotification, ) -> Result<PermissionsNotifyPromptShownResult, Error>

Notifies the runtime that a permission prompt UI has been shown to the user.

Wire method: session.permissions.notifyPromptShown.

§Parameters
  • params - Notification payload describing the permission prompt that the client just rendered.
§Returns

Indicates whether the operation succeeded.

Experimental. This API is part of an experimental wire-protocol surface and may change or be removed in future SDK or CLI releases. Pin both the SDK and CLI versions if your code depends on it.

Trait Implementations§

Source§

impl<'a> Clone for SessionRpcPermissions<'a>

Source§

fn clone(&self) -> SessionRpcPermissions<'a>

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<'a> Copy for SessionRpcPermissions<'a>

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<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> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

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> 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 = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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<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