AYN - Agents You Need
The meta-framework for AI agent interoperability
Think "pip + Docker Hub + Postman" for AI agents.
🎯 Vision
AYN solves the agent discovery and integration problem by providing:
- Unified Search across GitHub, HuggingFace, and awesome lists
- Standard Controller Interface for invoking any agent
- HTTP/REST Export via FastAPI and LangServe
- MCP Support for Model Context Protocol integration
- Custom Actions for ChatGPT and Claude
🚀 Quick Start
from ayn import AgentRegistry, BaseAgentController, export_agent_full_stack
# 1. Search for agents
registry = AgentRegistry()
results = registry.search('data preparation')
# 2. Create controller
controller = BaseAgentController.from_metadata(results[0])
# 3. Use the agent
result = controller.invoke({'data': [1, 2, 3]})
# 4. Export with all integrations
artifacts = export_agent_full_stack(
controller,
results[0],
export_fastapi=True,
export_mcp=True,
export_chatgpt=True
)
📦 Installation
# Basic installation
pip install ayn
# With FastAPI support
pip install ayn[fastapi]
# With LangServe support
pip install ayn[langserve]
# Full installation
pip install ayn[all]
📚 Documentation
- Getting Started - Quick introduction and setup
- README - Complete documentation
- API Reference - Detailed API documentation
- Quick Reference - Common patterns and snippets
- Implementation Roadmap - Future development plans
🏗️ Architecture
┌─────────────────────────────────────────────────────────────┐
│ AYN Framework │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Search │ │ Controller │ │ Export │ │
│ │ Registry │ │ Interface │ │ Layer │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │ │ │ │
│ ┌──────▼──────┐ ┌────────▼────────┐ ┌─────▼─────┐ │
│ │ GitHub │ │ BaseAgent │ │ FastAPI │ │
│ │ HuggingFace│ │ Controller │ │ LangServe│ │
│ │ AwesomeLists│ └─────────────────┘ └───────────┘ │
│ └─────────────┘ │
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ MCP Layer │ │ Actions │ │ Frameworks │ │
│ │ Tools │ │ ChatGPT │ │ CrewAI │ │
│ │ Resources │ │ Claude │ │ LangChain │ │
│ │ Prompts │ │ Gemini │ │ AutoGen │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────────┘
🎓 Examples
See the examples/ directory for complete working examples:
- basic_usage.py - Basic registry and controller usage
- fastapi_deployment.py - Deploy as HTTP API
- mcp_integration.py - MCP protocol integration
- tutorial.py - Comprehensive tutorial
🗺️ Roadmap
Phase 1: Core ✅ (Complete)
- ✅ Agent metadata and registry
- ✅ Standard controller interface
- ✅ FastAPI export
- ✅ MCP server support
- ✅ ChatGPT/Claude actions
Phase 2: Search (In Progress)
- ⏳ GitHub API integration
- ⏳ HuggingFace search
- ⏳ Awesome list parsing
- ⏳ Caching and indexing
Phase 3: Installation (TODO)
- ⬜ Dependency management (uv/pipx)
- ⬜ Docker support
- ⬜ Environment isolation
- ⬜ Version management
Phase 4: Frameworks (TODO)
- ⬜ CrewAI integration
- ⬜ LangChain/LangGraph integration
- ⬜ AutoGen integration
- ⬜ SmolAgents integration
See AYN_IMPLEMENTATION_ROADMAP.md for detailed plans.
🤝 Contributing
Contributions welcome! Key areas:
- Searchers: Implement real API integrations
- Controllers: Add framework-specific controllers
- Export: Additional export formats
- Tools: MCP tools and resources
- Documentation: Examples and guides
📄 License
MIT License - see LICENSE file
🙏 Acknowledgments
Built on top of:
- FastAPI for HTTP APIs
- LangServe for LangChain integration
- Model Context Protocol (Anthropic)
AYN - Making AI agents discoverable, interoperable, and deployable. 🚀
Metadata
Release files for ayn 0.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ayn-0.0.3.tar.gz | 54.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ayn-0.0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 75.3 kB
Release files / ayn-0.0.3.tar.gz
| Download URL | ayn-0.0.3.tar.gz |
|---|---|
| Size | 54.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f9e45de32751d27a4f99941aa27d5d52fb7ebfb199c6c9695b68feb0d688e289
|
|
BLAKE2b-256 checksum How to use checksums |
fab761f308b8a6344992aae2da5e4d46a688fda212512a70d6eb39e8fc35c3f6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / ayn-0.0.3-py3-none-any.whl
| Download URL | ayn-0.0.3-py3-none-any.whl |
|---|---|
| Size | 21.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bd24fc083b14284094e7003f7c32530eeb34b62cad3a5c04c77cbd4961ceed37
|
|
BLAKE2b-256 checksum How to use checksums |
1f36e78799e19c49a26a911a44a2e79c6c5fbaceebb66e235a216e1f9d8800be
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|