pub struct MultiAgentDefensePipeline { /* private fields */ }Expand description
Orchestrates multi-agent security: communication policy enforcement, privilege boundary checks, and message content scanning.
Implementations§
Source§impl MultiAgentDefensePipeline
impl MultiAgentDefensePipeline
Sourcepub fn with_config(config: MultiAgentConfig) -> Self
pub fn with_config(config: MultiAgentConfig) -> Self
Create a pipeline from explicit configuration.
Sourcepub fn register_agent(&mut self, profile: AgentProfile)
pub fn register_agent(&mut self, profile: AgentProfile)
Register an agent profile for privilege and communication tracking.
Sourcepub fn allow_communication(
&mut self,
source: AgentId,
target: AgentId,
level: PermissionLevel,
)
pub fn allow_communication( &mut self, source: AgentId, target: AgentId, level: PermissionLevel, )
Grant communication permission between two agents.
Sourcepub fn deny_communication(&mut self, source: AgentId, target: AgentId)
pub fn deny_communication(&mut self, source: AgentId, target: AgentId)
Deny communication between two agents.
Sourcepub fn scan_message(&self, message: &InterAgentMessage) -> MessageScanResult
pub fn scan_message(&self, message: &InterAgentMessage) -> MessageScanResult
Scan message content for injection and exfiltration threats.
Sourcepub fn process_message(&mut self, message: InterAgentMessage) -> ProcessResult
pub fn process_message(&mut self, message: InterAgentMessage) -> ProcessResult
Process a message through the full pipeline: permission check, privilege check (for delegations), and content scanning.
Sourcepub fn check_delegation(
&self,
from: &AgentId,
to: &AgentId,
tool: &str,
) -> DelegationCheck
pub fn check_delegation( &self, from: &AgentId, to: &AgentId, tool: &str, ) -> DelegationCheck
Check delegation between two agents for a specific tool.
Sourcepub fn validate_message_flow(
&self,
source: &AgentId,
target: &AgentId,
) -> FlowValidation
pub fn validate_message_flow( &self, source: &AgentId, target: &AgentId, ) -> FlowValidation
Validate whether a message is permitted to flow between two agents.
Sourcepub fn to_security_findings(result: &ProcessResult) -> Vec<SecurityFinding>
pub fn to_security_findings(result: &ProcessResult) -> Vec<SecurityFinding>
Convert a process result into security findings.
Sourcepub fn message_count(&self) -> usize
pub fn message_count(&self) -> usize
Number of messages currently in the log.
Trait Implementations§
Source§impl Debug for MultiAgentDefensePipeline
impl Debug for MultiAgentDefensePipeline
Auto Trait Implementations§
impl Freeze for MultiAgentDefensePipeline
impl RefUnwindSafe for MultiAgentDefensePipeline
impl Send for MultiAgentDefensePipeline
impl Sync for MultiAgentDefensePipeline
impl Unpin for MultiAgentDefensePipeline
impl UnsafeUnpin for MultiAgentDefensePipeline
impl UnwindSafe for MultiAgentDefensePipeline
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