Run: 2026-04-24-01KQ0NX5XRKZ7Z8AE6NBVQAV2F

Run Details

Duration:
1m 27s
Cost:
$0.105515
Provider:
OpenAI

Model input

System
You are an expert and award-winning novel writer in the dark Romance genre. Your readers are hooked on your stories and can't wait to read the book you have in store. <important> - MUST: Start each chapter in medias res (in the middle of action). AVOID talking about the weather, time of day, the position of the sun, or other boring stuff. - The instructions/summary are just a that, a summary. Feel free to add details, stretch sections and add interesting transitions/descriptions/fillers. - When called for it, have fast-paced action, but otherwise take things slow. This is an experience, and not for people with short attention spans. Enjoy the wine, not slurp Red Bull. - Add descriptions when transitioning places/times/etc, or when coming by new places (e.g. a corner shop, a cafe, etc.). But remember: NOT at the start or end of a chapter. - MUST: AVOID ending in internal monologue, reminiscing or waiting for the next day. A good chapter end is when we're ending right when shit hits the fan. We want to have the reader be excited for what comes next. So no reminiscing, contemplating or summarizing the day. It's popcorn time! </important>
User/Human
Take into account the following glossary of characters/locations/items/lore... when writing your response: <codex> <character id="4412" name="Aurora Carter" aliases="Rory, Laila, Aurora, Carter, Malphora" pronouns="she/her" species="Human" storyRole="Protagonist"> <eyeColor>bright blue</eyeColor> <hair>straight shoulder-length black</hair> <height>5'6"</height> <age>25</age> <scar>small crescent-shaped scar on her left wrist from a childhood accident</scar> <description>Aurora, referred to by her friends as Rory, is cool-headed, intelligent, and known for quick out-of-the-box thinking.</description> <backstory>Born in Cardiff to an Irish barrister father (Brendan Carter) and Welsh teacher mother (Jennifer Carter née Ellis), Rory reluctantly pursued Pre-Law at Cardiff University. She fled to London at the behest of her childhood friend Eva after leaving an abusive ex named Evan. By day, Rory works part-time as a delivery person for Yu-Fei Cheung's Golden Empress restaurant. She lives in a flat above Silas' bar.</backstory> </character> <character id="4415" name="Lucien Moreau" aliases="Lucien, Luc, the Frenchman" pronouns="he/him" species="Half-Demon" storyRole="Ally"> <eyeColor>heterochromatic — one amber, one black</eyeColor> <hair>slicked-back platinum blond</hair> <height>5'11"</height> <age>32</age> <cane>ivory-handled cane that conceals a thin blade</cane> <dress>tailored charcoal suits</dress> <description>An impeccably dressed fixer and information broker in London's supernatural underworld. He speaks four languages fluently.</description> <backstory>Born in Marseille to a human mother and a demon father from the realm of Avaros.</backstory> </character> <location id="858" name="Eva's Flat" aliases="Eva's place, the flat on Brick Lane" realm="Earth"> <cat>tabby cat named Ptolemy</cat> <security>three deadbolts on the front door</security> <description>A cramped one-bedroom flat above a curry house on Brick Lane, East London. Every surface is covered with books, scrolls, and research notes.</description> </location> </codex> <proseGuidelines> <styleGuide> - Write in past tense and use British English spelling and grammar - Keep a Flesch reading ease score of 60 - Respect the the Royal Order of Adjectives: The order is: opinion, size, age, shape, color, origin, material, purpose, followed by the noun itself (e.g., "a lovely little old rectangular green French silver whittling knife") - Respect the ablaut reduplication rule (e.g. tick-tock, flip-flop) - Write in active voice - Passive voice: <bad>The book was read by Sarah.</bad> - Active voice: <good>Sarah read the book.</good> - Reduce the use of passive verbs - <bad>For a moment, I was tempted to throw in the towel.</bad> - <good>For a moment, I felt tempted to throw in the towel.</good> - Avoid misplaced modifiers that can cause confusion when starting with "-ing" words: - <bad>Considering going to the store, the empty fridge reflected in Betty's eyes.</bad> - <good>Betty stared into the empty fridge. It was time to go to the store.</good> - Avoid redundant adverbs that state the obvious meaning already contained in the verb: - <bad>She whispered quietly to her mom.</bad> - <good>She whispered to her mom.</good> - Use stronger, more descriptive verbs over weak ones: - <bad>Daniel drove quickly to his mother's house.</bad> - <good>Daniel raced to his mother's house.</good> - Omit adverbs that don't add solid meaning like "extremely", "definitely", "truly", "very", "really": - <bad>The movie was extremely boring.</bad> - <good>The movie was dull.</good> - Use adverbs to replace clunky phrasing when they increase clarity: - <bad>He threw the bags into the corner in a rough manner.</bad> - <good>He threw the bags into the corner roughly.</good> - Avoid making simple thoughts needlessly complex: - <bad>After I woke up in the morning the other day, I went downstairs, turned on the stove, and made myself a very good omelet.</bad> - <good>I cooked a delicious omelet for breakfast yesterday morning.</good> - Never backload sentences by putting the main idea at the end: - <bad>I decided not to wear too many layers because it's really hot outside.</bad> - <good>It's sweltering outside today, so I dressed light.</good> - Omit nonessential details that don't contribute to the core meaning: - <bad>It doesn't matter what kind of coffee I buy, where it's from, or if it's organic or not—I need to have cream because I really don't like how the bitterness makes me feel.</bad> - <good>I add cream to my coffee because the bitter taste makes me feel unwell.</good> - Always follow the "show, don't tell" principle. For instance: - Telling: <bad>Michael was terribly afraid of the dark.</bad> - Showing: <good>Michael tensed as his mother switched off the light and left the room.</good>- Telling: <bad>I walked through the forest. It was already Fall, and I was getting cold.</bad> - Showing: <good>Dry orange leaves crunched under my feet. I pulled my coat's collar up and rubbed my hands together.</good>- Add sensory details (sight, smell, taste, sound, touch) to support the "showing" (but keep an active voice) - <bad>The room was filled with the scent of copper.</bad> - <good>Copper stung my nostrils. Blood. Recent.</good> - Use descriptive language more sporadically. While vivid descriptions are engaging, human writers often use them in bursts rather than consistently throughout a piece. When adding them, make them count! Like when we transition from one location to the next, or someone is reminiscing their past, or explaining a concept/their dream... - Avoid adverbs and clichés and overused/commonly used phrases. Aim for fresh and original descriptions. - Avoid writing all sentences in the typical subject, verb, object structure. Mix short, punchy sentences with long, descriptive ones. Drop fill words to add variety. Like so: <good>Locked. Seems like someone doesn't want his secrets exposed. I can work with that.</good> - Convey events and story through dialogue. It is important to keep a unique voice for every character and make it consistent. - Write dialogue that reveals characters' personalities, motivations, emotions, and attitudes in an interesting and compelling manner - Leave dialogue unattributed. If needed, only use "he/she said" dialogue tags and convey people's actions or face expressions through their speech. Dialogue always is standalone, never part of a paragraph. Like so: - <bad>"I don't know," Helena said nonchalantly, shrugging her shoulders</bad> - <good>"No idea" "Why not? It was your responsibility"</good> - Avoid boring and mushy dialog and descriptions, have dialogue always continue the action, never stall or include unnecessary fluff. Vary the descriptions to not repeat yourself. Avoid conversations that are just "Let's go" "yes, let's" or "Are you ready?" "Yes I'm ready". Those are not interesting. Think hard about every situtation and word of text before writing dialogue. If it doesn't serve a purpose and it's just people talking about their day, leave it. No one wants to have a normal dinner scene, something needs to happen for it to be in the story. Words are expensive to print, so make sure they count! - Put dialogue on its own paragraph to separate scene and action. - Use body language to reveal hidden feelings and implied accusations- Imply feelings and thoughts, never state them directly - NEVER use indicators of uncertainty like "trying" or "maybe" - NEVER use em-dashes, use commas for asides instead </styleGuide> <voiceGuide> Each character in the story needs to have distinct speech patterns: - Word choice preferences - Sentence length tendencies - Cultural/educational influences - Verbal tics and catchphrases Learn how each person talks and continue in their style, and use their Codex entries as reference. <examples> - <bad>"We need to go now." "Yes, we should leave." "I agree."</bad> <good>"Time's up." "Indeed, our departure is rather overdue." "Whatever, let's bounce."</good> - Power Dynamic Example: <bad> "We need to discuss the contract." "Yes, let's talk about it." "I have concerns." </bad> <good> "A word about the contract." "Of course, Mr. Blackwood. Whatever you need." "The terms seem..." A manicured nail tapped the desk. "Inadequate." "I can explain every-" "Can you?" </good> </examples> </voiceGuide> <dialogueFlow> When writing dialogue, consider that it usually has a goal in mind, which gives it a certain flow. Make dialogue sections also quite snappy in the back and forth, and don't spread the lines out as much. It's good to have details before, after, or as a chunk in-between, but we don't want to have a trail of "dialogue breadcrumbs" spread throughout a conversation. <examples> - Pattern 1 - Question/Deflection/Revelation: <good> "Where were you last night?" "Work. The usual." "Lipstick's an interesting shade for spreadsheets." </good> - Pattern 2 - Statement/Contradiction/Escalation: <good> "Your brother's clean." "Tommy doesn't touch drugs." "I'm holding his tox screen." </good> - Pattern 3 - Observation/Denial/Truth: <good> "That's a new watch." "Birthday gift." "We both know what birthdays mean in this business." </good> - Example - A Simple Coffee Order: <bad> "I'll have a coffee." "What size?" "Large, please." </bad> <good> "Black coffee.""Size?""Large. Been a long night." "That bodega shooting?" "You watch too much news." "My brother owns that store." </good> This short exchange: - Advances plot (reveals connection to crime) - Shows character (cop working late) - Creates tension (unexpected connection) - Sets up future conflict (personal stake) - Example - Dinner Scene: <bad> "Pass the salt." "Here you go." "Thanks." </bad> <good> "Salt?" "Perfect as is. Mother's recipe." "Mother always did prefer... bland things." "Unlike your first wife?" </good> - Example - Office Small Talk: <bad> "Nice weather today." "Yes, very nice." "Good for golf." </bad> <good> "Perfect golf weather." "Shame about your membership." "Temporary suspension. Board meets next week." "I know. I called the vote." </good> </examples> </dialogueFlow> <subtextGuide> - Layer dialogue with hidden meaning: <bad>"I hate you!" she yelled angrily.</bad> <good>"I made your favorite dinner." The burnt pot sat accusingly on the stove.</good> - Create tension through indirect communication: <bad>"Are you cheating on me?"</bad> <good>"Late meeting again?" The lipstick stain on his collar caught the light.</good> <examples> - Example 1 - Unspoken Betrayal: <bad> "Did you tell them about our plans?" "No, I would never betray you." "I don't believe you." </bad> <good> "Funny. Johnson mentioned our expansion plans today." "The market's full of rumors." "Mentioned the exact numbers, actually." The pen in his hand snapped. </good> - Example 2 - Failed Marriage: <bad> "You're never home anymore." "I have to work late." "I miss you." </bad> <good> "Your dinner's in the microwave. Again." "Meetings ran long." "They always do." She folded the same shirt for the third time. </good> - Example 3 - Power Struggle: <bad> "You can't fire me." "I'm the boss." "I'll fight this." </bad> <good> "That's my father's nameplate you're sitting behind." "Was." "The board meeting's on Thursday." </good> </examples> </subtextGuide> <sceneDetail> While writing dialogue makes things more fun, sometimes we need to add detail to not have it be a full on theatre piece. <examples> - Example A (Power Dynamic Scene) <good> "Where's my money?" The ledger snapped shut. "I need more time." "Interesting." He pulled out a familiar gold pocket watch. My mother's. "Time is exactly what you bargained with last month." "That was different-" "Was it?" The watch dangled between us. "Four generations of O'Reillys have wound this every night. Your mother. Your grandmother. Your great-grandmother.Shall we see who winds it next?" </good> - Example B (Action Chase) It's much better to be in the head of the character experiencing it, showing a bit of their though-process, mannerisms and personality: <good> Three rules for surviving a goblin chase in Covent Garden: Don't run straight. Don't look back. Don't let them herd you underground. I broke the first rule at Drury Lane. Rookie mistake. The fruit cart I dodged sailed into the wall behind me. Glass shattered. Someone screamed about insurance. *Tourist season's getting rough*, the scream seemed to say. Londoners adapt fast. "Oi! Market's closed!" The goblin's accent was pure East End. They're evolving. Learning. I spotted the Warren Street tube station sign ahead. *Shit.* There went rule three. </good> - Example C (Crime Scene Investigation) <good> "Greek." Davies snapped photos of the symbols. "No, wait. Reverse Greek." "Someone's been watching too many horror films." I picked up a receipt from the floor. Occult supply shop in Camden. Paid by credit card. *Amateur hour*. "Could be dangerous though," Davies said. "Remember Bristol?" "Bristol was Sanskrit. And actual cultists." I pointed to the nearest symbol. "This genius wrote 'darkness' backwards but used a Sigma instead of an S. It's summoning Instagram followers at best." "Speaking of followers..." Davies pointed to heavy foot traffic in the dust. Multiple sets. All new trainers. *Ah.* "Anyone check local uni paranormal societies?" </good> - Example D (Dialogue-heavy) <good> "Found your card in her wallet." The detective slid it across the table. Worn edges. Folded corner. Three years old at least. "Standard practice. I work missing persons." "Funny thing about missing persons.Eventually they stop being missing. Turn up in the Thames. Under motorways. In pieces." "I don't-" "You found four last year. All breathing." She opened a file. "This would've been your first dead one. If we hadn't found her first." The card felt heavier somehow. </good> </examples> </sceneDetail> <sceneOpenings> KEY RULE: Never open with more than one paragraph of description, no matter how beautiful. Description should be earned through action and dialogue. Instead of opening with setting description, open with: - A character doing something specific - A line of dialogue that raises questions - An unexpected observation - A moment of tension or conflict - Start with a hook that's 1-2 sentences maximum - Follow with a smaller paragraph that provides immediate context - Vary paragraph size from the start to create visual interest </sceneOpenings> </proseGuidelines> Write a chapter based on the following instructions: <instructions> Write a fully fleshed out scene of at least 1000 words in the romance genre. Two people who parted on complicated terms are forced together again when one shows up unannounced at the other's flat. There's history between them — attraction, hurt, and things left unsaid. Write the scene from the moment the door opens. Use the codex entries above as your world reference for characters and setting. Only include the prose of the scene without any markdown or commentary. </instructions>

