YouOS
Local-first · Apple Silicon · Public beta

Your email. Your model. Your style.

YouOS is an AI email copilot that learns from your sent Gmail history and drafts replies that sound like you — not a generic AI. It can run your whole inbox: drafting every reply in your voice and sending only when you confirm. Everything runs on your Mac, and during setup it becomes your OS.

Building an AI agent that handles email? Start with the integration guide (setup, token auth, endpoint reference), then the agent operations playbook — decision tree, idempotency, error handling, trust boundaries. Raw markdown at /docs/AGENT_OPERATIONS.md; OpenAPI spec at every YouOS instance's /openapi.json.

See it in action

Draft a reply in your voice, review how you usually respond, watch it improve.

Chat with your inbox agent

It flags an email worth a reply, drafts it in your voice — even offering open times from your calendar — and waits. Tweak a word, confirm, and it sends. Never without your OK.

Drive it from Telegram, Slack or WhatsApp via OpenClaw — or the built-in review queue.

YouOS draft reply screen with a reply written by your fine-tuned model YouOS draft reply screen with a reply written by your fine-tuned model
Paste a thread → YouOS drafts a reply grounded in your real past replies.
YouOS agent triage queue YouOS agent triage queue
Agent triage — it drafts replies to the mail that needs one. Never sent without your OK.
YouOS stats dashboard YouOS stats dashboard
Stats — corpus health and model status, so you see exactly which model wrote each draft.
YouOS learned facts about contacts, projects and style YouOS learned facts about contacts, projects and style
Facts it learns about your contacts, projects and style — drafts use them automatically.

It runs your inbox. You approve the sends.

Connect your chat assistant — Telegram, Slack or WhatsApp via OpenClaw — or use the built-in review queue. YouOS watches your inbox on a schedule, drafts the replies in your voice, and waits for your word. Nothing goes out without you.

⏱️ Every 15 minchecks for new mail
✍️ Drafts a replyin your voice — only if it needs one
🔔 Notifies youthe email and the draft reply
👀 You review & edittweak it, or regenerate
✅ You confirm → Sentone tap, in your voice
You are always the last step. YouOS never sends on its own — it drafts and waits. Keep it draft-only, require a confirm on every send, add a delay/undo window, or hit the kill-switch to stop all outbound instantly. High-stakes mail — money, legal, contracts — always routes to you. And it all runs on your Mac.

❌ Generic AI sounds like a robot

✅ YouOS learns your style — per contact, per context

❌ Your emails uploaded to the cloud

✅ Everything stays on your Mac by default cloud fallback is opt-in — set model.fallback: none for strict local-only

❌ Same drafts for everyone

✅ Self-improves: your best-rated replies rank higher over time

❌ Locked to one tool or vendor

✅ Standalone or as a skill; Gmail, Docs & WhatsApp exports

❌ Just another generic app

✅ Becomes your OS — YouOS → BaherOS, a model fine-tuned on you

❌ Cloud model you can't see into

✅ Drafts on your local model by default; see which model wrote each draft

❌ You manually paste drafts one by one

✅ Optional autonomous triage — sweeps unread, drafts replies, never auto-sends opt-in via agent.enabled; review queue at /triage; push to Gmail Drafts with one click

Does it actually sound like you?

We measured it — and ran the same 80 held-out messages through Claude for comparison. On the maintainer’s own ~11,800-email corpus, each model drafted every message and was scored against the reply actually sent (“voice-match”). A small 4B model fine-tuned on your mail goes toe-to-toe with a frontier cloud model on sounding like you — level on semantic fidelity and voice, a hair ahead on tone — while drafting ~4.5× faster, staying closer to your real reply length, and never leaving your Mac.

YouOSyour local 4B + LoRAClaudefrontier cloud model
Captures what you’d say (semantic fidelity)0.850.86
Sounds like you (voice-match, composite)0.660.68
Matches your tone (style)0.750.73
Matches your length (yours avg ~28 words)~25 words~36 words
Speed per draft~3.7s~16s
Your email leaves your Macneverevery draft

Measured with youos compare-models --backends mlx,claude --semantic --limit 80 — the same 80 held-out messages through both models, on one corpus. The semantic and voice gaps are smaller than the local model’s own run-to-run variation (sampling noise), so call those a tie; your numbers will differ. The local model runs entirely on your Mac — the Claude column needs an explicit opt-in to send those test messages to the cloud.

How it works

📥

Connect your sources

Gmail, Google Docs, or WhatsApp — about 5 min to first draft

🧠

Build your corpus

Ingests your sent history; analyzes your persona per sender type

✉️

Draft in your style

Detects intent, isolates by account, greets by first name — steer any draft with optional instructions

🔄

Gets smarter overnight

LoRA fine-tunes locally, golden eval guards quality, rotating benchmarks prevent overfitting

