Charm
Autocorrect that actually works on your Mac.Visit CharmFAQ
Charm is a private writing assistant that runs entirely on your Mac. Three features work together: Spells catches typos the moment you press space, Polish fixes grammar at the end of every sentence, like missing capitals and apostrophes, and Oracle predicts your next word, with Tab to accept. On top of that there is text replacement, emoji replacement, and a personal dictionary that learns your vocabulary. Each feature can be toggled independently.
Charm runs on macOS 14 Sonoma or later on an Apple Silicon Mac (M1 or later). It does not run on Intel Macs, because its corrections use Apple's on-chip machine learning. The app itself is tiny, around 18 MB. The on-device AI model adds a one-time download of about 1.5 GB for Fast or 2.3 GB for Best Quality. Fast needs a Mac with 8 GB of memory; Best Quality needs 16 GB. Charm checks this before downloading, so it will only offer models your Mac can comfortably run. Spelling correction works even without a model installed.
Download Charm from theodorehq.com/charm/download, open the DMG, and drag Charm into Applications. On first launch a setup guide walks you through everything: entering the license key from your purchase email, granting the two macOS permissions (Accessibility and Input Monitoring), downloading the on-device AI model, and a quick tour of how Charm behaves in different apps. The whole thing takes a few minutes, and Charm then lives quietly in your menu bar. If you ever want a refresher, the interactive guide at theodorehq.com/charm/try covers every feature in about two minutes.
Charm corrects text inside other apps, which macOS only allows through two permissions. Input Monitoring lets Charm notice when you finish a word, so it knows the right moment to check spelling. Accessibility lets Charm read the word you just typed and replace it in place with the correction. Without both, Charm cannot see or fix anything. Both are granted in System Settings > Privacy & Security, and they sit in two separate lists there. Everything Charm reads stays on your Mac: nothing you type is ever stored or sent anywhere, and password fields are skipped entirely.
Yes. Charm corrects as you type and sets itself up for each app you use. If an app or website doesn't allow editing as you type, such as some online document editors, use Manual: select your text and press Option-Command-V. Code editors start in Manual, so Charm never touches your code. You can switch any app or website between Auto and Manual in Settings > Customise.
No. Charm is lightweight at idle. On first launch it downloads a local AI model, about 1.5 GB for Fast or 2.3 GB for Best Quality, one time only. After that everything runs locally with minimal CPU usage, and corrections land in under 200ms. The model also unloads itself after 2 minutes without use and reloads invisibly when next needed, so it is not holding memory while you are not using it. Version 1.0.63 made the menu bar panel lighter still. If you ever noticed your fan spinning up or your battery draining faster with Charm running, update to the latest version in Settings > General > Check for Updates and that is resolved.
Yes. All corrections and predictions run on your Mac using a local AI model, so Charm works fully offline: on a plane, on a train, anywhere. You only need a connection three times: downloading the app, downloading the AI model on first run, and activating your licence key. After that, Charm quietly reconfirms your licence in the background when you happen to be online, and it is happy to run fully offline for up to 7 days at a time. Away longer than that? Just connect once and it revalidates automatically, no key re-entry needed; your key is stored securely in the macOS Keychain. Updates also download automatically whenever you are connected.
Press Ctrl-Option-C to toggle all of Charm on or off instantly, from any app. The menu bar icon changes so you can see the current state at a glance. You can change this shortcut in Settings > Customise > Keyboard Shortcuts, and you can also record separate shortcuts there to toggle individual features: Spells, Polish, Oracle, or emoji replacement. Each one shows a small confirmation when pressed, so you always know what just changed. The menu bar popover has the same toggles if you prefer clicking.
Open Settings > Support. From there you can Report a Bug, Request a Feature, Leave a Testimonial, Review Roadmap, open the FAQ Section, or read our Privacy Policy. Each one takes you straight to the relevant page on the Support Centre in your browser, so you can see what has already been raised, add your own, and follow along. If you would rather include a diagnostic report with a bug, grab it first from Settings > Diagnostics (Copy or Send), then attach it. Everything is read and answered by a real person.
Charm runs entirely on your Mac, so it favours models fast and light enough to correct your text the moment you type, while staying accurate. We review the options regularly and pick the best balance of speed and quality for that job, not simply the largest or newest. Some of the most capable recent models are built to reason step by step before answering, which is too slow for corrections that need to feel instant. Charm 1.0.71 adds Qwen3 4B, released in 2025, as its Best Quality model.
Last reviewed: September 2026
Fix Selection is Charm's on-demand cleanup. Select some text and press Option-Command-V, and Charm fixes spelling, grammar, capitalisation, and punctuation in one pass. With nothing selected, it fixes the entire text field. It works everywhere, including code editors and the few websites that don't allow fixes as you type, and you can press Esc to cancel while it is working. It is also polite: in chat apps it never adds a full stop to the end of your message. You can change the shortcut in Settings > Customise > Keyboard Shortcuts.
Oracle predicts your word after you have typed three or more letters and pause for a moment. The suggested ending appears highlighted right in your text: press Tab to accept it, Esc to dismiss it, or just keep typing to replace it. Oracle is off by default, so switch it on in the menu bar popover when you want it. It gets smarter as you write: real words you use often become suggestions, and anything you write a few times, from a single word to a short sign-off, can be completed with a single Tab. It only ever suggests genuine words, so a stray typo never gets offered back to you. It deliberately skips very common short words, and stays out of search bars and address bars.
Press Command-Backspace (or Command-Z) immediately after a correction and your original word comes straight back. Charm then offers to add that word to your personal dictionary: press Y to add it so it is never corrected again, or N to dismiss. Press Backspace again quickly and Charm deletes the whole word for you, ready to retype. The undo window lasts a few seconds after each correction, and once you keep typing, normal Command-Z behaviour returns to the app. Charm also remembers what you undo, so a correction you reject twice stops being suggested.
Add it to your personal dictionary. The quickest way: when Charm corrects the word, press Command-Backspace to undo, then Y when Charm asks whether to remember it. You can also add and remove words directly in Settings > Personal. Dictionary words are never flagged again in any app, and Charm even protects them during grammar fixes. It also respects your capitalisation: add "Bauhaus" and typing "bauhaus" gets promoted to your preferred form. Names, brands, slang, project codenames, whatever you write, Charm learns your vocabulary.
Yes. In Settings > Personal you can create replacement pairs: type a short trigger and Charm expands it the moment you finish the word. Make "addr" your postal address, "@@" your email, or "sig" your signature. Replacements work across your apps, including web browsers and chat apps, and matching ignores capitalisation. If an expansion ever fires when you did not want it, press Command-Backspace straight away to undo it. You can add, edit, and remove shortcuts any time.
With emoji replacement on, typing certain words converts them to the matching emoji: "coffee" becomes the coffee cup, "magic" becomes sparkles. Only lowercase words trigger it, and some two-word phrases work too. If Charm converts a word you wanted as text, press Command-Backspace to undo, and Charm will ask whether it should stop converting that word for good. Your exclusions are listed in Settings > Personal, where you can remove one to bring the emoji back. You can also switch emoji replacement off entirely, globally or just for specific apps and websites.
Yes, completely. Open Settings > Customise. Under Apps you can set any app to Auto (corrects as you type) or Manual (corrects only when you press Option-Command-V), and switch spelling, grammar, prediction, and emoji on or off individually for that app. Under Websites you can do the same per domain, so you could keep prediction on in Gmail but off in Google Docs. Apps Charm set up for you carry a small sparkle, and you can change or remove any of them from its row.
Charm currently supports English (UK) and English (US), switchable in Settings. It picks the right variant automatically from your Mac's language settings, so British users get "colour" accepted and American users get "color" accepted, and every correction respects the variant you chose. One nice touch: whichever variant you use, Charm never converts your currency symbols, so quoting $ amounts in British English is always safe. Support for more languages is on our roadmap; if there is one you would love to see, tell us on the feedback board or at support@theodorehq.com.
Charm offers two on-device models. Fast (Gemma 2 2B, about 1.5 GB) keeps up with quick typing and runs on Macs with 8 GB of memory. Best Quality (Qwen3 4B, about 2.3 GB) gives smarter grammar fixes and wants 16 GB. Only one is loaded at a time, and you can switch or remove models whenever you like: open Settings > General, press Manage beside AI Engine, then choose Download or Use. If you used the earlier Qwen 2.5 3B model, Charm moves you to Qwen3 4B automatically and removes the old files. Charm checks your Mac's memory before offering a model, so you cannot pick one your machine cannot handle. Spelling correction works even with no model installed; the model powers the grammar pass and the trickiest spelling calls.
Yes, in a few ways, all stored locally. Corrections you accept a couple of times become instant. If Charm ever corrects a word to the wrong thing and you fix it to what you actually meant, it learns your word and gives you that next time. Corrections you undo are remembered too, so Charm stops making that change. For prediction, real words you type often become suggestions (it never offers a typo back to you), and anything you write a few times, from a single word to a short sign-off, can be offered in full with one Tab. You stay in charge of all of it: Settings > Personal lists the words you've taught Charm and your learned phrases, where you can search them, add or edit your own, and remove or reset any entry. Text Replacements, Taught Words and Phrase Suggestions each have their own switch there too; turning one off keeps your list for when you want it back.
Yes. Each correction appears with a soft glow, and Settings > Appearance lets you make it yours. Choose any glow colour from the full colour spectrum, and pick an animation style: Subtle (the default), Playful for a little more delight, or None if you would rather corrections happen without a glow. In apps that cannot tell Charm where the corrected word sits, a small Corrected note appears at the top of your screen instead, showing what changed. Charm follows your Mac's light and dark mode automatically. If you are curious what got corrected, Settings > History keeps a log of your recent corrections along with counters for today and all time.
Yes. If Charm corrects a word to the wrong thing and you replace it with the word you actually meant, Charm learns that pairing and gives you your word next time instead. This is handy for words you often mistype in the same way, where the built-in checker lands on a close but wrong word. One fix is enough, and it only ever learns a real word. You can see and remove everything it has picked up in Settings > Personal > Taught, or switch Taught Words off there entirely. It all stays on your Mac.
Yes. Charm shows short messages near the top of your screen to tell you what it has done, such as confirming your corrected text is on the clipboard, or the Corrected note that shows what changed in apps where the glow cannot appear. If your menu bar or an app's toolbar is busy up there, open Settings > Appearance and drag Message Position to the height that suits you, anywhere from just under the menu bar down to the middle of the screen. A live preview follows the slider as you drag, so you can place it against your own screen rather than guess, and your choice is remembered for every future session. This is separate from the correction glow: moving your messages does not change how corrections themselves look as you type.
Not once you tell Charm about it. In Settings > General > Other Languages, choose the languages you write in, and Charm leaves that text exactly as you wrote it, with no spelling fixes, grammar fixes or predictions. A word from one of those languages inside an English sentence is left alone too, while the English around it is still corrected. You can choose from Portuguese, Spanish, French, German, Italian, Dutch, Swedish, Danish, Norwegian, Finnish, Polish, Hungarian, Czech, Romanian, Turkish, Russian and Ukrainian.
Turn on Emoji Shortcuts in Settings > General. Then type a semicolon followed by a word, like ;smile, and choose from the list with the arrow keys, Tab or Return. Escape closes the list and keeps what you typed. You can pick a different starting key beside the switch: a colon, two semicolons or two colons. If you turn off emoji for an app or website in Customise, shortcuts stay off there too.
Charm is a one-time purchase, normally $29.99 and currently $19.99 as a limited-time launch offer, with no subscription and every feature included. There is no separate free trial because every purchase carries a 14-day money-back guarantee: buy it, use it for two weeks, and if it is not for you, email support@theodorehq.com for a full refund. That is your risk-free trial.
Three quick checks fix almost every case. First, make sure it is a Charm key: it starts with CHARM followed by groups of letters and numbers. A key from one of our other apps (like Solace) will politely tell you it belongs to a different product. Second, copy and paste the entire key from your Polar purchase email rather than retyping it; Charm ignores spaces and capitalisation, but every character matters. Third, activation needs a brief internet connection, so check you are online. Still stuck? Email support@theodorehq.com and we will sort it quickly.
Up to 3, and your licence is tied to the key, not the machine, so replacing a Mac is painless. Updates are automatic too: Charm checks in the background and offers new versions with one click to install, free forever with your licence. You can download the latest version any time at theodorehq.com/charm/download.
Each Charm licence activates up to 3 Macs, and you can manage those devices yourself at any time. Sign in to your Polar account with your purchase email and you will see your licence key and the Macs it is currently active on. Deactivating a Mac you no longer use frees that slot immediately.
This is worth knowing if you reinstall macOS or reset your Mac, because a fresh install claims a new slot even on the same machine. The tidiest route is to free the slot first: on the Mac you are about to wipe or sell, open Charm, then Settings > General > Deactivate This Mac. If it is too late for that, deactivating the old entry in the portal afterwards puts it straight back. If you cannot access the portal or something does not look right, email support@theodorehq.com from your purchase email address and we will sort it for you.
Charm needs two macOS permissions: Accessibility and Input Monitoring, both switched on in System Settings > Privacy & Security. They sit in two separate lists, so it is easy to have one on and the other off. After enabling both, quit and reopen Charm so macOS registers them. If the Charm menu says Paused by Secure Input, another app is hiding your typing from Charm: quit it or restart your Mac. To confirm it is working, type teh followed by a space in any native Mac app; it should become the.
macOS reads permissions when an app launches, so a freshly granted toggle often is not noticed until Charm restarts. Charm offers a one-click Relaunch when this happens; otherwise quit from the menu bar and reopen. If the warning persists after that, the permission entry itself is usually stale, which can happen after a macOS update: open System Settings > Privacy & Security, go into Accessibility and Input Monitoring, remove Charm from the list with the minus button, add it back, switch it on, and relaunch. Charm's warning always names exactly which of the two permissions is still missing, and its Fix button opens the right pane.
From version 1.0.72 it does, in browsers and web apps like Slack, Discord and WhatsApp. When you update, any browser or web app Charm had set to Manual moves to Auto for you. If you set an app to Manual yourself, it stays that way: open Settings > Customise and switch it to Auto. A few websites, such as online document editors, don't allow fixes as you type; press Option-Command-V there and Charm fixes the whole field in one pass. Code editors stay in Manual, since fixing code as you type is rarely what you want.
When both Charm and the built-in macOS autocorrect are on, the two engines can react to the same keystroke, which occasionally shows up as doubled words or odd cursor jumps. The clean setup is one engine: open System Settings > Keyboard > Text and turn off the built-in correction, then let Charm handle everything. Charm makes this easy: when it notices system autocorrect is on, it shows a small banner in the popover with a Fix button that takes you straight to the right settings pane. Charm never changes your system settings itself; that choice is always yours.
First, check Oracle is switched on in the menu bar popover; prediction is off by default so it never surprises anyone. If it is on, remember Oracle is deliberately selective. It needs at least three typed letters, only suggests when the ending saves you three or more characters, and skips very common words. When you are typing quickly it only offers longer words, because interrupting fluent typing costs more than it saves. It also stays out of search bars, browser address bars, single-line web form fields, launchers like Raycast and Spotlight, terminals, and password fields. Oracle also suggests your next few words when you pause after a space; that needs the on-device AI model. Pause briefly mid-word in a normal document and suggestions will appear.
Charm watches whether its corrections actually land cleanly in each app. If an app repeatedly refuses them (some apps handle text in unusual ways), Charm switches that app to Manual mode so your typing is never disrupted, and shows a small notice with an Undo button. Tap Undo to put the app straight back, and Charm respects that choice for the rest of the session. You can also change any app's mode in Settings > Customise, where apps Charm set up carry a small sparkle. Prefer Charm never to manage modes for you? Turn off Smart Mode Selection in the same tab.
Terminals are the one place Charm deliberately never touches, and there is no setting to change that. In a terminal, every character is a live command rather than prose, so automatic corrections, predictions, or even an on-demand fix could alter or run commands you did not intend. Charm recognises all the popular terminals, including Terminal, iTerm2, Warp, kitty, Alacritty, WezTerm, and Ghostty, and stands down completely in them. Everywhere else on your Mac works as normal.
For a failed download, just retry from Settings > General under AI Engine: Charm automatically clears any partial download first, so a retry always starts clean. The error message tells you whether the cause was your connection, disk space, or memory. If it says Charm could not reach huggingface.co, that is the site the models download from: on a VPN, work network or firewall, allowing huggingface.co is the fix. If Charm disappeared while loading a model, that means your Mac ran out of memory for it; on next launch Charm detects this, explains which model struggled, and steps back so it cannot happen in a loop. In that case choose the lighter Gemma 2 2B model, or run without a model; spelling correction works fine either way.
No. The AI model unloads itself after 2 minutes without use, freeing that memory completely, and reloads invisibly the next time it is needed. Memory during inference is tightly capped too. In browsers, Charm keeps its footprint deliberately small: it only inspects page details when you have actually created per-website rules, and recent updates significantly reduced how much work happens while you type in a browser. If anything ever feels heavy, make sure you are on the latest version (Settings > General > Check for Updates), then email support@theodorehq.com and we will take a look.
Open Settings > Diagnostics. You will see Charm's recent activity log: permission status, model events, and anything unusual, capped at the last 200 entries. Press Copy to put the whole report on your clipboard, then paste it into your email to support@theodorehq.com, or use Send, which drafts the email for you (and copies the full log to your clipboard as a backup, since some mail apps truncate long messages). The log records events only, never the text you type, so it is always safe to share. A Clear button wipes it whenever you like.
Email support@theodorehq.com. A real person, not a bot, reads every message and usually replies within a day. Whether it is a question, a bug report, or an idea for Charm, we would love to hear from you. You can also report bugs, request features, and vote on ideas right here on the feedback board.
No. Everything Charm does happens entirely on your Mac using a local AI model, and it works fully offline. Nothing you type is ever stored or sent anywhere: no servers, no cloud, no account, no tracking. Charm only acts on the text you are actively writing, stays out of your browser's address and search bars, and skips password fields entirely.
No. Charm detects password fields several ways and never reads, corrects, or predicts in them. It recognises secure fields in native Mac apps and in every major browser, honours the system-wide secure input mode that password prompts switch on, and as an extra safety net it treats any masked field showing dots as off-limits too. The same protection covers everything: live correction, word prediction, phrase learning, and Fix Selection all stand down the moment a password field has focus. And since Charm runs entirely on your Mac with no cloud and no logging of typed text, there is nowhere for anything sensitive to go anyway.
Charm keeps a small amount of data locally so it can serve you better: your settings and per-app rules, your personal dictionary and text replacements, the corrections it has learned from you, short phrases and word frequencies for prediction, a log of your last 100 corrections, and a diagnostic event log. Your licence key lives in the secure macOS Keychain. None of it ever leaves your Mac. Everything is inspectable and clearable: Settings > Personal manages the dictionary, replacements, and learned data, Settings > History clears the correction log, and Settings > Diagnostics clears the event log.
Exactly four things use a connection, and none of them include your text. First, downloading the on-device AI model when you set up or switch models. Second, activating and occasionally revalidating your licence key with our payment provider Polar; that request carries the key and your Mac's name so you can recognise the device, nothing more. Third, checking for app updates from our website. Fourth, if Charm ever quits unexpectedly and you choose to send a crash report, a short technical report goes to our Support Centre. Everything else, every correction, prediction, and piece of learning, happens entirely on your Mac. There are no analytics and no account.