MCPcopy Index your code
hub / github.com/101dotxyz/GPTeam

github.com/101dotxyz/GPTeam @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
323 symbols 1,378 edges 56 files 45 documented · 14%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

GPTeam: Collaborative AI Agents

<img src="https://img.shields.io/github/stars/101dotxyz/gpteam.svg?style=for-the-badge&">
<img src="https://img.shields.io/github/license/101dotxyz/gpteam.svg?style=for-the-badge&">

Web App |
Blog Post

<img src="https://github.com/101dotxyz/GPTeam/raw/main/assets/gpteam.png" alt="GPTeam" width="400" height="267" />

About GPTeam

GPTeam uses GPT-4 to create multiple agents who collaborate to achieve predefined goals. The main objective of this project is to explore the potential of GPT models in enhancing multi-agent productivity and effective communication.

See a video demo here: https://www.youtube.com/watch?v=cIxhI1d6NsM

Read more about the architecture here: https://blog.langchain.dev/gpteam-a-multi-agent-simulation/

Getting started

To begin exploring GPTeam, follow these steps:

  1. Clone the project repository to your local machine
  2. Move to the repository: cd gpteam
  3. Run python setup.py to check your environment setup and configure it as needed
  4. Update the environment variables in .env with your API Keys. You will need an OpenAI API key, which you can obtain here. Supplying API keys for optional services will enable the use of other tools.
  5. Launch the world by running poetry run world

To run the world cheaply, you can use poetry run world --turbo. This will use gpt3.5-turbo for all LLM calls which is a lot cheaper, but expect worse results!

Now you can observe the world in action and watch as the agents interact with each other, working together to accomplish their assigned directives.

How it works

GPTeam employs separate agents, each equipped with a memory, that interact with one another using communication as a tool. The implementation of agent memory and reflection is inspired by this research paper. Agents move around the world and perform tasks in different locations, depending on what they are doing and where other agents are located. They can speak to eachother and collaborate on tasks, working in parallel towards common goals.

Viewing Agents

The world is a busy place! To get a view of what different agents are doing whilst the world is running, you can visit the agents/ folder where there is a txt file for each agent containing a summary of their current state.

Changing the world

To change the world, all you need to do is:

  1. Make changes to the config.json by updating the available agents or locations
  2. Reset your database: poetry run db-reset
  3. Run the world again: poetry run world

Setting up the Discord Integration

Read through the dedicated Discord setup docs

Using with Anthropic Claude

Make sure you have an ANTHROPIC_API_KEY in your env, then you can use poetry run world --claude which will run the world using claude-v1 for some calls and claude-v1-instant for others.

Using with Window

Make sure you have the Window extension installed, then you can use poetry run world --window. Some models may be slow to respond, since the prompts are very long.

Contributing

We enthusiastically welcome contributions to GPTeam! To contribute, please follow these steps:

  1. Fork the project repository to your own account
  2. Create a new branch for your changes
  3. Implement your changes to the project code
  4. Submit a pull request to the main project repository

We will review your pull request and provide feedback as necessary.

License

Licensed under the MIT license.

Core symbols most depended-on inside this repo

execute
called by 38
src/agent/executor.py
get_database
called by 25
src/utils/database/client.py
_log
called by 16
src/agent/base.py
table
called by 15
src/utils/database/clients/supabase_client.py
get_by_field
called by 12
src/utils/database/sqlite.py
get_chat_completion
called by 11
src/utils/models.py
insert
called by 11
src/utils/database/sqlite.py
run
called by 11
src/world/base.py

Shape

Method 181
Class 71
Function 70
Route 1

Languages

Python100%

Modules by API surface

src/agent/base.py28 symbols
src/world/context.py20 symbols
src/utils/database/sqlite.py20 symbols
src/utils/database/supabase.py18 symbols
src/utils/database/base.py18 symbols
src/agent/executor.py17 symbols
src/memory/base.py14 symbols
src/utils/logging.py13 symbols
src/event/base.py13 symbols
src/agent/plans.py11 symbols
src/world/base.py9 symbols
src/agent/message.py9 symbols

For agents

$ claude mcp add GPTeam \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact