Table of Contents

Agent Chatroom

An extensible multi-agent platform built on top of AutoGen.Net, shadcn and Orleans.

NuGet version | website | Join our Discord

Agent Chatroom

🌟 Highlights

  • Multi-Agent WebUI: Chat with multiple agents simultaneously in a web browser.
  • Code-First: Use code-first approach to add agents to the chatroom, see code-first examples for more information.
  • Server mode: You can run ChatRoom.Client as a restful server. For more information, see Server mode.

Quick Start with code-first approach

You can create an agent by writing code and add it to chatroom. See code-first examples for how to do it.

Quick Start with template

Other than the code-first approach, Agent Chatroom also provides a series of templates to help you get started quickly. Use the list-templates command to list all available templates and the create command to create a configuration from the selected template.

Step 1 - Install ChatRoom.Client from NuGet

Agent Chatroom is published as a dotnet tool on nuget.org. You can install the latest Agent Chatroom client from nuget.org by running the following command, this will install the ChatRoom.Client globally:

dotnet tool install --global ChatRoom.Client
Tip

create command also generates a json schema file for this configuration to provide intellisense in your editor. Use it wisely can greatly save your effort on writing configuration.

Step 2 - Choose from one of the available templates to get started.

chatroom list-templates # list all available templates

The command will list all available templates.

list-templates

Step 3 - Create configuration from the selected template.

# Create 
chatroom create -t chatroom_openai -o chatroom_openai.json

fill key

Step 4 - Start the chatroom client with the OpenAI agent.

After filling in the OpenAI key in the configuration file, you can start the chatroom client with the following command.

# start chatroom server
chatroom run -c chatroom_openai.json

You will see the following output from chatroom client which indicates the web UI is available at http://localhost:51237 and https://localhost:51238. You can navigate to the web UI in your browser and start chatting with the agents.

web ui is available at: http://localhost:51237;https://localhost:51238

📦 Pre-configured Chatrooms

We provide the following configuration to help you get started quickly. More configurations will be added in the future.

🌐 Server mode

To start a restful backend from ChatRoom.Client, add a server_config section to the client configuration file.

// file: chatroom-client-server.json
"server_config": {
    "environment": "Development", // one of Development, Staging, Production.
    "urls": "http://localhost:51234;https://localhost:51235"
}

Then, run the following command to start the server. And the server will start on the http://localhost:51234 and https://localhost:51235.

chatroom -c chatroom-client-server.json

Swagger UI for the server

When the environment is set to Development, the server will automatically start the Swagger UI at /swagger and /swagger/index.html. You can also access the complete swagger schema at /swagger/v1/swagger.json, or visit swagger-schema.json in this repository.