Skip to main content

pylemura

A provider-agnostic, premium agentic AI runtime for Python.

PyPI version license docs build


🚀 v1.1.0 is available. Read the Release Notes.


pylemura is a robust, provider-agnostic Python package designed to encapsulate a full agentic AI runtime. It simplifies the complex orchestration of LLMs, tools, and context management into a single, cohesive interface. It is the official Python portage of lemura.

✨ Key Features

  • 🧠 Dynamic Skill Market: Switch skills on/off at runtime via tags, names, or tool dependencies.
  • 🗺️ Continuation Planning: Multi-step tool chains with parallel execution and conditional logic.
  • 🎯 Intelligent Goal Maintenance: LLM-powered sub-goal decomposition and status tracking.
  • 🔌 MCP Support: Native Model Context Protocol integration for connecting to external tool servers.
  • 🛡️ Tool Firewall: Fully integrated ask/accept/deny policy layer for security.
  • ⚡ Parallel Tool Calls: Execute independent tools concurrently for reduced latency.
  • 🧹 Summary Injection: Ensures the model never "forgets" what was compressed away.
  • 📊 Enhanced Observability: Detailed tracing, token tracking, and execution budget enforcement.
  • 🌊 Native Streaming: Full async generator support for token-by-token completion.
  • 📦 Zero Dependencies: Core runtime runs on the Python standard library only.

🚀 Install

pip install pylemura

⚙️ Environment Variables

The built-in OpenAICompatibleAdapter can be configured using environment variables. To load them from a .env file, you can use python-dotenv:

pip install python-dotenv

Then at the very top of your entry point:

from dotenv import load_dotenv
load_dotenv()

Create a .env file in your project root:

# Provider Configuration (OpenAI, Groq, Together, Ollama, etc.)
LEMURA_API_KEY=your_api_key_here
LEMURA_BASE_URL=https://api.openai.com/v1
LEMURA_MODEL=gpt-4o-mini

# Fallbacks (Lemura also checks standard OpenAI variables)
OPENAI_API_KEY=your_api_key_here
OPENAI_BASE_URL=https://api.openai.com/v1
OPENAI_MODEL=gpt-4o-mini

⚡ Quick Start

import asyncio
from pylemura import SessionManager, OpenAICompatibleAdapter

async def main():
    adapter = OpenAICompatibleAdapter(
        base_url="https://api.openai.com/v1",
        api_key="your_api_key_here",
        default_model="gpt-4o-mini"
    )

    session = SessionManager(
        adapter=adapter,
        model="gpt-4o-mini",
        max_tokens=100000,
    )

    response = await session.run("What is lemura?")
    print(response)

if __name__ == "__main__":
    asyncio.run(main())

🧠 Core Concepts

Explore the architecture and advanced capabilities of lemura at lemura.makix.fr:

  • 🏁 Getting Started — Fundamental setup and concepts.
  • 🧹 Context Management — Advanced compression strategies.
  • 🔌 Adapters — Connecting to OpenAI, Groq, Anthropic, and more.
  • 🛠️ Tools and Skills — Extending agent capabilities.
  • 🎛️ Media Bridge — ASR, TTS, vision, and image generation.
  • ⚡ Advanced Execution — Goal planning and continuation.

📦 API Overview

Component Description
SessionManager The main entry point orchestrating the ReAct loop and tools.
ContextManager Manages the conversation history using compression strategies.
OpenAICompatibleAdapter Reference adapter for OpenAI, Groq, Together, etc.
ToolRegistry Registers and executes tools for the agent.
SkillInjector Loads and formats YAML/Markdown skills into system prompts.
DefaultLogger Colorized logger with Problem/Hints metadata support.

🪵 Logging and Tracing

pylemura features a premium, structured logging system designed for developer experience. It provides colorized output and actionable hints for errors.

from pylemura import SessionManager, DefaultLogger, LogLevel

logger = DefaultLogger()
logger.set_level(LogLevel.DEBUG) # Set to show trace-level information

session = SessionManager(
    adapter=adapter,
    model="gpt-4o-mini",
    max_tokens=100000,
    logger=logger # Inject the logger
)

🔌 Provider Adapters

pylemura interacts with LLMs exclusively through the IProviderAdapter interface, ensuring zero lock-in.

Adapter Status Description
OpenAICompatibleAdapter ✅ Built-in Wrapper for OpenAI and API-compatible endpoints.

🤝 Contributing

We welcome contributions! Please refer to the TypeScript version's guidelines for general principles.

📄 License

Distributed under the MIT License. See LICENSE for more information.

Metadata

Release files for pylemura 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pylemura 1.2.0
File Size Uploaded
pylemura-1.2.0.tar.gz 44.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pylemura 1.2.0
File Interpreter ABI Platform
pylemura-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 100.1 kB

Release files / pylemura-1.2.0.tar.gz

Download URL pylemura-1.2.0.tar.gz
Size 44.5 kB
Tags Source
SHA-256 checksum
How to use checksums
21cc65ec6f72cbf31f8152a2f076e983655fc8c6e979aa208cd3909b08f8db69
BLAKE2b-256 checksum
How to use checksums
c9ec1e3b8c3059f9b59bb41eb597195569761fb7579b2c4af3dabe0d326da3b7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.15

Release files / pylemura-1.2.0-py3-none-any.whl

Download URL pylemura-1.2.0-py3-none-any.whl
Size 55.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
af2624eabdf06fd7b49532aae38c5e2029f7ed1e432f36fd2f59bee64355c833
BLAKE2b-256 checksum
How to use checksums
846d14d9c1c04c210e79ca0ca9606ebdcdd98847e78c901002baae05bb5a1ee2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.15

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

1.1.0

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page