Polycode is a native macOS chat client that fans every prompt out to every model
you’ve configured — Claude, GPT-5, Gemini, on-device Apple Intelligence, Ollama,
and more — then synthesizes a single answer with the trace kept honest. This
guide walks through installing the app, completing the onboarding wizard,
configuring your first provider, and sending your first prompt.
Install Polycode
Polycode is distributed on the Mac App Store. Open
the listing, click the price button, and authenticate with your Apple ID to
install.
The app is a universal binary — it runs natively on both Apple Silicon and Intel
Macs, requires macOS Sequoia (15.0) or later, and works under both
local and managed Apple IDs.
If you’re on a managed device and the App Store is restricted, ask your IT
administrator to whitelist com.izzo.Polycode or to install Polycode via the
Volume Purchase Program (VPP).
First launch
When you launch Polycode for the first time, a seven-step onboarding wizard
appears — Welcome, Providers, Pick models, Primary,
Privacy, Project, and Tour. A left rail tracks your progress
through them.
Welcome to Polycode
A multi-model consensus assistant, signed in with your own API keys.
1Welcome
2Providers
3Pick models
4Primary
5Privacy
6Project
7Tour
Welcome to Polycode
A multi-model consensus coding assistant for macOS. Your conversations, your keys, your Mac.
Queries every provider in parallel
Anthropic, OpenAI, Google, Apple Intelligence, OpenAI-compatible endpoints, and enterprise cloud gateways (Vertex AI, AWS Bedrock, Azure OpenAI).
Local storage, direct to provider
Conversations are stored on your Mac, keys in your Keychain, no account. Prompts go straight to the provider you pick — never through a Polycode server.
One primary, many voices
Polycode synthesizes the fan-out through the primary you pick.
Keys stored in Keychain · biometric gate optional
Step 1 — Welcome
The welcome screen introduces the parallel-fan-out concept. Click Continue
to move forward, or Back to return to an earlier step.
Configure your first provider
The second onboarding step asks you to add at least one provider. Polycode
supports keys from every major frontier provider, plus on-device models via
Apple Intelligence and local OpenAI-compatible endpoints like Ollama.
Welcome to Polycode
A multi-model consensus assistant, signed in with your own API keys.
Welcome
2Providers
3Pick models
4Primary
5Privacy
6Project
7Tour
Connect your models
Polycode queries all connected models in parallel, then synthesizes the responses through the one you pick as primary. Connect at least one to continue. Credentials (API keys + cloud gateway service-accounts) live only in your macOS Keychain — Polycode never sends them to a Polycode-operated server.
Use a cloud gateway?Vertex AI · AWS Bedrock · Azure OpenAIAdd Cloud Gateway
Keys stored in Keychain · biometric gate optional
Step 2 — Providers
The fastest path is a direct key: click Connect on a provider’s card
(Anthropic, OpenAI, Google Gemini), paste your API key, and press
Save & Connect — Polycode validates it against the provider’s API before
saving it to your macOS Keychain. Prefer a single signup that covers Anthropic,
OpenAI, Gemini, xAI, Mistral, Meta, and dozens more? Add an OpenRouter key
through the OpenAI-compatible card instead: click Connect, name the
endpoint, set the base URL to https://openrouter.ai/api, paste your key, and
press Validate & Save. Either way, you need at least one validated provider
to leave this step.
Keys live exclusively in the Keychain — never on disk in plaintext, never on
our servers (Polycode has no servers). You can see how Polycode handles your
data in the Data lifecycle article.
You don’t need an account, an email, or a login to use Polycode. Provider keys
are the only credentials the app stores.
Pick which models join the fan-out
The third step lists the models your configured providers expose. Select the
ones you want in the fan-out — at least one per provider that has models
available. You can revisit this any time in Settings → Providers.
Welcome to Polycode
A multi-model consensus assistant, signed in with your own API keys.
Welcome
Providers
3Pick models
4Primary
5Privacy
6Project
7Tour
Pick a model per provider
Polycode dispatches a fan-out peer for every model you enable here. You can pin more later in Settings → Providers. The first model in each list is pre-selected as a defensible default — confirm or change it before continuing.
A
Claude Sonnet 4.6
O
GPT-4o
G
Gemini 2.5 Pro
Apple System Language Model
Keys stored in Keychain · biometric gate optional
Step 3 — Pick models
Designate your primary
The fourth step asks you to designate a primary — the model that writes the
reply you actually read. Every configured peer answers your prompt in parallel;
the primary reads all of those replies and reconciles them into the single
synthesized answer. Pick the model whose voice you trust most. You can change
the primary at any time from the composer’s model picker.
Welcome to Polycode
A multi-model consensus assistant, signed in with your own API keys.
Welcome
Providers
Pick models
4Primary
5Privacy
6Project
7Tour
Choose your primary
The primary writes the final answer, weighing drafts from every model you enabled. Change it anytime from the composer's model picker or Settings → Providers.
A
Claude Sonnet 4.6
O
GPT-4o
G
Gemini 2.5 Pro
Apple System Language Model
Keys stored in Keychain · biometric gate optional
Step 4 — Designate a primary
Privacy posture
The fifth step is informational — it summarizes what Polycode does and doesn’t collect.
Welcome to Polycode
A multi-model consensus assistant, signed in with your own API keys.
Welcome
Providers
Pick models
Primary
5Privacy
6Project
7Tour
Stored on your Mac, sent to your providers
Conversations are stored locally — no account, no provider-traffic relay. Anonymous diagnostics ride along by default; opt out in Settings → Privacy → Diagnostics.
Anonymous usage metrics (events, latency buckets, error codes) and automatic crash reports help us improve Polycode. Both default to on and can be turned off independently in Settings → Privacy → Diagnostics.
Provider keys live in the macOS Keychain, optionally gated by Touch ID.
Conversations, project grants, and settings persist locally in SwiftData.
Provider requests go directly from your Mac to the provider — Polycode is not a server.
When a project is selected, the project name, root path, recognized context files (AGENTS.md / CLAUDE.md / GEMINI.md / etc.), and a depth-2 file layout are included in the system prompt sent to your configured providers. Toggle off per-project under Settings → Projects.
Keys stored in Keychain · biometric gate optional
Step 5 — Privacy
The short version: Polycode has no servers in the conversation path. Your
prompts go directly from your Mac to the providers you’ve authorized. Anonymous
diagnostics — crash reports and bucketed product-interaction events — are on
by default. They’re fully documented in the data lifecycle article
and can be toggled off at any time in Settings → Privacy → Diagnostics,
no account required.
Scope a project (optional)
The sixth step lets you grant Polycode a project folder. Granting a folder lets
it read and — with per-tool approval — write files inside it; Polycode’s file
tools are scoped to the folders you grant. Click Open Folder… to add one
now, add more later in Settings → Projects, or skip the step to continue
without a project.
Welcome to Polycode
A multi-model consensus assistant, signed in with your own API keys.
Welcome
Providers
Pick models
Primary
Privacy
6Project
7Tour
Scope file tools to a project
Granting a folder lets Polycode read and — with per-tool approval — write files inside it. You can add more later in Settings, or skip to continue without a project.
Keys stored in Keychain · biometric gate optional
Step 6 — Scope file tools to a project
Finish and send your first prompt
The final step is a quick tour of the composer, sidebar, and inspector.
Welcome to Polycode
A multi-model consensus assistant, signed in with your own API keys.
Welcome
Providers
Pick models
Primary
Privacy
Project
7Tour
You're ready
A quick tour of what's where. Finish to close this window and start conversing.
Composer
Prompts fan out to every provider in parallel, then synthesize through your primary.
Sidebar
Your sessions live here. Right-click to rename, archive, export, or delete.
Inspector (⌘⇧I)
Shows each provider's raw trace alongside the consensus answer.
Keys stored in Keychain · biometric gate optional
Step 7 — Tour
Click Finish to close the wizard and open the main chat view. Type a
question and press ⌘⏎ to send (plain Return inserts a newline; you can
also click Send). Polycode fans the prompt out to every
configured provider in parallel — you’ll see streaming bars for each one.
Flaky CI triage—polycode-apple
How do I triage a flaky CI test?
Fan-out
A
Anthropic
O
OpenAI
G
GeminiApple Intelligencefanning out…
A fan-out in flight
When all providers have replied, your primary peer (the model you designated
during onboarding; changeable any time from the composer’s model picker)
synthesizes the responses into a single answer with citations.
Flaky CI triage—polycode-apple
How do I triage a flaky CI test?
Consensus of
A
Anthropic
O
OpenAI
G
GeminiApple Intelligence
Reproduce it before you fix it — a flake you cannot trigger on demand is a flake you cannot prove you fixed. The panel splits on what to do meanwhile: take it off the merge gate so it stops blocking work AnthropicApple Intelligence — or keep it gating and wrap it in a bounded retry, since most CI flakes are transient network races. OpenAI One specific suspect is worth checking first: shared state leaking between tests under parallel ordering. Gemini Either way, pin the clock and seed the randomness before you go hunting.
Sources
A
Anthropic1240ms
O
OpenAI1100ms
G
Gemini860msApple Intelligence420ms
Split on
A
·
O
The panel splits on what to do meanwhile: take…Solo
G
One specific suspect is worth checking first…
CopyRegenerateView trace5824 in · 2097 out · $0.0104
Synthesized response with citations
To see the per-provider trace — exact tokens, latency, dollar cost, raw
responses — press ⌘⇧I to open the Inspector.
What’s next
Setting up providers — go deeper on per-provider
configuration: model selection, custom endpoints, cloud gateways, per-model overrides.
Fan-out and consensus — how parallel inference
works, why dissent is surfaced, how synthesis happens.
The inspector — read the full per-provider trace for
any exchange.
Tools and approvals — connect MCP servers, scope
tool permissions, and audit tool calls.
Data lifecycle — where Polycode stores your data,
how to back it up, restore it, migrate between Macs, and wipe it.
Backup, restore, migrate — step-by-step
workflows for copying Polycode’s local store between Macs, restoring from
a backup, or migrating to a new machine.