Model response

AI
The third deadbolt snapped back, and Aurora found Lucien Moreau bleeding on Eva’s welcome mat. He had one hand braced against the peeling doorframe, the other clamped over his ribs, staining his white shirt a dark, spreading red beneath the open line of his tailored charcoal suit. His ivory-handled cane rested against his thigh like an elegant afterthought, as if he had not dragged himself up two flights of narrow stairs with half of London’s underworld snapping at his heels. For one second, neither of them moved. Then Ptolemy hissed from the bookcase behind her, and Lucien gave Aurora that same ruined, beautiful smile that had once made her forget every lesson she had learned about dangerous men. “Bonsoir, ma chère. You look well.” Aurora slammed the door in his face. The wood struck something solid. His boot, wedged over the threshold. “Rory.” “No.” “A concise argument. I have missed your legal training.” “You lost the right to be clever on my doorstep.” “Technically, this is Eva’s doorstep.” She shoved harder. He did not remove his foot. Blood slid over his knuckles and dripped onto the scuffed hallway floorboards. Aurora’s grip tightened around the door edge. The little crescent scar on her left wrist flashed pale beneath the sleeve of her black jumper. Lucien’s eyes flicked to it. Amber and black. Sin and night. Too observant, as always. “Move your foot.” “If I do, I may fall down the stairs. It would lack dignity.” “You should have considered dignity before showing up here looking like a stabbed groom.” “Stabbed fiancé, perhaps. I never made it to the altar.” The words landed with a soft, ugly thud between them. Aurora’s breath caught before she could stop it. His mouth tightened. Good. Let him feel the blade go in for once. Behind her, Eva’s flat looked like a war room after a scholarly riot. Books sprawled open on the sofa. Scrolls lay pinned beneath mugs, candles, a half-empty jar of instant coffee, and a cracked magnifying glass. Notes covered the walls in coloured thread and furious handwriting. The curry house below sent up waves of cumin, fried onion, and chilli oil through the floorboards, wrapping the room in heat. Ptolemy crouched on a stack of demonology texts, tail puffed into a striped bottlebrush. Aurora opened the door only as far as the chain allowed. “Who did it?” “Several people may claim credit.” “Names.” “Now? In the corridor? With Mrs Patel at number three pretending not to breathe through her letterbox?” From below came the faint squeak of a floorboard. Then silence. Aurora’s gaze slid past him to the stairwell. The narrow landing held its breath. Peeling cream paint, a dead bulb, a faded takeaway leaflet pinned under someone’s boot print. Nothing else. Lucien leaned closer. The scent of expensive cologne fought with blood and rain-damp wool. Cedar. Smoke. Iron. “They followed me as far as Whitechapel.” “Then you brought them here.” “I lost them.” “You never lose anything by accident.” His smile faded. “No. Not this.” The chain rattled as Aurora unhooked it. She grabbed his lapel and hauled him inside with more force than grace. Lucien stumbled over the threshold. His cane clattered against the floorboards. Aurora kicked the door shut and drove the bolts home, one, two, three. Lucien’s shoulder hit the wall beside a map of old London ley lines. He hissed through his teeth, low and sharp, then turned the sound into a laugh. “Still stronger than you look.” “Still bleeding on things you don’t own.” “A habit I am working to correct.” “Sit down before you correct it by dying.” He obeyed, which told her more than his wound did. Lucien Moreau did not obey. He negotiated. He charmed. He threatened with silk gloves and a pleasant tone. He made kings of cowards and corpses of fools. Yet he lowered himself onto Eva’s sagging green sofa without argument and pressed his bloodied hand harder against his side. Aurora crossed the room, snatched a clean tea towel from the back of a chair, then thought better of it and grabbed three more. Eva would murder them both if demon blood ruined her annotated copy of The Lesser Houses of Avaros, but Eva had left for the British Library two hours earlier with a satchel full of chalk and a look that promised felonies. “Jacket off.” Lucien’s brows rose. “I once imagined this scene with softer lighting.” “Keep talking and I’ll use your cane as a curtain rod.” “Cruel woman.” “Frenchman.” He flinched at that. Not at her hands, which stripped the ruined jacket from his shoulders. Not at the wound, which pulled open when she peeled his shirt away. At the old name. The one she had used before everything soured. His skin burned beneath her fingers. Half-demon heat, contained in human shape. The wound cut across his ribs in a clean diagonal line, too neat for a street knife. Dark veins spidered out from the slice, branching under his skin like ink dropped into water. Aurora’s stomach turned. “That’s not normal.” “It rarely flatters a man to hear that from a beautiful woman.” “Lucien.” His gaze lifted to hers. The amber eye gleamed under the flat’s yellow lamp. The black one reflected nothing at all. “Venom blade.” “Demon?” “Worse. Contracted.” “You were hired to be stabbed?” “I was hired to retrieve something. Someone objected to my success.” “Where is it?” “Close.” She stared at him. “Lucien.” “Closer than the men coming to reclaim it.” A knock struck the door. Not a polite tap. Not Eva forgetting her keys. One hard blow, flat-palmed, that shook the deadbolts in their brackets. Aurora froze. Lucien moved faster. One second he sagged against the sofa, pale beneath his golden skin. The next, his cane lay across his lap, ivory handle twisted loose, a thin blade glinting from its core. Ptolemy shot beneath the table. Papers fluttered in his wake. Another knock. Aurora backed towards the door, every nerve in her body lighting up with old knowledge. Evan had knocked like that near the end. Not to ask entrance. To announce he had decided the door no longer mattered. Lucien’s voice dropped. “Do not answer.” “No?” “If it wanted to fool you, it would use a familiar voice.” From the other side of the door came Eva’s voice. “Rory? Open up. I forgot my keys.” Aurora’s fingers went cold. Eva’s keys sat in the blue ceramic bowl beside the door. Aurora had heard them land there before Eva left, a bright clink under a muttered complaint about the Tube. Lucien’s blade lifted an inch. “Clever thing.” The voice came again. “Rory, I’m serious. There’s someone on the stairs.” Aurora looked at the three deadbolts. Brass. Solid. Ordinary. She looked at the line of salt Eva had laid beneath the threshold after the last séance went pear-shaped. The salt had turned grey. “Why does it sound like her?” “Because it ate something that knew her.” Aurora swallowed the bile that climbed into her throat. “What do we do?” “Nothing it asks.” The thing outside sighed, and the sound pressed itself under the door like damp. “Rory, please. It hurts.” Aurora’s hand curled. Lucien’s eyes found her face. Whatever he saw there cut through the poison haze, because his expression sharpened. “No. Look at me.” “Don’t start ordering me about.” “Then stop looking at the door as if guilt has a handle.” The words struck too close. Her head snapped towards him. “You don’t get to talk about guilt.” “Agreed.” “You don’t get to stand in my life, bleed on Eva’s carpet, and act like you have a claim.” “I have no claim.” “Good.” “I have a debt.” Her laugh came out hard. “That’s your favourite word, isn’t it? Debt. Contract. Price. You make everything sound clean as long as you can put it in a ledger.” He pushed himself upright, one hand gripping the sofa arm. Pain whitened his mouth, but his gaze held hers with a force that made the cramped flat feel smaller. “I came because they found out about you.” The room thinned around her. Outside, the thing wearing Eva’s voice dragged its nails down the door. Slow. Tick-tick-tick. Ptolemy growled beneath the table. Aurora did not blink. “Who?” “The House of Veyr.” “That means nothing to me.” “It should mean nothing to you. That was the point.” “Oh, the point. Brilliant. We’ve reached the part where you tell me being abandoned was for my benefit.” His jaw flexed. “I did not abandon you.” Aurora stepped over a fallen notebook. Her pulse beat in her throat, hot and humiliating. “You left me in a hotel room in Soho with a note and a protection sigil burned into the carpet.” “The sigil held.” “I waited six hours.” “Rory.” “I called you until your number stopped existing. I went to your office and found the windows blacked out. I asked Silas, and he looked at me like I’d put my hand in a wolf trap.” Lucien looked away first. Coward, she wanted to say. But the word stayed locked behind her teeth, because he had once kissed the inside of her wrist with such reverence that she had forgotten the scar there. He had once handed her a knife and taught her where to press it between a man’s ribs if his hands closed around her throat. He had once looked at her across Silas’ bar like every ugly thing in him had found an altar. And then he had vanished. The door rattled in its frame. “Rory,” Eva’s voice sobbed. “He’s hurting me.” Aurora’s shoulders jerked. Lucien rose too quickly. Blood pattered onto the floor. “Listen to me. The House of Veyr trades in names, bloodlines, bindings. I stole a ledger from them eighteen months ago.” “When you disappeared.” “Yes.” “What was in it?” His fingers tightened around the cane blade. “Your name.” The flat seemed to tilt. The curry smell from below turned sour in her mouth. “My name.” “Not Carter. Not the one your father gave you.” “Aurora is my name.” The dark veins near Lucien’s wound crept another inch across his torso. He noticed her noticing and adjusted his torn shirt as if modesty still mattered. “In their book, you were listed as Laila.” Aurora stared. The name had no weight, no history, yet something in her chest answered with a small, traitorous twist. “No.” “I destroyed the page.” “You expect me to thank you?” “I expect nothing.” “Good, because I’m fresh out.” A heavy thump hit the door. The top bolt shuddered. Lucien raised the blade. “It has stopped asking.” The next strike split the old wood around the lock plate. Aurora moved. Not towards the door, towards Eva’s cluttered desk. She swept aside a stack of loose papers, grabbed the black-handled letter opener Eva used to cut spell tape, and snatched a small brass tin labelled BINDING SALT, DO NOT EAT, PTOLEMY. Lucien’s mouth curved despite the sweat on his brow. “There she is.” “Don’t.” “I said nothing.” “You breathed smugly.” “An old injury.” The door buckled inward under another blow. Plaster dust sifted from the frame. Mrs Patel screamed downstairs, a muffled, distant sound. Then something snarled in a voice that no longer belonged to Eva. Aurora ripped open the brass tin. The salt inside was coarse and blue-white, cold enough to sting her fingertips. “Tell me what it is.” “A fetch.” “Like a copy?” “Like a love letter written by a butcher.” “Useful. Weakness?” “Mirrors, salt, iron, fire, insults about its mother. Results vary.” “Why would Veyr send one fetch?” “They did not.” The third bolt bent. Lucien staggered as he crossed to her. He caught himself against the desk, close enough that his breath warmed her cheek. Blood slicked his fingers around the blade. His body caged hers without touching, and that made it worse. Her skin remembered him with obscene loyalty. “Rory.” She refused to step back. “Don’t use that voice.” “Which voice?” “The one that gets you forgiven.” A line appeared between his brows. Something raw moved behind his eyes, then vanished beneath polish. “I have never earned your forgiveness.” “No.” “I would still take it if you offered.” The door cracked from top to bottom. Aurora’s heart kicked hard. Lucien’s gaze dropped to her mouth. One terrible second stretched, full of blood and old heat and the thing outside clawing through the only barrier left between them and violence. She slapped the tin of salt into his chest. “Bleed later. Work now.” His smile returned, faint and wicked. “As you wish.” The door exploded inward. Wood splinters flew across the flat. A long, grey arm thrust through the gap, fingers jointed the wrong way, nails black and wet. The fetch wore Eva’s face like a mask held up from beneath, stretched too smooth across bone that did not fit. Its mouth opened wider than any human mouth should, and Eva’s voice poured out with something else underneath it. “Laila.” Aurora hurled the binding salt. The grains struck the fetch’s face and burst into blue sparks. It shrieked, staggering back into the landing. Lucien lunged past Aurora and drove his cane blade through its palm, pinning the hand to what remained of the door. The fetch thrashed. Its fingers snapped and reformed around the steel. “Inside line,” Lucien bit out. Aurora grabbed the chalk from Eva’s desk and dropped to her knees. She drew fast across the floorboards, a crooked barrier from wall to wall, copying the half-finished ward Eva had left on a scrap of paper. Symbols. Lines. No time for beauty. Her Pre-Law tutors would have wept at the handwriting. Good. The fetch tore free. Lucien’s blade came away slick with black fluid. “Rory.” “I know.” “You are drawing a containment ward backwards.” “I know.” “That contains us.” “I said I know.” She finished the last line and slammed her bloodied left wrist into the chalk. The crescent scar split open on a sting of old pain. Her blood smeared across the symbol. The ward flared gold. The fetch hit the barrier and bounced back with a howl that shook books from the shelves. Ptolemy bolted from under the table, leapt onto the kitchen counter, and spat like a tiny exorcist. Lucien stared at the ward, then at her. “You reversed it on purpose.” “You said they wanted to reclaim something.” His face changed. Too late, Aurora understood. The fetch had not bounced away. It had smiled. From behind them, inside the flat, a second Eva unfolded itself from the ceiling, limbs long and silent, head tilted upside down above Aurora’s shoulder. Lucien moved first. The creature dropped faster. Its black nails hooked into Aurora’s jumper and yanked her backwards across the chalk line. Lucien caught her wrist. Pain tore through her scar. His poisoned hand slipped on her blood. The first fetch pressed its ruined face to the barrier, grinning through sparks. The second opened its mouth against Aurora’s ear. “Malphora,” it whispered. Every candle in Eva’s flat went out.
created_at"2026-04-24T21:21:35.171Z" 4/24/2026, 9:21:35 PM
model"openai/gpt-5.5-20260423"
app_id182717
external_user(null)
streamedtrue
cancelledfalse
latency4460
moderation_latency(null)
generation_time86411
tokens_prompt4556
tokens_completion4371
native_tokens_prompt4075
native_tokens_completion3414
native_tokens_completion_images0
native_tokens_reasoning57
native_tokens_cached3840
num_media_prompt(null)
num_input_audio_prompt(null)
num_media_completion0
num_search_results(null)
num_fetches(null)
web_search_engine(null)
origin"https://ncbench.com/"
is_byokfalse
finish_reason"stop"
native_finish_reason"completed"
usage0.105515
router(null)
provider_responses
0
endpoint_id"58e5b336-423e-430b-a2ab-8bc353f0c51b"
id"resp_0a7b5affeeebebd10169ebdedf424c819480e5cac75fc01bb2"
is_byokfalse
latency377
model_permaslug"openai/gpt-5.5-20260423"
provider_name"OpenAI"
status200
user_agent"langchainjs-openai/1.0.0 ((node/v24.14.1; linux; x64))"
http_referer(null)
request_id"req-1777065695-pHUzQCEgvCVEsNk4qWR0"
session_id(null)
api_type"completions"
id"gen-1777065695-ZDeM0ia9XhHBzzGZw4p9"
upstream_id"resp_0a7b5affeeebebd10169ebdedf424c819480e5cac75fc01bb2"
total_cost0.105515
cache_discount0.01728
upstream_inference_cost0
provider_name"OpenAI"
response_cache_source_id(null)

