Struct ChannelModelPickerRequest
pub struct ChannelModelPickerRequest {
pub requesting_user: String,
pub requesting_user_id: String,
pub reply_target: String,
pub thread_ts: Option<String>,
pub channel_alias: String,
pub owner_agent_alias: String,
pub current_model_provider: String,
pub current_model: String,
pub model_routes: Vec<ChannelModelPickerRoute>,
}Expand description
Runtime-owned state needed by a channel to present its native model picker.
The picker is presentation only: a selected option must re-enter the
channel runtime through the existing /model <ref> command path so model
resolution and session scoping keep a single owner.
Fields§
§requesting_user: StringHuman-readable display name of the user who sent /model, for
rendering only. Never use this for authorization; that is
requesting_user_id’s role.
requesting_user_id: StringImmutable platform identity of the requesting user, used to authorize
picker interactions (only this user may drive the picker) and to bind
the selection back to the sender. Channels may decline to present a
picker (return Ok(false)) when this is empty.
reply_target: StringReply scope inherited from the triggering message. The picker must be delivered to this target so it lands in the same chat the command was issued in.
thread_ts: Option<String>Thread/topic scope inherited from the triggering message. When Some,
the picker and any follow-up selection must stay in the same thread or
topic; when None, the channel’s default scope applies.
channel_alias: StringAlias of the channel instance that received the command. A channel
must decline requests whose alias is not its own (return Ok(false)).
owner_agent_alias: StringAlias of the agent that owns this runtime. Implementations that render
agent-owned picker state must decline (return Ok(false)) on mismatch.
current_model_provider: StringProvider ref of the currently selected route, shown as the picker’s starting state.
current_model: StringModel of the currently selected route, shown as the picker’s starting state.
model_routes: Vec<ChannelModelPickerRoute>Restart-scoped route snapshot used by the channel runtime to resolve
/model <ref>. This is an in-memory view of the routes loaded at
startup, not durable configuration; native pickers must not offer
routes outside this set.
Trait Implementations§
Source§impl Clone for ChannelModelPickerRequest
impl Clone for ChannelModelPickerRequest
Source§fn clone(&self) -> ChannelModelPickerRequest
fn clone(&self) -> ChannelModelPickerRequest
1.0.0 (const: unstable) · §fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more