OpenTeddy Logo

OpenTeddy

A free, Claude-like agent

Local models + skills + a dash of commercial LLM

Python 3.10+ FastAPI Ollama Claude MIT License
New · v1.1.3

Native macOS desktop app

One-click install. No Python venv, no Ollama CLI — just drag the .app into Applications and launch.

Download for Mac (.dmg)
Apple Silicon · ~100 MB Signed & notarized Release notes
or install via command line

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

About OpenTeddy

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.

Our Mission

Build a free, Claude-like experience that anyone can run at home. We achieve this by mixing three powerful layers:

Local Models

Gemma / Qwen via Ollama handle planning and execution — no per-token cost, no data leaving your machine.

Skills

Turn repeated work into Python functions, eliminating LLM calls after the second or third run.

Claude Escalation

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.

Key Highlights

Local-First

Planning and execution run on your machine via Ollama

Auto-Escalation

Timeouts and failures trigger Claude intervention automatically

Self-Growing Skills

Repeated tasks become reusable Python skills, cutting LLM calls

Web Dashboard

Submit tasks, watch tool calls stream live, manage settings

Human-in-the-Loop

High-risk shell commands pause for approval before running

Persistent Memory

ChromaDB-backed long-term memory feeds context into future plans

Any Cloud Provider

Claude, OpenAI, Gemini, Deepseek, or OpenRouter — swap providers from Settings at runtime

PDF & Databases

Drop in a PDF for page-cited answers, or connect Postgres / MySQL / SQLite with destructive SQL hard-blocked

Drive from Telegram

Send goals from your phone and get live progress, summaries, and downloadable artifacts back

Your personal agent

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.

Calendar & Gmail

“What’s on today?”, “Any new mail?” — each person links their own Google account (OAuth, read-only). Nothing is sent, deleted or marked read.

Reminders

“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.

Morning briefing

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.

Private for every person

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.

Print from your phone

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.

Weather & typhoons

Forecasts for any city (Open-Meteo) and live typhoon tracks with their distance to Taiwan (Japan Meteorological Agency) — no API key needed.

Smart home with Xiaomi Mi Home

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.

Mi Home (米家) & the Xiao AI speaker

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.

Talk through 小愛音箱

Have the speaker announce “dinner’s ready”, play music, or run spoken commands for infrared devices only it controls, like an older air-conditioner.

Plain words, about a second

“關客廳燈”, “冷氣開 26 度”, “幫我把皓房間檯燈打開” — names don’t have to be exact; a plain on / off is matched by name and alias.

Which devices are offline?

“家裡有哪些設備離線” lists every offline device by room, and for how long — or check every morning and get pinged only when something drops.

Safe by default

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.

Schedules in words

“週一到週五早上 7:40 叫小愛提醒出門” becomes a weekday schedule that goes straight to the speaker, with no model call.

Watch Demo

See OpenTeddy in action with this comprehensive walkthrough

See It In Action

Powerful capabilities that save you money while enabling unlimited creativity

Save Your Money

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.

  • Real-time cost tracking
  • Compare with GPT-4 pricing
  • See savings accumulate over time
Save Money Dashboard
Sales Report Generation

Generate Reports

Automatically generate comprehensive reports from your data. OpenTeddy can analyze, visualize, and create professional documents.

  • Data analysis and visualization
  • Automated report generation
  • Professional formatting

Testing & Development

Handle complex development tasks including testing, debugging, and data processing. Skills grow automatically to handle repeated workflows.

  • Automated testing workflows
  • Data processing pipelines
  • Self-improving skills
Testing Data Processing

Architecture

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.

