Getting started

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.

A
AnthropicClaude — Opus, Sonnet, Haiku
Connect
O
OpenAIOpenAI — GPT and reasoning model families
Connect
G
Google GeminiGemini — Flash, Pro
Connect
OpenAI-compatibleOllama, xAI, LiteLLM, OpenRouter…
Connect
Apple IntelligenceApple on-device, runs offline
Enable
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 triagepolycode-apple
How do I triage a flaky CI test?
Fan-out
A
Anthropic
O
OpenAI
G
Gemini
Apple Intelligence
fanning 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 triagepolycode-apple
How do I triage a flaky CI test?
Consensus of
A
Anthropic
O
OpenAI
G
Gemini
Apple Intelligence
First, wrap the test in a retry with exponential backoff — most CI flakes are transient network races OpenAI. If it survives three attempts, isolate it; Gemini flags shared-state leaks from parallel test ordering as the likeliest culprit.
Sources
O
OpenAI1100ms
G
Gemini860ms
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.