Free · Open source · MITAvailable now

The whole product, on your machine.

Not a free tier. The full extension, running in your browser with the model you choose.

Everything comes home
  • AccountNone
  • Gmail APINot requested
  • IndexYour browser
  • SendingAlways you
01 — IncludedAll of it

Nothing held back.

01 Triage

Four queues.

Respond, Waiting, FYI, Follow-ups. Works with AI off.

02 Companion

Catch up fast.

Summary, actions and dates beside the thread.

03 Drafting

Your voice.

Drafts land in Gmail’s composer. You send.

04 Ask Pigeon

Cited answers.

Questions over your mail, with sources.

05 Index

Local search.

Stored in your browser. Clear it anytime.

06 Tracking

Optional.

Open and click signals on a tracker you host.

02 — ModelsSettings → AI

Pick your model.

PigeonBox never switches providers on its own.

  • On-deviceSmall open models on WebGPU (Gemma, Qwen, LFM2, SmolLM2). Weights download from Hugging Face once.
  • Chrome built-inGemini Nano, on Chrome 138+ desktop.
  • OllamaAny model running on your machine.
  • Your keyOpenAI or compatible. That provider sees what you send it.
  • AI offSorting still works.
03 — Install~5 minutes

Three ways in.

Chrome, Edge or Brave 116+. Node 20+ to build.

A · Ask your coding agent
Install PigeonBox for me by following https://raw.githubusercontent.com/aiden-guan/pigeonbox/main/INSTALL.md
B · One command
$ git clone https://github.com/aiden-guan/pigeonbox.git
$ cd pigeonbox
$ npm run setup -- --open
C · Download a releaseNo Node
# unzip from
github.com/aiden-guan/pigeonbox/releases
  1. 1Open chrome://extensions, turn on Developer mode.
  2. 2Load unpacked → apps/extension/dist.
  3. 3In Gmail, choose On this computer.
04 — TrackingOptional

Bring your own tracker.

Needs a public HTTPS address. Stores metadata and events, never bodies.

OptionBest forSet up
Convex DefaultOne provider, guided setupnpm run setup:tracker -- --open
Cloudflare + SupabaseYour own Worker and PostgresGuide ↗
Local trackerDevelopment onlynpm run tracker

PigeonBox says “Open detected,” never “Read.” Privacy proxies can hide or fake opens.