How Zeph works
Ships today

Provider

A source of AI capability the system routes work to — cloud or local.

A provider is a source of AI capability the system routes work to: the engine that transcribes your speech, the model that answers, the one that turns text into searchable memory. The companion sends each job to whichever provider you chose for it.

They arrive in three shapes.

The three shapes a provider takes

The companion

Sends each job to the provider you picked.

  • paste a keyCloud service

    OpenAI, Deepgram, Anthropic. The companion verifies the key, then stores it in the Mac keychain.

  • download a modelLocal engine

    Whisper, MLX, Parakeet. The companion fetches the model and runs it on your machine. No key, offline.

  • point at a daemonLocal runtime

    Ollama, LM Studio. A runtime already running on your Mac that the companion discovers.

Different plumbing, one result — a capability the companion can route to.

What ships

Providers
13
Run locally
6
Free
6
Metered
1
ProviderWhat it doesRunsCost
AnthropicanthropicmodelsClaude models for agent and summarization features.Cloudapi_keyNot stated
Apple Intelligence (local)apple-fmmodelsOn-device language model via Apple Foundation Models. No key, no download.Localapple-fmFree
DeepgramdeepgramsttttsStreaming speech-to-text with live partial transcripts, plus Aura text-to-speech on the same key.Cloudapi_keyMetered
Google GeminigeminimodelsGoogle's Gemini models (1.5 Pro, Flash, and newer) power the assistant, agent workflows, and tool use over the Gemini API. Connect with an API key from Google AI Studio.Cloudapi_keyNot stated
GroqgroqmodelsGroq serves open models (Llama, Qwen, and more) on its LPU inference hardware behind an OpenAI-compatible chat-completions API for very low latency.Cloudapi_keyNot stated
LM Studio (local)lm-studiomodelsembeddingsLocal language models + embeddings via LM Studio's OpenAI-compatible server.Locallm-studioFree
MLX Whisper (local)mlx-whispersttOn-device speech-to-text via Apple MLX (Metal). No key, runs offline.Localmlx-whisperFree
Ollama (local)ollamamodelsembeddingsLocal language models + embeddings via a running Ollama daemon.LocalollamaFree
OpenAIopenaimodelssttttsOpenAI's GPT models (GPT-4o, o-series, and newer) power the assistant, agent workflows, and tool use over the Chat Completions API. The same key also drives Whisper speech-to-text (/v1/audio/transcriptions) and text-to-speech (/v1/audio/speech). Connect with an API key from platform.openai.com.Cloudapi_keyNot stated
OpenRouteropenroutermodelsOpenRouter is an OpenAI-compatible model gateway: a single API key routes chat completions to 400+ models (Anthropic, OpenAI, Meta, Mistral, and more) behind one endpoint.Cloudapi_keyNot stated
Parakeet (local)parakeetsttOn-device speech-to-text via NVIDIA Parakeet (ONNX). No key, runs offline.LocalparakeetFree
Vercel AI Gatewayvercel-ai-gatewaymodelssttembeddingsVercel AI Gateway is an OpenAI-compatible model gateway: a single API key routes chat completions to hundreds of models across providers (Anthropic, OpenAI, Google, xAI, and more) with unified billing, fallbacks, and observability.Cloudapi_keyNot stated
Whisper (local)whispersttOn-device speech-to-text via whisper.cpp. No key, runs offline.Localwhisper-cppFree

Cost is what the provider’s manifest states. Most cloud vendors state nothing, and an unstated cost is not a free one — those rows say so rather than guess.

You ask for a capability, not a vendor

A provider advertises what it can do — transcribe, answer with a model, embed text, speak. You set one default per job, and the companion routes there.

So a workflow never names OpenAI or Whisper. It asks to transcribe, and your chosen provider serves it. Swap the provider and every workflow that transcribes follows, untouched. That vocabulary — the jobs, and how a default resolves — is Capabilities.

Verifying a key, and finding a daemon

A pasted key is checked before it is kept: the companion makes one probe call to the vendor and stores the key in the login keychain only if it answers. A downloaded model is fetched once and held on disk, so later runs need no network. A local runtime is one you already run on your Mac; the companion looks for it where it usually listens and uses it once it is up.

Next

On this page