pub enum Role {
Show 13 variants
Swarm,
Agent,
Channel(ChannelKind),
Tool(ToolKind),
Cron(CronKind),
Provider(ProviderKind),
Memory(MemoryKind),
PeerGroup,
Skill,
Mcp,
Sop,
Session,
System,
}Expand description
Closed taxonomy of every role a thing can fill.
Variants§
Swarm
Agent
Channel(ChannelKind)
Tool(ToolKind)
Cron(CronKind)
Provider(ProviderKind)
Memory(MemoryKind)
PeerGroup
Skill
Mcp
Sop
Session
System
Implementations§
Source§impl Role
impl Role
Sourcepub fn composite_prefix(self) -> Option<&'static str>
pub fn composite_prefix(self) -> Option<&'static str>
Composite prefix this role populates (channel, model_provider,
tts_provider, transcription_provider, tunnel_provider),
or None for roles that use a plain attribution field.
Sourcepub fn composite_type(self) -> Option<&'static str>
pub fn composite_type(self) -> Option<&'static str>
The <type> portion of the composite, when this role contributes
to one.
Sourcepub fn attribution_field(self) -> Option<&'static str>
pub fn attribution_field(self) -> Option<&'static str>
Plain-attribution-field key this role populates for roles that
don’t use a composite. Tool writes tool; Agent writes
agent_alias; Cron writes cron_job_id; …
Sourcepub fn family_str(self) -> &'static str
pub fn family_str(self) -> &'static str
Stable string tag used by the span layer to identify the role’s
family. The inner Kind (when applicable) is rendered alongside in
Role::composite_type.
Sourcepub fn default_category(self) -> &'static str
pub fn default_category(self) -> &'static str
Closest [zeroclaw_log::EventCategory] for this role, used by
the layer to default event.category when the call site doesn’t
override. Returned as a &'static str to keep zeroclaw-api
free of a back-dep on zeroclaw-log.