From b42898edc89e1b09a6e89b1685ae4186819b0a51 Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 11 Oct 2026 12:30:03 +0000 Subject: [PATCH 01/14] Add research on life-story books and voice dictation Covers whether Quillgon could write an autobiography or memoir, how life stories are structured and gathered, what Wispr Flow does and what exists in open source for dictation, and how both would map onto the current code, with a phased plan. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01VesxdmVnfJM1sL5RyuQhre --- docs/life-stories-and-dictation.md | 419 +++++++++++++++++++++++++++++ 1 file changed, 419 insertions(+) create mode 100644 docs/life-stories-and-dictation.md diff --git a/docs/life-stories-and-dictation.md b/docs/life-stories-and-dictation.md new file mode 100644 index 0000000..bd1b320 --- /dev/null +++ b/docs/life-stories-and-dictation.md @@ -0,0 +1,419 @@ +# Research: life stories and voice dictation + +October 2026. Two questions: + +1. Could Quillgon help someone write an autobiography or memoir with AI, as well as a novel? +2. Would Wispr-Flow-style dictation be worth adding, and how would we build it? + +The answer to both is yes. This document covers what the research says, how each finding maps onto the current code, and a phased plan. + +**How this was researched:** +- A read of the codebase. +- Two web research passes: memoir craft and life-story services, and Wispr Flow plus the open-source speech landscape. + +**Caveats:** +- The egress proxy blocked many pages, so much of the external material comes from search-result summaries rather than full reads. +- Vendor latency and accuracy figures are the vendors' own. +- Prices move constantly. Treat every number here as a ballpark to check before relying on it. +- Nothing here is legal advice. + +## Part 1: Can Quillgon write a life story? + +### The short answer + +Yes. The central idea carries over well, and in one way it fits memoir better than it fits fiction. The idea is that the story graph is the source and prose is compiled from it, with hand edits read back into the graph. + +A memoir's facts are not invented, so the graph is the record of what actually happened: +- **Who:** the people in the author's life. +- **What and when:** dated events. +- **Who knew what:** what each person knew at each point. +- **Where:** places. + +`shared.md` already tells every agent "Never invent facts", and the extractor already prefers precision over coverage. Those are exactly the instincts a memoir tool needs. + +**What changes is the direction of travel:** +- **A novel** is built top down: idea → intent → plot points → structure → scene cards → prose. The planner invents the graph and the writer compiles it. +- **A memoir** is built bottom up. The raw material is the author's recollections: talked, dictated, typed, or prompted by a photograph. The graph has to be *harvested* from that material before it can be shaped. + +So the main new piece is a **gathering stage** that turns conversations and dictation into timeline events, people, places and facts. Most of the machinery downstream of the graph can be reused. + +### What carries over, what changes, what goes + +| Today | In a life story | Code | +| --- | --- | --- | +| Thinking partner (one question at a time, every reply edits the board, undo per reply) | **The biographer.** The interview at the heart of the mode. The pattern is already right. | `muse/prompt.md` talk task, `engine/ideation.ts` `talk()` / `applyTalk()` | +| Interviewer (one round of at most five questions) | Replaced by the biographer, which runs across many sessions | `interviewer/` | +| `timeline.yaml` | **The life timeline.** Real dates, now the spine of the book. Needs date precision, confidence and source. | `TimelineEvent`, schemas 226-236 | +| Characters, `state.yaml` (knows / feels / location) | **People.** Keep knowledge and feelings per scene. Add relationship, living or deceased, real name / pseudonym / composite, consent. Drop want / need / wound / lie / arc. | `CharacterBio` 181-199 | +| Locations, fact glossary | Places, with period detail as prompts for the senses | `Locations`, `FactGlossary` | +| Plot points | **Key moments**: high point, low point, turning point and so on (see below) | `PlotPoint` 143-159 | +| Structure (three alternatives: expected, unexpected, wild card) | **Shape**: chronological, thematic, braided, frame, vignettes, one season. The author picks; it is not invented. | `planner`, `structure.yaml` | +| Scene cards | Kept. Add *then* (what I knew at the time) and *now* (what I understand looking back), plus the memories each card draws on. | `SceneCard` 269-293 | +| Extraction and sync | Kept as is. It matters more here, because much of the prose is the author's own. | `engine/extraction.ts`, `sync.ts` | +| Ripples and impact analysis | Kept. "Grandad's death was 1983, not 1981" should ripple through every scene that depends on it. | `impact`, `ripple` | +| Style sheet, learned rules, both-orders judge | Kept. The voice is the author's own speech, so samples come from their transcripts. | `style.yaml`, `humaniser`, `judge` | +| Git history, what-if branches | Kept. Branches suit "the version for the family" against "the version for publication". | `git` | +| Obligations ledger (clue, promise, Chekhov's gun) | **Themes and threads ledger**: a motif, an object or a question the book raises and returns to. Paying off a "clue" makes no sense in a life. | `Obligation` 303-316, `obligations.ts` | +| Reader report: twist guessed early, twist fair | Drop twist scoring. Keep engagement, confusion and boredom, which matter just as much in memoir. | `quality/reader.ts` | +| Muse divergence (personas, least-typical ideas first, cliché flags) | **Remove.** Steering away from the probable is the right instinct for fiction and the wrong one for a true story: it would invent a life. | `ideation.ts` 20-34 | +| Critic checklist (passive protagonist, coincidence, tidy resolution) | Rewrite for memoir. Real lives have coincidences. The useful checks are a missing narrator-now voice, no stated "what this is about", and a timeline-dump middle. | `critic/`, `engine/critics.ts` | +| Writer: "do not add events not on the card" | Keep, and tighten. Every factual claim in the prose must trace back to a memory (see *Truth*). | `writer/prompt.md` | + +### What the research says about how life stories are built + +**Three forms, three sets of defaults** + +| Form | What it is | What the tool should default to | +| --- | --- | --- | +| **Autobiography** | The whole life so far, usually chronological. | Coverage matters most. | +| **Memoir** | One slice, period or theme of a life, chosen for meaning rather than completeness. | Leaving things out is the main craft decision. | +| **Legacy or life-story book** | Usually private, for children and grandchildren. In practice mostly an autobiography ([LifeBook](https://www.lifebookmemoirs.com/what-is-the-difference-between-a-memoir-and-an-autobiography/)). | Completeness is a virtue ("don't forget Aunt May"). Legal flags matter less, because it is private. | + +So the first question should be which of the three the author is writing, because the answer changes: +- interview coverage versus a theme-led outline; +- whether the legal review matters; +- how polished the prose should be. + +**Common shapes, with examples** + +| Shape | Examples | +| --- | --- | +| **Chronological**, cradle to grave | Most legacy books. *Born a Crime* is mostly chronological across three parts. | +| **Thematic**: chapters are subjects, not years | David Carr, *The Night of the Gun* | +| **Braided**: two or more strands, often then and now | *H is for Hawk* (grief, the hawk, T. H. White); *Wild* (the trail plus flashbacks); *The Color of Water* | +| **Frame or in medias res**: open on a later moment, then go back | *Wild*'s lost boot; *The Glass Castle*'s opening; *The Liars' Club*'s circular shape | +| **Vignettes or essays**: fragments | *Crying in H Mart* is often cited as non-linear | +| **One season or one arc**: a single transformation | *Wild* (one summer), *H is for Hawk* (one year), *Educated* | + +([Writers for Hire](https://thewritersforhire.com/?p=38110), [LitCharts on Wild](https://litcharts.com/lit/wild/prologue), [eNotes on H is for Hawk](https://www.enotes.com/topics/h-hawk)) + +**Craft ideas the data model should hold** + +- **Situation and story** (Vivian Gornick, *The Situation and the Story*). + - The *situation* is what happened. The *story* is "the emotional experience that preoccupies the writer": what the author came to understand. + - Intent needs a field for the story, separate from the events ([eNotes](https://www.enotes.com/topics/situation-story)). +- **Memoir as an argument** (Marion Roach Smith, *The Memoir Project*). + - Know what the book is about, write it on the wall, and keep only the stories that serve it. + - This is the test for what to leave out ([Creative Penn](https://www.thecreativepenn.com/2013/08/26/writing-memoir/)). +- **"Think small"** (William Zinsser). + - Make "a series of reducing decisions", and choose small, vivid incidents over the ones that seem "important" ([NPR](https://www.npr.org/5339491)). +- **Two narrators.** + - Phillip Lopate and David Mura place a memoir's power in the tension between the self who lived it and the self who now understands it ([Lopate](https://whitman.edu/documents/edit/Reflection%20and%20Retrospection-%20A%20Pedagogic%20Mystery%20Story%20%C2%BB%20Phillip%20Lopate.pdf), [Gulf Coast](https://gulfcoastmag.org/online/blog/story-and-narrative-voice-in-memoir)). + - This becomes the then / now pair on every card. +- **Carnality and voice** (Mary Karr, *The Art of Memoir*). + - Sensory detail "zips the reader into your skin", and a memoir lives or dies on voice. + - Karr's truth contract: untruth is "making up events with the intention to deceive" ([Kirkus](https://kirkusreviews.com/book-reviews/mary-karr/the-art-of-memoir)). + +**How professionals gather a life** + +- **Ghostwriters:** + - Interview for about 10 to 60 hours, depending on the service and the length of the book. Scribe quotes about 20 hours in 2-hour sessions ([Scribe](https://scribemedia.com/lp/q/memoir-ghostwriter), [DePauw](https://depauw.edu/stories/details/the-ghostwriter)). + - Work from the transcripts to absorb the subject's voice. + - Rewrite speech into prose that reads as if the subject wrote it. +- **LifeBook:** + - About twelve 90-minute interviews over several months, scanning photos and documents during the visits. + - Chapters drafted after each interview and approved in stages. + - No outside research: every detail comes from the subject ([LifeBook](https://www.lifebookmemoirs.com/en-gb/how-it-works/)). +- **Dan McAdams' Life Story Interview** is the best scaffold found: + 1. Split the life into 2 to 7 titled chapters. + 2. Ask for key scenes: high point, low point, turning point, earliest memory, a vivid adult memory, a wisdom event. + 3. For each scene, ask what happened, who was there, what you thought and felt, and why it matters. + 4. Then the future, challenges and values. + - ([outline](https://web.lemoyne.edu/~hevern/psy444_24F/documents/The%20Life%20Story%20Interview%20Outline%2020241022.pdf)) +- **Consumer services:** + - **Storyworth** sends a weekly emailed prompt for a year and prints the answers. + - **Remento** records spoken answers, transcribes and rewrites them with AI, and prints QR codes in the book that link to the original audio. + - **Newer AI-interviewer apps:** Autobiographer, StoriedLife, Life Story AI, memoir.bot. + - The common complaint about AI rewrites is that they **drift from what was actually said**: one Remento customer wanted "more of her actual words" ([Remento](https://resources.remento.co/getting-started/4-minute-overview), [Storyworth's review of Remento](https://welcome.storyworth.com/blog/remento---how-it-works-pricing-reviews-top-alternatives)). + +That complaint is the strongest argument for Quillgon's approach. Every sentence of a drafted chapter could be traced to the memory it came from, and anything without a source could be flagged. + +**Truth, real people and hard memories** + +- **Memory is reconstructive.** + - The usual practice is to signal uncertainty in the text and to add an author's note about reconstructed dialogue, compressed time and composite characters. + - *Educated* footnotes places where family accounts differ ([Jane Friedman](https://janefriedman.com/memoir/)). + - James Frey's *A Million Little Pieces* shows the cost of getting this wrong ([Ethics Unwrapped](https://ethicsunwrapped.utexas.edu/case-study/million-little-pieces)). +- **Writing about living people** can raise defamation, false-light and private-facts claims, and the last can apply even when the content is true. + - Self-publishers are advised to consider signed releases ([Authors Alliance guide](https://authorsalliance.org/2023/12/05/authors-alliance-releases-new-legal-guide-to-writing-about-real-people)). + - UK law differs from US law. +- **Trauma-informed interviewing:** + - The narrator sets the pace. + - Offer pause, skip and "off the record" at any time. + - Start with neutral topics. + - Accept memories that arrive out of order and in fragments. + - Never push for detail ([Voice of Witness](https://voiceofwitness.org/resources/trauma-informed-storytelling-practices/)). + +### Proposed design: a life-story mode + +**1. A book kind.** +- Add `kind: novel | memoir | autobiography | legacy` to `Book`; today there is only a free-text `genre`. +- Every mode-specific prompt, stage list and view switches on it. +- `shared.md` currently says "helps an author build a novel" and cannot be overridden, so it needs a variant per kind. + +**2. Stages.** These replace `idea → intent → plot-points → structure → cards → prose`: + +| Stage | What happens | +| --- | --- | +| **Purpose** | Pick the form and the audience (family only or published). Then the *story* in one line (Gornick or Smith), separate from the situation. Also hard rules ("nothing about my sister's divorce") and the people who must not be named. | +| **Gathering** | The biographer interviews over as many sessions as needed, McAdams-style, and the author dictates and attaches photos or letters. Every session is stored raw, then extracted into events, people, places and facts, each change reviewable and undoable as the thinking partner does today. This stage never really closes: the author can return to it from anywhere. | +| **Timeline** | Review the harvested life. Merge duplicates, fix dates and mark key moments. Gaps become questions. | +| **Shape** | Pick a shape (chronological, thematic, braided, frame, vignettes, one season), then title the life chapters. The planner proposes which memories go in which chapter. Anything the "about" test leaves out goes to a **kept, not cut** pile, which a legacy edition can bring back. | +| **Cards** | One card per scene, built from the memories behind it. Each card holds then / now, the senses, and the people present. | +| **Prose** | Choose how much to write in the author's own words: *verbatim*, *light* (cleaned speech; the default) or *polished*. The writer is limited to what the linked memories contain. | + +**3. New data:** +- **`memories//`**: `audio.webm` (optional), `transcript.md` (raw ASR output, never changed), `cleaned.md`, `meta.yaml` (date, source, provider, linked events). These files are the evidence behind everything else. +- **Timeline events** gain: + - `date_precision`: day, month, year, decade or approximate; + - `age`; + - `source`: memory, letter, photo, record, or someone else's account; + - `confidence`; + - `memories: [ids]`. +- **People** gain: + - `relationship`; + - `living`; + - `naming`: real, pseudonym or composite; + - `consent`: not asked, asked, approved or objected; + - `sensitivity`. +- **Truth flags per fact**: verified, memory only, disputed (with the other version), reconstructed dialogue, compressed time, composite. These generate the author's note. +- **`questions.yaml`**: questions the biographer still wants to ask, generated from gaps: + - events with no date; + - people who have no scene; + - a chapter with no high or low point; + - a scene with no senses. + - Questions for *someone else* ("ask Mum about the move to Leeds") go here as well. + +**4. Agents:** +- **biographer**: the talk task, rewritten for memoir. One question at a time, sensory and "why does it matter" follow-ups, McAdams prompts, never pushes a topic the author has marked as sensitive. +- **extractor**: unchanged in kind. It needs a memory-to-graph mode that can create people and events; today unknown character ids are filtered out (`extraction.ts:110`). +- **planner**: proposes chapter assignments for a chosen shape instead of inventing three structures. +- **writer**: memoir rules. First person with the narrator-now voice. No event, person, date or quotation that is not in the linked memories. Mark reconstructed dialogue. +- **reviewer before publishing**: a living-people pass covering consent, potentially defamatory statements and private facts. It is presented as information, not legal advice. + +**5. Truth as a check, not just a prompt.** +- The existing `compareWithCard` already raises contradictions when prose does not match its card. +- In memoir, extend it to compare the facts extracted from a drafted chapter with the facts in its source memories. +- A sentence asserting something with no source is flagged as *invented*, and the author confirms it, rewrites it or marks it as reconstructed. +- Remento-style AI tools have no such mechanism, and this addresses their users' main complaint. + +**6. Privacy.** +- The local-first model is a real advantage here: a family history in plain files on your own machine, under git, works offline. +- Any cloud provider that sees transcripts or audio should be named on screen, per provider. + +### Cost of building it + +| Change | Size | +| --- | --- | +| `Book.kind`, a `shared.md` per kind, and prompt variants for biographer, planner, writer, extractor and critic | Small to medium. Overrides already load per agent (`define.ts:24-35`), but per task and per kind needs a little plumbing. | +| Memory store, gathering stage, timeline view | Medium. This is the bulk of the new work. | +| Stages per kind | Medium. Stages are a hard-coded linear enum shared by `pipeline.ts` and the UI stepper. There is no registry yet. | +| Fields for people, timeline and truth flags | Small. These are Zod additions with defaults, so existing books still validate. | +| Draft-against-sources check | Medium. It reuses extraction and contradiction reporting. | +| Living-people review, author's note generation | Small to medium. | +| Removing or hiding twist, Chekhov and muse-divergence features in memoir mode | Small. They become conditional UI and checks. | + +## Part 2: Voice dictation + +### What Wispr Flow does + +Wispr Flow is a system-wide dictation app: hold a key, speak, release, and clean text appears at the cursor in any app. It runs on Mac, Windows, iOS and, since early 2026, Android. + +**Architecture** (from the company's own posts and its host's case study): +- **Two stages:** speech recognition (ASR), then a fine-tuned **Llama** model that cleans and formats the text. +- **Latency target:** about **700 ms at p99**, from the end of speech to the final formatted text. That splits into roughly 200 ms each for ASR, LLM and network ([Wispr: technical challenges](https://wisprflow.ai/post/technical-challenges), [Baseten case study](https://www.baseten.co/resources/customers/wispr-flow/)). +- The cleanup model has to produce 100+ tokens in under 250 ms. +- The company says its ASR models are built in-house and retrained weekly. Its accuracy claims (about 10% errors against 27% for Whisper) are its own benchmark ([TechCrunch](https://techcrunch.com/?p=3069483)). + +**Why it feels better than plain dictation:** +1. **Speed.** Text lands almost as you let go of the key. ASR runs on chunks while you are still speaking, so only the last fraction is left at release. +2. **The cleanup pass.** Fillers and false starts disappear. "Backtrack" resolves self-corrections ("it was Tuesday, no, Wednesday") using context to tell a correction from a real "actually" ([docs](https://docs.wisprflow.ai/articles/5373093536-how-do-i-use-smart-formatting-and-backtrack)). +3. **Context.** It reads the active app and the text near the cursor through accessibility APIs. Mid-sentence it starts in lowercase; in chat apps it drops the final full stop ([docs](https://docs.wisprflow.ai/articles/4678293671-feature-context-awareness)). +4. **A personal dictionary.** Names you use get spelled correctly. +5. **Command mode.** Select text, say "make this shorter", and it is rewritten. + +The stated goal is to minimise edits after dictation. + +**Weak points:** +- It is cloud-only, with no offline mode. +- Privacy Mode (zero retention) is off by default for consumers. +- In 2025 it was criticised when users found the context feature sending screenshots. Training on user data became opt-in afterwards, according to secondary sources. +- In 2026 it withdrew compliance certificates tied to the Delve audit scandal and re-certified ([Wispr](https://wisprflow.ai/post/a-note-on-our-compliance-program)). + +For a book about someone's family, that history is a reason to design for local processing first. + +### What exists in open source + +**Speech models.** All the models below run on a laptop. + +| Model | Why it matters | +| --- | --- | +| **Whisper large-v3-turbo** (MIT) | The safe default: many languages, good accuracy. Needs voice-activity detection (VAD) in front of it, because it can hallucinate on silence. | +| **NVIDIA Parakeet TDT 0.6B v3** | Very fast even on CPU, European languages. Most local dictation apps now use it as their "fast" option. Check the licence; it is reported as CC-BY-4.0. | +| **Moonshine / Moonshine Streaming** | Tiny English-only streaming models (34M to 245M parameters) for low-end machines. | +| **Newer high-accuracy models** | Cohere Transcribe, IBM Granite Speech, Qwen3-ASR (all Apache-2.0). They lead the Open ASR leaderboard but are heavier. | +| **Mistral Voxtral Realtime** (Apache-2.0) | Kyutai STT and Nemotron streaming are in the same class: true streaming with tunable delay. Better suited to servers than laptops today. | + +**Runtimes:** +- **[whisper.cpp](https://github.com/ggml-org/whisper.cpp)** (MIT) + - GPU support: Metal, Core ML, Vulkan, CUDA. + - Built-in Silero VAD. + - Ships a Node addon example. +- **[sherpa-onnx](https://github.com/k2-fsa/sherpa-onnx)** (Apache-2.0) + - Node addon and WASM builds. + - Runs Parakeet, Moonshine, streaming Zipformer and Silero VAD. +- **[transcribe.cpp](https://github.com/handy-computer/transcribe.cpp)** (MIT) + - One runtime for about 20 model families, from Handy's author. + - Promising but very new. +- **[@ricky0123/vad-web](https://github.com/ricky0123/vad)** + - Silero VAD in the browser. + - Hands back 16 kHz audio for each stretch of speech. +- **Transformers.js on WebGPU** + - Runs small Whisper models in the browser with no native code. + - Native code is clearly faster for turbo-class accuracy. + +**Open-source Wispr alternatives worth reading:** + +| Project | Licence | Why look at it | +| --- | --- | --- | +| **[OpenWhispr](https://github.com/OpenWhispr/openwhispr)** | MIT | **Nearly our stack**: Electron, React 19, TypeScript, better-sqlite3. Local whisper.cpp and Parakeet (via sherpa-onnx), bring-your-own-key cloud for ASR and cleanup, llama.cpp for local cleanup. The closest reference implementation. | +| **[Handy](https://github.com/cjpais/Handy)** | MIT | Tauri and Rust, fully local, Whisper and Parakeet, Silero VAD, hold or toggle. Well loved and cleanly scoped. | +| **[Whispering (Epicenter)](https://github.com/EpicenterHQ/epicenter/tree/main/apps/whispering)** | AGPL-3.0 | **The original transcript is never changed.** Each LLM transformation is saved as a new file, and recordings and transcripts live as Markdown and audio in a git-versioned folder. This matches Quillgon's book-as-git-repo model; borrow the idea, not the code (AGPL). | +| **[VoiceInk](https://github.com/Beingpax/VoiceInk)** | GPL-3.0 | macOS. Per-app "modes", dictionary plus replacements. | +| **[VoiceTypr](https://github.com/moinulmoin/voicetypr)** | AGPL | Separate ASR and formatting providers. | +| **[nerd-dictation](https://github.com/ideasman42/nerd-dictation)** | GPL | Small Linux tools built on older stacks (Vosk). | +| **[WhisperWriter](https://github.com/savbell/whisper-writer)** | GPL | Small Linux tool on older stacks (faster-whisper). | + +**What makes the open-source tools good** is the same recipe as Wispr: +- VAD-chunked ASR that starts while you speak; +- an optional LLM cleanup pass; +- a dictionary; +- hold-to-talk. + +What they lack compared with Wispr is a fine-tuned cleanup model on a globally tuned low-latency cloud. For a writing app that gap matters less than it does for system-wide typing. Half a second more after a long memory is fine. Changing what the author said is not. + +**Hosted APIs:** ballparks, check before use. + +| API | Price | Streaming | Vocabulary | +| --- | --- | --- | --- | +| OpenAI `gpt-4o-mini-transcribe` / `gpt-4o-transcribe` | About $0.003 / $0.006 per minute | Batch; separate realtime models | Free-text prompt | +| Groq `whisper-large-v3-turbo` | About $0.04 per hour | Batch, very fast | Whisper prompt | +| Deepgram Nova-3 / Flux | About $0.005 to $0.008 per minute | Yes, low latency | Keyterms | +| AssemblyAI Universal-Streaming | About $0.15 per hour | Yes, about 300 ms | Up to 100 keyterms, updatable mid-stream | +| ElevenLabs Scribe v2 Realtime | About $0.39 per hour | Yes | Not confirmed for realtime | +| Mistral Voxtral Realtime | About $0.006 per minute | Configurable delay | Not confirmed | + +### Why dictation fits Quillgon especially well + +- **The graph is the personal dictionary.** Wispr has to learn names from your corrections. Quillgon already knows every character, place, alias and glossary term in the book, and in memoir mode every person in the author's life. + - Feed them to the ASR prompt. Whisper's prompt holds about 224 tokens, so rank names by how relevant they are to the current scene. + - Feed them to provider keyterms. + - Feed the full list to the cleanup pass. + - Then "Siobhan" and "Auntie Bríd" come out right the first time. +- **Context awareness without screenshots.** Wispr reads other apps through accessibility APIs. Quillgon *is* the app, so the cleanup pass can see: + - the scene card; + - the previous paragraph; + - whether the cursor is mid-sentence; + - the style sheet (spelling variant, quote style, em-dash rules). + + Then the cleaned text matches the book's conventions before it lands. Every word already goes through the style checks afterwards. +- **Command mode exists already.** Select text and say an instruction: this is the humaniser and reviser's span-edit flow with a voice front end. Spoken edits go through the same review and both-orders judging as typed ones. +- **The author's words are the memoir.** Keeping the raw transcript unchanged, and linking prose back to it, is the provenance a memoir needs. It is also the answer to Remento's "more of her actual words" complaint. +- **Novels benefit too.** Talking a plot through with the thinking partner is more natural out loud. Today that input is a plain `