{"id":18883678,"url":"https://github.com/sullygreene/tinyagi","last_synced_at":"2025-10-06T08:32:26.375Z","repository":{"id":260469147,"uuid":"881391182","full_name":"SullyGreene/TinyAGI","owner":"SullyGreene","description":"TinyAGI is a lightweight, modular, and extensible Python-based AGI framework designed to create and manage AI agents seamlessly. It supports various model backends like OpenAI, Llama.cpp, Ollama, AlpacaX, and Tabitha, along with dynamic plugin loading for enhanced flexibility.","archived":false,"fork":false,"pushed_at":"2025-09-01T11:34:02.000Z","size":279,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-24T22:49:53.807Z","etag":null,"topics":["agents","agi","ai","api","artificial-intelligence","cli","developer-tools","extensible","framework","llama-cpp","machine-learning","modular","ollama","openai","plugins","python","task-automation"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SullyGreene.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-10-31T13:35:29.000Z","updated_at":"2025-09-01T11:34:05.000Z","dependencies_parsed_at":"2024-10-31T14:29:15.724Z","dependency_job_id":"02721d8a-881a-4c6e-911d-ce6f60ffa5f7","html_url":"https://github.com/SullyGreene/TinyAGI","commit_stats":null,"previous_names":["sullygreene/tinyagi"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SullyGreene/TinyAGI","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SullyGreene%2FTinyAGI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SullyGreene%2FTinyAGI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SullyGreene%2FTinyAGI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SullyGreene%2FTinyAGI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SullyGreene","download_url":"https://codeload.github.com/SullyGreene/TinyAGI/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SullyGreene%2FTinyAGI/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278579211,"owners_count":26009966,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-06T02:00:05.630Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agents","agi","ai","api","artificial-intelligence","cli","developer-tools","extensible","framework","llama-cpp","machine-learning","modular","ollama","openai","plugins","python","task-automation"],"created_at":"2024-11-08T07:08:22.323Z","updated_at":"2025-10-06T08:32:26.362Z","avatar_url":"https://github.com/SullyGreene.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"**Disclaimer:** This is a **preview release** (version 0.0.2) of **TinyAGI**, which is currently under active development. This release is intended for **testing, feedback, and early experimentation**. Please be aware that the API is subject to change, and frequent updates are expected.\n\n#### ⚠️ THIS README IS STILL A WORK IN PROGRESS\n\nA significant portion of the code has been **moved, changed**, or is **still under development**. For now, please refer to the **examples** and **test files** for the most accurate and up-to-date usage.\nThis preview release is approximately **90% complete**.\n\n---\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/SullyGreene/TinyAGI/refs/heads/main/Static/logo.png\" alt=\"TinyAGI Logo\"\u003e\n\u003c/p\u003e\n\n\n# 🧠 TinyAGI\n\n**TinyAGI** is a powerful, modular Artificial General Intelligence (AGI) framework crafted for seamless integration and management of AI agents, plugins, and tools. With its adaptable and extensible architecture, TinyAGI enables dynamic loading of components from local and GitHub-hosted sources, empowering you to customize and scale for a multitude of use cases.\n\n[![PyPI Version](https://img.shields.io/pypi/v/TinyAGI)](https://pypi.org/project/TinyAGI/) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/SullyGreene/TinyAGI/blob/main/LICENSE) [![GitHub Stars](https://img.shields.io/github/stars/SullyGreene/TinyAGI?style=social)](https://github.com/SullyGreene/TinyAGI/stargazers) [![Twitter Follow](https://img.shields.io/twitter/follow/SullyGreene?style=social)](https://twitter.com/SullyGreene)\n\n---\n\n## 📖 **Table of Contents**\n\n- [🧩 Features](#-features)\n- [📦 Installation](#-installation)\n- [🔧 Setup Instructions](#-setup-instructions)\n- [🛠 Usage](#-usage)\n- [📚 Documentation](#-documentation)\n- [🧪 Testing](#-testing)\n- [📝 Contributing](#-contributing)\n- [🛡 License](#-license)\n- [📞 Contact](#-contact)\n- [🗺️ Roadmap](#-roadmap)\n\n---\n\n## 🧩 Features\n  \n  - 🌐 **Agent System**: Manage various AI agents, from OpenAI to Ollama and LLaMA.\n  - 🔌 **Plugin Manager**: Seamlessly expand functionality with versatile plugins.\n  - 🛠 **Tool Integration**: Use tools like the Wikipedia API to enhance capabilities.\n  - 🔄 **Dynamic Loading**: Load components locally or clone from GitHub repositories on the fly.\n  - 🚀 **Task Automation**: Orchestrate agents, plugins, and tools to define and execute complex tasks.\n  - 📑 **Comprehensive Documentation**: Easily accessible Markdown files for every component.\n  - 🔥 **Robust Error Handling**: Advanced logging and error management for smooth operation.\n\n---\n\n## 📦 Installation\n\n### **From PyPI**\n\nGet the latest TinyAGI in seconds with `pip`:\n\n\u003cdetails\u003e\n  \u003csummary\u003eShow command\u003c/summary\u003e\n\n  ```bash\n  pip install TinyAGI\n  ```\n\u003c/details\u003e\n\n### **From GitHub**\n\nClone and set up dependencies:\n\n\u003cdetails\u003e\n  \u003csummary\u003eShow commands\u003c/summary\u003e\n\n  ```bash\n  git clone https://github.com/SullyGreene/TinyAGI.git\n  cd TinyAGI\n  python setup_env.py\n  ```\n\n\u003e **Note:** `setup_env.py` creates a `venv` environment, installs dependencies, and downloads necessary NLTK data.\n\n\u003c/details\u003e\n\n---\n\n## 🔧 **Setup Instructions**\n\n1. **Clone the Repository**\n\n   \u003cdetails\u003e\n     \u003csummary\u003eShow commands\u003c/summary\u003e\n\n   ```bash\n   git clone https://github.com/SullyGreene/TinyAGI.git\n   cd TinyAGI\n   ```\n   \u003c/details\u003e\n\n2. **Set Up the Virtual Environment**\n\n   Ensure Python 3.8+ is installed.\n\n   \u003cdetails\u003e\n     \u003csummary\u003eShow command\u003c/summary\u003e\n\n   ```bash\n   python setup_env.py\n   ```\n   \u003c/details\u003e\n\n3. **Configure Environment Variables**\n\n   Copy the example `.env` file and add your API keys.\n\n   \u003cdetails\u003e\n     \u003csummary\u003eShow commands\u003c/summary\u003e\n\n   ```bash\n   cp .env.example .env\n   ```\n   \u003c/details\u003e\n\n4. **Run the Server**\n\n   \u003cdetails\u003e\n     \u003csummary\u003eShow command\u003c/summary\u003e\n\n   ```bash\n   python start_server.py\n   ```\n\n   The server will be accessible at `http://localhost:5000`.\n\n   \u003c/details\u003e\n\n---\n\n## 🛠 **Usage**\n\n### **Using the CLI**\n\nInteract with TinyAGI through the command-line interface.\n\n- **Generate Text**\n\n   \u003cdetails\u003e\n     \u003csummary\u003eShow command\u003c/summary\u003e\n\n   ```bash\n   python -m TinyAGI.services.cli_manager generate --prompt \"Tell me a joke.\"\n   ```\n\n   - **Options:**\n       - `--prompt` or `-p`: The text prompt.\n       - `--config` or `-c`: Path to a custom configuration file.\n       - `--stream` or `-s`: Enable streaming output.\n\n   \u003c/details\u003e\n\n### **Accessing the API**\n\n- **Chat Endpoint**\n\n   \u003cdetails\u003e\n     \u003csummary\u003eShow command\u003c/summary\u003e\n\n   ```bash\n   curl -X POST http://localhost:5000/chat \\\n        -H \"Content-Type: application/json\" \\\n        -d '{\"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}], \"stream\": false}'\n   ```\n   \u003c/details\u003e\n\n- **Generate Text Endpoint**\n\n   \u003cdetails\u003e\n     \u003csummary\u003eShow command\u003c/summary\u003e\n\n   ```bash\n   curl -X POST http://localhost:5000/generate \\\n        -H \"Content-Type: application/json\" \\\n        -d '{\"prompt\": \"Write a short story about a dragon.\", \"stream\": false}'\n   ```\n   \u003c/details\u003e\n\n- **Embed Endpoint**\n\n   \u003cdetails\u003e\n     \u003csummary\u003eShow command\u003c/summary\u003e\n\n   ```bash\n   curl -X POST http://localhost:5000/embed \\\n        -H \"Content-Type: application/json\" \\\n        -d '{\"input\": \"Sample text for embedding.\"}'\n   ```\n   \u003c/details\u003e\n\n---\n\n## 📚 **Documentation**\n\nAccess comprehensive documentation in the [`Documents/`](https://github.com/SullyGreene/TinyAGI/tree/main/Documents) directory.\n\n---\n\n## 🧪 **Testing**\n\nRun TinyAGI tests to verify functionality.\n\n### **Testing Ollama**\n\n   \u003cdetails\u003e\n     \u003csummary\u003eShow command\u003c/summary\u003e\n\n   ```bash\n   python test_ollama_agent.py\n   ```\n\n   - **Expected Output**:\n\n      ```\n      Response from OllamaAgent:\n      The capital of France is Paris.\n      ```\n\n   - **Troubleshooting Tips**:\n      - Ensure the Ollama server is running at `http://localhost:11434`.\n      - Confirm correct API keys and authentication.\n\n   \u003c/details\u003e\n\n---\n\n## 📝 **Contributing**\n\nJoin the TinyAGI community by contributing your code, ideas, or feedback!\n\n1. **Fork the Repository**\n\n   \u003cdetails\u003e\n     \u003csummary\u003eShow commands\u003c/summary\u003e\n\n   ```bash\n   git checkout -b feature/YourFeatureName\n   ```\n   \u003c/details\u003e\n\n2. **Commit Your Changes**\n\n   \u003cdetails\u003e\n     \u003csummary\u003eShow command\u003c/summary\u003e\n\n   ```bash\n   git commit -m \"Add feature: YourFeatureName\"\n   ```\n   \u003c/details\u003e\n\n3. **Push to Your Fork**\n\n   \u003cdetails\u003e\n     \u003csummary\u003eShow command\u003c/summary\u003e\n\n   ```bash\n   git push origin feature/YourFeatureName\n   ```\n   \u003c/details\u003e\n\n4. **Submit a Pull Request**\n\n---\n\n## 🛡 **License**\n\nThis project is licensed under the [MIT License](https://opensource.org/licenses/MIT).\n\n---\n\n## 📞 **Contact**\n\n💬 **Get in Touch**\n\n- **X (formerly Twitter)**: [@SullyGreene](https://twitter.com/SullyGreene)\n- **GitHub**: [SullyGreene](https://github.com/SullyGreene)\n- **PyPI**: [TinyAGI on PyPI](https://pypi.org/project/TinyAGI/)\n\n---\n\n## 🗺️ **Roadmap**\n\nTinyAGI’s vision includes scaling to meet diverse AI needs. Here’s what’s planned:\n\n\u003cdetails\u003e\n  \u003csummary\u003ePhase 1: Core Enhancements 🚀\u003c/summary\u003e\n\n- **Agent Expansion**: Support additional agents and tools for specific domains.\n- **Plugin Ecosystem**: Expand with plugins for data analysis, visual generation, and task-specific fine-tuning.\n- **Advanced Error Handling**: Improve diagnostic logs and error handling.\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003ePhase 2: Advanced Task Orchestration 🤖\u003c/summary\u003e\n\n- **Multi-Agent Collaboration**: Enable agents to collaborate on complex tasks.\n- **Task Scheduling \u0026 Automation**: Automate recurring actions and analysis.\n- **Smart Prompting**: Dynamic prompt optimization for better task performance.\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003ePhase 3: Enhanced API and Developer Experience 🛠️\u003c/summary\u003e\n\n- **API V2**: Improve task queueing, agent behavior management, and access controls.\n- **Interactive Documentation**: Launch an interactive portal with live code examples.\n- **CLI Improvements**: Add user-friendly CLI commands.\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003ePhase 4: Ecosystem \u0026 Community Growth 🌍\u003c/summary\u003e\n\n- **Plugin Marketplace**: Set up a community-driven marketplace for plugins.\n- **TinyAGI Hub**: A central hub for resources, tutorials, and community feedback.\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003ePhase 5: Scalability and Enterprise-Readiness 🏢\u003c/summary\u003e\n\n- **Distributed Agent Management**: Support for multi-server deployments.\n- **Performance Optimization**: Improve resource use for concurrent agent management.\n- **Enterprise Security**\n\n: Enhanced data encryption and access control.\n\n\u003c/details\u003e\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsullygreene%2Ftinyagi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsullygreene%2Ftinyagi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsullygreene%2Ftinyagi/lists"}