Skip to main content

Turn plain‑English requirements into fully‑configured multi‑agent AI teams (CrewAI, LangGraph, ReAct, WatsonX Orchestrate).

Project description

🔧 agent‑generator

From one plain‑English sentence to a production‑ready multi‑agent workflow.

PyPI Version Python 3.9+ CI Status Documentation License Apache-2.0


✨ Why agent‑generator?

Designing multi‑agent systems is powerful yet verbose—boilerplate, framework quirks, deployment plumbing.
agent‑generator turns intent (“I need an AI team that …”) into runnable artefacts:

Output Where it runs
Python scripts for CrewAI, CrewAI Flow, LangGraph, ReAct Any Python 3.9+ environment
YAML skill for WatsonX Orchestrate IBM WatsonX Orchestrate
FastAPI MCP server (wrapper) MCP Gateway / Kubernetes
JSON spec + Mermaid/DOT Docs, audits, architecture diagrams

🚀 Features

Category Details
Multi‑framework WatsonX Orchestrate · CrewAI · CrewAI Flow · LangGraph · ReAct
Provider‑agnostic IBM WatsonX (default) · OpenAI (extra)
MCP integration Python outputs include a FastAPI /invoke endpoint ready for MCP Gateway registration
Web UI (Flask) Form‑based generator with live diagram preview & code download
Cost estimator Token counts & USD approximation before you run the prompt
Pluggable Add providers / frameworks via a single subclass & registry
Typed models Pydantic schemas for Agents · Tasks · Workflow
CI / CD Ruff · Mypy · Pytest in GitHub Actions + automatic PyPI publish
Docker‑ready Alpine image with Gunicorn server

📦 Installation

# Core (WatsonX only)
pip install agent-generator

# + OpenAI provider
pip install "agent-generator[openai]"

# + Flask Web UI and dev tools
pip install "agent-generator[dev,web]"

Requires Python ≥ 3.9.


⚡ Quick Start

1 Export WatsonX credentials (or put them in .env)

export WATSONX_API_KEY=...
export WATSONX_PROJECT_ID=...
export WATSONX_URL=https://us-south.ml.cloud.ibm.com
export AGENTGEN_PROVIDER=watsonx                   

2 Generate a WatsonX Orchestrate YAML skill

agent-generator \
  "I need a research assistant that summarises papers" \
  --framework watsonx_orchestrate \

or

agent-generator \
  "I need a research assistant that summarises papers" \
  --framework watsonx_orchestrate \
  --output research_assistant.yaml

You will get

 Written to research_assistant.yaml

Import the resulting research_assistant.yaml via:

orchestrate agents import -f research_assistant.yaml

3 Generate a CrewAI Python skill with MCP wrapper

agent-generator \
  "I need a research assistant that summarises papers" \
  --framework crewai  

or

agent-generator \
  "I need a research assistant that summarises papers" \
  --framework crewai --mcp \
  --output research_team.py
 Written to research_team.py

4 Run the Python skill locally

python research_team.py          # one‑off execution
python research_team.py serve    # FastAPI /invoke on :8080

🖥 CLI Reference

agent-generator [OPTIONS] "requirement sentence"
Option / Flag Default Description
-f, --framework * watsonx_orchestrate · crewai · crewai_flow · langgraph · react
-p, --provider watsonx watsonx (default) | openai
--model provider default Override LLM model
--mcp / --no-mcp off Append FastAPI MCP wrapper (Python only)
-o, --output PATH stdout Write artefact to file
--dry-run Build spec & code skeleton, no LLM calls
--show-cost Print token usage + USD estimate

See the full Usage guide for examples.


🌐 Web UI

FLASK_APP=agent_generator.web FLASK_ENV=development flask run

Navigate to http://localhost:5000 → fill the form → generate → download code/YAML.

Deployed via Docker:

docker build -t agent-genenerator .
docker run -e WATSONX_API_KEY=... -p 8000:8000 agent-genenerator

🛠 Extending

  • New provider → subclass BaseProvider, register in providers/__init__.py.
  • New framework → subclass BaseFrameworkGenerator, register in frameworks/__init__.py. The MCP wrapper is added automatically for any Python output.

🧑‍💻 Development

git clone https://github.com/ruslanmv/agent-generator.git
cd agent-generator
pip install -e ".[dev,web,openai]"
pre-commit install
make lint test
mkdocs serve        # live docs

Documentation

https://ruslanmv.com/agent-generator/


🗺️ Roadmap

  • Azure OpenAI provider
  • MCP Gateway dashboard helper
  • VS Code “Generate agent” command
  • Real‑time collaborative flow editor

📄 License

Apache License, Version 2.0 © 2025 Ruslan M. V. – contributions are welcome, PRs + issues encouraged!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agent_generator-0.1.1.tar.gz (1.0 MB view details)

Uploaded Source

Built Distribution

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

agent_generator-0.1.1-py3-none-any.whl (43.3 kB view details)

Uploaded Python 3

File details

Details for the file agent_generator-0.1.1.tar.gz.

File metadata

  • Download URL: agent_generator-0.1.1.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for agent_generator-0.1.1.tar.gz
Algorithm Hash digest
SHA256 ec9228b4876e22eae44ee354282ca40da8a652fc3c739fcd031169187a974dbb
MD5 5a2f724d5bd70249bcd99899d1864438
BLAKE2b-256 d1f09ee735d272e3691a3e19cc39755bd8f15c001c6590c377aff93193427c0f

See more details on using hashes here.

Provenance

The following attestation bundles were made for agent_generator-0.1.1.tar.gz:

Publisher: release.yml on ruslanmv/agent-generator

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file agent_generator-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for agent_generator-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cb1cd9d362e3ddc60c1de2f65a572d901140ab3cec9013f1ac7408524a2f0c6d
MD5 fae3ee011b1e33986b6a46236d82e0d0
BLAKE2b-256 561ed3db8fe83fadafb05fa379dfdb2f0d5b3df5a5034ad17a54b3c5ad1a9d3c

See more details on using hashes here.

Provenance

The following attestation bundles were made for agent_generator-0.1.1-py3-none-any.whl:

Publisher: release.yml on ruslanmv/agent-generator

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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