This repository contains three example projects demonstrating the use of multi-agent AI systems and admin tooling for developers. Each example is self-contained and showcases a different use case or integration.
A multi-agent system (powered by crewAI) that demonstrates how agents can collaborate to create a lint rule. The system is highly configurable, allowing you to define your own agents and tasks.
- Directory:
create_lint_rule
- Key Features:
- Multi-agent collaboration
- Easily extensible via YAML config files
- Generates a
report.md
as output
Another crewAI-based multi-agent system, this one focused on updating documentation. Like the lint rule example, it is highly configurable and outputs a report.md
file.
- Directory:
docs_updater
- Key Features:
- Multi-agent collaboration
- Customizable agents and tasks
- Designed for documentation workflows
A server providing admin functionalities for a CRM app, including note storage, summarization, and note-adding tools. Integrates with the Model Context Protocol (MCP) and is suitable for use with tools like Claude Desktop.
- Directory:
app-admin-mcp
- Key Features:
- Note storage and summarization
- MCP server integration
- Example configuration for Claude Desktop
All examples require Python 3.10–3.13 and use uv for dependency management.
- Install uv (if not already installed):
pip install uv
- Install dependencies for each example:
cd <example-directory>
uv sync
For the create_lint_rule
and docs_updater
examples, you also need to install the Javascript dependencies:
cd <example-directory>
npm install
- Set up environment variables:
- Add your
OPENROUTER_API_KEY
to the.env
file in each example directory (if required).
The doc updater example is a simple crewAI-based multi-agent system that updates a documentation website.
You can start the demo application by running:
npm run dev
This will start the dev server on http://localhost:5173.
You can run the docs (which are built with VitePress) by running:
npm run docs:dev
This will start the docs server on http://localhost:5174.
You can then edit the app (in src/App.tsx
) and start the doc updater by running:
uv run src/docs_updater/main.py
The create lint rule example is a crewAI-based workflow that creates an eslint rule.
You can run it by running:
uv run src/create_lint_rule/main.py "<description of the rule>"
You can also start the MCP server by running:
uv run src/create_lint_rule/mcp_server.py
Then, you can then add this server to your Cursor editor:
{
"mcpServers": {
"create-lint-rule": {
"url": "http://localhost:8000/sse"
}
}
}