Files
reliquary/docs/workpad/reports/2026-09-14-fable-naming-review.md
g4borg 937759b530 📝 Add next-gen plugin design spec and naming review
Design spec for the g4b_ai replacement plugin — component inventory,
deployment model, architecture, and existence map. Fable naming review
evaluates candidates and recommends "Keep" as the plugin name.
2026-09-14 13:59:35 +02:00

123 lines
14 KiB
Markdown

# Naming and Identity Review: Plugin Design Spec
Creative review of `docs/workpad/designs/2026-09-14-plugin-design-spec.md`, read against the original brainstorm (`spacecraft/docs/workpad/brainstorm/igor/2026-08-13-igor-plugin-system.md`).
## Summary
The cast is strong and the trope is nearly right, but the spec has three creative problems:
1. **The pitch says "mage tower" but the named characters are mad-science lab.** Igor (Frankenstein via Pratchett), Pinky (Acme Labs), Zathras (the Great Machine). The unnamed components (adept, tome, forge) are medieval-arcane. Two registers. Pratchett gets away with exactly this mix, so it can work, but the spec should own it rather than pretend it's all candles and vellum.
2. **"A tower that travels" is a contradiction the name has to resolve.** Towers are the least portable structure in fiction. Either the name is a *company* (a retinue goes with you) or the pitch changes to "you raise the tower wherever you land." Pick one. I recommend the second.
3. **The spec dropped the brainstorm's voice and its philosophy.** "Says 'yeth, marthter' exactly zero times" and "No one ever listens to Zathras" are gone. So is "contexts as short-lived beings." Those were the reasons someone would *want* this. The spec reads like a component inventory wearing a costume.
Name recommendation: **Keep**. Runner-up: **Retinue**. Best of the original nine: **Orrery**. Rename **Forge** to **Kiln** (or **Athanor**).
## 1. Name Recommendations
### The test that matters
Nobody says the plugin name aloud. It lives in three places: the skill namespace (`<name>:tome`, `<name>:pinky`), the data path (`~/.claude/plugins/data/<name>/`), and the reliquary path (`reliquary/plugins/<name>/`). Judge every candidate by how `<name>:navigate` and `<name>:igor` read. The possessive ("the X's adepts") is secondary; the namespace is what you type fifty times a day.
### The nine, judged
| Name | Verdict | Why |
|------|---------|-----|
| **Sanctum** | Safe, forgettable | A sanctum is a place of *retreat*, not work. Marvel owns the word now. Nothing about it says the system does anything. `sanctum:forge` is a category error. |
| **Grimoire** | Wrong slot | Beautiful word, but it names a book and the tower already has a Tome. `grimoire:tome` is two books. If you ever want it, it's a rename for Tome, not the plugin. |
| **Athanor** | Wrong slot | Same problem in the other direction: it's a furnace and the tower already has a Forge. `athanor:forge` is two ovens. But see section 4: Athanor is the *right* name for the orchestrator. |
| **Spire** | No | Only the pointy bit at the top; nobody works there. "Slay the Spire" owns search. Reads as a product name, which the spec explicitly doesn't want. |
| **Studiolo** | Wrong register | Renaissance humanist, not arcane. A studiolo is a room for *one* person; this system has staff. Also awkward in an English mouth. |
| **Arcanum** | Generic | The most default fantasy noun available. It's the secret itself, not the place where secrets are kept. Every third game and Blizzard expansion has used it. |
| **Vademecum** | Concept yes, name no | "Go with me" is exactly the portability idea and belongs in the pitch as a sentence. As a name it's a third book, unpronounceable, and `vademecum:navigate` is a typing injury. |
| **Orrery** | Best of the nine | A working mechanical model of a complex system that a tender keeps running: that *is* Zathras and the Great Machine, and it honors the space-game origin. Weakness: an orrery is a display piece, it doesn't accumulate knowledge, and "the orrery's adepts" is odd because nobody lives in one. Names the orchestration, not the memory. |
| **Collegium** | No | Community-over-hierarchy contradicts the architecture, where only Igor speaks to the user. Academic, not arcane. |
From the brainstorm's longer list: **Sigil** is interesting (the mark you leave on a project, which is what a project overlay is) but too small to hold a whole tower. **Lexicon**, **Conclave**: no.
### New candidates
| Name | Namespace | Why it works | Risk |
|------|-----------|--------------|------|
| **Keep** | `keep:igor`, `keep:tome`, `keep:pinky` | The inner tower of a castle *and* the verb for what the whole system does: keep journals, keep the wiki, keep the tower maintained. One syllable. `reliquary/plugins/keep` and `plugins/data/keep/` read cleanly. "The keep's adepts" is natural. Old-fashioned, fortified, private. | Google Keep. Every prose mention needs "the". |
| **Retinue** | `retinue:igor`, `retinue:tome` | Solves the "tower that travels" contradiction directly: a retinue is precisely the company that follows a lord from place to place. Igor, adepts, Pinky, Zathras *are* a retinue. "The retinue's adepts" is the most natural possessive of any candidate. Googleable, no tech collision. | Courtly register rather than arcane. Nobody is excited by the word "retinue." It names the people, not the place, so the tome and forge feel carried rather than housed. |
| **Atelier** | `atelier:forge`, `atelier:adept` | The master-and-apprentices workshop is exactly this structure: a master (user), a studio manager (Igor), apprentices who learn by practice (adepts), and artifacts leaving the door. What Studiolo was reaching for, in a word English speakers can say. | Art/fashion register, not arcane. Slightly precious. |
| **Lair** | `lair:igor`, `lair:pinky` | The wildcard. Honest about the mad-science register the cast actually has. Funny, four letters, unforgettable, and `lair:pinky` makes people grin. Igors work in lairs. | Villainous connotation. Might read as a joke rather than a practice. If the system is meant to be taken seriously by a team in official mode, this hurts. |
| **Hearth** | `hearth:tome` | The center of a house: the fire (forge), the gathering (Igor, Pinky), the stories told around it (tome, journals). The most *intimate* of all candidates, which the spec asks for. | Hearthstone owns search. Domestic rather than arcane. |
### Verdict
**Keep**, if the pitch changes to "you raise the tower wherever you land" (see section 3). **Retinue**, if the pitch insists on "travels with them." **Orrery** if the space lineage matters more than either.
Tie-breaker in Keep's favor: it is the only candidate whose name is also the system's mission. The tower keeps. That's the whole philosophy in a syllable.
## 2. Identity Coherence
### The register seam
Say it plainly in the spec: the named characters come from pulp lab fiction, the unnamed components from the medieval arcane. Igor is Frankenstein's assistant. Pinky lives in a cage at Acme Labs. Zathras lives inside a planet-sized machine. None of them is a wizard's servant.
This is fine, because the bridge exists: the **alchemist's laboratory**. Alchemy is where the arcane and proto-science overlap, and every component fits an alchemist's workroom without strain: the athanor (slow oven), the tome, the adepts (alchemical term of art for a practitioner who has attained the work), Igor at the bench, the fool who asks the wrong question. Frame the tower as an *alchemist's* tower, not a mage's, and the seam closes. The spec's own candidate list already leans this way (Athanor, Vademecum).
### Where it's forced
- **"Forge."** A forge is a smithy: hammering, sparks, a blacksmith. Nothing in the tower forges. The orchestrator loads work, closes the door, waits, and takes out the result. That is an oven, and the user already calls it "the oven" ("put it in the oven"). See section 4.
- **researcher / search / scout.** Three plain job titles in an otherwise named cast. Don't rename them, but state the rule that justifies it: *things you talk to get names; things you send get labels.* Igor, Pinky, Zathras have personalities and you converse with them. Adepts have a lifecycle and you consult them. Researcher/search/scout are dispatched and return; they're staff, not characters. Workpad, research-tree, svg, implementation are tools. The register has a ceiling and that's correct. If you want one collective word for the unnamed dispatched agents, it's **familiars**: small creatures the wizard sends to fetch things. Use it in the pitch, not the filenames.
- **"The tower travels."** Already covered. Resolve it.
### Where it holds
Igor, adept, tome, Pinky, Zathras are all correct and the spec should not touch them. Adept in particular: the brainstorm's reasoning ("skill acquired through practice, not innate authority") is the best naming argument in either document, and the spec should quote it rather than compress it to "skill through practice."
## 3. The Pitch
The current pitch is a roll call. Six sentences, each "X does Y." It tells you what the parts are; it doesn't make you feel the place. Three problems:
**It has no scene.** Open with a moment, not a list. Two candidates:
> You open a repo you've never touched. Nothing in it knows you. Zathras walks the perimeter, finds a `.claude/` it can write to, or doesn't, and raises the tower anyway, in the open or in shadow. By the time you type your first question, Igor has already sent an adept into the networking crate to read the walls.
or the session-mid scene:
> "The lane spawner is double-firing." Igor doesn't start reading code. It asks the networking adept, who was briefed an hour ago and has a journal entry about exactly this from last Tuesday. The answer comes back with a file path. Igor puts the fix in the kiln and goes back to talking to you.
**It dropped the voice.** The brainstorm has two lines that are the entire personality of the thing: "Says 'yeth, marthter' exactly zero times" and "No one ever listens to Zathras." Both are gone from the spec. Put them back. They're not jokes; they're the register calibration. They tell the reader this is dry, affectionate, and self-aware, not a fantasy skin.
**It's jargon in places.** "Correct-on-contact," "coordinated labor," "institutional knowledge that outlives any single session" are spec words. In the pitch, say it like the brainstorm did: "the artifacts survive." Or: "Every session dies. The tower is what it leaves behind."
**One sharpening for the closing line.** Current: "It should feel like a place where real work happens, not a product name." Better: "It's not a product. It's the room you work in."
## 4. Component Naming
| Component | Verdict | Note |
|-----------|---------|------|
| **Igor** | Keep, obviously | The Pratchett clan is the strongest reference in the system: generational knowledge, comes pre-equipped, serves whoever needs it. The spec should say "Pratchett's clan" not "Pratchett's clan of brilliant assistants"; the second half undersells it. Igors are the institution. |
| **Adept** | Keep | Correct on every axis. Also the alchemical term for a completed practitioner, which strengthens the alchemist framing. |
| **Tome** | Keep | Established, one syllable, already has a project overlay pattern people know. Don't let Grimoire near it. |
| **Forge** | **Rename** | Wrong verb. Options: **Kiln** (plain: one syllable, you load it and wait, `agents/kiln.md`, "put it in the kiln" is what the user already means by "oven") or **Athanor** (poetic: the alchemist's slow furnace, matches the register perfectly, but you'll explain it every time). I'd take Kiln and put Athanor in the doc as the reference. Either way, this frees Athanor from the plugin-name list where it never belonged. |
| **Pinky** | Keep | The brainstorm's character description is excellent and should survive into `agents/pinky.md` verbatim. One coherence note: Pinky is the Shakespearean fool, which *is* a tower archetype, so the Warner Bros. origin doesn't break register. The spec's one-line summary ("asks the unhinged questions") loses the key point: Pinky was never the idiot. Say that. |
| **Zathras** | Keep | The one name an outsider can't decode without Babylon 5, and that's fine; it rewards the reader who knows. The Great Machine maps exactly onto the tower. Make sure "Zathras raises the tower" becomes the name for bootstrap. It's a better verb than "bootstrap sequence." |
| **researcher / search / scout** | Keep plain | See section 2. Label, not name. Deliberate. |
## 5. What the Spec Is Missing
Not technically. Narratively.
**The enemy.** The brainstorm names it: "write goals, start one, context dies, next session doesn't know what was decided or why." Every good system pitch has an adversary. This one's is *forgetting*, and its slower cousin, *rot*. The spec never says what the tower is against. Say it in the first paragraph.
**The why.** The philosophical foundation ("contexts as paths," "short-lived beings," "the artifacts survive") is what makes this a practice rather than a task runner with a costume. The spec cut all of it. One paragraph in the Identity section: every session is a path through the latent space that can never be walked again; the tower is the machinery for making that path's residue useful to the next one. That's the line that makes a reader want the thing, because it's true about their own work.
**Shadow mode as a feeling.** The spec treats it as a settings table. It's the most evocative idea in the design: a tower nobody else in the building can see. The brainstorm's Discworld instinct is right; the Unseen University is the exact reference. One sentence: "In shadow mode the tower is unseen. The project doesn't know it's there. You do."
**A first hour.** What happens between "I enabled the plugin" and "this is useful"? The bootstrap sequence is written for Zathras. Write one version for the wizard: what you see, what you're asked, when the first adept reports back. Ten lines.
**Igor's voice.** Igor is the only component that speaks to the user, and the spec doesn't say what it sounds like. Dry, competent, never servile, occasionally deadpan. The brainstorm has it ("yeth, marthter" zero times). One sentence in the spec, and the whole system gets a tone.
## Recommended Edits, Ranked
1. Rename **Forge** to **Kiln**. Remove Athanor from the plugin candidates.
2. Choose **Keep** and change "travels with them" to "raised wherever they land." Zathras raises the tower.
3. Reframe "mage tower" as "alchemist's tower" to close the lab/arcane seam.
4. Restore the two brainstorm lines and the "contexts as paths" paragraph.
5. Rewrite the pitch opening as a scene.
6. Name the enemy (forgetting, rot) in the first paragraph of Identity.