Generate fully-functional AI agents from natural language specifications
Project description
Meta Agent 🤖
Generate fully-functional AI agents from natural language specifications 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.
🚀 Quick Start
Installation
pip install meta-agent
Create Your First Agent
# Initialize a new project
meta-agent init my-calculator --template hello-world
# Generate an agent from specification
meta-agent generate --spec-file agent_spec.yaml
Example Specification
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
✨ Key Features
- 🎯 Natural Language Input: Describe what you want in plain English
- ⚡ Instant Generation: Get working agents in minutes, not hours
- 🛡️ Built-in Safety: Automatic guardrails and validation
- 🧪 Test Generation: Unit tests created automatically
- 📊 Telemetry: Built-in monitoring and metrics
- 🔧 Extensible: Template system for custom patterns
🎯 Perfect For
- AI Engineers building production agents quickly
- Solutions Architects integrating AI into workflows
- Rapid Prototypers who need demo-ready agents fast
- Hobbyists exploring AI without deep coding expertise
📖 Documentation
Core Commands
# Initialize new project
meta-agent init <project-name> [--template <template-name>]
# Generate agent from spec
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
Input Formats
Meta Agent supports multiple input formats:
YAML File:
meta-agent generate --spec-file my_agent.yaml
JSON File:
meta-agent generate --spec-file my_agent.json
Direct Text:
meta-agent generate --spec-text "Create an agent that summarizes documents"
Project Structure
my-project/
├── .meta-agent/
│ └── config.yaml # Project configuration
├── agent_spec.yaml # Agent specification
└── generated/ # Generated agent code
├── agent.py
├── tests/
└── guardrails/
🏗️ Architecture
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
🔧 Development
Requirements
- Python 3.11+
- OpenAI API key (for LLM functionality)
Setup
# Clone repository
git clone https://github.com/yourusername/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
📊 Examples
Data Processing Agent
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]
Web Scraping Agent
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
🔒 Environment Variables
# 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
🤝 Contributing
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
Quick Contribution Guide
- 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
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- Built on the OpenAI SDK
- Inspired by the growing need for rapid AI agent development
- Thanks to the open-source community for foundational tools
📞 Support
- Documentation: Full documentation
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Made with ❤️ by developers, for developers building the AI-powered future.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file meta_agent_cli-0.1.1.tar.gz.
File metadata
- Download URL: meta_agent_cli-0.1.1.tar.gz
- Upload date:
- Size: 405.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c46343aa1bcda582a0616991109d195d2bbaf4fd92a79181e9b9260c50233838
|
|
| MD5 |
2639f4405447397865ab9883d75b1626
|
|
| BLAKE2b-256 |
b380c7bd350757ee2334f7eaca781a37aa350c5c499bc8fb33482eceab3fd5d2
|
File details
Details for the file meta_agent_cli-0.1.1-py3-none-any.whl.
File metadata
- Download URL: meta_agent_cli-0.1.1-py3-none-any.whl
- Upload date:
- Size: 143.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b884836154e6ee5b41c862212e920c10e0fdfcc1f9cf405fcbe6d45107586e6a
|
|
| MD5 |
7dab8ebd219af11bbe428263ef104f0c
|
|
| BLAKE2b-256 |
aa56fd223dd0b5b681f5c61748fb35053433f5dc76d7ebf22d8917d6779ce5e7
|