Conflict Detection in OVADARE

Conflict Detection is at the heart of OVADARE’s mission: identifying and addressing issues in multi-agent workflows. It works seamlessly alongside platforms like AutoGen and CrewAI to ensure agents’ actions align with defined policies and do not interfere with each other.

What Is Conflict Detection?

Conflict Detection is a framework service that evaluates agents’ actions against predefined policies. It identifies potential issues, such as:

  • Overlapping or conflicting actions between agents.
  • Violations of defined policies or boundaries.
  • Situations requiring intervention to ensure the workflow’s integrity.

How Does It Work?

Conflict Detection operates automatically within OVADARE, relying on inputs provided by developers:

  1. Agent Registration
    Agents are registered with OVADARE’s AgentRegistry, allowing the system to track their actions.

    Example:

    Registering an agent with OVADARE
    from ovadare.agents.agent_registry import AgentRegistry  
    registry = AgentRegistry()  
    registry.register_agent(agent_instance)
    
  2. Policy Definition
    Developers define rules and boundaries for agent actions using the PolicyManager.

    Example:

    Adding a custom policy
    from ovadare.policies.policy_manager import PolicyManager
    policy_manager = PolicyManager()
    policy_manager.add_policy(custom_policy)
    
  3. Action Monitoring
    OVADARE’s ConflictDetector continuously evaluates agent actions to detect violations.

    Example:

    Detecting conflicts in agent actions
    from ovadare.conflicts.conflict_detector import ConflictDetector
    detector = ConflictDetector(policy_manager=policy_manager)
    conflicts = detector.detect(agent_id="123", action={"type": "write_data"})
    
  4. Conflict Analysis
    Detected conflicts are logged and made available for further analysis. Developers can review conflicts and decide how to handle them.

What Can Developers Do?

Conflict Detection is an automated service, but developers interact with it by:

  1. Defining policies and registering agents to shape the rules governing agent interactions.
  2. Consuming conflict data to improve workflows or resolve issues.

For example:

  • Create policies to prevent resource access conflicts.
  • Use detected conflicts to optimize agent collaboration.

Example Workflow

Consider a sales strategy meeting preparation:

  • Agents: A research agent, a strategy agent, and a coordination agent.
  • Task: Gather data, create a strategy, and compile a briefing document.

If two agents attempt to edit the same document simultaneously, OVADARE detects this conflict by:

  1. Evaluating the actions against the policies.
  2. Identifying the overlapping task.
  3. Logging the conflict for resolution.

Key Takeaways

  • Conflict Detection is not something developers implement directly but a service layer that monitors workflows.
  • Developers focus on defining agents and policies while OVADARE handles monitoring and evaluation.
  • Outputs include conflict logs and recommendations for resolution.

Ready to define your policies? Check out the Policy Management guide.