agentmaker¶
A general-purpose Python framework for building LLM agents and multi-agent systems, with tools, memory, retrieval / RAG, context engineering, guardrails, human-in-the-loop, and observability built in.
Install¶
pip install agentmaker # core batteries, works out of the box
pip install "agentmaker[all]" # every optional capability
Requires Python 3.12+. See Installation for the full extras matrix.
30-second example¶
Runs with zero setup (no API key, no network), exactly as shipped in examples/01_quickstart.py:
from agentmaker import Agent, tool
from agentmaker.testing import ScriptedLLM
@tool
def get_weather(city: str) -> str:
"""Return today's weather for a city.
Args:
city: The city name.
"""
return f"{city}: sunny, 24C"
# With a real model the LLM decides when to call the tool. Here we script that decision:
# first it asks to call get_weather(city="Copenhagen"), then it writes the final answer.
llm = ScriptedLLM([
ScriptedLLM.tool_call("get_weather", {"city": "Copenhagen"}),
"It's sunny and 24C in Copenhagen today.",
])
agent = Agent("assistant", llm, tools=[get_weather])
result = agent.run("What's the weather in Copenhagen?")
print(result.final_output)
To use a real model, replace ScriptedLLM(...) with LLMClient("deepseek") (or "openai" / "anthropic" / "gemini") and set the matching API key in your environment; the model itself then decides when to call the tool.
Where to go next¶
- New here? Start with the Quickstart.
- Pick a capability from the Guides: LLM clients, Agents & workflows, Tools, Structured output, Memory, Retrieval & RAG, Context engineering, Guardrails & HITL, Observability, Prompt registry, Skills.
- Look up an exact signature in the API Reference (generated from source docstrings).
Versioning¶
Pre-1.0: minor versions may introduce breaking changes, patch versions only fix. Pin agentmaker>=0.1,<0.2. See the changelog.
License¶
MIT.