Skip to content

Blog

Four names in ten months

Abstract forked-paths motif in raspberry on graphite

The ledger

The title says four names. The honest count depends on where you start.

  • 2025-07-18: figbud, an AI-powered Figma widget. Day two of its life was a security fix that removed hardcoded Supabase keys and turned the widget into a plugin.
  • 2026-03-23: Ark, “AI-native Figma design intelligence engine” by its own initial commit (commit 199df7ad, 2026-03-23). The modern engine starts here.
  • 2026-03-24: Noche. Renamed across the entire codebase one day after Ark’s initial commit (commit 9f57f829, 2026-03-24).
  • 2026-03-25: Memoire (commit ac2774ee, 2026-03-25), with the package renamed the same day so npm install -g memoire would work. The second rename in 48 hours. memoire.cv got its first commit that same day.
  • By 2026-05-12: memi. There is a Studio commit whose whole job is pointing the app at the renamed engine (commit 66883cd, 2026-05-12), and the CLI today is @memi-design/cli with a binary you type as memi.

Count figbud and that is five names in ten months. Count memi as a contraction of Memoire instead of a new name and the title holds. Either way, the repo had form: the same engine history also carries a BidCraft to Dibs rename (commit d9f4eefe). This codebase knew how to rename things before it ever renamed itself.

Two renames in 48 hours

Ark lasted one day. Noche lasted one day.

I do not have a commit message that explains why, and I am not going to reconstruct a motive I cannot verify. What the log does show is what each rename coincided with. Ark to Noche was a pure rename, the entire codebase swept in one commit. Noche to Memoire landed bundled with an engine overhaul, and on the very same day the npm package went live and the website got its first commit.

Reading that pattern back: renames were free right up until the project went public. The moment there was an npm page and a domain, the name froze. The two one-day names look less like indecision and more like someone using up the last free renames before the meter started running.

The meter did start running. memoire.cv is still the domain even though the product is now memi. Domains outlive the decisions that picked them.

What a rename actually costs

The costs are not abstract. They are line items in these repos.

npm identity. On 2026-03-25 the install story already had two shapes at once: the engine renamed its package for npm install -g memoire (commit d8f1ced4) while the site’s install command pointed at @sarveshsea/memoire, announced as live on npm the same day (commit f2d2878). Today the package is @memi-design/cli. That is at least three public npm identities in ten weeks.

Download history. I believe each identity change reset the public download counter to zero. I want to be precise here: that is an inference. Nothing in either repo records the reset, npm just does not advertise continuity across renames. But when I later spot-checked weekly downloads and saw 188, part of that small number was plausibly self-inflicted. Every rename made the project look newer and smaller than it was.

Fossilized filenames. The website’s engine changelog mirror is a file literally named m-moire-changelog.json, synced from a repo that has been called ark, m-moire, and now memi. Dead names do not disappear. They calcify into paths, scripts, and sync tooling, and ripping them out is never worth the diff.

Muscle memory. The command you type changed. Every doc, README, install snippet, and screencast that mentioned the old binary became quietly wrong, and someone had to find each one.

What it buys

So why do it four times?

Because figbud described a widget, and the product stopped being a widget. Ark described an ambition, which is what its initial commit message reads like. Noche I cannot even reconstruct the intent of; it lived one day. Memoire was the first name that described what the engine actually does: it remembers. By the time the CLI, the macOS Studio, the MCP server, and the Codex plugin were all reading and writing one shared memory store, the name was doing real work in every conversation about the product.

memi is just Memoire compressed into something you can type forty times a day without an accent mark. That one was less a rename than an admission about how CLIs get used.

The buy side of the ledger is one line, but it is the line that matters: the product finally matches its name. Every previous name made the pitch longer. This one makes it shorter.

Keeping the old names public

On 2026-03-28 I added the figbud origin commits to the public changelog (commit 5979000, 2026-03-28). The site’s history page now reaches back to the widget era, hardcoded-keys fix and all.

That was deliberate. A rename count like this is only embarrassing if you hide it. Kept visible, it is just the record of a product figuring out what it was, with timestamps.

The practical rules I take from the ledger: rename as early and as often as you want while the project is private, because that is the only time it is free. Once anything is published, treat a rename like a data migration, with an inventory of every surface the old name touched and a budget for the history you will lose. And keep the old names in the changelog, because the trail is more credible than a clean slate.

memi has held since mid-May. By this repo’s standards, that is tenure.