Controls
Animated sprite for writing category

I'm Scared a Stranger Will Call My Novel AI, So I Built GitHub for Words (Meet VellumProof, Formerly WritHub, Lol)

A courtroom scene where a nervous novelist at the defendant’s stand holds up an enormous printed green contribution-graph as an alibi — but instead of GitHub squares, each tile is a tiny quill pen — while an easel displays a placard reading “EXHIBIT A: 6,000 WORDS, TUESDAY, BY HAND,” the prosecutor is a smug laptop in a powdered wig, the judge is a giant magnifying glass with a monocle, a single ghostly em-dash floats above the witness stand like a suspect being identified in a lineup, dramatic gothic-meets-90s-VGA lighting, one sweat-pixel rolling down the novelist’s brow

As I’ve mentioned before, we now live in a world where creative people have to prove they created the thing they created.

Sit with that for a second, because it’s genuinely deranged. I have been writing fiction since 2014 — unpublished, because getting published is the hard part and I am bad at the hard part — and the thing that keeps me up at night isn’t the rejection. It’s that some stranger is going to read my perfectly normal writing tics, feel that they’re AI, and torpedo the whole dream over a vibe.

The part that makes me want to chew glass is that none of this would be a problem if people were just honest about what they used to make a thing. But that’s apparently too much to ask, because cheaters gonna cheat.

So instead, the rest of us have to carry receipts.

First I had to meet the enemy

The first thing I did — because I had to — was see if I could teach an LLM to write fiction. Know your enemy, etc. This was a whole project on its own, because every AI has tics. And it’s not that the tics don’t exist in real writing (I’m looking at you, em-dash, my beloved). It’s that the machine reaches for them constantly.

Which is exactly the dilemma. Some human writers lean on the em-dash too. So how do you prove that you put the words on the page and not a robot with a thesaurus? You can’t do it from the words alone. The words are the crime scene, not the alibi.

A brief detour into nerd territory

Let me tell you about GitHub, in case you’re not a nerd (I’m a baby nerd, so I’ll keep it gentle).

GitHub is where coders keep their projects. It saves versions, it lets you work on new features without breaking the live thing, and — here’s the part I love — it draws you a little heat map showing how much code you committed on each day. That map makes it stupidly easy to tell a human from a machine. Someone who commits 50,000 lines in an afternoon did not type those by hand. Someone doing a couple hundred? Probably real. Simple.

The other magic trick is that it keeps all your changes. All of them. Which means writers' oldest nightmare — losing the work — basically stops being possible. If every version is saved, there’s nothing to lose.

I’ve been keeping all my projects on GitHub, writing included. But GitHub has one problem for people like me: it counts lines. And writers don’t think in lines. We think in words. We love words. Give us a word and we’ll turn it over for an hour.

So I just needed to take the beautiful change-tracking guts of GitHub and rebuild them for people who count in words.

Introducing VellumProof (which was almost named WritHub, lol)

Here’s how it works, and I promise it’s less scary than GitHub: at the end of a writing day, you upload your manuscript. VellumProof tucks that version away, and the next time you upload, it compares the two and records exactly what changed — words added, words cut — and stamps it with the date. It’s git commits, minus the part where you have to learn the command line to feel like a real boy.

You pick which files in a project get tracked, and you can see what’s changed between any two of them. Send your book to an editor? Upload their pass and see precisely what they touched and how much. That alone is worth it.

But my favorite part is that it’s proof.

There’s a graph that tracks how many words got added per upload. And that graph is a little bit of evidence of your own hand in the thing. The most I have ever written in a single day is around 6,000 words. It was a great day. It is also the absolute ceiling of my ability. So if my history suddenly shows a 10,000-word Tuesday, there’s a very good chance I did not write those 10,000 words — and anyone looking can see the same thing I can.

Now, a wrinkle: your first upload of an old project is going to look insane. If I dump in Calliope and the Rogue Biologic — 50-some-thousand words — on day one, the graph will scream that I wrote a whole novel in an afternoon. That’s what the notes are for. I tag that commit “Initial upload of CRB, drafted during NaNoWriMo 2014 (this is realistically the fifth draft),” and now anyone reading the history understands: day one was me importing a book, and everything after is the real, grinding, word-by-word edit trail.

The dream — the actual dream — is that when you submit something and somebody squints and says “this feels like AI,” you can hand them a timelapse of yourself writing it. Not a vibe. A record. Receipts.

The obvious objection

Yes. Cheaters are going to cheat. I have personally thought of five ways to game this thing before breakfast, and there is no version of it that blocks all of them. You could paste in AI text a little at a time to fake a human curve. You could do a lot of things.

But here’s where I’ve landed: I could spend forever building a fortress against the worst people, or I could build a good tool for the honest majority and trust that most people aren’t the villain of this story. I’m choosing the second one. I’d rather bet on the human side of things and be occasionally wrong than treat every writer like a suspect — which is, you’ll notice, the exact thing I’m mad about in the first place.

Anyway. I built a lie detector for my own novel because I’m scared, and building things is how I metabolize being scared. If that’s not the most writer thing I’ve ever done, I don’t know what is.

Keep your receipts, be honest about your tools, and go write something nobody asked for.