Evaluation details

Result Evaluator Details Meta Data
100.00% Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags4
adverbTagCount1
adverbTags
0"He had once [once]"
dialogueSentences123
tagDensity0.033
leniency0.065
rawRatio0.25
effectiveRatio0.016
96.02% AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount2512
totalAiIsmAdverbs2
found
0
adverb"quickly"
count1
1
adverb"smugly"
count1
highlights
0"quickly"
1"smugly"
80.00% AI-ism character names
Target: 0 AI-default names (17 tracked, −20% each)
codexExemptions(empty)
found
0"Patel"
100.00% AI-ism location names
Target: 0 AI-default location names (33 tracked, −20% each)
codexExemptions(empty)
found(empty)
82.09% AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount2512
totalAiIsms9
found
0
word"flicked"
count1
1
word"silence"
count1
2
word"silk"
count1
3
word"stomach"
count1
4
word"glinting"
count1
5
word"fluttered"
count1
6
word"familiar"
count1
7
word"pulse"
count1
8
word"weight"
count1
highlights
0"flicked"
1"silence"
2"silk"
3"stomach"
4"glinting"
5"fluttered"
6"familiar"
7"pulse"
8"weight"
100.00% Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches0
maxInWindow0
found(empty)
highlights(empty)
100.00% Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells0
narrationSentences209
matches(empty)
100.00% Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount1
hedgeCount1
narrationSentences209
filterMatches
0"feel"
hedgeMatches
0"seemed to"
100.00% Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences329
gibberishSentences0
adjustedGibberishSentences0
longSentenceCount0
runOnParagraphCount0
giantParagraphCount0
wordSaladCount0
repetitionLoopCount0
controlTokenCount0
repeatedSegmentCount0
maxSentenceWordsSeen41
ratio0
matches(empty)
100.00% Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans0
markdownWords0
totalWords2512
ratio0
matches(empty)
100.00% Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions23
unquotedAttributions0
matches(empty)
50.00% Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions101
wordCount1820
uniqueNames16
maxNameDensity1.76
worstName"Aurora"
maxWindowNameDensity3.5
worstWindowName"Aurora"
discoveredNames
Aurora32
Lucien25
Moreau2
Eva21
London2
Ptolemy5
Lesser1
Houses1
Avaros1
British1
Library1
Tube1
Patel1
Pre-Law1
Blood3
One3
persons
0"Aurora"
1"Lucien"
2"Moreau"
3"Eva"
4"Ptolemy"
5"Patel"
6"Blood"
7"One"
places
0"London"
1"British"
2"Library"
globalScore0.621
windowScore0.5
100.00% Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences123
glossingSentenceCount1
matches
0"looked like a war room after a scholarly"
100.00% "Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches0
per1kWords0
wordCount2512
matches(empty)
100.00% Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount0
totalSentences329
matches(empty)
100.00% Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs223
mean11.26
std13.91
cv1.235
sampleLengths
015
165
27
331
46
57
611
71
81
99
1010
115
1221
1339
143
1513
1614
1710
1810
1921
2082
2111
223
235
241
2517
2611
2731
2817
297
305
313
326
333
343
3544
3628
375
387
397
408
4110
4247
4365
442
453
468
4711
482
491
100.00% Passive voice overuse
Target: ≤2% passive sentences
passiveCount0
totalSentences209
matches(empty)
100.00% Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount0
totalVerbs306
matches(empty)
100.00% Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount0
semicolonCount0
flaggedSentences0
totalSentences329
ratio0
matches(empty)
100.00% Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount1215
adjectiveStacks0
stackExamples(empty)
adverbCount35
adverbRatio0.02880658436213992
lyAdverbCount3
lyAdverbRatio0.0024691358024691358
100.00% Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences329
echoCount0
echoWords(empty)
100.00% Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences329
mean7.64
std6.55
cv0.858
sampleLengths
015
132
233
37
431
56
67
75
86
91
101
119
1210
135
143
156
1612
177
1817
195
203
213
224
233
2413
2514
2610
2710
288
293
301
319
3213
336
3417
3510
3622
3714
3811
393
405
411
4217
439
442
458
466
4715
482
493
52.28% Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats13
diversityRatio0.3373860182370821
totalSentences329
uniqueOpeners111
70.92% Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount4
totalSentences188
matches
0"Then Ptolemy hissed from the"
1"Too observant, as always."
2"Then something snarled in a"
3"Too late, Aurora understood."
ratio0.021
100.00% Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount45
totalSentences188
matches
0"He had one hand braced"
1"His ivory-handled cane rested against"
2"His boot, wedged over the"
3"She shoved harder."
4"He did not remove his"
5"His mouth tightened."
6"His smile faded."
7"She grabbed his lapel and"
8"His cane clattered against the"
9"He hissed through his teeth,"
10"He obeyed, which told her"
11"He threatened with silk gloves"
12"He made kings of cowards"
13"He flinched at that."
14"His skin burned beneath her"
15"His gaze lifted to hers."
16"She stared at him."
17"She looked at the line"
18"Her head snapped towards him."
19"Her laugh came out hard."
ratio0.239
34.47% Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount160
totalSentences188
matches
0"The third deadbolt snapped back,"
1"He had one hand braced"
2"His ivory-handled cane rested against"
3"Aurora slammed the door in"
4"The wood struck something solid."
5"His boot, wedged over the"
6"She shoved harder."
7"He did not remove his"
8"Blood slid over his knuckles"
9"Aurora’s grip tightened around the"
10"The little crescent scar on"
11"Lucien’s eyes flicked to it."
12"Amber and black."
13"Sin and night."
14"The words landed with a"
15"Aurora’s breath caught before she"
16"His mouth tightened."
17"Books sprawled open on the"
18"Scrolls lay pinned beneath mugs,"
19"Notes covered the walls in"
ratio0.851
26.60% Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount1
totalSentences188
matches
0"To announce he had decided"
ratio0.005
81.63% Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences70
technicalSentenceCount6
matches
0"He had one hand braced against the peeling doorframe, the other clamped over his ribs, staining his white shirt a dark, spreading red beneath the open line of h…"
1"His ivory-handled cane rested against his thigh like an elegant afterthought, as if he had not dragged himself up two flights of narrow stairs with half of Lond…"
2"Then Ptolemy hissed from the bookcase behind her, and Lucien gave Aurora that same ruined, beautiful smile that had once made her forget every lesson she had le…"
3"Eva would murder them both if demon blood ruined her annotated copy of The Lesser Houses of Avaros, but Eva had left for the British Library two hours earlier w…"
4"Pain whitened his mouth, but his gaze held hers with a force that made the cramped flat feel smaller."
5"He noticed her noticing and adjusted his torn shirt as if modesty still mattered."
100.00% Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags4
uselessAdditionCount0
matches(empty)
100.00% Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags2
fancyCount2
fancyTags
0"Eva’s voice sobbed (sob)"
1"it whispered (whisper)"
dialogueSentences123
tagDensity0.016
leniency0.033
rawRatio1
effectiveRatio0.033
89.1334%