Skip to content

realnighthawk/agent-library

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Atomic Agents Framework

A modular Python framework for creating and managing atomic agents that can be composed to perform complex tasks. This framework enables the development of specialized agents that can communicate with each other and be orchestrated to execute workflows.

Project Structure

agent-library/
├── agents/                  # Individual agent implementations
│   ├── data-agent/          # Agent for data processing tasks
│   ├── search-agent/        # Agent for search operations
│   └── workflow-agent/      # Agent for workflow orchestration
├── core/                    # Core framework components
│   ├── agent-base/          # Base classes and interfaces for agents
│   ├── adapters/            # Adapters for framework integration
│   ├── factory/             # Factory classes for agent creation
│   ├── messaging/           # Inter-agent communication system
│   └── orchestration/       # Agent orchestration and coordination
├── utils/                   # Shared utilities
├── scripts/                 # Build and test scripts
├── tests/                   # Test infrastructure
├── examples/                # Example scripts
└── config/                  # Configuration files

Component Documentation

  • Agents - Documentation for individual agent implementations
  • Core Components - Documentation for the core framework components
  • Utilities - Documentation for shared utilities
  • Scripts - Documentation for build and test scripts

Features

  • Modular Agent Architecture: Create specialized agents for different tasks
  • Asynchronous Communication: Agents communicate via an asynchronous message broker
  • Workflow Orchestration: Define and execute complex workflows involving multiple agents
  • Configuration-Driven: Configure agents and workflows using YAML or JSON
  • Extensible: Easily add new agent types and capabilities
  • Atomic Agents Integration: Fully leverages the BrainBlend-AI/atomic-agents framework
  • Bidirectional Adapters: Seamlessly use atomic-agents and legacy agents together
  • Agent Factory: Simplified agent creation with factory pattern

Getting Started

  1. Install dependencies:

    pip install -r requirements.txt
  2. Run the tests:

    python -m pytest tests/
  3. Build the package:

    python scripts/build.py
  4. Run a sample workflow:

    python scripts/run.py --config config/sample_config.yaml --workflow data_processing

Creating a New Agent

To create a new agent, follow these steps:

  1. Create a new directory under agents/ with your agent name
  2. Implement the agent by inheriting from BaseAgent in core/agent-base/base_agent.py
  3. Override the process method to implement your agent's logic
  4. Add tests in the tests/ directory
  5. Register the agent in your configuration file

Example:

# Using the agent factory
from core.factory.agent_factory import AgentFactory

# Create a factory
factory = AgentFactory()

# Create a search agent
search_agent = factory.create_agent("search", "my-search-agent")

# Or create a custom agent
from core.agent_base.base_agent import BaseAgent

class MyCustomAgent(BaseAgent):
    async def process(self, input_data):
        # Process the input data
        result = self._process_data(input_data)
        return result

License

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages