> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ovadare.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Agents

> Learn how agents operate and interact within OVADARE, enabling conflict detection and resolution.

## What are Agents in OVADARE?

Agents in OVADARE represent **autonomous AI entities** already defined within multi-agent platforms like AutoGen or CrewAI. OVADARE does not orchestrate these agents but instead **monitors their interactions** to detect and resolve conflicts.

In OVADARE, agents:

* Interact with other agents as part of their workflows.
* Operate under defined policies to avoid conflicts.
* Trigger conflict detection mechanisms when actions are misaligned or violate boundaries.

Agents are central to OVADARE’s functionality. By monitoring their activities and enforcing policies, OVADARE ensures that multi-agent systems operate harmoniously.

***

## How OVADARE Works with Agents

### 1. **Agent Monitoring**

OVADARE tracks agent activities using the `AgentRegistry`. This registry captures interactions between agents and enables real-time conflict detection.

```
from ovadare.agents.agent_registry import AgentRegistry
from ovadare.agents.agent import Agent


registry = AgentRegistry()

# Register agents
agent_a = Agent("AgentA")
agent_b = Agent("AgentB")
registry.register_agent(agent_a)
registry.register_agent(agent_b)

# Log an interaction
interaction = {
    "from_agent": "AgentA",
    "to_agent": "AgentB",
    "action": "share_data",
    "details": {"data_size": "100MB"}
}

registry.log_interaction(interaction)
```

### 2. **Conflict Detection**

When agents perform actions that violate policies or create conflicting workflows, OVADARE detects these issues through the `ConflictDetector`.

```
from ovadare.conflicts.conflict_detector import ConflictDetector

# Detect conflicts
conflict_detector = ConflictDetector()
conflicts = conflict_detector.detect("AgentA", interaction)

if conflicts:
    print("Conflicts detected:", conflicts)
else:
    print("No conflicts detected.")
```

### 3. **Policy Compliance**

Agents in OVADARE operate under defined policies. These policies ensure that agents adhere to boundaries set by administrators and prevent issues like misaligned actions or resource conflicts.

***

## Key Differences from Orchestration Frameworks

OVADARE is not an orchestration tool. It does not:

* Define agent roles, tasks, or workflows.
* Assign tasks or manage agent capabilities.

Instead, OVADARE **complements orchestration frameworks** by:

* Observing agent interactions.
* Enforcing policy compliance.
* Detecting and resolving conflicts.

For example, if an orchestration framework like AutoGen instructs two agents to work on a task and a conflict arises (e.g., one agent overwriting another’s output), OVADARE flags the issue and suggests a resolution.

***

## Learn More

* [Conflict Detection](./conflict-detection)
* [Resolution Engine](./resolution-engine)
* [Policies](./policies)
