██╗ ██╗ █████╗ ██████╗ ██████╗ ██████╗ ███████╗
██║ ██║██╔══██╗██╔══██╗██╔══██╗██╔═══██╗██╔════╝
██║ █╗ ██║███████║██████╔╝██████╔╝██║ ██║███████╗
██║███╗██║██╔══██║██╔══██╗██╔═══╝ ██║ ██║╚════██║
╚███╔███╔╝██║ ██║██║ ██║██║ ╚██████╔╝███████║
╚══╝╚══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═════╝ ╚══════╝
Write logic, deploy everything.
WarpOS is a lightweight framework for building AI agents that actually work in production. It handles the messy parts — provider routing, tool orchestration, memory management, and server deployment — so you can focus on writing agent logic.
Ship a working agent in minutes, not days.
from warpos import Agent, tool
@tool
def get_weather(city: str) -> str:
"""Get the current weather for a city."""
return f"Sunny, 72°F in {city}"
agent = Agent(
name="WeatherBot",
model="gpt-4o",
tools=[get_weather],
instructions="You are a helpful weather assistant.",
)
response = agent.run("What's the weather in San Francisco?")
print(response)pip install warposSet your API key:
export OPENAI_API_KEY=sk-...Run your first agent:
from warpos import Agent
agent = Agent(name="MyAgent", model="gpt-4o")
print(agent.run("Hello! What can you do?"))Or serve with a chat UI:
warp init my-agent
cd my-agent
warp serve
# → http://localhost:3000- Multi-provider — OpenAI, Anthropic, Groq, DeepSeek, Ollama, Cerebras
- Tool calling — Decorate any Python function with
@tool - Memory — Built-in persistent conversation memory (SQLite + FTS5)
- Chat UI — Auto-generated WebSocket chat interface
- CLI —
warp initscaffolds,warp servedeploys - Type-safe — Full type hints, Pydantic support
- Lightweight — Minimal dependencies, fast startup
Swap providers with one line:
agent = Agent(name="Bot", provider="openai", model="gpt-4o")
agent = Agent(name="Bot", provider="anthropic", model="claude-sonnet-4-20250514")
agent = Agent(name="Bot", provider="groq", model="llama3-70b-8192")
agent = Agent(name="Bot", provider="ollama", model="llama3")| Provider | Env Variable | Base URL |
|---|---|---|
| OpenAI | OPENAI_API_KEY |
api.openai.com |
| Anthropic | ANTHROPIC_API_KEY |
api.anthropic.com |
| Groq | GROQ_API_KEY |
api.groq.com |
| DeepSeek | DEEPSEEK_API_KEY |
api.deepseek.com |
| Cerebras | CEREBRAS_API_KEY |
api.cerebras.ai |
| Ollama | — | localhost:11434 |
warp init my-agent # scaffold a new project
warp serve agent.py # serve with chat UI on :3000
warp serve -p 8080 # custom port┌─────────────────────────────────────────────┐
│ Agent │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ Memory │ │ Tools │ │ Provider │ │
│ └──────────┘ └──────────┘ └──────────┘ │
└─────────────────────────────────────────────┘
│
┌──────┴──────┐
│ Server │
│ (FastAPI) │
└─────────────┘
- Agent — Orchestrates context, tools, and provider calls
- Tools — Python functions exposed via
@tooldecorator - Memory — SQLite + FTS5 persistent conversation storage
- Provider — Unified LLM routing with OpenAI/Anthropic compatibility
- Server — FastAPI + WebSocket with auto-generated chat UI
- Basic Agent — Simple agent with tools
- Advanced Agent — Multiple tools, memory, custom provider
- Discord Bot — Discord integration
- Telegram Bot — Telegram integration
git clone https://github.com/warp-os/warpos.git
cd warpos
pip install -e ".[dev]"
pytestSee CONTRIBUTING.md for details.
MIT — see LICENSE.