Each agent or tool you add to Agency Swarm will automatically be available for import by the Genesis Swarm, which will help us create an exponentially larger and smarter system.
This document provides guidelines for contributing new agents to the framework.
- Agents should be placed in
agency_swarm/agents/
directory. - Each agent should have its dedicated folder named
AgentName
like below. - Make sure to use CamelCase for the agent name and the folder.
agency_swarm/agents/AgentName/
β
βββ AgentName/ # Directory for the specific agent
βββ files/ # Directory for files that will be uploaded to openai (if any)
βββ tools/ # Directory for tools to be used by the agent
βββ schemas/ # Directory for OpenAPI schemas to be converted into tools (if any)
βββ AgentName.py # The main agent class file
βββ __init__.py # Initializes the agent folder as a Python package
βββ instructions.md # Instruction document for the agent
- Follow the structure below in your
AgentName.py
as a guideline. - All tools (except schemas) should be imported in
AgentName.py
from theagency_swarm/tools/...
folder.
from agency_swarm import Agent
class AgentName(Agent):
def __init__(self):
super().__init__(
name="AgentName",
description="Description of the agent",
instructions="instructions.md",
tools_folder="./tools",
schemas_folder="./schemas",
)
Thank you for contributing to Agency Swarm! Your efforts help us build a more robust and versatile framework.