Multi-agent orchestration and testing framework with LangGraph, CrewAI, and FastAPI.
Project description
Agent Testing Library
This repository provides a comprehensive framework for building, testing, and orchestrating agentic workflows in Python. It includes utilities, fixtures, logging, and a rich set of examples demonstrating integration with various agentic frameworks and orchestration patterns.
Project Structure
-
agent_test/: Core testing library for agents
- src/agent_utils/: Utilities for agent orchestration and metadata
remoterunnable_utils.py,models/agent_info.py,models/api_mock_type.py,models/global_metadata.py
- common/: Logging and shared utilities
agent_test_logger.py
- fixture/: Test fixtures and API mocks
fixture_class.py,mock_api/(various protocol mocks)
- test/: Unit tests for all modules
test_remoterunnable_utils.py,test_agent_info.py,test_api_mock_type.py,test_global_metadata.py,test_agent_test_logger.py,test_fixture_class.py
- src/agent_utils/: Utilities for agent orchestration and metadata
-
examples/: Practical agentic workflow examples
- common/: Shared example code
api1/api_code.py,worker1/main.py,worker2/main.py,worker3/main.py
- crewai/: CrewAI orchestration example
orchestrator/orchestrator_code.py
- langgraph/: LangGraph agentic workflows
prompt_agentic/asynchronous/orchestrator_code.py,prompt_agentic/asynchronous/test_orchestrator.pyprompt_agentic/synchronous/orchestrator_code.py,prompt_agentic/synchronous/test_orchestrator.pysimple_graph/orchestrator_code.py,simple_graph/test_orchestrator.py
- common/: Shared example code
Examples Section
The examples/ directory demonstrates how to build and orchestrate agentic workflows using different frameworks and patterns. Below are direct code snippets from key example files:
common/api1/api_code.py
def api_call(input_data):
# Simulate API logic
return {"result": f"Processed {input_data}"}
common/worker1/main.py
from common.api1.api_code import api_call
def worker1_task(data):
response = api_call(data)
print("Worker1 received:", response)
crewai/orchestrator/orchestrator_code.py
def orchestrate_agents(agent_list, task):
results = []
for agent in agent_list:
result = agent.run(task)
results.append(result)
return results
langgraph/prompt_agentic/asynchronous/orchestrator_code.py
import asyncio
async def async_orchestrate(agents, task):
tasks = [agent.run_async(task) for agent in agents]
return await asyncio.gather(*tasks)
langgraph/prompt_agentic/synchronous/orchestrator_code.py
def sync_orchestrate(agents, task):
return [agent.run(task) for agent in agents]
langgraph/simple_graph/orchestrator_code.py
def simple_graph_orchestrate(nodes, input_data):
output = input_data
for node in nodes:
output = node.process(output)
return output
Testing
Unit tests are provided in the agent_test/test/ directory. Run all tests with:
pytest agent_test/test
License
See LICENSE for details.
Future Work
Agentic Framework Alternatives (besides langgraph):
CrewAI (multi-agent orchestration) Autogen (Microsoft’s multi-agent framework) LangChain (chains, agents, tools) Haystack (for RAG and agent pipelines) OpenAI Function Calling (tool-using agents) Semantic Kernel (Microsoft’s orchestration) Custom agent frameworks (your own classes) HuggingFace Transformers Agents LlamaIndex (for agentic workflows) DSPy (for programmatic LLM pipelines) PromptChainer (open-source agentic framework) Direct function/callback-based agents
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agentic_testing-0.1.0.tar.gz.
File metadata
- Download URL: agentic_testing-0.1.0.tar.gz
- Upload date:
- Size: 18.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b846b97bc7cec1d435944276af3b091ad23fdafec41d4ea23048289e21afd076
|
|
| MD5 |
c36f5d4a1900897a3d6d52b09c6e41f4
|
|
| BLAKE2b-256 |
71681ac71d2e005ef4f2164a9299d98cbaaf22d04fa4f1462e18fb3aff172756
|
File details
Details for the file agentic_testing-0.1.0-py3-none-any.whl.
File metadata
- Download URL: agentic_testing-0.1.0-py3-none-any.whl
- Upload date:
- Size: 35.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8ec98cbcdf347f00ca3d4de790b4c084991c3319a8230e8bd91aca2cd3c19afb
|
|
| MD5 |
313b516ef368ddb3f6cc48401ca2a70a
|
|
| BLAKE2b-256 |
e06567ef450f11f5e261ee388046c5da1ad7af325559b51449062417095609d9
|