Skip to main content

An agent framework using LLMs

Project description

Table of Contents

Mindroot

Gallery

Admin Interface

Admin Interface

Plugin Management

Plugin Management

Computer Use

Computer Use

3D Graph Visualization

3D Graph Demo

Chain Rule Explanation

Chain Rule Demo

Character Generation

Character Generation

Fantasy Character Creation

Fantasy Character

Morgan's Method

Morgan's Method

Heygen Integration Demos

Heygen Integration


PyPI

Mindroot is a powerful plugin-based Python framework for creating, deploying, and sharing AI agents and related models. It offers a flexible architecture with indices and a public registry (coming soon) for easily sharing and finding plugins, agents, personas, services, knowledgebases, and apps.

Installation

You can install Mindroot using pip:

(You probably want to create a virtual environment first: python -m venv venv and source venv/bin/activate)

pip install mindroot

For development, you can install the package in editable mode:

git clone https://github.com/mindroot/mindroot.git
cd mindroot
pip install -e .

Configuration

You will need to set environment variables like JWT_SECRET_KEY (anything you want) and LLM provider keys etc.

To enable email verification: env. variable REQUIRE_EMAIL_VERIFY=true

See SMTP core plugin readme

Starting the Server

Go to the directory with the virtual environment and run:

mindroot

or if you want to start the server on a different port:

mindroot -p 8001

Note that you will always need to start from that working directory if you want your settings to be preserved.

Installing Plugins

Most of the commands or services are in plugins that you have to install. Go to the /admin page and find the Plugins section Click on the 'default' Index It should show a list of Plugins I suggest installing all of them.

The first would be either Anthropic (recommended) or OpenAI

Important: You will need either ANTHROPIC_API_KEY or OPENAI_API_KEY set in your environment variables.

To install a plugin just click the Install button and wait 10-20 seconds and you will see a confirmation pop up.

Important: You will need to restart the server to see the changes.

For now I recommend not using the Server control section on the Admin page but rather just hit Control-C in the terminal and then run mindroot again.

Knowledgebase

Go to /admin | Plugins | Install from Github | runvnc/mr_kb

Walkthrough: Custom Agent Using a Knowledgebase

Walkthrough

Developers: Creating Plugins and Tool Commands etc.

See the Plugin Documentation

Adding Commands to Agents

Go to Admin -> Agents Select an agent from the drop down, such as Assistant

There are toggle switches for all of the commands. I recommend avoiding the 'replace_' commands in files for now because they are not reliable.

API Documentation

MindRoot provides a REST API for programmatic interaction with agents. This allows you to integrate AI capabilities into your applications without using the web interface.

For detailed information on available endpoints, authentication, and usage examples, see the API Documentation.

Python SDK

There is also an SDK for Python that interacts with the API. You can install it with pip:

pip install mrsdk

Usage example:

from mrsdk import MindRootClient

client = MindRootClient(api_key="your_api_key_here",
                        base_url="http://localhost:8010")

result = client.run_task(
    agent_name="Assistant",
    instructions="What is the square root of 256? Show your work."
)

print(result["results"])

Further details including how to get a full trace of the agent activity, see the repo here: mrsdk

Key Features:

  • Public registry for sharing and finding plugins, agents, personas, models, and knowledgebases
  • Extensible plugin architecture for adding services, commands, and building arbitrary web apps
  • Customizable AI agents with persona definitions
  • Intelligent service management based on agent requirements
  • Flexible service providers for various AI capabilities
  • Plugins can add/use hooks and pipelines such as for modifying prompts, running startup commands, or anything you want
  • Easily customizable UI built on Jinja2 and Lit Web Components
  • Support for both local and remote AI services
  • RAG: easily share, find and use pre-generated embeddings and documents for topic knowledgebases

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

mindroot-6.1.0.tar.gz (8.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mindroot-6.1.0-py3-none-any.whl (9.7 MB view details)

Uploaded Python 3

File details

Details for the file mindroot-6.1.0.tar.gz.

File metadata

  • Download URL: mindroot-6.1.0.tar.gz
  • Upload date:
  • Size: 8.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for mindroot-6.1.0.tar.gz
Algorithm Hash digest
SHA256 06354636cf49cd67681a367cf51d2d5f093c33a18cf5b6be0cbecea94a02f994
MD5 63c8486061f914ac1b955f88f98f5e4d
BLAKE2b-256 88b320796d02b3acf4b1b3ad8cfc59d3c814feac8e880651106c8c861a1cd762

See more details on using hashes here.

File details

Details for the file mindroot-6.1.0-py3-none-any.whl.

File metadata

  • Download URL: mindroot-6.1.0-py3-none-any.whl
  • Upload date:
  • Size: 9.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for mindroot-6.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7b1666a668a16dc19c6dd07b8a55b8f05bf9f92998114ff83ae72d93b266031f
MD5 106df6591de1d8c9cf505a4f6c5f8898
BLAKE2b-256 23f47157ecf73ce79540f27a52d0610b3f073ae7259c35689409a3123ff4a9a8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page