OpenTeddy agent lifecycle: Planning stage (orchestrator reads session, recalls memory, splits into subtasks) → Execution loop (local Qwen executor with 5 guards, escalates to cloud LLM on failure) → Wrap-up stage (build tool log, generate summary, run confirmation checks, add to memory)
A. Timeout
Subtask exceeds 900 s wall / 180 s silence.
B. Low Confidence
Qwen reports < 0.6 (or hard-fail clamped to 0.3).
C. Failure Signal
Tool output contains command not found, unhealthy, etc.
D. Empty Artifact
"Build X" task produced zero files in workspace.
E. Deliverable Judge
LLM-as-judge says the produced file isn't the real artifact.

Up and running in minutes

Three steps from download to your first finished task. No terminal expertise required.

1

Download & install

Grab the signed macOS app, or run the one-line installer on Linux / WSL2. No Python venv to wrangle.

2

Pick your models

The onboarding wizard installs Ollama and pulls the right local model preset for your hardware. Add a cloud key anytime.

3

Your agent is live

Submit your first goal and watch tool calls stream live. Skills grow themselves as you keep working.

Platform Support

macOS

Intel / Apple Silicon - Fully supported

Linux

Any distro with Python 3.11+ and Ollama

Windows (native)

Partial support - WSL2 recommended

Windows (WSL2)

Fully supported - behaves like Linux

22 locales

Speaks your language

The dashboard and desktop app ship fully localized across 22 locales — including region-specific variants — so your agent feels native wherever you are.

🇹🇼繁體中文台灣
🇨🇳简体中文中国大陆
🇭🇰繁體中文香港
🇸🇬简体中文新加坡
🇺🇸EnglishUS
🇬🇧EnglishUK
🌐EnglishGlobal
🇯🇵日本語日本
🇰🇷한국어한국
🇪🇸EspañolEspaña
🌎EspañolLatinoamérica
🇫🇷FrançaisFrance
🇨🇦FrançaisQuébec
🇩🇪DeutschDeutschland
🇮🇹ItalianoItalia
🇵🇹PortuguêsPortugal
🇧🇷PortuguêsBrasil
🇷🇺РусскийРоссия
🇮🇩Bahasa IndonesiaIndonesia
🇻🇳Tiếng ViệtViệt Nam
🇲🇾Bahasa MelayuMalaysia
🇹🇭ภาษาไทยประเทศไทย

Ready to Get Started?

OpenTeddy is a solo side-project trying to prove that a small open stack can get close to the big commercial agents.

Star the Repo

The single biggest encouragement for the project

Open an Issue

Report bugs or share feedback

Share a Skill

Contribute your custom skills via PR

What’s new

Recent updates, newest first.

  1. Guards against runaway tasks

    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.

  2. Personal agent for every person

    Each person’s own Google Calendar and Gmail (read-only), one-off reminders, the morning briefing, and a privacy model for households.

  3. 9× faster prompt reading on local models

    Fixed system prompts let Ollama reuse its KV cache: 14.1 s → 1.5 s per subtask on a DGX Spark-class machine.

  4. Works with Claude Code, both ways

    An MCP server lets Claude Code use your house, printer and Telegram; and “用 Claude Code 修好測試” from your phone hands coding to Claude Code.

  5. Self check-up, weather and typhoons

    Every three days OpenTeddy reads its own records and reports what went wrong; weather and typhoon questions are answered from live data.

  6. Smart home through Home Assistant

    Xiaomi Mi Home, the Xiao AI speaker, offline-device checks and confirmation codes for locks and alarms.

  7. Print by saying “print”

    Upload a file in chat or Telegram and it goes to your network printer, with job numbers and low-toner warnings.

  8. A better Telegram

    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.

Frequently asked questions

Short answers to what people ask most.

What is OpenTeddy?

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.

Can OpenTeddy control Xiaomi Mi Home (米家) devices?

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.

Does OpenTeddy read my Gmail and Google Calendar? Is it private?

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.

Can I use OpenTeddy from my phone?

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.

What hardware do I need?

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.

Is OpenTeddy free?

The open-source core is free. A one-time $99 lifetime license adds the signed desktop app and cloud sync.

Does OpenTeddy work with Claude Code?

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.