Generate fully-functional AI agents from natural language descriptions in minutes.
Meta Agent is a Python CLI tool that automatically produces production-ready OpenAI-powered agents complete with code, tests, and guardrails from simple English descriptions. Just describe what you want your agent to do, and Meta Agent handles the rest.
pip install meta-agent
# Simplest way - interactive mode (recommended for new users)
meta-agent create
# Or provide your description directly
meta-agent create --spec-text "Create a calculator agent that can perform basic arithmetic operations"
# Initialize a new project with templates (optional)
meta-agent init my-calculator --template hello-world
Instead of complex YAML files, simply describe what you want in plain English:
# Interactive mode - just run this and describe your agent when prompted
meta-agent create
# Simple text description
meta-agent create --spec-text "Create a calculator agent that performs basic math operations"
# More detailed specification
meta-agent create --spec-text "Build an agent that analyzes customer feedback,
categorizes it by sentiment (positive/negative/neutral),
and generates summary reports with key insights"
For advanced users, YAML specifications are still supported:
task_description: |
Create a calculator agent that can perform basic arithmetic operations.
The agent should handle addition, subtraction, multiplication, and division.
inputs:
operation: str # "+", "-", "*", "/"
num1: float
num2: float
outputs:
result: float
constraints:
- Must validate division by zero
- Should handle floating point precision
- π― Natural Language Input: Describe what you want in plain English - no YAML required
- π¬ Interactive Mode: Just run
meta-agent create
and get guided prompts - β‘ Instant Generation: Get working agents in minutes, not hours
- π‘οΈ Built-in Safety: Automatic guardrails and validation generated
- π§ͺ Test Generation: Comprehensive unit tests created automatically
- π§ Tool Creation: Custom tools generated automatically when needed
- π Telemetry: Built-in monitoring and metrics
- π Specification Preview: See generated specs with
--show-spec
- π Privacy:
--no-sensitive-logs
flag for secure environments
- AI Engineers building production agents quickly without YAML complexity
- Solutions Architects integrating AI into workflows with natural language specs
- Rapid Prototypers who need demo-ready agents from simple descriptions
- Hobbyists exploring AI without deep coding or specification writing expertise
- Product Managers who can describe features in plain English
# Create agent (primary command)
meta-agent create # Interactive mode (recommended)
meta-agent create --spec-text "description" # Direct text input
meta-agent create --spec-file path/to/spec.yaml # File input (advanced)
meta-agent create --show-spec --spec-text "..." # Preview generated spec
meta-agent create --debug --spec-text "..." # Debug mode with detailed logging
# Initialize new project
meta-agent init <project-name> [--template <template-name>]
# Privacy and security
meta-agent create --no-sensitive-logs --spec-text "..." # Secure logging
# Legacy command (deprecated but still works)
meta-agent generate --spec-file <path> [--metric cost,tokens,latency]
# Manage templates
meta-agent templates list
meta-agent templates docs
# View telemetry
meta-agent dashboard
meta-agent export --format json
Meta Agent supports multiple input formats, with natural language being the primary method:
Natural Language (Recommended):
meta-agent create --spec-text "Create an agent that summarizes documents and extracts key insights"
Interactive Mode (Recommended for beginners):
meta-agent create # Prompts you to describe your agent in your own words
YAML File:
meta-agent create --spec-file my_agent.yaml
JSON File:
meta-agent create --spec-file my_agent.json
Preview Generated Specification:
meta-agent create --spec-text "your description" --show-spec
When you run meta-agent create
, here's what happens automatically:
- π You describe your agent in plain English (interactive prompt or
--spec-text
) - π Intelligent parsing extracts structure (inputs, outputs, constraints) from your description
- π Planning breaks down the work into tasks and identifies required tools
- π§ Tool generation creates any custom tools your agent needs
- π‘οΈ Guardrail creation adds safety and validation logic
- π§ͺ Test generation creates comprehensive unit tests
- β Complete agent ready to use with code, tests, and documentation
All of this happens automatically - no YAML editing, no complex configuration required!
β Old Way (Complex):
# 1. Create YAML specification file manually
# 2. Learn YAML syntax and structure
# 3. Figure out all the required fields
# 4. Run: meta-agent generate --spec-file my_spec.yaml
# 5. Debug YAML errors and iterate
β New Way (Simple):
# 1. Run: meta-agent create
# 2. Describe what you want in plain English
# 3. Done! Working agent with tests and guardrails
my-project/
βββ .meta-agent/
β βββ config.yaml # Project configuration
βββ agent_spec.yaml # Agent specification
βββ generated/ # Generated agent code
βββ agent.py
βββ tests/
βββ guardrails/
Meta Agent uses a sophisticated orchestration system:
- Planning Engine: Decomposes specifications into tasks
- Sub-Agent Manager: Coordinates specialized agents
- Tool Designer: Generates custom tools and functions
- Guardrail Designer: Creates safety and validation logic
- Template System: Reusable patterns and best practices
- Python 3.11+
- OpenAI API key (for LLM functionality)
# Clone repository
git clone https://github.com/DannyMac180/meta-agent.git
cd meta-agent
# Create virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install development dependencies
pip install -e ".[test]"
# Run tests
pytest
# Run linting
ruff check .
pyright
Natural Language:
meta-agent create --spec-text "Create an agent that processes CSV files,
analyzes specified columns, and generates summary reports with charts"
Traditional YAML (Optional):
task_description: |
Create an agent that processes CSV files and generates summary reports.
inputs:
csv_file: str
columns_to_analyze: list[str]
outputs:
summary_report: dict
charts: list[str]
Natural Language:
meta-agent create --spec-text "Build an agent that scrapes product information
from e-commerce websites, respects robots.txt, and limits requests to 1 per second"
Traditional YAML (Optional):
task_description: |
Build an agent that scrapes product information from e-commerce websites.
inputs:
website_url: str
product_selectors: dict
outputs:
product_data: list[dict]
constraints:
- Must respect robots.txt
- Rate limit to 1 request per second
# Required for LLM functionality
export OPENAI_API_KEY="your-api-key-here"
# Optional: Custom OpenAI base URL
export OPENAI_BASE_URL="https://your-proxy.com/v1"
# Optional: Enable debug logging
export META_AGENT_DEBUG=true
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Make your changes
- Add tests for new functionality
- Run the test suite (
pytest
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Built on the OpenAI SDK
- Inspired by the growing need for rapid AI agent development
- Thanks to the open-source community for foundational tools
- Documentation: Full documentation
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Made with β€οΈ by developers, for developers building the AI-powered future.