A free, Claude-like agent
Local models + skills + a dash of commercial LLM
One-click install. No Python venv, no Ollama CLI — just drag the .app into Applications and launch.
Download for Mac (.dmg)Install in one line
$ curl -fsSL https://openteddy.net/install | bash
$ git clone https://github.com/m31527/OpenTeddy.git
cd OpenTeddy
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
./run.sh --open
$ git clone https://github.com/m31527/OpenTeddy.git
cd OpenTeddy && docker build -t openteddy .
docker run --rm -p 8000:8000 -v openteddy-data:/data openteddy
# # Homebrew formula is on the roadmap — Q3 2026.
# In the meantime, the curl one-liner is the equivalent zero-setup path:
$ curl -fsSL https://openteddy.net/install | bash
Idempotent · No sudo · All files scoped to ~/OpenTeddy · Audit with --dry-run
Named after Teddy, built for everyone.
Teddy is our family dog — a forever-young red poodle who has been part of our lives for many years. He's smart, gentle, loyal, and always brings warmth to the people around him.
When we started building OpenTeddy, we wanted the project to carry the same spirit.
OpenTeddy was created with a simple belief: powerful AI should belong to everyone, not only to those who can afford expensive APIs or become dependent on a single provider.
Our goal is to help anyone build their own AI assistant — something as capable and personal as Claude, but running on their own hardware, under their own control.
We believe your computer should be able to do more than browse the web and run applications. It should become a platform for creativity, learning, automation, and intelligence. Whether you're running a laptop, a workstation, or a GPU server, OpenTeddy helps you unlock the full potential of your hardware and your ideas.
OpenTeddy is more than an AI tool.
It's a step toward a future where everyone can own, customize, and benefit from AI without limits.
Build a free, Claude-like experience that anyone can run at home. We achieve this by mixing three powerful layers:
Gemma / Qwen via Ollama handle planning and execution — no per-token cost, no data leaving your machine.
Turn repeated work into Python functions, eliminating LLM calls after the second or third run.
Commercial model pulled in only when local path genuinely can't finish — timeouts, failures, low confidence.
The result: high capability at a fraction of the cost of calling a frontier model for every single step.
Planning and execution run on your machine via Ollama
Timeouts and failures trigger Claude intervention automatically
Repeated tasks become reusable Python skills, cutting LLM calls
Submit tasks, watch tool calls stream live, manage settings
High-risk shell commands pause for approval before running
ChromaDB-backed long-term memory feeds context into future plans
Claude, OpenAI, Gemini, Deepseek, or OpenRouter — swap providers from Settings at runtime
Drop in a PDF for page-cited answers, or connect Postgres / MySQL / SQLite with destructive SQL hard-blocked
Send goals from your phone and get live progress, summaries, and downloadable artifacts back
Everyone in your household gets their own assistant in their own Telegram chat. It reads their Google Calendar and Gmail (read-only), keeps one-off reminders and puts the day together every morning — most answers in about a second, without waiting on a model.
“What’s on today?”, “Any new mail?” — each person links their own Google account (OAuth, read-only). Nothing is sent, deleted or marked read.
“Remind me at 9 tomorrow to pay the phone bill”, “in 30 minutes” — sent to your Telegram, or spoken by the Xiao AI speaker. They survive restarts.
Weather and an umbrella hint, typhoons heading for Taiwan, today’s events and reminders, unread mail, devices at home that went offline — in one message.
Built for households: your calendar and mail stay yours. Answers that contain them are never stored in history or shown in the web dashboard. Google is optional.
Send a file in Telegram and say “print 2 copies, double-sided” — it’s on the printer in about a second. Word, Excel and PowerPoint are converted first.
Forecasts for any city (Open-Meteo) and live typhoon tracks with their distance to Taiwan (Japan Meteorological Agency) — no API key needed.
OpenTeddy runs your home through Home Assistant: Xiaomi Mi Home (米家) devices, the Xiao AI speaker (小愛音箱), Google TV, Philips Hue, Tuya and thousands more. Say it in plain words — in chat, on Telegram, or as a schedule.
Lights, air purifiers, robot vacuums, pet fountains, TVs — Taiwan and mainland-China Mi accounts at the same time, through Home Assistant and Xiaomi Miot Auto.
Have the speaker announce “dinner’s ready”, play music, or run spoken commands for infrared devices only it controls, like an older air-conditioner.
“關客廳燈”, “冷氣開 26 度”, “幫我把皓房間檯燈打開” — names don’t have to be exact; a plain on / off is matched by name and alias.
“家裡有哪些設備離線” lists every offline device by room, and for how long — or check every morning and get pinged only when something drops.
Locks, alarms, valves and garage doors never switch directly: a 4-digit code comes back, and only you can confirm it — not the model, not a schedule.
“週一到週五早上 7:40 叫小愛提醒出門” becomes a weekday schedule that goes straight to the speaker, with no model call.
See OpenTeddy in action with this comprehensive walkthrough
Powerful capabilities that save you money while enabling unlimited creativity
Track your token usage and see exactly how much you're saving compared to using GPT-4 for every task. The hybrid approach keeps costs low while maintaining high quality.
Automatically generate comprehensive reports from your data. OpenTeddy can analyze, visualize, and create professional documents.
Handle complex development tasks including testing, debugging, and data processing. Skills grow automatically to handle repeated workflows.
One task, three stages. The agent reads your session settings, plans the work locally, runs a guarded execution loop that escalates to a cloud LLM only when local genuinely can't deliver, then wraps up with verification + memory write-back.
command not found, unhealthy, etc.
Three steps from download to your first finished task. No terminal expertise required.
Grab the signed macOS app, or run the one-line installer on Linux / WSL2. No Python venv to wrangle.
The onboarding wizard installs Ollama and pulls the right local model preset for your hardware. Add a cloud key anytime.
Submit your first goal and watch tool calls stream live. Skills grow themselves as you keep working.
Intel / Apple Silicon - Fully supported
Any distro with Python 3.11+ and Ollama
Partial support - WSL2 recommended
Fully supported - behaves like Linux
The dashboard and desktop app ship fully localized across 22 locales — including region-specific variants — so your agent feels native wherever you are.
OpenTeddy is a solo side-project trying to prove that a small open stack can get close to the big commercial agents.
The single biggest encouragement for the project
Report bugs or share feedback
Contribute your custom skills via PR
Recent updates, newest first.
A step that went in circles is no longer retried with the same prompt, device names are matched loosely, and tasks started from Telegram can be cancelled.
Each person’s own Google Calendar and Gmail (read-only), one-off reminders, the morning briefing, and a privacy model for households.
Fixed system prompts let Ollama reuse its KV cache: 14.1 s → 1.5 s per subtask on a DGX Spark-class machine.
An MCP server lets Claude Code use your house, printer and Telegram; and “用 Claude Code 修好測試” from your phone hands coding to Claude Code.
Every three days OpenTeddy reads its own records and reports what went wrong; weather and typhoon questions are answered from live data.
Xiaomi Mi Home, the Xiao AI speaker, offline-device checks and confirmation codes for locks and alarms.
Upload a file in chat or Telegram and it goes to your network printer, with job numbers and low-toner warnings.
Conversation memory, files and photos, formatted answers and a small “Thinking” indicator.
All of this is in OpenTeddy 1.1.7 — available now with the one-line install from GitHub.
Short answers to what people ask most.
OpenTeddy is a free, local-first AI agent and personal assistant. It plans and runs tasks on your own computer or home server with local models (Ollama), and only calls a cloud model — Claude, OpenAI, Gemini, DeepSeek or OpenRouter — when the local one gets stuck.
Yes. OpenTeddy talks to Home Assistant, which connects Mi Home devices through the Xiaomi Miot Auto integration — lights, purifiers, robot vacuums, the Xiao AI speaker (小愛音箱) and more, with Taiwan and mainland-China accounts at the same time. Say “關客廳燈” in chat or on Telegram and it’s done in about a second.
Only if you link your own Google account, read-only, from your own Telegram private chat. Other people in the household can’t see your data, answers that contain it are never stored in history or shown in the web dashboard, and you can unlink at any time. Linking is optional — everything else works without it.
Yes, through Telegram: send tasks and files, get reminders and the morning briefing, print documents and control your home. Each chat remembers the last few turns of the conversation.
A Mac with Apple silicon, or a Linux machine. Small local models run on a laptop; 27B–35B models run well on an NVIDIA DGX Spark-class machine kept on at home.
The open-source core is free. A one-time $99 lifetime license adds the signed desktop app and cloud sync.
Yes, both ways. Run openteddy mcp as an MCP server and Claude Code can control your home, print and message you on Telegram; or say “用 Claude Code 在 ~/projects/shop 修好測試” on Telegram and OpenTeddy hands the coding to Claude Code and sends back the result.