NC Bench
Overview
About
Tests
Categories
Models
Vendors
Compare
Run: 2026-10-27-01M5YHN3G4PKX8RSRCN5PFH5CY
Run Details
Model:
Kimi K3.1 Pro (Reasoning, Max)
Test:
Bad Writing Habits
Scenario:
Horror: alone in an eerie place at night
Duration:
9m 43s
Cost:
$0.154346
Provider:
Moonshot AI
Evaluation summary
Score
Evaluator
Details Link
100.00%
Adverbs in dialogue tags
(details)
88.42%
AI-ism adverb frequency
(details)
100.00%
AI-ism character names
(details)
100.00%
AI-ism location names
(details)
59.47%
AI-ism word frequency
(details)
100.00%
Cliché density
(details)
100.00%
Emotion telling (show vs. tell)
(details)
100.00%
Filter word density
(details)
100.00%
Gibberish response detection
(details)
100.00%
Markdown formatting overuse
(details)
100.00%
Missing dialogue indicators (quotation marks)
(details)
50.00%
Name drop frequency
(details)
100.00%
Narrator intent-glossing
(details)
100.00%
"Not X but Y" pattern overuse
(details)
100.00%
Overuse of "that" (subordinate clause padding)
(details)
100.00%
Paragraph length variance
(details)
99.38%
Passive voice overuse
(details)
100.00%
Past progressive (was/were + -ing) overuse
(details)
100.00%
Em-dash & semicolon overuse
(details)
96.12%
Purple prose (modifier overload)
(details)
100.00%
Repeated phrase echo
(details)
100.00%
Sentence length variance
(details)
41.54%
Sentence opener variety
(details)
100.00%
Adverb-first sentence starts
(details)
97.92%
Pronoun-first sentence starts
(details)
86.62%
Subject-first sentence starts
(details)
32.47%
Subordinate conjunction sentence starts
(details)
100.00%
Technical jargon density
(details)
100.00%
Useless dialogue additions
(details)
100.00%
Dialogue tag variety (said vs. fancy)
(details)
91.7314%
Overall
Model input
System
You are an expert novelist with a gift for vivid, immersive prose. You write in tight third-person limited point of view with a strong narrative voice. Your prose is clean, precise, and engaging — you favor strong verbs, concrete details, and natural-sounding dialogue. You will be given a story bible (codex) containing canonical details about characters, locations, items, and lore. Use these details to ground your writing in the established world. Stay consistent with the codex. Write only the prose of the scene. Do not include titles, chapter headings, markdown formatting, or any commentary before or after the scene.
User/Human
<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> <location id="861" name="The Fae Grove" aliases="Isolde's grove, Richmond grove, the Grove" realm="Earth (Fae-touched)"> <parkLocation>Richmond Park</parkLocation> <standingStones>ancient oak standing stones mark the boundary</standingStones> <timeBehavior>time moves differently — an hour inside can be minutes or days outside</timeBehavior> <flora>wildflowers bloom year-round</flora> <description>A hidden clearing that exists in a pocket between Earth and the Fae realm.</description> </location> <item id="2001" name="Heartstone Pendant" aliases="the pendant, Heartstone" type="Artifact" origin="Dymas"> <gemstoneColor>deep crimson</gemstoneColor> <chainMaterial>silver chain</chainMaterial> <size>roughly the size of a thumbnail</size> <behavior>pulses faintly with warmth when near a Hel portal</behavior> <glow>faint inner glow</glow> <description>Given to Aurora by an unknown benefactor.</description> </item> </codex> Write a fully fleshed out scene of at least 1000 words in the horror genre. A character is alone in a strange, isolated place at night. They came here for a reason, but something feels off from the moment they arrive. The wrongness builds slowly — sounds that shouldn't be there, things that move at the edge of vision, a growing certainty that they are not alone. Build tension through restraint, not through gore. Use the codex entries above as your world reference for the character and setting. Only include the prose of the scene without any markdown or commentary.
Model response
Messages
Meta
AI
Eva’s message was nine seconds
long, and Aurora had listened to it so often on the ride over that she knew exactly where the hesitation came. “Rory? Don’t ring me, okay? Richmond—the old oaks. Please come. Come alone.”
Then a small click, and
nothing. Aurora had rung anyway. Six times.
She had sent texts, then
the sort of increasingly terse texts that
were supposed
to disguise fear as irritation. None had
been answered
.
Before entering the park, she
had forwarded Eva’s dropped pin to Silas with the time she expected to be back. Alone did not have to mean unaccounted for.
Eva had talked her through
leaving Cardiff and waited at Victoria until her bus arrived, however late it was.
Aurora could manage a dark
park for her.
She chained her bicycle to
the railings and left the last lamppost behind.
Richmond held the city at
a distance, but it did not erase it. Beyond the wet grass and black bracken, tyres hissed along a road she could no longer see.
Somewhere overhead, a plane dragged
its slow thunder toward Heathrow.
A deer coughed once among
the trees, a raw, startling sound, and went quiet. Aurora kept her torch low.
Frost silvered the grass, and
her breath steamed in the beam. According to her phone, Eva’s pin lay fifty metres ahead, in a blank patch of green crossed by no path. At twelve minutes past midnight, she pushed through a bank of bracken and found the clearing. The cold lifted first. Then the sound went. No road. No aircraft. Not even the tick of cooling branches.
Her next step was indecently
loud.
Wildflowers covered the grass: white
stars, violet bells, small yellow cups open to the dark.
Frost silvered their stems without
touching the petals. Ancient oaks stood around the clearing, their trunks broad and knotted, and between them rose a broken ring of standing stones.
Several leaned as though the
ground beneath them had softened long ago and then thought better of it. Aurora stopped at the boundary.
The place had the attentive
stillness of a room into which someone had just stopped speaking. “Eva?” Her voice did not carry.
It seemed to fall a
few feet in front of her. She should go back. The thought arrived cleanly, without panic.
She could return to the
road, call Silas, call the police, do any of the sensible things she would have advised someone else to do an hour ago.
Then her torch caught a
scrap of turquoise beneath the nearest stone. Eva’s keys lay in the grass. Three keys, a brass shop tag, and the little plastic dinosaur she had carried since university. One of its painted eyes had worn away. Aurora had bought it for her from a museum gift shop as a joke, and Eva had refused every offer to replace it. Aurora crossed the boundary. The grass inside was dry.
She crouched and picked up
the keys, closing her fist around them before the dinosaur’s legs
could tremble visibly
. “Eva,”
she called, louder now
. “I’m here.” Beneath her jumper, the pendant gave a small, distinct
pulse
of
warmth
. Aurora straightened. The stone had arrived in an unmarked box three weeks earlier: deep crimson, no larger than her thumbnail, hanging from a silver chain. No note. No name she could trace.
She had told herself that
wearing it was practical, that she was less likely to lose it while she worked out who had sent it. That explanation had grown thinner each week. She drew it out. A faint red light moved in its
depths
, too dim to colour her fingers. A second
pulse
passed through the gem. Not heat from her body.
She had just taken it
away from her skin. Aurora let it hang over her palm and looked toward the oaks. “Very funny,”
she said quietly, though she
did not know whom she
was offering
the remark to. Something crushed grass behind her. She turned the torch. The beam travelled over a stone, a black trunk, a drift of white petals. Nothing else. A deer, she thought. A fox. The park was full of living things that did not require an explanation.
She took three steps toward
the split oak where she had entered.
Her boots whispered through the
grass. A fourth step sounded to her left. Aurora stopped.
She waited until she had
counted five, then backed up one pace. After a moment, something else backed up one pace. The sound was soft, almost courteous.
She swept the torch left
again. At the farthest edge of its reach, a pale shape withdrew behind an oak. It did not dart away.
She had simply looked too
late. Aurora lowered the beam so it would not blind her to everything beyond it. Her thumb found the little crescent scar on her left wrist and pressed hard enough to hurt. “Eva?” she said. “Rory.” Relief weakened her knees before fear could stop it. The voice came from the far side of the clearing. Eva’s voice. Not similar. Not close. Hers. “Where are you?” “Here.” Aurora took one step toward it and stopped. Eva frightened would be talking too
quickly
. Eva angry would be swearing. Eva injured might manage only her name, but there would be breath around it, effort, some human damage to the sound. This voice had the calm of a recording played in another room. “Are you hurt?” “You came alone.” The keys bit into Aurora’s palm. “Yes,” she said. “I did.” A pause. “Good.” Aurora looked at the dark between the stones. “When I came to London,” she said, “you met me at Victoria. What did you bring?” Silence. She could hear her own
pulse
now. The pendant hung motionless against her jumper, its glow hidden by her hand. “Eva? What did you bring?” “A sausage roll,” the voice said. “And a blue folder.” That was right. Exactly right. Eva had bought her food and brought a folder of room listings, all of them beyond Aurora’s budget. You can fall apart after you’ve eaten, she had said, and Aurora had nearly done both at once. For one
treacherous
second, she almost walked toward the voice. Then it spoke again. “A sausage roll. And a blue folder.” The same words. The same breath before folder. The same small lift at the end, although it was not a question. Aurora
began to
back toward the split oak. “Don’t go,” Eva said. She kept moving. “Rory, please.” The plea was
perfect
. That was the worst of it. It caught the place where Eva’s voice usually roughened when she
was trying
not to cry, and for an instant Aurora saw her alone somewhere beyond the torchlight, hurt and waiting while her friend walked away. She stopped despite herself. The clearing waited with her. Aurora closed her eyes briefly. When she opened them, she did not look toward the voice. “Not until you come into the light,” she said. Nothing answered. She turned and walked straight for the split oak, counting her paces. Thirty should have brought her to the bracken. At forty, the trunk remained exactly where it had been. At fifty, her breathing had
quickened
and the distance had not changed. At sixty-one, she stopped. The split oak was no longer in front of her. It stood to her left, beyond three standing stones, as though the boundary had rotated while she
was looking
at it. Aurora checked her phone. It still said 12:06. It had said 12:06 when she found the keys. She had counted seconds, walked sixty-one paces, held several wholly unreasonable conversations with
the dark, and apparently no time had passed
at all. She put the phone away before its screen could offer her another opinion. At the edge of her vision, someone stood beside the nearest stone. She did not turn this time. She kept her eyes on the grass and shifted only enough to see what her peripheral vision would allow: a narrow darkness, upright, with no detail she could hold. When she looked directly, there was only the stone. When she looked away, it was beside her again. Aurora’s fear ceased to be a rising thing. It settled, cold and heavy, and became a condition she could work inside. She had come in somewhere. The clearing could mislead her eyes, but it had not prevented her from entering. There was a boundary. There was an outside. The road still existed, whatever this place had done with its sound. She would not run toward a voice. She would not blunder between the trees and let something choose her direction for her. That was when she noticed the line. It ran down the face of the central stone, black and fine as thread. At first she took it for a crack.
Then she moved two steps
to the right, and the line remained suspended in the air just in front of the stone. Her torchbeam touched it and stopped. There was no depth to the blackness, and somehow that was worse than depth. Her eyes kept trying to find a surface within it, an edge, anything that might tell her how far away it was. Cold breathed from the narrow opening, carrying no scent of soil or leaves. The pendant
pulsed
against her chest. Once. Again. Aurora unfastened the chain with numb fingers and held the stone out on her palm. Its crimson glow brightened, faded, brightened. Her own heart
was racing
. The pendant kept a slower measure. She moved her hand toward the black line. The pulses
quickened
. She drew it back. They slowed. Aurora stared at the stone in her hand. Whatever it was, whoever had sent it, she had been wrong to think of it as jewellery. Wrong, perhaps, to think it had ever
been meant
for her at all. Behind her, grass bent beneath a foot. Not an
echo
this time. Not keeping pace. Close. Aurora closed her fist around the pendant. She
could feel
each warm beat through her fingers. The next footstep stopped just beyond the reach of her shadow. She did not turn. “Rory,” Eva said behind her,
softly
and with enormous relief. “There you are.” From the narrow darkness in front of her, so faintly that it might have travelled a
very
long way, Eva’s voice answered. “Don’t turn around.”
created_at
"2026-10-27T11:24:14.733Z"
10/27/2026, 11:24:14 AM
model
"moonshotai/kimi-k3.1-pro-20261023"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
2317
moderation_latency
(null)
generation_time
583148
tokens_prompt
792
tokens_completion
17165
native_tokens_prompt
839
native_tokens_completion
15405
native_tokens_completion_images
(null)
native_tokens_reasoning
13181
native_tokens_cached
768
num_media_prompt
(null)
num_input_audio_prompt
(null)
num_media_completion
0
num_search_results
(null)
num_fetches
(null)
web_search_engine
(null)
origin
"https://ncbench.com/"
is_byok
false
finish_reason
"stop"
native_finish_reason
"stop"
service_tier
(null)
usage
0.1543456
router
(null)
user_agent
"langchainjs-openai/1.0.0 ((node/v24.22.1; linux; x64))"
http_referer
(null)
request_id
"req-1793100254-Jc2XLrOBZiMu5yKWg0OT"
session_id
(null)
preset_id
(null)
api_type
"completions"
id
"gen-1793100254-l6rhdXIUEfTZlJOdFB6S"
upstream_id
"chatcmpl-6ae089df59bad9cc673a7d5b"
provider_responses
0
endpoint_id
"a3fafaac-f097-4ef1-86b3-842854dad5c6"
id
"chatcmpl-6ae089df59bad9cc673a7d5b"
is_byok
false
latency
2317
model_permaslug
"moonshotai/kimi-k3.1-pro-20261023"
provider_name
"Moonshot AI"
status
200
total_cost
0.1543456
cache_discount
0.0013824
upstream_inference_cost
0
provider_name
"Moonshot AI"
response_cache_source_id
(null)
data_region
"global"
workspace_id
"97e315e5-d303-487d-83c1-83180e8a13d4"
Evaluation details
Result
Evaluator
Details
Meta Data
100.00%
Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags
9
adverbTagCount
1
adverbTags
0
"she said quietly [quietly]"
dialogueSentences
25
tagDensity
0.36
leniency
0.72
rawRatio
0.111
effectiveRatio
0.08
88.42%
AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount
1727
totalAiIsmAdverbs
4
found
0
adverb
"very"
count
2
1
adverb
"quickly"
count
1
2
adverb
"softly"
count
1
highlights
0
"very"
1
"quickly"
2
"softly"
100.00%
AI-ism character names
Target: 0 AI-default names (17 tracked, −20% each)
codexExemptions
(empty)
found
(empty)
100.00%
AI-ism location names
Target: 0 AI-default location names (33 tracked, −20% each)
codexExemptions
(empty)
found
(empty)
59.47%
AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount
1727
totalAiIsms
14
found
0
word
"pulse"
count
3
1
word
"warmth"
count
1
2
word
"depths"
count
1
3
word
"silence"
count
1
4
word
"treacherous"
count
1
5
word
"perfect"
count
1
6
word
"quickened"
count
2
7
word
"pulsed"
count
1
8
word
"racing"
count
1
9
word
"echo"
count
1
10
word
"could feel"
count
1
highlights
0
"pulse"
1
"warmth"
2
"depths"
3
"silence"
4
"treacherous"
5
"perfect"
6
"quickened"
7
"pulsed"
8
"racing"
9
"echo"
10
"could feel"
100.00%
Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches
0
maxInWindow
0
found
(empty)
highlights
(empty)
100.00%
Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells
0
narrationSentences
179
matches
(empty)
100.00%
Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount
0
hedgeCount
2
narrationSentences
179
filterMatches
(empty)
hedgeMatches
0
"seemed to"
1
"began to"
100.00%
Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences
195
gibberishSentences
0
adjustedGibberishSentences
0
longSentenceCount
0
runOnParagraphCount
0
giantParagraphCount
0
wordSaladCount
0
repetitionLoopCount
0
controlTokenCount
0
repeatedSegmentCount
0
maxSentenceWordsSeen
36
ratio
0
matches
(empty)
100.00%
Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans
0
markdownWords
0
totalWords
1726
ratio
0
matches
(empty)
100.00%
Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions
12
unquotedAttributions
0
matches
(empty)
50.00%
Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions
46
wordCount
1641
uniqueNames
8
maxNameDensity
1.46
worstName
"Aurora"
maxWindowNameDensity
3.5
worstWindowName
"Aurora"
discoveredNames
Aurora
24
Eva
15
Silas
2
Cardiff
1
Victoria
1
Heathrow
1
Relief
1
Silence
1
persons
0
"Aurora"
1
"Eva"
2
"Silas"
3
"Victoria"
4
"Relief"
places
0
"Cardiff"
1
"Heathrow"
globalScore
0.769
windowScore
0.5
100.00%
Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences
113
glossingSentenceCount
2
matches
0
"could tremble visibly"
1
"the dark, and apparently no time had passed"
100.00%
"Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches
0
per1kWords
0
wordCount
1726
matches
(empty)
100.00%
Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount
0
totalSentences
195
matches
(empty)
100.00%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
107
mean
16.13
std
15.53
cv
0.963
sampleLengths
0
26
1
12
2
6
3
57
4
27
5
13
6
54
7
36
8
16
9
4
10
4
11
17
12
62
13
5
14
16
15
1
16
16
17
38
18
12
19
53
20
4
21
24
22
7
23
12
24
2
25
62
26
18
27
7
28
14
29
29
30
5
31
20
32
19
33
12
34
6
35
7
36
14
37
9
38
6
39
31
40
31
41
3
42
1
43
9
44
17
45
3
46
1
47
8
48
45
49
3
99.38%
Passive voice overuse
Target: ≤2% passive sentences
passiveCount
3
totalSentences
179
matches
0
"were supposed"
1
"been answered"
2
"been meant"
100.00%
Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount
4
totalVerbs
280
matches
0
"was offering"
1
"was trying"
2
"was looking"
3
"was racing"
100.00%
Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount
0
semicolonCount
0
flaggedSentences
0
totalSentences
195
ratio
0
matches
(empty)
96.12%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
1643
adjectiveStacks
0
stackExamples
(empty)
adverbCount
73
adverbRatio
0.044430919050517347
lyAdverbCount
22
lyAdverbRatio
0.013390139987827145
100.00%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
195
echoCount
0
echoWords
(empty)
100.00%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
195
mean
8.85
std
6.51
cv
0.735
sampleLengths
0
26
1
12
2
6
3
4
4
2
5
19
6
4
7
20
8
8
9
19
10
8
11
13
12
13
13
17
14
10
15
14
16
5
17
11
18
20
19
16
20
4
21
4
22
2
23
2
24
7
25
6
26
15
27
8
28
21
29
18
30
5
31
16
32
1
33
5
34
11
35
4
36
6
37
28
38
12
39
6
40
16
41
8
42
23
43
4
44
5
45
19
46
5
47
2
48
12
49
2
41.54%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
19
diversityRatio
0.3076923076923077
totalSentences
195
uniqueOpeners
60
100.00%
Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount
6
totalSentences
154
matches
0
"Then a small click, and"
1
"Somewhere overhead, a plane dragged"
2
"Then the sound went."
3
"Then her torch caught a"
4
"Then it spoke again."
5
"Then she moved two steps"
ratio
0.039
97.92%
Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount
47
totalSentences
154
matches
0
"She had sent texts, then"
1
"She chained her bicycle to"
2
"Her next step was indecently"
3
"Her voice did not carry."
4
"It seemed to fall a"
5
"She should go back."
6
"She could return to the"
7
"She crouched and picked up"
8
"she called, louder now"
9
"She had told herself that"
10
"She drew it out."
11
"She had just taken it"
12
"she said quietly, though she"
13
"She turned the torch."
14
"She took three steps toward"
15
"Her boots whispered through the"
16
"She waited until she had"
17
"She swept the torch left"
18
"It did not dart away."
19
"She had simply looked too"
ratio
0.305
86.62%
Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount
115
totalSentences
154
matches
0
"Eva’s message was nine seconds"
1
"Aurora had rung anyway."
2
"She had sent texts, then"
3
"None had been answered."
4
"Eva had talked her through"
5
"Aurora could manage a dark"
6
"She chained her bicycle to"
7
"Richmond held the city at"
8
"A deer coughed once among"
9
"Aurora kept her torch low."
10
"Frost silvered the grass, and"
11
"The cold lifted first."
12
"Her next step was indecently"
13
"Wildflowers covered the grass: white"
14
"Frost silvered their stems without"
15
"Several leaned as though the"
16
"Aurora stopped at the boundary."
17
"The place had the attentive"
18
"Her voice did not carry."
19
"It seemed to fall a"
ratio
0.747
32.47%
Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount
1
totalSentences
154
matches
0
"Before entering the park, she"
ratio
0.006
100.00%
Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences
67
technicalSentenceCount
0
matches
(empty)
100.00%
Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags
9
uselessAdditionCount
0
matches
(empty)
100.00%
Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags
9
fancyCount
0
fancyTags
(empty)
dialogueSentences
25
tagDensity
0.36
leniency
0.72
rawRatio
0
effectiveRatio
0
91.7314%