Build agents that route themselves.
One familiar API — classification, memory, streaming, guardrails, and learning included.
Nine execution patterns. Auto-selected per task. Skills improve over time.
Documentation · Quick Start · PyPI · Examples · Issues
agloom is a Python framework for production-minded agents on LangChain / LangGraph. You describe the model and tools; agloom picks how to run the task (single-shot, ReAct, supervisor-style delegation, pipelines, and more), tracks steps and tokens, and can learn reusable skills from what worked.
If you already use LangChain’s agent APIs, think of create_agent as your main entrypoint — with orchestration, memory, streaming, and safety knobs in one place.
pip install agloom
# optional extras, e.g. Groq:
pip install agloom[groq]What you get from PyPI
| Command / package | Role |
|---|---|
pip install agloom |
Python library + agloom-runtime (AGP bridge process) |
agloom-runtime serve |
NDJSON/WebSocket server — used by clients below |
agloom on PATH |
Short install notice only — not the interactive terminal UI |
Terminal UI: install the npm package from repo folder agloom_cli/ (npm install → npm run build → npm start or global agloom after publish). It spawns agloom-runtime over stdio.
Model temperature: pass a configured LangChain chat model (e.g. ChatGroq(..., temperature=0.2)) or a provider-prefixed string ("groq:llama-3.3-70b-versatile"). create_agent does not take a separate temperature= argument.
import asyncio
from langchain_groq import ChatGroq
from agloom import create_agent
async def main():
llm = ChatGroq(model="meta-llama/llama-4-scout-17b-16e-instruct")
agent = await create_agent(model=llm, name="my-agent")
result = await agent.ainvoke("What causes auroras?")
print(result.output)
asyncio.run(main())create_agent is async (use await). From synchronous code, use create_agent_sync.
Next steps: Why agloom? · Patterns explained · All parameters
| You want to… | agloom helps by… |
|---|---|
| Ship faster | Picking a strategy per query instead of hand-writing routers and graphs |
| Keep context | Session memory by default; optional long-term memory and skills |
| Show progress | Token streaming, trace steps, and model reasoning on the wire (guide) |
| Stay safe | Human-in-the-loop levels, timeouts, retries, rate limits — configurable |
| Improve over time | Skill library and feedback hooks so behavior compounds |
For the full feature tour, see What you get in the docs — the README stays short on purpose.
- Terminal: the agloom CLI (npm
agloom-cli, repoagloom_cli/) is the terminal client — React-based UI. From that folder:npm install→npm run build→npm start. It talks toagloom-runtimeover AGP (stdio by default). CLI quick start - Browser:
agloom_web/is the Vite workspace for sessions and observability — same idea, run commands inside that folder.
PyPI ships the library and agloom-runtime, not the Ink/React terminal. The console script named agloom only prints where to install the agloom-cli npm client (see table above).
| Guide | What it’s for |
|---|---|
| Quick Start | Smallest path to a running agent |
| Execution patterns | How routing works (conceptual + diagrams) |
| Streaming & events | Responsive UI patterns |
| Thinking & reasoning | Trace steps vs model reasoning on the wire |
| Production | Deploying, testing, operating |
| Errors & fixes | When something goes wrong |
- Python 3.12.x (see
pyproject.tomlon GitHub for the exact pin) - Node.js ≥ 24.15.0 — only if you hack on
agloom_cli/oragloom_web/ - An LLM API key (Groq, OpenAI, NVIDIA, Hugging Face, or another LangChain-compatible provider)
Contributions welcome — see CONTRIBUTING.md.
Licensed under Apache 2.0.