Gmail · Google Docs · WhatsAppyour communication corpus
Ingestiongog / gws / native backend + parser
Reply Pairs DBSQLite + FTS5
Retrieval EngineBM25 + semantic + quality-score boosting
Draft Generationyour local Qwen + LoRA, served warm · Claude fallback
Draft Replysounds like you
↻ Self-improving loop · nightly
Your feedbackReview Queue: ratings + edits
LoRA fine-tuningnightly, on your edits
Autoresearchrotating benchmarks
↩ feeds back into retrieval & draft generation — every reply you touch sharpens the next

No lock-in

Run YouOS standalone or as an OpenClaw skill. Pick how it reaches Gmail & Docs with one config line — ingestion.google_backend.

default

gog

The OpenClaw gog CLI — the original path, still the default.

CLI

gws

Google’s own open-source Workspace CLI. No OpenClaw required.

no CLI

native

Direct Google API via the youos[google] extra and OAuth — no external CLI at all.

Under the hood

Small, local, and inspectable — no black box, no cloud dependency for the core loop.

Local modelQwen3-4B-Instruct-2507 + your LoRA adapter, on Apple Silicon via MLX — loaded once and served warm for fast drafts.
MultilingualReplies in the language of the incoming email — German, French and Spanish verified live, with per-sender language memory — so a German message gets a German draft, in your voice. Non-Latin scripts (Arabic and others) are tokenized and retrieved correctly, so it pulls your real precedents in any script.
Fine-tuningLoRA via mlx-lm — trained nightly on your sent mail and your Review-Queue edits. Curriculum-ordered, auto-scaled.
RetrievalBM25 + semantic search + quality-score boosting over your reply history, with per-account isolation and intent matching.
StorageSQLite + FTS5 — a single local file. No database server, no external storage.
BackendPython + FastAPI, running on your machine. A pluggable Google backend (gog / gws / native) fetches Gmail & Docs.
SchedulingFor a meeting request, it reads your real free/busy and offers concrete open times in the draft — within your preferred days and hours, and never the same slot to two people. It proposes; you send. Never creates events.
Newsletter digestThe Wire rolls every newsletter across your accounts into one daily HTML email — each story extracted, deduped across sources, and grouped by theme — then archives the originals. Scheduled, summarized on your local model or Claude. Set it up.
GmailA Chrome/Edge/Brave (MV3) extension drafts right inside Gmail — generate, insert, rate. Bookmarklet fallback included.
EvaluationA voice-match metric + youos compare-models score drafts against your real replies, plus a nightly golden benchmark and an inbox-replay backtest — re-drafting past threads and grading against the reply you actually sent, with the answers held out.
Cloud (optional)Claude is used only as a cold-start before your model is trained, or a fallback — never required once your adapter exists.

FAQ

Is my email data private?

Yes. Your corpus, model, fine-tuning, and drafts all stay on your Mac — nothing is uploaded. The only exception is the optional Claude cold-start/fallback before your local model is trained, which you can turn off in Settings.

Which model writes my drafts?

By default, your fine-tuned local model (Qwen + your LoRA) once you've trained an adapter — fully on-device. Claude is only a cold-start or fallback. A per-draft badge always shows which model actually wrote a draft.

How does it learn my style?

It ingests your sent Gmail (and optionally Google Docs / WhatsApp exports), retrieves your most relevant past replies as few-shot examples, and fine-tunes a LoRA adapter on your real replies + your edits — so drafts sound like you, not a generic AI.

How do I know it actually sounds like me?

Run youos compare-models — it drafts your held-out replies and scores them against what you actually wrote (voice-match), breaking out semantic fidelity, tone, and length match. Add --backends mlx,claude to put your local model head-to-head with Claude: on the maintainer's corpus the fine-tuned 4B model matches Claude on semantic fidelity and voice, edges it on tone, and drafts ~4.5× faster — fully on-device.

Can I use it inside Gmail?

Yes — install the YouOS browser extension (Chrome / Edge / Brave). It adds a panel to Gmail that drafts a reply in your voice, inserts it, and lets you rate it without leaving your inbox.

Do I need an Apple Silicon Mac?

For the local model, yes (M1–M4) — it runs on MLX. Retrieval and the Claude fallback work on any Mac, but the fine-tuned-on-you experience needs Apple Silicon.

Is it free / open source?

Yes — it's MIT-licensed and runs locally with no subscription. You only pay for Claude usage if you opt into the cloud fallback.

🔒 Your emails never leave your Mac. The model trains locally on Apple Silicon.
No cloud. No subscriptions. No tracking.

Get started

# Clone and install (standalone — no OpenClaw needed)
git clone https://github.com/DrBaher/youos
cd youos
./scripts/install.sh        # makes .venv, installs YouOS, runs the doctor

# First-run setup: accounts, ingestion, style analysis
source .venv/bin/activate
youos setup

# Anytime: corpus health & a 10-case golden benchmark
youos corpus
youos eval --golden

Requires a Google ingestion backend (gog, gws, or native). Also installs as an OpenClaw skill.

Apple Silicon Mac (M1–M4) 8GB+ RAM (16GB rec.) Python 3.11+ ~5GB free disk