Features
Agent loop with Thought/Action/Observation cycle
LLM-controlled decision making
Pluggable tool interface (Python class)
Python REPL tool for executing code
Google Search tool via SerpAPI
Customizable prompt template
Date injection in prompt to avoid future-date confusion
Stop token trick to prevent hallucinated tool use
Minimal codebase for easy understanding
Simple parsing of Action and Action Input
Iterative reasoning until final answer
Tool name and description for LLM guidance
Built from scratch in under 200 lines of code
Decorator-based LLM call pattern (@llm.call)
Automatic versioning with @ops.version
Tracing and cost tracking per call via @ops.trace
Built-in tool calling with @llm.tool
Agent loop with tool execution and response resume
Streaming response support
Thinking/reasoning with include_thoughts parameter
OpenTelemetry integration for observability
Structured output via Python type hints
Multi-provider support (OpenAI, Anthropic, Google)
Lightweight, minimal abstraction design
Provider-agnostic unified interface
Simple tool creation with function decorators
Cost tracking per interaction
GitHub open-source (MIT license)