Skip to main content

A modular, multi-provider AI agent framework for building intelligent tool-using agents with Gemini, Groq, Ollama, Azure OpenAI, and Anthropic.

Project description

🧠 Logicore

A modular, multi-provider AI agent framework for Python

PyPI version Python License: MIT Downloads

Build intelligent, tool-using AI agents that work across Gemini, Groq, Ollama, Azure OpenAI, and Anthropic — with a single unified API.

📖 Documentation · 🐛 Report Bug · 💡 Request Feature


✨ Why Logicore?

Logicore is a lightweight, production-ready Python framework for building AI agents that can use tools, remember context, and work with any major LLM provider. No vendor lock-in — swap providers with one line.

🔑 Key Features

Feature Description
Multi-Provider Gemini, Groq, Ollama, Azure OpenAI, Anthropic — one interface
Tool Use Built-in file, web, git, PDF, Office, and code execution tools
MCP Support Model Context Protocol for dynamic tool discovery
Streaming Real-time token streaming with async callbacks
Vision Multimodal image understanding across supported models
Memory Session persistence and simple memory stores
Telemetry Built-in execution tracing and walkthrough generation
Skills Modular, reusable skill packs for domain-specific tasks
Hot Reload Live code reloading during development

🚀 Quick Start

Installation

# Core framework
pip install logicore

# With a specific provider
pip install logicore[gemini]    # Google Gemini
pip install logicore[groq]      # Groq
pip install logicore[ollama]    # Ollama (local)
pip install logicore[azure]     # Azure OpenAI / Anthropic

# Everything
pip install logicore[all]

Your First Agent

from logicore import BasicAgent, create_agent, tool

# Define a custom tool
@tool
def get_weather(city: str) -> str:
    """Get current weather for a city."""
    return f"It's sunny and 24°C in {city}!"

# Create an agent with Groq
agent = create_agent(
    provider="groq",
    model="llama-3.3-70b-versatile",
    tools=[get_weather]
)

# Chat with your agent
response = await agent.chat("What's the weather in Tokyo?")
print(response)

Multi-Provider Flexibility

from logicore import Agent, SmartAgent
from logicore import GroqProvider, GeminiProvider, OllamaProvider

# Swap providers without changing your agent code
groq = GroqProvider(model_name="llama-3.3-70b-versatile")
gemini = GeminiProvider(model_name="gemini-2.0-flash")
ollama = OllamaProvider(model_name="llama3.2")

agent = Agent(provider=groq)  # or gemini, or ollama
response = await agent.chat("Explain quantum computing")

MCP Integration

from logicore import MCPAgent, GroqProvider

# Agent with Model Context Protocol servers
agent = MCPAgent(
    provider=GroqProvider(model_name="llama-3.3-70b-versatile"),
    mcp_config="mcp.json"
)
response = await agent.chat("Search for recent AI papers")

🛠️ Built-in Tools

Logicore ships with a comprehensive set of ready-to-use tools:

  • File System — Read, write, list, search files
  • Web — Search the web, fetch URLs, image search
  • Git — Run git commands programmatically
  • Code Execution — Execute Python and shell commands safely
  • Documents — Read PDFs, DOCX, XLSX, and more
  • PDF Tools — Merge and split PDF files
  • Office Tools — Create and edit Word/Excel documents

🏗️ Agent Types

Agent Best For
BasicAgent Simple single-turn tool-calling agents
Agent Full-featured agents with memory and tools
SmartAgent Autonomous multi-step reasoning agents
CopilotAgent Interactive copilot with step-by-step execution
MCPAgent Agents with dynamic MCP tool discovery

📖 Documentation

Full documentation available at: https://rudramodi360.github.io/Agentry/


🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.


📄 License

This project is licensed under the MIT License — see the LICENSE file for details.


Built with ❤️ by RudraModi360

⭐ Star this repo if you find it useful!

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

logicore-0.1.1.tar.gz (133.4 kB view details)

Uploaded Source

Built Distribution

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

logicore-0.1.1-py3-none-any.whl (160.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: logicore-0.1.1.tar.gz
  • Upload date:
  • Size: 133.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0

File hashes

Hashes for logicore-0.1.1.tar.gz
Algorithm Hash digest
SHA256 519ea5f0f6fdc5066938b08e6e177e30a055b4bba4253d942cadb11bd7564674
MD5 c5c57b5384de06212cde4d7aebeae4ed
BLAKE2b-256 00c614a0ce292f355e3efd176788d3deab25af538bbc1ee382780938f8f034ce

See more details on using hashes here.

File details

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

File metadata

  • Download URL: logicore-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 160.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0

File hashes

Hashes for logicore-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2b817d08c67c4984b58cbe160a2877fa3a79dfa63ae84c7f5b4bbd42f6891131
MD5 937e41a35630e750e82c41a7a7876ef3
BLAKE2b-256 2ad1e551632558b35aef8017d779c79083446109fb2b6ea9ef635bb0926097e6

See more details on using hashes here.

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