Run: 2026-03-18-01KM07WQR6DK7BTABX34VKK35C

Run Details

Duration:
15.9s
Cost:
$0.015991
Provider:
OpenAI

Model input

System
You are an expert and award-winning novel writer in the dark Literary Fiction 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="4413" name="Silas Blackwood" aliases="Silas, Si, the Spymaster" pronouns="he/him" species="Human" storyRole="Mentor"> <eyeColor>hazel</eyeColor> <hair>grey-streaked auburn</hair> <height>6'1"</height> <age>58</age> <beard>neatly trimmed, matching his grey-streaked auburn hair</beard> <limp>slight limp in his left leg from an old knee injury</limp> <signetRing>silver signet ring, always worn on his right hand</signetRing> <description>Silas is a retired intelligence operative turned bar owner. He carries himself with quiet authority.</description> <backstory>Former MI6 field agent who retired after a botched operation in Prague left him with a permanent knee injury. He opened "The Raven's Nest" bar in Soho as a front for his network of contacts.</backstory> </character> <location id="854" name="The Raven's Nest" aliases="the Nest, Raven, Silas' bar" realm="Earth"> <signColor>distinctive green neon sign above the entrance</signColor> <secretRoom>hidden back room accessible through a bookshelf, used for clandestine meetings</secretRoom> <description>A dimly lit bar in Soho, London. The walls are covered with old maps and black-and-white photographs.</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 literary fiction genre. Two old friends who haven't seen each other in years run into each other unexpectedly at a bar. One of them has changed significantly. Through their conversation and the tension between who they were and who they've become, reveal the weight of time and unspoken regret. 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
Rory nearly dropped the tray when she heard her name. The pint glass skated half an inch over the lacquered wood, beer sloshing against her knuckles. She caught it before it toppled, set it down hard enough to make the ice in the gin and tonic jump, then looked up. At the far end of the bar, under a map of old London rail lines faded to the colour of tea, a woman lifted her hand. Not a wave. A small, cautious raising of fingers, as if she feared the gesture itself might crack. Rory stared. The woman had the same mouth she remembered, the same sharp little dent in the chin, but the rest of her belonged to someone else. Dark hair had replaced the careless blond she used to bleach in kitchen sinks. It hung in a tidy jaw-length cut that made her cheekbones look even higher. Her coat was expensive, charcoal wool with a narrow collar, and her hands rested around a glass of red wine in a way that suggested she now knew which fork to use first, and when to keep her wrists still. Maya. The name hit like a brick through glass. Rory slid the tray onto the counter and wiped her damp palm on her jeans. “You’ve got a face like a ghost,” Maya said. “You’ve got a coat like a divorce lawyer.” A flicker crossed her mouth, quick enough to miss if Rory had blinked. “Hello, Rory.” Rory walked towards her with slow, careful steps, as though the floor might remember her better than she did. The Raven’s Nest breathed around them, low voices and clinking glasses, the green neon from outside leaking a sickly strip of colour across the bottles behind the bar. Silas stood near the till with his shoulders angled towards them, pretending not to listen. Rory saw the silver signet ring flash once when he poured a whisky. Maya’s gaze stayed fixed on her face. “You’re in London,” Rory said. “So are you.” “That’s a bit rich, coming from you.” “I earned rich.” Rory gave a short laugh before she could stop it. “You always did like a dramatic entrance.” “And you always did like pretending you weren’t pleased to see me.” Rory stopped beside the stool and folded her arms. “You vanished.” “I moved.” “You vanished.” Maya took a sip of her wine. “You say that like I joined the witness protection programme.” “You answered one letter, then none. You left Cardiff with half a suitcase and a borrowed coat, and then nothing. Not even a postcard with a stupid lighthouse on it.” “I hated postcards.” “You hated most things.” “Not most. Just the dishonest ones.” Rory leaned one hip against the bar, close enough to smell the sharp red fruit of the wine and the expensive soap beneath it. There used to be cigarette smoke on Maya, old pubs and chip fat and the metallic tang from the print room at university where she spent too many nights arguing about nothing until the sky went pale. Now there was polish. Distance. Money, maybe. Or at least the shape of it. “And now?” Rory said. Maya looked past her, towards the mirror behind the bottles. “Now I’m in the habit of paying for the things I break.” Silas set a clean glass down at Rory’s elbow and moved on without a word. Rory glanced at him, then back. “You picked a strange place for a reunion.” “I didn’t pick it. I walked in because the rain was bad, and then I saw the green sign and thought, perhaps fate has a taste for the theatrical.” “You used to hate theatre.” “I used to hate homework too. People change.” “That’s one way of putting it.” Maya’s fingers tightened around the stem of the glass. A pale crescent scar crossed the side of her right index finger. Rory noticed because she had once known every mark on those hands, every bitten nail, every ink stain. “Sit down,” Maya said. Rory did, though she kept enough room between them for a third person to breathe. For a while neither spoke. The Nest’s noise filled the gap, the clatter of bottles, a laugh from the other end of the room, the muted thud of music from the speakers. A couple near the front argued softly over a bill. The bar smelled of old wood, lemon oil, damp wool drying by the radiators, and the bitter metal edge of Guinness. Maya watched the room as if she expected someone to step from behind the bookshelf and ask for her name. Rory broke first. “You look expensive.” Maya’s mouth tilted. “You look tired.” “That’s the uniform.” “You always said you’d never work in a bar.” “I work above one.” “That sounds worse.” “It is worse.” Maya let out a brief laugh, then looked at Rory’s wrist. Her eyes caught on the small crescent scar there. Something shifted in her face, not soft exactly, but unguarded. “You still have that.” “Do you want a tour?” “I remember the story.” Rory flexed her fingers against the bar. “We were ten. I fell off the wall behind your mum’s house, and you told me not to cry because the blood would make me look interesting.” “You did look interesting.” “I still think that was the cruelest comfort I ever received.” “It worked.” “It didn’t.” “It did, you just became unbearable.” Rory snorted. “You were unbearable first.” A waiter squeezed between tables with a plate of olives and a look of mild resentment. Rory reached over, snagged one, and ate it while Maya watched with the faintest smile. “You moved to London before I did,” Rory said. “You could’ve written.” “I did.” “You sent one letter.” “Two.” “One letter and a card.” Maya’s jaw tensed. “You counted.” “I counted because I waited.” The words hung between them, plain and ugly. Rory hated how small they sounded, how ordinary. Not the stuff of grand betrayal, just the kind that settled in the body and never came out. Maya set her glass down with care. “I wrote more than you got.” Rory stared at her. “What does that mean?” “It means your mother intercepted one and tore it up, and your father returned another with a note on headed paper.” Rory’s throat tightened. “My father?” “I didn’t know if you’d seen it.” Rory had not. Of course she had not. Brendan Carter would have called it protection and called it love. She could almost hear his careful, legal hand in the insult, the way he might have sliced a person apart with courtesy. “What did he say?” Rory asked. Maya’s expression hardened around the edges. “Nothing worth repeating.” Silas appeared at the end of the bar, drying a glass with a cloth. He glanced over once, then away. Rory felt the room narrow around the two of them, all those old years folding in on themselves like a trapped hand. “You were angry with me,” Rory said. Maya barked out a quiet laugh, no humour in it. “Angry?” “You disappeared. You left without saying goodbye.” “I sent you letters.” “Afterwards.” “I didn’t know how to reach you before I left.” “You knew where I lived.” “In Cardiff? With your mother watching the windows like a prison guard? With your father lecturing over dinner about ethics and opportunity and all the little traps people set for themselves? Please.” Rory’s fingers curled around the edge of the stool. “You could have come anyway.” “And what? Knocked on the door and asked if Jennifer Carter was in the mood to let me in while Brendan Carter decided whether I was an appropriate influence?” Rory looked at her for a long second. “You came to the house once.” Maya blinked. “You stood on the pavement outside and didn’t ring the bell.” Something passed over Maya’s face, quick and naked before she covered it. “You saw me.” “I saw you.” “Why didn’t you say anything?” Rory thought of the window upstairs, the thin curtain, her mother in the hallway with a book she had not read, the heavy silence in the house whenever Maya’s name entered it. She thought of being nineteen and furious and too proud to run after anyone. “I was waiting for you to come to the door,” Rory said. Maya gave a small nod, as if a verdict had been delivered and she found no room to appeal. Silas came over then, not intruding, just close enough to make his presence felt. “Everything in order?” His voice had that dry, worn edge men got when they had spent too many years listening instead of speaking. Maya looked up at him. “We’re discussing the archaeology of bad decisions.” “Ah.” His gaze shifted from one to the other. “Best of luck with that.” He moved off again. Maya watched him go. “That your boss?” “Landlord. Occasional nuisance. Bad knee, excellent eavesdropping.” “Comforting.” “Not everything in London is charming.” Maya’s attention returned to her. “You’ve built a life.” Rory almost laughed at that. Built. As if life was a brick wall and not a thing cobbled out of shifts, debt, and the floorboards above a bar that rattled when the bass got loud. “So have you,” she said. Maya’s hand slid to the inside pocket of her coat. Rory’s eyes followed the movement. Instead of a phone or wallet, Maya drew out a slim gold cigarette case. She flipped it open, then shut it again without taking one out. “You smoke now,” Rory said. “Only when I’m irritated.” “That must cost a fortune.” “It does.” A beat. “You always hated when I did that,” Maya said. “You’d wrinkle your nose like a judgemental aunt.” “Because you coughed like a Victorian orphan.” “I was dramatic.” “You were self-destructive.” Maya leaned back. “And you were always too kind to say things plainly.” Rory smiled without warmth. “I’m saying it plainly now.” Maya held her gaze. “Good. Then let me say something plain in return. I didn’t leave because I stopped caring.” Rory’s laugh came out rough. “That’s not the point.” “It is to me.” “What does that even mean?” “It means I cared enough to go before I made a mess I couldn’t scrub out.” Rory stared at her. “You think disappearing counts as care?” “Better than staying and rotting in front of you.” The words landed hard. Rory’s mouth opened, then closed. Maya looked away first, at the shelf of dark bottles, at the mirror with its cloudy edge, at the green neon glow from outside washing in through the front window. “I got out,” she said. “That’s the only clean sentence I have. I got out, and after that, everything came with fingerprints.” Rory heard it then, beneath the polish and control. A strain. Not weakness. Something more expensive, harder to replace. The kind of damage a person dressed up for and carried anyway. “You’re in trouble,” Rory said. Maya’s face did not change. Rory smiled thinly. “That look. You only wear that look when you’re lying or cornered.” “I’m neither.” “Then you’re lost.” Maya’s eyes flashed. “Do I look lost to you?” “No. You look like you’ve been running so long you forgot how to stop.” For a moment Maya said nothing. Then she reached into her coat again and slid a folded square of paper across the bar. Rory didn’t touch it at first. “What is this?” “An address.” “Of course it is.” “Don’t be clever. It doesn’t suit the mood.” Rory picked up the paper. The folds had been pressed too often. One edge carried a smear of something dark, maybe ink, maybe old blood. “It came with a name,” Maya said. “And that name is connected to a man who owes me the sort of debt that ends in concrete shoes and a polite apology.” Rory glanced up. “You came here for help.” “I came here because your landlord knows people, and because I ran out of places where my phone did not ring with threats.” “That’s not a very good reason.” “It’s the only one I have.” Rory folded the paper back shut. “Who’s after you?” Maya gave her a look that said she had already said too much. “Name first,” Rory said. Maya’s lips parted. Then closed. She tipped the rest of her wine back and set the empty glass down with a soft click. “The man at the address is called Gowan. He used to be in import, then he wasn’t. Men like that never stop importing. They just change the label.” Silas had gone still at the far end of the bar. Rory noticed and felt the muscles in her neck tighten. “Why do I know that name?” Rory asked. “Because your landlord has been paying attention. Because he heard it once, probably in a room full of other names no one sane should remember.” Rory looked towards Silas. He met her gaze, expression blank in the way that meant he had already decided something unpleasant. Then the front door opened. The bell gave a thin, bright ring. Every head in the room turned. A man stood in the doorway with rain on his shoulders and a bloodless face, one hand pressed to his side as if he had been holding himself together on the walk over. Behind him, in the glass, another shape moved fast, too fast, and the front window exploded inward in a shower of green neon, shattered glass, and the roar of a voice shouting Rory’s name.
created_at"2026-03-18T10:29:35.135Z" 3/18/2026, 10:29:35 AM
model"openai/gpt-5.4-mini-20260317"
app_id182717
external_user(null)
streamedtrue
cancelledfalse
latency438
moderation_latency(null)
generation_time15655
tokens_prompt4618
tokens_completion3640
native_tokens_prompt4131
native_tokens_completion2865
native_tokens_completion_images0
native_tokens_reasoning0
native_tokens_cached0
num_media_prompt(null)
num_input_audio_prompt(null)
num_media_completion0
num_search_results(null)
origin"https://ncbench.com/"
is_byokfalse
finish_reason"stop"
native_finish_reason"completed"
usage0.01599075
router(null)
provider_responses
0
endpoint_id"9ee065b2-3d1c-43bc-bdd7-28af3b148282"
id"resp_0e66b83d1e7c0e1b0169ba7e8f37b0819698129f2b622eeb2e"
is_byokfalse
latency198
model_permaslug"openai/gpt-5.4-mini-20260317"
provider_name"OpenAI"
status200
user_agent"langchainjs-openai/1.0.0 ((node/v24.14.0; linux; x64))"
http_referer(null)
api_type"completions"
id"gen-1773829775-1Upjcl9xCng9DlQ131QG"
upstream_id"resp_0e66b83d1e7c0e1b0169ba7e8f37b0819698129f2b622eeb2e"
total_cost0.01599075
cache_discount(null)
upstream_inference_cost0
provider_name"OpenAI"

Evaluation details

Result Evaluator Details Meta Data
100.00% Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags17
adverbTagCount0
adverbTags(empty)
dialogueSentences124
tagDensity0.137
leniency0.274
rawRatio0
effectiveRatio0
95.57% AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount2256
totalAiIsmAdverbs2
found
0
adverb"softly"
count1
1
adverb"very"
count1
highlights
0"softly"
1"very"
100.00% AI-ism character names
Target: 0 AI-default names (16 tracked, −20% each)
codexExemptions
0"Blackwood"
found(empty)
100.00% AI-ism location names
Target: 0 AI-default location names (33 tracked, −20% each)
codexExemptions(empty)
found(empty)
88.92% AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount2256
totalAiIsms5
found
0
word"flicker"
count1
1
word"silence"
count1
2
word"comforting"
count1
3
word"warmth"
count1
4
word"shattered"
count1
highlights
0"flicker"
1"silence"
2"comforting"
3"warmth"
4"shattered"
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
narrationSentences141
matches(empty)
100.00% Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount0
hedgeCount0
narrationSentences141
filterMatches(empty)
hedgeMatches(empty)
100.00% Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences248
gibberishSentences0
adjustedGibberishSentences0
longSentenceCount0
runOnParagraphCount0
giantParagraphCount0
wordSaladCount0
repetitionLoopCount0
controlTokenCount0
maxSentenceWordsSeen40
ratio0
matches(empty)
100.00% Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans0
markdownWords0
totalWords2256
ratio0
matches(empty)
100.00% Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions30
unquotedAttributions0
matches(empty)
0.00% Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions98
wordCount1396
uniqueNames8
maxNameDensity3.65
worstName"Rory"
maxWindowNameDensity6.5
worstWindowName"Rory"
discoveredNames
London1
Rory51
Raven1
Nest2
Maya35
Guinness1
Carter1
Silas6
persons
0"Rory"
1"Raven"
2"Nest"
3"Maya"
4"Carter"
5"Silas"
places
0"London"
globalScore0
windowScore0
100.00% Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences83
glossingSentenceCount0
matches(empty)
100.00% "Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches1
per1kWords0.443
wordCount2256
matches
0"not soft exactly, but unguarded"
100.00% Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount0
totalSentences248
matches(empty)
100.00% Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs170
mean13.27
std14.49
cv1.092
sampleLengths
010
140
226
318
42
593
61
78
815
99
108
1113
122
1375
147
155
163
177
183
1917
2012
219
222
232
242
2517
2630
273
284
296
3061
3114
324
3322
3415
3514
3629
375
388
396
4039
414
4215
4363
4420
453
463
476
483
499
100.00% Passive voice overuse
Target: ≤2% passive sentences
passiveCount2
totalSentences141
matches
0"been delivered"
1"been pressed"
100.00% Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount0
totalVerbs236
matches(empty)
100.00% Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount0
semicolonCount0
flaggedSentences0
totalSentences248
ratio0
matches(empty)
89.54% Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount1397
adjectiveStacks1
stackExamples
0"same sharp little dent"
adverbCount63
adverbRatio0.04509663564781675
lyAdverbCount6
lyAdverbRatio0.004294917680744453
100.00% Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences248
echoCount0
echoWords(empty)
100.00% Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences248
mean9.1
std7.84
cv0.862
sampleLengths
010
116
224
326
43
515
62
725
814
914
1040
111
128
1315
149
158
1613
172
1819
1928
2015
2113
227
235
243
257
263
2710
287
2912
309
312
322
332
347
3510
3630
373
384
396
4024
4137
424
431
442
457
464
4710
4812
4915
47.58% Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats6
diversityRatio0.24193548387096775
totalSentences248
uniqueOpeners60
100.00% Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount4
totalSentences114
matches
0"Of course she had not."
1"Instead of a phone or"
2"Then she reached into her"
3"Then the front door opened."
ratio0.035
100.00% Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount13
totalSentences114
matches
0"She caught it before it"
1"It hung in a tidy"
2"Her coat was expensive, charcoal"
3"Her eyes caught on the"
4"She could almost hear his"
5"He glanced over once, then"
6"She thought of being nineteen"
7"His voice had that dry,"
8"His gaze shifted from one"
9"He moved off again."
10"She flipped it open, then"
11"She tipped the rest of"
12"He met her gaze, expression"
ratio0.114
25.79% Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount99
totalSentences114
matches
0"Rory nearly dropped the tray"
1"The pint glass skated half"
2"She caught it before it"
3"A small, cautious raising of"
4"The woman had the same"
5"It hung in a tidy"
6"Her coat was expensive, charcoal"
7"The name hit like a"
8"Rory slid the tray onto"
9"A flicker crossed her mouth,"
10"Rory walked towards her with"
11"The Raven’s Nest breathed around"
12"Silas stood near the till"
13"Rory saw the silver signet"
14"Maya’s gaze stayed fixed on"
15"Rory gave a short laugh"
16"Rory stopped beside the stool"
17"Maya took a sip of"
18"Rory leaned one hip against"
19"There used to be cigarette"
ratio0.868
87.72% Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount2
totalSentences114
matches
0"Now there was polish."
1"As if life was a"
ratio0.018
100.00% Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences58
technicalSentenceCount3
matches
0"It hung in a tidy jaw-length cut that made her cheekbones look even higher."
1"He met her gaze, expression blank in the way that meant he had already decided something unpleasant."
2"A man stood in the doorway with rain on his shoulders and a bloodless face, one hand pressed to his side as if he had been holding himself together on the walk …"
100.00% Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags17
uselessAdditionCount0
matches(empty)
100.00% Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags16
fancyCount0
fancyTags(empty)
dialogueSentences124
tagDensity0.129
leniency0.258
rawRatio0
effectiveRatio0
91.1705%