I built Writekin over the past week because I was tired of AI writing that didn't sound like me, even though I had just used AI to clean it up, rather than wholesale write it.
The usual fixes I found online for this were:
- Some sort of SKILL.md, or
- A system prompt full of rules to strip the generic AI tells (e.g. no em-dashes, none of the stock phrases, varying the sentence length, etc).
While those cleaned up the surface a bit, Pangram still came back as ~100% AI written, which was frustrating, as again it was mainly taking my sloppy copy and tweaking it.
So when building Writekin I took a different route: Writekin fine-tunes a local model on your own writing. It reads what you've already written (Apple Mail, iMessage, local documents, chat exports), curates it into a training corpus, and runs a QLoRA fine-tuning on-device via Apple's MLX. A Compose screen then drafts and rewrites in that voice.
Everything runs on your Mac. Ingestion, training, and generation are all local. The only network calls are:
(1) When you download the model weights from Hugging Face and
(2) The Sparkle update check.
Training on your own Mail/Messages only felt okay to ship if the end user could verify that, so the source is public — so you can read exactly what it does!
Quick gut check: It's v0.9 and the output is uneven. Honestly, sometimes it nails your voice, and sometimes it's just completely off. This is more a "this is possible and kind of works" than a finished product.
Would genuinely love feedback!