Model or dataset
micz/ThunderAI avatar
micz/ThunderAI

ThunderAI for Thunderbird: AI-assisted mail without leaving the client

ThunderAI is a Thunderbird Addon that uses the capabilities of ChatGPT, Gemini, Claude or Ollama to enhance email management.

342 stars56 forksJavaScriptGPL-3.0

At a glance

What is it?
ThunderAI is a GPL-3.0 Thunderbird add-on that routes email actions such as reply, proofread, summarize and translate through ChatGPT, Gemini, Claude, Ollama or any OpenAI-compatible server. The design keeps the mailbox as the interface, but it also means every feature depends on a provider you configure yourself.
Who is it for?
Adopt ThunderAI if you already live in Thunderbird, want reply, proofread, summarize and translate actions in the message context menu, and are willing to hold your own API key or run Ollama locally. Skip it if you cannot meet the Thunderbird 140.0 requirement, if you are unwilling to grant the Claude integration access to the https://anthropic.com domain, or if you need calendar and task extraction without installing ThunderAI Sparks as well.
Can I use it commercially?
Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
Is it still maintained?
Yes. The repository last received commits 1 day ago.
What is it written in?
Mainly JavaScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

What ThunderAI solves inside the Thunderbird message pane

Most AI email tools ask you to leave your mail client: copy the message, paste it into a browser tab, paste the answer back. ThunderAI takes the opposite route. It is a Thunderbird add-on, and the README describes its scope as analysing, writing, correcting, translating, summarizing, tagging and optimizing emails, plus turning them into calendar events or tasks, without leaving Thunderbird. The actions appear as context menu entries: Reply, Proofread, Rewrite, Summarize, Translate, Add tags, Classify, Calendar event, Task and Prompt this.

The intended user is someone who already runs Thunderbird as their primary client and wants AI assistance attached to the message they are reading, not to a separate chat product. It is not a mail client, not a server-side filter and not a shared team service. Everything runs from the add-on inside one Thunderbird profile, which is why provider choice, API keys and prompt definitions are per-installation concerns.

Two of the actions, Calendar event and Task, are not self-contained. The README states they also require the companion add-on ThunderAI Sparks. That dependency matters when you evaluate the feature list: the extraction of dates, locations and due dates is not part of ThunderAI alone.

How ThunderAI routes a prompt to a provider

The repository is a Thunderbird extension: manifest.json, a popup/ directory, an options/ directory, pages/, js/, _locales/ and a background page (mzta-background.html and mzta-background.js). There is also an api_webchat/ directory and a claude-spec/ directory, which matches the two integration shapes the README describes: an API path where the add-on sends requests with a key, and a web path where the ChatGPT Web integration sends the prompt through a ChatGPT window instead.

The provider table is the core of the architecture. ChatGPT Web needs no API key and works with a free account, and it supports a specific model, a Project, a Custom GPT and temporary chats. OpenAI API, Google Gemini and Claude API require a key and expose model-level controls: developer messages, temperature and conversation storage for OpenAI; System Instructions and a thinking budget for Gemini; system prompt, max tokens, extended thinking budget and effort for Claude. Ollama needs no key and runs locally, with model, context size, temperature, thinking and forced JSON output. The OpenAI Compatible entry covers any OpenAI-compatible server, local or remote, with ready-made configurations for DeepSeek, Grok, Mistral, OpenRouter and Perplexity.

One design decision is worth calling out. According to the README, the Claude request adapts to the selected model, so options a model rejects are disabled instead of failing. That is a sensible way to handle provider drift, and it is the kind of detail that usually gets skipped. The same table notes that the Claude integration requires the permission Access your data for sites in the https://anthropic.com domain, which is a broad grant and should be weighed before enabling that provider.

Prompts are not hardcoded. Custom prompts can be created, edited, exported and imported, with {%placeholder%} highlighting, autocomplete and validation while you type, and custom data placeholders can be defined as reusable tokens. Any prompt can use a different provider and model than the global one, so a cheap local Ollama model can handle tagging while a cloud model handles drafting.

Installing ThunderAI and running a first proofread

The README gives two installation routes: the Thunderbird Add-on site, or the last release from the GitHub release page. The stated requirement is Thunderbird 140.0 or later. There is no build step described for end users, so installation is the normal add-on flow rather than a source checkout.

Install from the Add-on site, or download the release package from the release page and add it through Thunderbird. After installation, the README says a Setup Wizard runs on first run and guides you through choosing an AI provider, testing the connection and enabling the automatic features. The wizard can be launched again from the welcome page, the toolbar popup or the settings page.

If you choose Ollama, the local server must accept requests from the add-on. The README specifies the environment variable and the value:

bash
OLLAMA_ORIGINS = moz-extension://*

Without that setting the add-on cannot reach the local server, and the README points to a separate CORS page for detail. For cloud providers, the wizard is where you paste the API key; the README does not document a key-rotation or key-storage policy, so treat the settings page as the place to check what is stored.

Once a provider tests successfully, a first real use is Proofread. Select an email, open the context menu and choose Proofread. The README describes the result as an interactive change picker: original and suggestion side by side, with each change accepted or rejected individually, or edited manually. That is a different interaction from a chat transcript, and it is the fastest way to judge whether the add-on fits how you work.

Automatic features and what they skip

