Skip to content

The UnisonAI Multi-Agent Framework (A2A) provides a flexible and extensible environment for creating and coordinating multiple autonomous AI agents. UnisonAI is designed with flexibility and scalability in mind.

License

Notifications You must be signed in to change notification settings

UnisonAIInc/UnisonAI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UnisonAI Banner

UnisonAI is a flexible and extensible Python framework built on agent to agent (a2a) for building, coordinating, and scaling multiple AI agents—each powered by the LLM of your choice, unisonai helps in making individual agents on focused tasks as well as clan-based agent for extensive and complex tasks.

GitHub Repo stars License: Apache 2.0

Table of Content:

Overview

UnisonAI is a flexible and extensible Python framework for building, coordinating, and scaling multiple AI agents—each powered by the LLM of your choice.

  • Single_Agent: For solo, focused tasks.
  • Agent (as part of a Clan): For teamwork, coordination, and distributed problem-solving.
  • Tool System: Easily augment agents with custom, pluggable tools (web search, time, APIs, your own logic).

Supports Cohere, Mixtral, Groq, Gemini, Grok, OpenAI, Anthropic, and any custom model (just extend BaseLLM). UnisonAI is designed for real-world, production-grade multi-agent AI applications.


Uses A2A (Agent to Agent) Communication!

Example


Why UnisonAI?

🔗 Multi-LLM Support
Mix and match LLM providers with ease.
🧩 Modular & Extensible
Add your own tools, LLMs, and logic.
🤖 Single or Multi-Agent
Solo agents or collaborative Clans—your call. With Agent to Agent communication on your supervision
🛡️ Robust Error Handling
Built-in JSON/YAML repair & retries.
📚 Clear Docs & Examples
Well-documented APIs and quick starts.
Production-Ready
Designed for real-world automation & chatbots.
Python Version LLM Support Architecture

Installation

Requires Python >=3.10, <3.13

pip install unisonai
# or
pip3 install unisonai

Core Components

Component Purpose Highlights
Single_Agent Standalone agent for independent tasks
  • Own log/history
  • Plug in any LLM/tools
Agent Works with others in a Clan (team)
  • Inter-agent messaging
  • Tools & role-based prompts
Clan Manages a team of Agents (including a leader/manager)
  • Coordinated planning
  • Shared instructions/goals
Tool System Extend agent capabilities with custom logic
  • Reusable, pluggable tools
  • Strongly-typed parameters

Parameter Reference Tables

Single_Agent

Parameter Type Description Default
llm BaseLLM/any LLM LLM for the agent Required
identity String Agent's unique name Required
description String Agent’s purpose Required
verbose Boolean Verbose/debug mode True
tools List Usable tools []
output_file String Output file path None
history_folder String Directory for logs/history "history"

Agent

Parameter Type Description Default
llm Gemini/any LLM LLM for the agent Required
identity String Agent's unique name Required
description String Responsibilities overview Required
task String Agent’s core goal/task Required
verbose Boolean Verbose/debug mode True
tools List Usable tools []

Clan

Parameter Type Description Default
clan_name String Name of the clan Required
manager Agent Clan manager/leader Required
members List List of Agent instances Required
shared_instruction String Instructions for all agents Required
goal String Unified clan objective Required
history_folder String Log/history folder "history"
output_file String Final output file None

BaseTool & Field

BaseTool

Attribute/Method Description
name Tool name
description Tool function summary
params List of Field objects (inputs)
_run(**kwargs) Tool logic implementation

Field

Attribute Description Default
name Parameter name Required
description Parameter purpose Required
default_value Default value None
required Is parameter mandatory? True

Usage Examples

Standalone Agent

This is the code from main.py FILE.

from unisonai import Single_Agent
from unisonai.llms import Gemini
from unisonai.tools.websearch import WebSearchTool

web_agent = Single_Agent(
    llm=Gemini(model="gemini-2.0-flash"),
    identity="Web Explorer",
    description="Web Searcher for multiple queries",
    tools=[WebSearchTool],
    history_folder="history",
    output_file="output.txt"
)

web_agent.unleash(task="Find out what is the age of Trump")

Clan-Based Agents

"This is a refernce from main2.py FILE, check the file for the full complex example."

from unisonai import Agent, Clan
from unisonai.llms import Gemini
from unisonai.tools.websearch import WebSearchTool

time_agent = Agent(
    llm=Gemini(model="gemini-2.0-flash"),
    identity="Time Keeper",
    description="Handles scheduling",
    task="Track time-related info for the trip",
    tools=[TimeTool]
)

web_agent = Agent(
    llm=Gemini(model="gemini-2.0-flash"),
    identity="Web Explorer",
    description="Searches for travel info",
    task="Gather travel info, cultural activities, and costs",
    tools=[WebSearchTool]
)

clan = Clan(
    clan_name="Ultimate Trip Expert Clan",
    manager=planner_agent,  # Your clan leader agent
    members=[time_agent, web_agent /*, ...other agents*/],
    shared_instruction="Collaborate to plan a budget-friendly 7-day trip in India.",
    goal="Plan a 7-day itinerary across multiple cities with a budget of 10,000 INR",
    history_folder="trip_history",
    output_file="trip_plan.txt"
)

clan.unleash()

FAQ?

What is UnisonAI?

A Python framework for orchestrating multiple AI agents—each powered by your choice of LLMs, working solo or in teams. Specifically with A2A communication.

Why use a Clan?

For complex, multi-step, or specialized tasks: divide and conquer with specialized agents, coordinated by a manager.

Can I add my own LLM?

Yes! Just extend the BaseLLM class and plug in your model.

What are tools?

Reusable logic/components, built on BaseTool, that agents can call for specialized tasks (e.g., web search, APIs).

How is agent history logged?

Each agent maintains its own logs/history in the specified directory (default: history/).

What can I build with UnisonAI?

Chatbots, collaborative planners, research assistants, workflow automation, and more!


Contributing and License

Founder: @E5Anant
PRs and issues welcome! The project is under the Apache 2.0 License.

Open issuesSubmit PRsSuggest improvements



GitHub Repo stars GitHub last commit

License: Apache 2.0

UnisonAI: Orchestrate the Future of Multi-Agent AI.

About

The UnisonAI Multi-Agent Framework (A2A) provides a flexible and extensible environment for creating and coordinating multiple autonomous AI agents. UnisonAI is designed with flexibility and scalability in mind.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages