Blog
deputyOS vs Ollama: how they're different and when to use which
Both run AI locally. They solve different problems. Here's a real comparison so you can pick the right one for your use case.
New to deputyOS? The fastest path to see the difference is to run deputyOS on your laptop first — no Pi, no commitment. This post is the conceptual comparison; the laptop walkthrough is where you get hands-on.
“deputyOS or Ollama?” is a question that comes up a lot. The short answer is they solve different problems. The longer answer is below.
What Ollama is
Ollama is a local LLM runtime + model manager. You install Ollama on a Mac/Linux/Windows machine, run ollama pull llama3.1, then ollama run llama3.1, and you’ve got a model serving an HTTP API on localhost:11434. It handles GGUF download, quantization choice, GPU/CPU detection, memory management. It’s the cleanest “I just want a local model” experience that exists.
If your question is “how do I run an LLM on my machine,” Ollama is excellent. It does that one job extremely well.
What deputyOS is
deputyOS is a complete personal AI assistant appliance. You flash an image, boot a Pi/NUC/cloud VPS, the wizard publishes itself on the LAN, you pick a profile (OpenClaw / Hermes / Khoj), wire up channels (Telegram, Slack, Discord, Matrix, IRC, Email, Signal…), and you have an always-on AI assistant. The model — local or cloud — is one component among many.
deputyOS includes:
- A first-boot wizard with QR-on-HDMI for headless setups.
- AppArmor enforce, ufw default-deny, fail2ban, hardened sysctls, ClamAV signatures, key-only SSH — by default.
- A choice of agent profiles, each with persistent memory and a multi-channel architecture.
- Cost guardrails with auto-pause.
- A/B image updates with watchdog rollback.
- A signed-manifest update chain (minisign + cosign + SLSA).
- A drive-mounting subsystem with policy file.
- A PWA at
/appwith cards for status, logs, keys, cost. - A built-in
/chatfor talking to the agent in your browser without any external channel.
The local LLM is just one of the providers the wizard offers. We bake LFM2 via llama.cpp in the air-gapped tier, and yes, you can wire Ollama in too as a model provider — deputyOS ships local-ollama as a first-class option.
Side-by-side
| Aspect | Ollama | deputyOS |
|---|---|---|
| Primary unit | A model runtime on your dev machine | An appliance image you flash and boot |
| Setup | curl -fsSL https://ollama.com/install.sh | sh | Pick the image from the picker, flash, run wizard |
| Telegram / Slack / Discord etc. | Not included | Built-in — pick channels in the wizard |
| Persistent agent memory | Not the focus | Yes — under /var/lib/<profile>/ |
| Security defaults | OS defaults | AppArmor / ufw / fail2ban / hardened sysctls / ClamAV — all on |
| Signed updates | Yes (Ollama-distributed binary) | Yes (signed image manifest; A/B swap; watchdog rollback) |
| Air-gapped | Yes, after manual model pull | Yes, single-flag image build with model baked + nftables egress-deny |
| Cost guardrails | n/a | Per-day/month caps with auto-pause |
| First-boot installs | Pulls the binary on install | Zero — everything baked |
| Hardware focus | Mac / Linux / Windows desktop or server | Pi 5/4, NUC, mini-PC, cloud VPS, WSL2, UTM |
| Bring-your-own-key cloud LLM | n/a (Ollama is local) | Yes — OpenAI / Anthropic / OpenRouter / Bedrock / etc. |
”Can I use them together?”
Yes. The wizard’s provider list includes a local-ollama entry. Point it at http://your-ollama-host:11434. deputyOS uses Ollama as the inference layer; everything else (channels, memory, hooks, cost tracking, security baseline) is deputyOS.
This is genuinely the best combination if you:
- Already have a beefy desktop running Ollama with a good GPU.
- Want a Pi 5 running deputyOS to handle the channels and memory.
- Want the Pi to call your desktop for inference over your LAN.
The Pi handles all the always-on “boring” work (mDNS, channels, memory, scheduling), and the desktop only spins up its GPU when there’s actually a query to answer.
”Why not just use Ollama with a Python script?”
You absolutely can. People do, and it works fine for a single channel and a single user. The reason deputyOS exists is that the moment you scale that up — second channel, persistent memory, security defaults, backups, updates, cost caps — you’re building deputyOS yourself badly. We did it once, properly, so individual users don’t have to.
It’s the same reason you don’t write your own SMTP daemon when you want to host email. Possible; not worth your time.
When Ollama is the right answer alone
- You’re a developer who wants a local LLM for code experiments.
- You want maximum flexibility over which exact model file to run.
- Your “AI assistant” needs are met by a chat window in your terminal.
- You don’t need Telegram / Slack / Discord / etc.
Ollama is the right answer, and you don’t need deputyOS.
When deputyOS is the right answer
- You want an actual AI assistant that’s online for your friends/family/team.
- You want persistent conversation memory you control.
- You want messages in Telegram/Slack/Discord/Signal/Matrix/etc. to route to the same agent.
- You want security defaults on without thinking about them.
- You want an air-gapped option for sensitive use.
- You want an always-on appliance on hardware you own.
deputyOS is the right answer.
When deputyOS + Ollama together is the right answer
- You have a powerful desktop with a GPU.
- You want a low-power Pi to be the always-on entry point.
- You want all the deputyOS chrome (channels, memory, security) plus full control over your model.
This is a great setup, especially if you have a 24/7 desktop you’re already paying for in electricity.
What we’re not
We’re not trying to replace Ollama. Ollama is fantastic at being a local model runtime. We don’t ship our own model runtime; we ship llama.cpp configured properly for each target. (You could call llama.cpp directly via deputyctl model register too, but most users don’t.)
We’re trying to be the missing piece between “a local model runs on my machine” and “I have a personal AI assistant that’s online and useful for me and the people I share it with.” That piece is appliance-shaped, not library-shaped.
TL;DR for picking
- “I want to chat with a local LLM” → Ollama.
- “I want my Telegram and Slack to have a useful AI assistant that I own” → deputyOS.
- Both → deputyOS with
local-ollamaas the provider.
If the second or third bullet is you, the picker has the right image. Or read why we built deputyOS for the deeper rationale.
Related posts
LFM2 explained: why we picked Liquid AI's models for the air-gapped tier
Why deputyOS bakes LFM2 instead of Llama or Phi for the air-gapped tier, what trade-offs we made, and what you actually get.
A ChatGPT alternative you run yourself, in 2026
Why and how to replace ChatGPT with a self-hosted AI assistant on hardware you own — without giving up the things that make ChatGPT useful.