ThunderAI can act on incoming mail without a click, but only through an API integration. The README lists four automatic features: auto-tagging with an exclusion list and an option for sent mail; a spam filter that moves spam to the junk folder with a per-message report and a consultable log; auto-summarize on open, on receive or on demand, with caching and an optional list of senders or domains that are always summarized; and auto-translate of incoming emails inline, with caching.

The constraint that matters is stated plainly: drafts, templates, outbox and sent messages are skipped, so a draft is never processed while you are writing it. That removes the most obvious failure mode of an automatic mail processor. The caching in auto-summarize and auto-translate is also a cost control, since a re-opened message is not sent to the provider again.

Note the phrasing: automatic features require an API integration. The ChatGPT Web path, which needs no key, is not the path for unattended processing. If you want auto-tagging or a spam filter, you are committing to a key or to a local Ollama server that is running whenever mail arrives.

Where ThunderAI is the wrong tool

The hard floor is Thunderbird 140.0. If your organisation pins an older ESR release, this add-on is not available to you at all, and no amount of configuration changes that.

The second limitation is the provider dependency. Cloud actions send email content to a third party under your own key, and the README does not describe a redaction step before the request leaves the client. The local option exists (Ollama, or an OpenAI-compatible server such as LM Studio), but it moves the cost to hardware and to keeping a server reachable with the correct OLLAMA_ORIGINS setting. If neither a key nor a local model is acceptable, ThunderAI has nothing to offer.

The third is scope. Calendar event and Task extraction require ThunderAI Sparks, so a workflow built around turning mail into calendar entries spans two add-ons, not one. And the automatic features are one-directional by design: they tag, filter, summarize and translate incoming mail. The README does not describe server-side rules, shared team configuration or a central policy console, so it is a personal productivity add-on rather than something an IT department deploys and governs.

ThunderAI compared with a browser-based AI assistant

The realistic alternative for many people is not another Thunderbird add-on but a general assistant in a browser tab, or an AI feature built into a different mail service. The difference is where the context lives. A browser assistant receives whatever you paste; ThunderAI receives the selected message, or the selected text, because it is running inside the client that holds the mailbox. That is why Reply, Proofread and Rewrite can act on the current message directly, and why batch processing can run a prompt across many emails with a progress counter and a stop button.

The trade-off runs the other way too. A browser assistant is provider-agnostic by default and survives a client change; ThunderAI is bound to Thunderbird 140.0 and to the add-on platform. If you switch mail clients, the custom prompts you exported are portable as text, but the integration is not. For someone whose mail lives in Thunderbird all day, the context advantage is real. For someone who dips into mail twice a day, pasting into a tab is less setup and fewer permissions.

Maintenance, licence and upgrade cost

The repository is not archived, and the last push was on 2026-09-08, the same day as the v5.0.0 release. Before that, v5.0.0pre6 and v5.0.0pre5 landed on 2026-08-26 and 2026-08-21, so the pre-release cycle for this version ran through August into September. The CHANGELOG.md file at the repository root is where release-to-release changes are recorded, and it is the first thing to read before upgrading, because provider APIs change and the README notes that the Claude request adapts to the selected model rather than assuming a fixed shape.

The licence is GPL-3.0. For ordinary users this is invisible. For anyone redistributing a modified build, the copyleft terms apply to the whole distributed work, and the repository ships a LICENSE file as the authoritative text. This is a description of the licence, not legal advice; if you plan to bundle the add-on into a product, read the licence or ask someone qualified.

Upgrade cost is mostly provider-side. A new ThunderAI version may add or remove model options, and the release notes are silent on rollback, so keep the previous release package if you need to step back after an upgrade.

Editorial conclusion

Adopt ThunderAI if you already live in Thunderbird, want reply, proofread, summarize and translate actions in the message context menu, and are willing to hold your own API key or run Ollama locally. Skip it if you cannot meet the Thunderbird 140.0 requirement, if you are unwilling to grant the Claude integration access to the https://anthropic.com domain, or if you need calendar and task extraction without installing ThunderAI Sparks as well. Verify first that your provider answers the connection test inside the Setup Wizard, and confirm how you will distribute the add-on under GPL-3.0 if you plan to ship a modified build.

Frequently asked questions

What is ThunderAI for Thunderbird?

It is a Thunderbird add-on that uses ChatGPT, Google Gemini, Claude, Ollama or an OpenAI-compatible server to analyse, write, correct, translate, summarize and tag emails, and to turn them into calendar events or tasks. The actions appear in the message context menu and in the toolbar popup.

Do I need an API key to use ThunderAI?

Not for every provider. The README states that ChatGPT Web works with a free account and no API key, and that Ollama runs fully locally without one. OpenAI API, Google Gemini and Claude API require a key, and the automatic features need an API integration.

Which Thunderbird version does ThunderAI require?

Thunderbird 140.0 or later, according to the requirements note in the README.

Can ThunderAI work with a local model instead of a cloud provider?

Yes. The Ollama integration runs fully locally, and the OpenAI Compatible option covers any OpenAI-compatible server, local or remote, such as LM Studio. For Ollama the server must accept requests from the add-on by setting OLLAMA_ORIGINS = moz-extension://* in its environment variables.

Does ThunderAI create calendar events and tasks from emails?

It can extract an event or a task from an email, but the README states that the Calendar event and Task actions also require the companion add-on ThunderAI Sparks.

Official sources

  1. License: GPL-3.0
  2. micz/ThunderAI on GitHub
  3. Project website
  4. README
  5. Releases
Community notes

Community notes