# Author > A writing room for novels, novellas and short stories: your manuscript, your cast and the strands of the story, with the state of every character at any moment and continuity checks that run on their own. Your own AI can write with you. Author is in early access. Documentation pages are available as Markdown by adding .md to their address. ## Docs - [Getting started](https://author.geenius-os.tech/docs/getting-started.md): Your first book in Author: make a book, add parts and scenes, write, add an event for a character, ask for their state and run the continuity checks. - [The manuscript and scenes](https://author.geenius-os.tech/docs/writing-scenes.md): How a book is organised in Author: parts, chapters and scenes, their status and mode, time and place, word counts, and the four places of a book. - [Cast and Geenius OS profiles](https://author.geenius-os.tech/docs/cast-and-profiles.md): How the cast works in Author: characters, places and objects made in Author or linked from Geenius OS profiles, roles, snapshots and what happens when a profile changes. - [Events and state](https://author.geenius-os.tech/docs/events-and-state.md): How Author works out a character's state: events with effects on strands, folded in story order, plus the profile, the age from the birth date and the last scene they were in. - [Strands, timeline and outlines](https://author.geenius-os.tech/docs/strands-and-timeline.md): Strands for plot, arcs and weather; the board and the timeline that zoom from year to minute; story time versus reading order; and the six outline templates. - [Continuity checks](https://author.geenius-os.tech/docs/continuity-checks.md): The eleven deterministic continuity checks of Author, what each one looks at, severity, how to dismiss an issue, and what the checks cannot see. - [Maps and travel](https://author.geenius-os.tech/docs/maps-and-travel.md): Pin places on a picture or a drawing of your world, draw routes with distances and modes, and let the travel check measure journeys against them. - [Time and calendars](https://author.geenius-os.tech/docs/time-and-calendars.md): How Author writes story time: Gregorian and relative calendars, partial dates, approximate times, durations and relative scene timing. - [Versions and diffs](https://author.geenius-os.tech/docs/versions-and-diffs.md): Save named versions of a book, compare two versions word by word, restore chosen scenes, and what a version contains. - [Beta readers](https://author.geenius-os.tech/docs/beta-readers.md): Send beta readers a link to a frozen version of your book, collect comments on the exact paragraph, reply and resolve, and revoke the link. - [Exports](https://author.geenius-os.tech/docs/exports.md): Export a book from Author as Markdown, DOCX in manuscript format, EPUB or a print PDF in 5 by 8 or 6 by 9 inch trim. - [Use Author with your AI](https://author.geenius-os.tech/docs/use-with-your-ai.md): Connect Claude, ChatGPT or Grok to your Author books through Geenius OS (Premium and Max): it reads the story state, drafts scenes and runs the continuity checks. - [books](https://author.geenius-os.tech/docs/reference/books.md): Reference for the books tool of Author: books, novellas and short stories, with every action and the arguments you can pass. - [manuscript](https://author.geenius-os.tech/docs/reference/manuscript.md): Reference for the manuscript tool of Author: the manuscript tree, with every action and the arguments you can pass. - [scenes](https://author.geenius-os.tech/docs/reference/scenes.md): Reference for the scenes tool of Author: scene text, with every action and the arguments you can pass. - [cast](https://author.geenius-os.tech/docs/reference/cast.md): Reference for the cast tool of Author: the cast, with every action and the arguments you can pass. - [strands](https://author.geenius-os.tech/docs/reference/strands.md): Reference for the strands tool of Author: strands, with every action and the arguments you can pass. - [events](https://author.geenius-os.tech/docs/reference/events.md): Reference for the events tool of Author: events, with every action and the arguments you can pass. - [story](https://author.geenius-os.tech/docs/reference/story.md): Reference for the story tool of Author: story views and checks, with every action and the arguments you can pass. - [maps](https://author.geenius-os.tech/docs/reference/maps.md): Reference for the maps tool of Author: world maps, with every action and the arguments you can pass. - [versions](https://author.geenius-os.tech/docs/reference/versions.md): Reference for the versions tool of Author: versions, with every action and the arguments you can pass. - [readers](https://author.geenius-os.tech/docs/reference/readers.md): Reference for the readers tool of Author: beta readers, with every action and the arguments you can pass. - [export](https://author.geenius-os.tech/docs/reference/export.md): Reference for the export tool of Author: export, with every action and the arguments you can pass. - [profiles](https://author.geenius-os.tech/docs/reference/profiles.md): Reference for the profiles tool: sync, list and check the Geenius OS profile snapshots used by a book's cast. - [Plans and limits](https://author.geenius-os.tech/docs/plans-and-limits.md): What Pro, Premium and Max count in Author, how Geenius OS plans include them, and why the connection for your own AI starts at Premium. - [Troubleshooting](https://author.geenius-os.tech/docs/troubleshooting.md): Fixes for common Author problems: no state for a character, a check that fires wrongly, a missing profile, PLAN_REQUIRED, a refused write and a reader link that does not open. - [Glossary](https://author.geenius-os.tech/docs/glossary.md): The words used by Author in plain language: anchored event, strand, state, effect, snapshot, version, reader link, calendar, epoch, beat and more. ## Blog - [Why long stories break in the seams, and how to check for it](https://author.geenius-os.tech/blog/why-long-stories-break-in-the-seams/): The continuity errors that survive editing, why they happen in long books, and the small set of rules that catch most of them without reading the text. - [Track what your characters know: events, not notes](https://author.geenius-os.tech/blog/track-what-your-characters-know/): A practical way to keep a secret straight across a novel: write it as events with effects, so a character's knowledge at any scene can be asked for instead of remembered. - [A timeline you can zoom from the year to the minute](https://author.geenius-os.tech/blog/a-timeline-you-can-zoom/): Why a story needs both a long view and a short one, how folded gaps and reading order help, and how to use the zoom levels in practice. - [Beta readers without the chaos: frozen versions and comments on the paragraph](https://author.geenius-os.tech/blog/beta-readers-without-the-chaos/): How to run a round of beta reading so feedback is about one version and attached to the text it is about, and how to compare rounds afterwards. - [Writing with an AI while the book keeps the facts](https://author.geenius-os.tech/blog/write-with-an-ai-while-the-book-keeps-the-facts/): How to let your own AI draft with a long book in view: read the state first, save a version, write with a revision, run the checks. And what Author deliberately does not do. - [Six outline templates compared: when to use which](https://author.geenius-os.tech/blog/six-outline-templates-compared/): Three acts, the hero's journey, Save the Cat, seven-point structure, Freytag's pyramid and kishōtenketsu: what each is good for and when it gets in the way. ## Pages - [Features](https://author.geenius-os.tech/features/): The Author features: manuscript, story engine, timeline and strands, continuity checks, cast and maps, versions, beta readers and exports, and your AI over MCP. - [Manuscript](https://author.geenius-os.tech/features/write/): Write parts, chapters and scenes in Markdown, with status, word counts, a time, a place and a point of view for each scene. Move a scene and its events move with it. - [The story engine](https://author.geenius-os.tech/features/story/): Events change characters. Author folds them in story order, so the state of any character at any scene or time is worked out, and every change names its cause. - [Timeline and strands](https://author.geenius-os.tech/features/timeline/): Strands for plot, arcs, mysteries and weather; a timeline that zooms from the year to the minute; a board of strands by chapter; six outline templates. - [Continuity checks](https://author.geenius-os.tech/features/checks/): Deterministic continuity checks: bilocation, travel too fast, the dead reappearing, age drift, knowing too early and more. Every issue names the rule and the scenes. - [Cast and maps](https://author.geenius-os.tech/features/world/): Cast from Geenius OS profiles or made in Author, places pinned on world maps with routes and distances that feed the travel check. - [Versions](https://author.geenius-os.tech/features/versions/): Freeze the book as a named version, see word-by-word differences between two versions, and restore any text. The current book is saved first. - [Readers and export](https://author.geenius-os.tech/features/readers/): Send beta readers a link to a frozen version, collect comments on the exact paragraph, and export to Markdown, DOCX, EPUB or a print PDF. - [Connect your AI](https://author.geenius-os.tech/features/mcp/): On Premium and Max, connect Claude, ChatGPT or Grok to your Author books through Geenius OS: it reads the story state, drafts scenes and runs the continuity checks. - [How it works](https://author.geenius-os.tech/how-it-works/): How Author works in four steps: set up the book, write and mark what happens, let the checks run, share a frozen version with readers. - [Use cases](https://author.geenius-os.tech/use-cases/): How novelists, series writers, writers who use an AI and editors or writing groups use Author to track, check and share long stories. - [Author for novelists](https://author.geenius-os.tech/use-cases/novelists/): How novelists use Author: strands for plot and arcs, the state of each character at any scene, and continuity checks on travel, timing and knowledge. - [Author for series and serial writers](https://author.geenius-os.tech/use-cases/series/): How series and serial writers use Author: a shared cast and maps across books, versions per episode, and reader links per release. - [Author for writers who use an AI](https://author.geenius-os.tech/use-cases/ai-writers/): How writers use their own AI with Author: it reads the outline and a character's state before drafting, writes into your manuscript with revisions, and the checks run after. - [Author for editors and writing groups](https://author.geenius-os.tech/use-cases/groups/): How editors and writing groups use Author: beta-reader links to a frozen version, comments on paragraphs, replies, and word diffs between rounds. - [Pricing](https://author.geenius-os.tech/pricing/): Author costs €9, €19 or €49 a month and is included in the matching Geenius OS plan. Connecting your own AI to your books starts at Premium. No free plan, no trial period. - [FAQ](https://author.geenius-os.tech/faq/): Answers about Author: what it is, the story engine, continuity checks, cast and Geenius OS, your own AI, readers and exports, pricing and early access. - [Changelog](https://author.geenius-os.tech/changelog/): The Author changelog: what shipped in early access, and when. This site and the product are tracked here. - [About](https://author.geenius-os.tech/about/): About Author and AVS Media: why a long story needs a memory, how the product relates to Geenius OS, and what we promise. - [Contact and feature requests](https://author.geenius-os.tech/contact/): Write to the Author team or request a feature. Feature requests help us decide what to build next. - [Request access](https://author.geenius-os.tech/request-access/): Author is invite-only in early access. Request access in the app, or join the waitlist here. - [Find your setup](https://author.geenius-os.tech/find-your-setup/): Answer a few questions and see which Author features to use first, which docs to read and which plan fits. Runs in your browser; nothing is sent. - [Search and ask](https://author.geenius-os.tech/search/): Search the Author docs, blog and FAQ, or ask a question and get an answer card with links. --- # Getting started > Your first book in Author: make a book, add parts and scenes, write, add an event for a character, ask for their state and run the continuity checks. Source: https://author.geenius-os.tech/docs/getting-started/ This walk-through takes about thirty minutes. You will make a book, write a scene, add two events and run the checks. ## Before you begin Author is invite-only in early access. You need an account, which you get by [requesting access](/request-access/) and signing in once your place is ready. If you use Geenius OS you can sign in with that account. ## 1. Make a book Open **Books** and create one. Give it a title and choose a form (short story, novella, novel, series book, screenplay or other), a language and a **calendar**: Gregorian if your story has real dates, relative if it does not ("Day 3, 14:05"). ## 2. Add the shape A book is a tree of **parts, chapters and scenes**. Add a chapter and two scenes. Each node has a title, a synopsis and a status (idea, outline, draft, revised, final). For a scene you can also set when it happens, where, whose point of view it is told from, and who is present. A scene is **present**, a **flashback**, a **dream** or a **memory**. ## 3. Write a scene Open **Write** and write the scene in Markdown. The editor autosaves, and switching to another scene in the middle of a sentence keeps your text. Mention a character with `@[Name](profile:id)` once you have a cast. ## 4. Add your cast Open **Bible**. Make a character, place, object, weather or organisation in Author, or link a profile from Geenius OS. Add two characters and two places for now. ## 5. Add two events Open **Story**. Add a **strand** (the main plot). Then add events on it that change people. For example: "Ilse travels to the island" with the effect *location = the island*, and "Ilse learns who wrote the letter" with the effect *knows + who wrote it*. Anchor each event to a scene or give it a time. Read [Events and state](/docs/events-and-state/). ## 6. Ask for a state Pick a character and a scene or a time. Author shows their state then: where they are, what they know, what has happened to them, and for each change the event that caused it. ## 7. Run the checks Run the **continuity checks**. If your two scenes put a character in different places at the same time, or an event has them learn something after a scene that uses it, you will see an issue with the rule and a scene to jump to. See [Continuity checks](/docs/continuity-checks/). ## 8. Save a version Open **Share** and save a **version**. It is the whole book at this moment, and you can go back to it. See [Versions and diffs](/docs/versions-and-diffs/). > [!TIP] > Do the first run with a short story you are not afraid of. It is quicker to see how events and checks work on ten scenes than on a novel. --- # The manuscript and scenes > How a book is organised in Author: parts, chapters and scenes, their status and mode, time and place, word counts, and the four places of a book. Source: https://author.geenius-os.tech/docs/writing-scenes/ ## The tree A book is a tree of **parts**, **chapters** and **scenes**, in reading order. Each node has a title, a synopsis and a **status**: idea, outline, draft, revised or final. Word counts are kept per scene and per book. You can move a node, and you can shift a node's scenes (and the timed events that go with them) in story time. ## A scene A scene's text is Markdown. Besides the text a scene can carry: - **When**: a start and an end or a duration, or a relative time ("the next morning", an offset from another scene). - **Where**: a place, from your cast. - **Point of view**: a character. The check for point of view warns if that character is not in the scene. - **Present**: the characters in the scene. - **Weather**: a weather entry and its state. - **Mode**: present, flashback, dream or memory. Flashbacks, dreams and memories do not count for the presence checks. - **Assertions**: facts the scene states, such as an age or a weekday, which the checks compare with the calendar and the story. ## Four places in a book | Place | What it is for | |---|---| | **Write** | The scene page, with an inspector for time, place and cast | | **Story** | The timeline, the board of strands against chapters, the outline and the events | | **Bible** | The cast and the places, as cards or a ruled list | | **Share** | Versions, readers and export | Your place is kept in the address, so a refresh or a shared link returns you to the same scene or view. ## Time Story time is text in the book's calendar: `2024-03-04 18:00`, `2024-03-04`, `1923-04`, `1923`, or `Day 3 14:05` for relative calendars. A leading `~` marks it approximate. Durations are minutes (`90`) or `1h 30m`, `2d`. See [Events and state](/docs/events-and-state/). ## Writing with care - Save a [version](/docs/versions-and-diffs/) before a big rewrite. - Mark what happens as events instead of keeping it in your head: the state and the checks work from them. --- # Cast and Geenius OS profiles > How the cast works in Author: characters, places and objects made in Author or linked from Geenius OS profiles, roles, snapshots and what happens when a profile changes. Source: https://author.geenius-os.tech/docs/cast-and-profiles/ The **cast** of a book is the characters, places, objects, weather and organisations the story uses. ## Two ways to make a cast member 1. **In Author.** Make a character, place, object, weather or organisation directly. It belongs to your workspace and is never touched by a Geenius OS sync. 2. **From Geenius OS.** Link a profile from your Geenius OS Profiles. The cast then holds a **reference** to the profile and its revision. The profile stays in the OS; you describe a person once and use them in every book. Geenius OS is optional. You can write a whole book without it. ## Roles A cast entry can have a role: protagonist, antagonist, supporting, minor, narrator, setting, object, weather or organisation, and a note. ## Snapshots Author keeps a **snapshot** of each linked profile: its revision, kind, name, summary, facets and its `located_in` and `part_of` relations. So a book opens and checks **without a network call**. - A sync reads the profiles from Geenius OS as you, with a short-lived token. It runs from **Sync from Geenius OS**, by itself when the snapshots are more than ten minutes old, and before any action that names a profile. - A newer revision in the OS shows on the cast as **changed in Geenius OS**. - A profile deleted in the OS stays as a snapshot marked **missing**, so the book still reads. - **Settings, Geenius OS** picks the workspace the profiles come from. ## Facts and story Facts about a person (their birth date, their occupation) live in the profile. What happens to them in the story lives in Author as events. The state of a character at a moment is the profile plus the events up to then. See [Events and state](/docs/events-and-state/). ## Permissions Linking uses a read-only permission for your Geenius OS profiles, granted when you sign in with Geenius OS. Author stores the permission sealed. --- # Events and state > How Author works out a character's state: events with effects on strands, folded in story order, plus the profile, the age from the birth date and the last scene they were in. Source: https://author.geenius-os.tech/docs/events-and-state/ Author does not remember where your characters are. It **works it out**, from the events you mark. ## Events An event sits on a **strand**. It has a title and a **kind**: beat, plot point, development, reveal, travel, injury, death, birth, relationship change, learns, weather or custom. It happens either at a time (a start, and an end or duration) or **anchored to a scene** (it happens at the scene's end). It can be about one character, and it has an **importance** from 1 to 3. An event has **effects** on characters. An effect names a character, an operation (add, replace or remove) and a path: | Path | Meaning | |---|---| | `location` | A place profile id | | `injuries`, `knows`, `possessions` | Lists: add or remove an item | | `mood`, `status` | A value | | `alive` | `false` means dead | | `appearance.` | Something about how they look | | `relations.` | What they are to someone, such as "engaged" | | `facets..` | A change to a facet of the profile | A travel event can name a mode: walk, horse, bicycle, car, train, boat or plane. ## State The state of a character at a moment is built from four layers: 1. **Base**: the profile as it is (who they are). 2. **Derived**: age from the birth date, alive from the birth and death dates. 3. **Overlay**: every event up to that moment, folded in story order. 4. **Presence**: the last scene they were in before that moment sets their location, unless a later event moved them. The result has `alive`, `age`, `location`, `injuries`, `knows`, `possessions`, `mood`, `status`, `appearance`, `relations`, `facets` and anything else an effect named. It is pure: the same story and the same time always give the same state, and **each change says which event, strand and scene made it**. ## Asking You ask for a state at a time, or at a scene (its start or its end). You can also ask what **changed** for a character between two moments, and why. ```json title="State and difference (through Geenius OS, Premium and Max)" { "tool": "story", "action": "state", "args": { "book_id": "", "profile_id": "", "scene_id": "" } } { "tool": "story", "action": "state_diff", "args": { "book_id": "", "profile_id": "", "from_scene_id": "", "to_scene_id": "" } } ``` ## What it does not do Author does not read your sentences to find events. If Ilse learns a secret in scene 7, you add an event "Ilse learns the secret" with the effect `knows + the secret`. That is the price, and the benefit: the answer is exact and the checks can be exact too. ## Habits that help - Add events as you finish a scene, not months later. - Keep one strand per thread you care about. - Use anchored events for what happens in a scene, so moving the scene moves the event. --- # Strands, timeline and outlines > Strands for plot, arcs and weather; the board and the timeline that zoom from year to minute; story time versus reading order; and the six outline templates. Source: https://author.geenius-os.tech/docs/strands-and-timeline/ ## Strands A strand is a thread through the book. Kinds: plot, subplot, character arc, relationship, theme, setting, weather, mystery, structure and custom. A strand can follow a character (an arc), be a place (a setting) or be the weather. You can give a strand a colour and a group, hide it, lock it and reorder strands. ## Story views Open **Story**. It opens on the view you chose, and you can switch: - **Timeline**: clips per strand over time, with a lane for the checks. - **Board**: strands against chapters. A thread that goes quiet for many chapters stands out. - **Outline**: the structure strand and its beats. - **Events**: a list, written as sentences ("Ilse is now at Terschelling") or as a table. ## The timeline The timeline has **five zoom levels**: year, month, day, hour and minute. Empty stretches of story time are **folded** into break marks, and tiny clips merge into counted clusters when you zoom out. The axis is **story time** or **reading order** (by words). Dragging an event moves it in story time; a ripple option moves the later events of its strand too. ## Outline templates Apply a template and Author adds a **structure strand** with one beat event per beat, each with a target position in the book. Six templates: three-act structure, the hero's journey, Save the Cat, seven-point structure, Freytag's pyramid and kishōtenketsu. Assign a beat to a scene and the check *beat off its mark* tells you when it is far from its target. That check is information, not an error. ## Tips - Start with the main plot and one arc. Add strands when you need them. - Use the board before a rewrite: it shows imbalance faster than the timeline. --- # Continuity checks > The eleven deterministic continuity checks of Author, what each one looks at, severity, how to dismiss an issue, and what the checks cannot see. Source: https://author.geenius-os.tech/docs/continuity-checks/ The checks are **rules over your data**. No model runs. Every issue names the rule, the scenes, events and characters that break it, and a scene to jump to. | Code | Rule | Looks at | Severity | |---|---|---|---| | C1 | In two places at once | A character in two overlapping scenes at different places | error | | C2 | Travelled too fast | From A to B faster than the route allows | warning | | C3 | The dead reappear | In a present-mode scene after their death | error | | C4 | Before they existed | In a scene before their birth or founding | error | | C5 | Age drift | A scene says an age the birth date contradicts | warning | | C6 | Date and weather | A stated weekday against the calendar; two weathers at one place and time | warning | | C7 | Order of time | Relative times in a circle; an anchored event timed outside its scene | error | | C8 | Point of view not present | The point-of-view character is not in the scene | warning | | C9 | Knows too early | A scene says they know something before they learn it | warning | | C10 | One object, two places | A unique object in two places at once | error | | C12 | Beat off its mark | A structure beat far from its target | info | Flashback, dream and memory scenes are exempt from the presence rules. ## Using the checks - **Run** them from the Story view or ask your AI to run them. The result is stored. - **Open** an issue to jump to the scene. - **Dismiss** an issue that is intended. Dismissals are remembered by fingerprint, and undo brings an issue back. ## What they need The checks work on what you entered. For travel (C2) they need places and routes with distances on a [map](/docs/maps-and-travel/). For knowledge (C9) they need events of the kind *learns* or effects on `knows`. For age (C5) they need birth dates in the profile. ## What they cannot see - A fact that is only in your prose and nowhere in your data. - Style, grammar or whether a scene works. - Statements about age in prose are **low confidence** and show as information only. --- # Maps and travel > Pin places on a picture or a drawing of your world, draw routes with distances and modes, and let the travel check measure journeys against them. Source: https://author.geenius-os.tech/docs/maps-and-travel/ A **map** holds places (profiles of kind place or city) as pins on a picture you upload or a drawing you make, and **routes** between pinned places. ## Make a map Open the maps of a book and make one. Give it a name, optionally a picture, a size in map units and how many kilometres one unit is. A map can belong to one book or be shared. ## Pin and route - **Pin** a place at a position. A pin has a label. - **Route** two pinned places. A route has a distance (measured on the map, or given in kilometres), a **mode** (walk, horse, bicycle, car, train, boat or plane) and a label. - **Draw** strokes on the map to sketch coastlines and borders. ## Why it matters The travel check (**C2**) compares how long a character takes between two scenes with the distance and the mode of the route. Without routes it cannot judge a journey. Where a place is `located_in` another in the profiles (an inn in its town), it counts as part of it. ## Plans World maps are part of every plan. --- # Time and calendars > How Author writes story time: Gregorian and relative calendars, partial dates, approximate times, durations and relative scene timing. Source: https://author.geenius-os.tech/docs/time-and-calendars/ Every book has a **calendar**: Gregorian or relative. ## Writing a time Story time is text in the book's calendar. | You write | Means | |---|---| | `2024-03-04 18:00` | A minute on a date | | `2024-03-04` | A day | | `1923-04` | A month | | `1923` | A year | | `Day 3 14:05` | In a relative calendar, the third day at 14:05 | | `~1923` | Approximately 1923 | An **epoch** says where minute zero is, or the date of Day 1 in a relative calendar. ## Durations A duration is minutes (`90`) or text such as `1h 30m` or `2d`. ## Relative timing of scenes A scene can be timed relative to another scene: an offset (minutes or `1d`) from its start or end, an optional time of day (`08:00`) and a length. That is how "the next morning" is written. If you move the scene it is relative to, this one moves with it. ## Precision The timeline works at five precisions: year, month, day, hour and minute. A time with less precision, such as a year, is placed with what that precision allows. ## Order of time The check *order of time* (C7) finds relative times that form a circle, and anchored events timed outside their scene. --- # Versions and diffs > Save named versions of a book, compare two versions word by word, restore chosen scenes, and what a version contains. Source: https://author.geenius-os.tech/docs/versions-and-diffs/ A **version** freezes the book at one moment: the tree, every scene's text and the revision of each cast profile. ## Save Save a version with a name and a note, for example "before the rewrite of act two". You can have many. ## Compare Compare two versions, or a version with **now**, scene by scene and word by word. Runs are marked as unchanged, added or removed. Paragraphs are matched first and changed paragraphs are compared by words, so a one-word change reads as one word. For very long scenes with a huge number of edits the diff falls back to "all out, all in", which is coarse but correct. ## Restore Bring a version's text back, all scenes or chosen ones. A scene deleted since is made again. **The current book is saved first**, so a restore is never destructive. ## Pinned profiles A version records which revision of each profile it used, and tells you which profiles changed since. ## Delete You can delete a version you no longer need. > [!TIP] > Save a version before you let anyone, including your AI, rewrite your prose. --- # Beta readers > Send beta readers a link to a frozen version of your book, collect comments on the exact paragraph, reply and resolve, and revoke the link. Source: https://author.geenius-os.tech/docs/beta-readers/ A **reader link** opens a frozen version of the book without signing in. ## Make a link Choose a version (or let Author save one now), the chapters to include (all by default), a mode (**comment** or **read**), a label for who it is for, and optionally a number of days until it expires. The address looks like `/r/` and is **shown once**. Copy it then. ## What a reader does A reader selects words and comments, adding their name. They do not need an account, and they see only the frozen version and only the chapters you chose. ## What you do - Read the comments as **threads**, with the quote, the reader's name and the scene. - **Reply**: the reader sees your reply under their comment. - **Resolve** a comment, or reopen it. - **Delete** a comment. - **Revoke** the link when the round is over. ## Working with versions Make a new link for each round, then compare the versions behind them in [Versions and diffs](/docs/versions-and-diffs/). ## Plans Beta readers are part of every plan. --- # Exports > Export a book from Author as Markdown, DOCX in manuscript format, EPUB or a print PDF in 5 by 8 or 6 by 9 inch trim. Source: https://author.geenius-os.tech/docs/exports/ Export from **Share**, or ask for it over the door. | Format | What you get | |---|---| | Markdown | Plain text with your structure | | DOCX | Standard manuscript format | | EPUB | For e-readers | | PDF | A printed book: trim 5 × 8 inch or 6 × 9 inch, with chapters starting on a right-hand page if you choose | You can export the book as it is now or **a saved version**, with or without scene titles. The result is a file and a download link. > [!NOTE] > The print PDF is typeset for printing. It is not a cover or a full print-on-demand package. --- # Use Author with your AI > Connect Claude, ChatGPT or Grok to your Author books through Geenius OS (Premium and Max): it reads the story state, drafts scenes and runs the continuity checks. Source: https://author.geenius-os.tech/docs/use-with-your-ai/ Author has no built-in AI. Your own AI, Claude, ChatGPT or Grok, works on your books through Geenius OS: it reads the outline, asks for a character's state before drafting a scene, writes scenes into your manuscript and runs the continuity checks afterwards. > [!HONEST] > The agent door is part of **Premium and Max**. On Pro, or on a Geenius OS Pro plan, calls are refused with `PLAN_REQUIRED` naming Premium. During early access Author is invite-only, and it must be added to your Geenius OS workspace. ## Connect in three steps 1. In Geenius OS, an owner or admin adds Author to the workspace (Apps, Add to this workspace). Each workspace keeps its own apps. 2. In your AI, add the Geenius OS connector and sign in with your Geenius OS account. In Claude: Settings, Connectors, Add custom connector. In ChatGPT or Grok: add a remote MCP server. Geenius OS shows you the address. 3. Ask your AI to use Author. It now has a tool called `geenius_author`. ## How a call looks The tool takes a `tool` (the area), an `action` (the verb) and `args`. ```json title="A character's state at a scene" { "tool": "story", "action": "state", "args": { "book_id": "", "profile_id": "", "scene_id": "" } } ``` Every call acts in the Author workspace of your Geenius OS workspace, after the plan check. ## Your first ask ```text title="A first ask" Use Geenius OS and my Author account. Open my book, read the outline and the state of the main character at the end of chapter 8, then draft scene 9.1 as Markdown with every event it implies, save a version first, and run the continuity checks afterwards. Tell me what they found. ``` ## The tools ::mcp-tools Ask for the actions of an area with `action: "help"`, and for one action's rules and arguments with `action: "help"` and `of`. ## Habits that protect your book - **Save a version first.** Before your AI rewrites prose a person wrote, `versions` `save` a named version. `restore` brings it back. - **Read before you write.** To replace text written in the app, read the scene and pass its revision as `expect_rev`, so a newer edit is never overwritten. - **Facts live in profiles, story changes live here.** Characters, places and weather are Geenius OS profiles or your own cast entries; what happens to them is an event in Author. - **Readers' comments are yours.** Ask your AI to summarise them; do not let it resolve them for you unless you say so. ## What your AI cannot do It cannot make Author write: there is no model inside. A beta-reader link shows its address once, when it is made. And on Pro it cannot connect at all. --- # books > Reference for the books tool of Author: books, novellas and short stories, with every action and the arguments you can pass. Source: https://author.geenius-os.tech/docs/reference/books/ The books of this workspace: list, read, create, update and delete. Call it as `geenius_author(tool: "books", action: "", args: {...})` through Geenius OS. ## Actions | Action | What it does | |---|---| | `list` | The books of this workspace; search filters by title. Rules: search?. | | `get` | One book: its words, scenes, status mix and open issues. Rules: book_id: the book, words, scenes, status mix, open issues. | | `create` | A new book. | | `update` | Change a book's details. Rules: book_id + any of those (those of book_create). | | `delete` | Delete a book (its maker or an owner/admin). Rules: book_id. | ## Arguments we have checked ### books · list The books of this workspace; search filters by title. Rules: search?. - `search` ### books · get One book: its words, scenes, status mix and open issues. Rules: book_id: the book, words, scenes, status mix, open issues. - `book_id` (required) ### books · create A new book. - `calendar` - `collection_id` - `epoch` - `form` - `language` - `pen_name` - `pov_mode` - `status` - `subtitle` - `synopsis` - `target_words` - `tense` - `title` (required) ### books · update Change a book's details. Rules: book_id + any of those (those of book_create). - `book_id` (required) - `calendar` - `collection_id` - `epoch` - `form` - `language` - `pen_name` - `pov_mode` - `status` - `subtitle` - `synopsis` - `target_words` - `tense` - `title` ### books · delete Delete a book (its maker or an owner/admin). Rules: book_id. - `book_id` (required) > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "list"`. The server answers from its own definitions, so that answer is always current. --- # manuscript > Reference for the manuscript tool of Author: the manuscript tree, with every action and the arguments you can pass. Source: https://author.geenius-os.tech/docs/reference/manuscript/ The tree of a book: parts, chapters and scenes, with times, places, point of view and cast per scene. Call it as `geenius_author(tool: "manuscript", action: "", args: {...})` through Geenius OS. ## Actions | Action | What it does | |---|---| | `tree` | The book's tree: parts › chapters › scenes in reading order. Rules: book_id: the tree in reading order (parts › chapters › scenes) with numbering, status, words, each scene's resolved time, place, POV and cast. | | `add` | Add a part, chapter or scene. | | `update` | Change a part, chapter or scene. Rules: node_id + any of those (null clears) (those of node_add). | | `move` | Move a part, chapter or scene in the tree. Rules: node_id, parent_id?, index? \| after?. | | `remove` | Remove a part, chapter or scene with what is under it. Rules: node_id (with what is under it). | | `shift` | Move a node's scenes (and their timed events) in story time. Rules: node_id, delta: move its scenes (and their timed events) in story time. | ## Arguments we have checked ### manuscript · tree The book's tree: parts › chapters › scenes in reading order. Rules: book_id: the tree in reading order (parts › chapters › scenes) with numbering, status, words, each scene's resolved time, place, POV and cast. - `book_id` (required) ### manuscript · add Add a part, chapter or scene. - `after` - `assertions` - `book_id` (required) - `duration` - `end` - `index` - `kind` (required) - `mode` - `parent_id` - `place_id` - `pov_id` - `present` - `relative` - `start` - `status` - `synopsis` - `title` - `weather_id` - `weather_state` ### manuscript · update Change a part, chapter or scene. Rules: node_id + any of those (null clears) (those of node_add). - `assertions` - `duration` - `end` - `mode` - `node_id` (required) - `place_id` - `pov_id` - `present` - `relative` - `start` - `status` - `synopsis` - `title` - `weather_id` - `weather_state` ### manuscript · move Move a part, chapter or scene in the tree. Rules: node_id, parent_id?, index? | after?. - `after` - `index` - `node_id` (required) - `parent_id` ### manuscript · remove Remove a part, chapter or scene with what is under it. Rules: node_id (with what is under it). - `node_id` (required) ### manuscript · shift Move a node's scenes (and their timed events) in story time. Rules: node_id, delta: move its scenes (and their timed events) in story time. - `delta` (required) - `node_id` (required) > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "tree"`. The server answers from its own definitions, so that answer is always current. --- # scenes > Reference for the scenes tool of Author: scene text, with every action and the arguments you can pass. Source: https://author.geenius-os.tech/docs/reference/scenes/ A scene's text, in Markdown. A profile is mentioned as `@[Name](profile:)`. Call it as `geenius_author(tool: "scenes", action: "", args: {...})` through Geenius OS. ## Actions | Action | What it does | |---|---| | `read` | A scene's text, its rev and who wrote it last. Rules: scene_id, format? markdown\|plain: the text, rev, who wrote it last. | | `write` | Replace a scene's text (Markdown). Rules: scene_id, markdown, expect_rev? (REQUIRED to replace text a person wrote in the app — read it first). | | `append` | Add Markdown to the end of a scene. Rules: scene_id, markdown. | | `patch` | Find and replace inside a scene's text. Rules: scene_id, find, replace, all?, expect_rev?. | ## Arguments we have checked ### scenes · read A scene's text, its rev and who wrote it last. Rules: scene_id, format? markdown|plain: the text, rev, who wrote it last. - `format` - `scene_id` (required) ### scenes · write Replace a scene's text (Markdown). Rules: scene_id, markdown, expect_rev? (REQUIRED to replace text a person wrote in the app — read it first). - `expect_rev` - `markdown` (required) - `scene_id` (required) ### scenes · append Add Markdown to the end of a scene. Rules: scene_id, markdown. - `expect_rev` - `markdown` (required) - `scene_id` (required) ### scenes · patch Find and replace inside a scene's text. Rules: scene_id, find, replace, all?, expect_rev?. - `all` - `expect_rev` - `find` (required) - `replace` (required) - `scene_id` (required) > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "read"`. The server answers from its own definitions, so that answer is always current. > [!WARNING] > To replace text a person wrote in the app, read the scene first and pass its revision as expect_rev, so you never overwrite a newer edit. --- # cast > Reference for the cast tool of Author: the cast, with every action and the arguments you can pass. Source: https://author.geenius-os.tech/docs/reference/cast/ The cast: Geenius OS profiles linked to the book as references. The profile stays in the OS; Author reads a synced snapshot. Call it as `geenius_author(tool: "cast", action: "", args: {...})` through Geenius OS. ## Actions | Action | What it does | |---|---| | `list` | The book's cast: linked Geenius OS profiles. Rules: book_id. | | `link` | Link a Geenius OS profile to the book's cast. Rules: book_id, profile_id, role? (protagonist\|antagonist\|supporting\|minor\|narrator\|setting\|object\|weather\|organisation), note?. | | `unlink` | Unlink a profile from the cast. Rules: cast_id, or book_id + profile_id. | ## Arguments we have checked ### cast · list The book's cast: linked Geenius OS profiles. Rules: book_id. - `book_id` (required) ### cast · link Link a Geenius OS profile to the book's cast. Rules: book_id, profile_id, role? (protagonist|antagonist|supporting|minor|narrator|setting|object|weather|organisation), note?. - `book_id` (required) - `note` - `profile_id` (required) - `role` ### cast · unlink Unlink a profile from the cast. Rules: cast_id, or book_id + profile_id. - `book_id` - `cast_id` - `profile_id` > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "list"`. The server answers from its own definitions, so that answer is always current. --- # strands > Reference for the strands tool of Author: strands, with every action and the arguments you can pass. Source: https://author.geenius-os.tech/docs/reference/strands/ Strands woven through the book: plot, subplot, character arc, relationship, theme, setting, weather, mystery, structure or custom. Call it as `geenius_author(tool: "strands", action: "", args: {...})` through Geenius OS. ## Actions | Action | What it does | |---|---| | `list` | The book's strands. Rules: book_id. | | `add` | A new strand (plot, arc, setting, weather, structure…). | | `update` | Change a strand. Rules: strand_id + any of those, hidden?, locked? (those of strand_add). | | `reorder` | Put the book's strands in a new order. Rules: book_id, ids. | | `remove` | Remove a strand with its events. Rules: strand_id (with its events). | ## Arguments we have checked ### strands · list The book's strands. Rules: book_id. - `book_id` (required) ### strands · add A new strand (plot, arc, setting, weather, structure…). - `book_id` (required) - `color` - `group` - `hidden` - `index` - `kind` - `locked` - `profile_id` - `title` (required) ### strands · update Change a strand. Rules: strand_id + any of those, hidden?, locked? (those of strand_add). - `color` - `group` - `hidden` - `kind` - `locked` - `profile_id` - `strand_id` (required) - `title` ### strands · reorder Put the book's strands in a new order. Rules: book_id, ids. - `book_id` (required) - `ids` ### strands · remove Remove a strand with its events. Rules: strand_id (with its events). - `strand_id` (required) > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "list"`. The server answers from its own definitions, so that answer is always current. --- # events > Reference for the events tool of Author: events, with every action and the arguments you can pass. Source: https://author.geenius-os.tech/docs/reference/events/ Events on strands, with effects on a character's state. Call it as `geenius_author(tool: "events", action: "", args: {...})` through Geenius OS. ## Actions | Action | What it does | |---|---| | `list` | Events in story order, filtered by time, strand, scene or profile. Rules: book_id, from?, to?, strand_ids?, scene_id?, profile_id?, limit?: in story order. | | `add` | A new event on a strand, with its effects on characters. | | `update` | Change an event. Rules: event_id + any of those (those of event_add). | | `move` | Move an event in story time. Rules: event_id, start \| delta, ripple? (later events on its strand move too). | | `remove` | Remove an event. Rules: event_id. | ## Arguments we have checked ### events · list Events in story order, filtered by time, strand, scene or profile. Rules: book_id, from?, to?, strand_ids?, scene_id?, profile_id?, limit?: in story order. - `book_id` (required) - `from` - `limit` - `profile_id` - `scene_id` - `strand_ids` - `to` ### events · add A new event on a strand, with its effects on characters. - `book_id` (required) - `duration` - `effects` - `end` - `importance` - `kind` - `note` - `profile_id` - `scene_id` - `start` - `strand_id` - `title` - `travel_mode` ### events · update Change an event. Rules: event_id + any of those (those of event_add). - `duration` - `effects` - `end` - `event_id` (required) - `importance` - `kind` - `note` - `profile_id` - `scene_id` - `start` - `strand_id` - `title` - `travel_mode` ### events · move Move an event in story time. Rules: event_id, start | delta, ripple? (later events on its strand move too). - `delta` - `event_id` (required) - `ripple` - `start` ### events · remove Remove an event. Rules: event_id. - `event_id` (required) > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "list"`. The server answers from its own definitions, so that answer is always current. > [!NOTE] > Effects change a character's state through a path: location (a place profile id), injuries, knows and possessions (lists to add to or remove from), mood, status, alive (false means dead), appearance., relations. and facets... Event kinds: beat, plot_point, development, reveal, travel, injury, death, birth, relationship_change, learns, weather, custom. --- # story > Reference for the story tool of Author: story views and checks, with every action and the arguments you can pass. Source: https://author.geenius-os.tech/docs/reference/story/ Computed views: a character's state at any moment, what changed and why, the timeline, the continuity checks and the outline templates. Call it as `geenius_author(tool: "story", action: "", args: {...})` through Geenius OS. ## Actions | Action | What it does | |---|---| | `state` | A character's state at a moment, each change with its cause. Rules: book_id, profile_id, time \| scene_id (+ when? start\|end, default end): the character's state then — alive, age, location, injuries, knows, possessions, mood, relations — each change with the event, strand and scene that made it. | | `state_diff` | What changed for a character between two moments, and why. Rules: book_id, profile_id, from\|from_scene_id, to\|to_scene_id: what changed and why. | | `timeline` | What the timeline shows at a zoom: clips per strand, folded gaps, the checks lane. Rules: book_id, from?, to?, axis? story\|reading, width? (px, 1200), strand_ids?: what the timeline shows at that zoom — clips per strand (merged into counted clusters when zoomed out), break marks for folded gaps, the checks lane. | | `checks` | Run every continuity check now and store the result. Rules: book_id | | `issues` | The book's open continuity issues (all? includes dismissed). Rules: book_id, all?. | | `issue_dismiss` | Dismiss a continuity issue (undo brings it back). Rules: book_id, fingerprint \| issue_id, undo?. | | `outlines` | The outline templates and their beats. | | `outline_apply` | Apply an outline template: a structure strand with one beat event per beat. Rules: book_id, template: a structure strand with one beat event per beat; then geenius_author(tool:\"events\", action:\"update\", event_id, scene_id) assigns a beat to a scene and checks report beats far from their mark. | ## Arguments we have checked ### story · state A character's state at a moment, each change with its cause. Rules: book_id, profile_id, time | scene_id (+ when? start|end, default end): the character's state then — alive, age, location, injuries, knows, possessions, mood, relations — each change with the event, strand and scene that made it. - `book_id` (required) - `profile_id` (required) - `scene_id` - `start` - `time` - `when` ### story · state_diff What changed for a character between two moments, and why. Rules: book_id, profile_id, from|from_scene_id, to|to_scene_id: what changed and why. - `book_id` (required) - `from` - `from_scene_id` - `profile_id` (required) - `to` - `to_scene_id` ### story · timeline What the timeline shows at a zoom: clips per strand, folded gaps, the checks lane. Rules: book_id, from?, to?, axis? story|reading, width? (px, 1200), strand_ids?: what the timeline shows at that zoom — clips per strand (merged into counted clusters when zoomed out), break marks for folded gaps, the checks lane. - `axis` - `book_id` (required) - `from` - `strand_ids` - `to` - `width` ### story · checks Run every continuity check now and store the result. Rules: book_id - `book_id` (required) ### story · issues The book's open continuity issues (all? includes dismissed). Rules: book_id, all?. - `all` - `book_id` (required) ### story · issue_dismiss Dismiss a continuity issue (undo brings it back). Rules: book_id, fingerprint | issue_id, undo?. - `book_id` (required) - `fingerprint` - `issue_id` - `undo` ### story · outline_apply Apply an outline template: a structure strand with one beat event per beat. Rules: book_id, template: a structure strand with one beat event per beat; then geenius_author(tool:\"events\", action:\"update\", event_id, scene_id) assigns a beat to a scene and checks report beats far from their mark. - `book_id` (required) - `template` > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "state"`. The server answers from its own definitions, so that answer is always current. --- # maps > Reference for the maps tool of Author: world maps, with every action and the arguments you can pass. Source: https://author.geenius-os.tech/docs/reference/maps/ World maps: places pinned on a picture or a drawing, with routes and distances. Routes give the travel check its distances. Call it as `geenius_author(tool: "maps", action: "", args: {...})` through Geenius OS. ## Actions | Action | What it does | |---|---| | `list` | The world maps (of one book, or all). Rules: book_id?. | | `get` | One map: its pins, routes and drawing. Rules: map_id. | | `create` | A new world map. Rules: name, book_id?, image_file_id? (a picture uploaded in the Author app), width?, height? (map units), km_per_unit?. | | `update` | Change a map. Rules: map_id + any of those (those of map_create). | | `delete` | Delete a map. Rules: map_id. | | `pin` | Pin a place profile on a map. Rules: map_id, profile_id (a place or city), x, y, label?. | | `unpin` | Take a place's pin off a map. Rules: map_id, profile_id. | | `route` | A route between two pinned places, with its distance. Rules: map_id, from_id, to_id (pinned profiles), km? (measured on the map when omitted), mode?, label?. | | `unroute` | Remove a route. Rules: map_id, route_id. | | `draw` | Replace a map's drawing with strokes. Rules: map_id, strokes [{points:[x0,y0,x1,y1,…], color?, width?, fill?}] (replaces the drawing). | ## Arguments we have checked ### maps · list The world maps (of one book, or all). Rules: book_id?. - `book_id` ### maps · get One map: its pins, routes and drawing. Rules: map_id. - `map_id` (required) ### maps · create A new world map. Rules: name, book_id?, image_file_id? (a picture uploaded in the Author app), width?, height? (map units), km_per_unit?. - `book_id` - `height` - `image_file_id` - `km_per_unit` - `name` (required) - `width` ### maps · update Change a map. Rules: map_id + any of those (those of map_create). - `book_id` - `height` - `image_file_id` - `km_per_unit` - `map_id` (required) - `name` - `width` ### maps · delete Delete a map. Rules: map_id. - `map_id` (required) ### maps · pin Pin a place profile on a map. Rules: map_id, profile_id (a place or city), x, y, label?. - `label` - `map_id` (required) - `profile_id` (required) - `x` (required) - `y` (required) ### maps · unpin Take a place's pin off a map. Rules: map_id, profile_id. - `map_id` (required) - `profile_id` (required) ### maps · route A route between two pinned places, with its distance. Rules: map_id, from_id, to_id (pinned profiles), km? (measured on the map when omitted), mode?, label?. - `from_id` (required) - `km` - `label` - `map_id` (required) - `mode` - `to_id` (required) ### maps · unroute Remove a route. Rules: map_id, route_id. - `map_id` (required) - `route_id` (required) ### maps · draw Replace a map's drawing with strokes. Rules: map_id, strokes [{points:[x0,y0,x1,y1,…], color?, width?, fill?}] (replaces the drawing). - `map_id` (required) - `strokes` (required) > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "list"`. The server answers from its own definitions, so that answer is always current. --- # versions > Reference for the versions tool of Author: versions, with every action and the arguments you can pass. Source: https://author.geenius-os.tech/docs/reference/versions/ Named versions with word diffs and restore. Save a version before you rewrite a person's prose. Call it as `geenius_author(tool: "versions", action: "", args: {...})` through Geenius OS. ## Actions | Action | What it does | |---|---| | `list` | The book's saved versions, newest first. Rules: book_id: newest first, each with how many scenes changed since. | | `get` | One saved version: its tree, words and pinned profile revisions. Rules: version_id: its tree, words per scene, the pinned profile revisions and which profiles changed since. | | `save` | Freeze the book now as a named version. Rules: book_id, name?, note?: freeze the book now (tree, every scene's text, the revision of each cast profile). | | `diff` | Word-by-word differences between two versions (or now). Rules: book_id, from (a version_id or \"now\"), to? (default \"now\"), scene_id?: scene by scene, word by word (runs of eq/add/del). | | `restore` | Bring a version's text back (the current book is saved first). Rules: version_id, scene_ids?: bring that text back (a scene deleted since is made again); the book as it was is saved first as an automatic version. | | `delete` | Delete a saved version. Rules: version_id. | ## Arguments we have checked ### versions · list The book's saved versions, newest first. Rules: book_id: newest first, each with how many scenes changed since. - `book_id` (required) ### versions · get One saved version: its tree, words and pinned profile revisions. Rules: version_id: its tree, words per scene, the pinned profile revisions and which profiles changed since. - `version_id` (required) ### versions · save Freeze the book now as a named version. Rules: book_id, name?, note?: freeze the book now (tree, every scene's text, the revision of each cast profile). - `book_id` (required) - `name` - `note` - `title` ### versions · diff Word-by-word differences between two versions (or now). Rules: book_id, from (a version_id or \"now\"), to? (default \"now\"), scene_id?: scene by scene, word by word (runs of eq/add/del). - `book_id` (required) - `from` - `scene_id` - `to` - `version_id` ### versions · restore Bring a version's text back (the current book is saved first). Rules: version_id, scene_ids?: bring that text back (a scene deleted since is made again); the book as it was is saved first as an automatic version. - `scene_ids` - `version_id` (required) ### versions · delete Delete a saved version. Rules: version_id. - `version_id` (required) > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "list"`. The server answers from its own definitions, so that answer is always current. > [!NOTE] > Restoring brings a version's text back and saves the current book first. --- # readers > Reference for the readers tool of Author: beta readers, with every action and the arguments you can pass. Source: https://author.geenius-os.tech/docs/reference/readers/ Beta-reader links (a frozen version) and their comments. Call it as `geenius_author(tool: "readers", action: "", args: {...})` through Geenius OS. ## Actions | Action | What it does | |---|---| | `share` | A beta-reader link to a frozen version (the address is shown once). | | `shares` | The book's beta-reader links. Rules: book_id. | | `revoke` | Revoke a beta-reader link. Rules: share_id. | | `comments` | Reader comments as threads. Rules: book_id, scene_id?, status? open\|resolved\|all, share_id?: reader comments as threads (quote, name, scene). | | `reply` | Reply to a reader's comment (the reader sees it). Rules: comment_id, body (the reader sees it under their comment). | | `resolve` | Resolve a reader comment (undo reopens it). Rules: comment_id, undo?. | | `delete_comment` | Delete a reader comment. Rules: comment_id. | ## Arguments we have checked ### readers · share A beta-reader link to a frozen version (the address is shown once). - `book_id` (required) - `chapter_ids` - `days` - `label` - `mode` - `version_id` ### readers · shares The book's beta-reader links. Rules: book_id. - `book_id` (required) ### readers · revoke Revoke a beta-reader link. Rules: share_id. - `share_id` (required) ### readers · comments Reader comments as threads. Rules: book_id, scene_id?, status? open|resolved|all, share_id?: reader comments as threads (quote, name, scene). - `book_id` (required) - `scene_id` - `share_id` - `status` ### readers · reply Reply to a reader's comment (the reader sees it). Rules: comment_id, body (the reader sees it under their comment). - `body` (required) - `comment_id` (required) ### readers · resolve Resolve a reader comment (undo reopens it). Rules: comment_id, undo?. - `comment_id` (required) - `undo` ### readers · delete_comment Delete a reader comment. Rules: comment_id. - `comment_id` (required) > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "share"`. The server answers from its own definitions, so that answer is always current. > [!NOTE] > Summarise readers' comments for the author. Do not resolve them on the author's behalf unless asked. --- # export > Reference for the export tool of Author: export, with every action and the arguments you can pass. Source: https://author.geenius-os.tech/docs/reference/export/ The book as Markdown, DOCX (manuscript format), EPUB or a printed book's PDF, with a download link. Call it as `geenius_author(tool: "export", action: "", args: {...})` through Geenius OS. ## Actions | Action | What it does | |---|---| | `run` | The book as a file (md, docx, epub or pdf) and a download link. Rules: book_id, format: md \| docx (standard manuscript format) \| epub \| pdf (a printed book: trim? 5x8\|6x9, chapter_recto?; Source Serif 4 embedded), version_id? (export a saved version), scene_titles?: the file and a download link. | ## Arguments we have checked ### export · run The book as a file (md, docx, epub or pdf) and a download link. Rules: book_id, format: md | docx (standard manuscript format) | epub | pdf (a printed book: trim? 5x8|6x9, chapter_recto?; Source Serif 4 embedded), version_id? (export a saved version), scene_titles?: the file and a download link. - `book_id` (required) - `chapter_recto` - `format` - `scene_titles` - `trim` - `version_id` > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "run"`. The server answers from its own definitions, so that answer is always current. --- # profiles > Reference for the profiles tool: sync, list and check the Geenius OS profile snapshots used by a book's cast. Source: https://author.geenius-os.tech/docs/reference/profiles/ Author keeps a snapshot of each linked Geenius OS profile, so a book opens and checks without a network call. This tool brings the snapshots up to date and lists them. Call it as `geenius_author(tool: "profiles", action: "", args: {...})` through Geenius OS. ## Actions | Action | What it does | |---|---| | `sync` | Read the profiles from Geenius OS now (it also runs by itself when the snapshots are more than ten minutes old, and before any action that names a profile). | | `list` | The snapshots in this workspace: id, rev, kind, name and summary. Optionally filtered by kind. | | `status` | When the last sync ran and whether it failed. | > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "sync"`. The server answers from its own definitions, so that answer is always current. --- # Plans and limits > What Pro, Premium and Max count in Author, how Geenius OS plans include them, and why the connection for your own AI starts at Premium. Source: https://author.geenius-os.tech/docs/plans-and-limits/ Author has three plans and no free plan. Payments are in test mode during early access, so nothing is charged yet. | | Pro | Premium | Max | |---|---|---|---| | Price per month | €9 | €19 | €49 | | Books, novellas, short stories | 25 | 50 | Unlimited | | The whole writing room | Yes | Yes | Yes | | Your own AI connected (MCP agent door) | No | Yes | Yes | | A built-in AI | None | None | None | ## What "the whole writing room" means Manuscript, cast, strands, events, the timeline, continuity checks, versions with diffs, world maps, beta-reader links, exports, and the sync of profiles from Geenius OS. All of them work on every plan, and without any AI. ## The connection for your own AI On Premium and Max, your own AI can work on your books through Geenius OS. On Pro, a Geenius OS Pro plan or no plan, the door refuses with `PLAN_REQUIRED` and names Premium. ## When you reach a limit Creating one more book than your plan allows is refused and the app shows a sheet with the plans. Nothing is deleted. ## Geenius OS A Geenius OS plan includes the matching Author plan: OS Pro includes Pro, OS Premium includes Premium and OS Max includes Max. You sign in with the same account. ## Trials There is no trial period. A promo key from us can grant a 7, 14 or 30 day trial. Enter it on the Plan page. --- # Troubleshooting > Fixes for common Author problems: no state for a character, a check that fires wrongly, a missing profile, PLAN_REQUIRED, a refused write and a reader link that does not open. Source: https://author.geenius-os.tech/docs/troubleshooting/ ## A character has no state, or the wrong one State comes from events and the profile. Check that the character has events with effects (location, knows, and so on), that the events are timed or anchored to a scene, and that you asked for the right time. Remember that the last scene a character was in sets their location unless a later event moved them. ## A check fires, but the story is right If the scene is a flashback, dream or memory, set its mode: those scenes are exempt from the presence rules. If the issue is intended, dismiss it (undo brings it back). If the travel check disagrees with you, look at the route and mode on your map. ## The travel check says nothing It needs places pinned on a map with routes. Without routes it cannot judge a journey. ## A cast member shows "changed in Geenius OS" The profile has a newer revision in the OS. Sync, read the change and decide whether your events still fit. ## A cast member shows "missing" The profile was deleted in Geenius OS. The snapshot keeps the book readable. Link another profile or make the character in Author. ## My AI gets PLAN_REQUIRED The door for your own AI is part of Premium and Max. A Geenius OS Pro plan includes Author Pro only. See [Plans and limits](/docs/plans-and-limits/). ## My AI says NOT_IN_WORKSPACE Author is not added to your Geenius OS workspace. An owner or admin adds it on the Apps page. ## A write was refused because the scene changed To replace text a person wrote in the app, the write must pass the revision it read. Read the scene again and write again with the new revision. ## A reader link does not open It may have expired, been revoked, or the address was copied wrongly. The address is shown only once when you make it, so make a new link. ## Still stuck? [Write to us](/contact/) with what you did and what you saw. --- # Glossary > The words used by Author in plain language: anchored event, strand, state, effect, snapshot, version, reader link, calendar, epoch, beat and more. Source: https://author.geenius-os.tech/docs/glossary/ **Anchored event.** An event tied to a scene: it happens at the scene's end, and moves with the scene. **Assertion.** A fact a scene states, such as an age or a weekday, which the checks compare with the story. **Bible.** The place in a book where the cast and the places live. **Beat.** One step of an outline template, with a target position in the book. **Calendar.** Gregorian or relative: how the book writes time. **Cast.** The characters, places, objects, weather and organisations of a book. **Check.** A deterministic continuity rule. There are eleven. **Effect.** What an event does to a character: add, replace or remove a value at a path. **Epoch.** Minute zero of the book, or the date of Day 1 in a relative calendar. **Event.** Something that happens on a strand and changes people. **Mode.** Whether a scene is present, a flashback, a dream or a memory. **Outline template.** A ready-made structure that adds a structure strand with a beat per beat. **Reader link.** A link to a frozen version where readers can comment. **Reference.** A cast entry that points at a Geenius OS profile and its revision. **Revision.** A counter that changes when a scene or a profile changes. A write passes it so it cannot overwrite a newer edit. **Scene.** The smallest part of the manuscript: Markdown text with a time, a place and a cast. **Snapshot.** Author's copy of a Geenius OS profile, so a book opens and checks offline. **State.** What is true of a character at a moment, worked out from the profile and the events. **Status.** How far a node is: idea, outline, draft, revised or final. **Strand.** A thread through the book: plot, arc, mystery, weather and so on. **Version.** The whole book frozen at one moment, with a name. ---