The day opened warm and bright, sunlight drifting between thinning branches to stripe the game trail in shifting gold. The group followed Sableeye’s directions without speaking much, their paws scuffing softly through leaf litter, the woods unusually quiet around them.
Pip kept pace beside Shade near the front. She paused once when a shadow slid over her: brief, thin as a breath. No wings. No clouds. Just a passing dimness that touched only her. Shade’s ears twitched sharply.
“You saw that?” Pip whispered.
Shade’s gaze followed the branches. “Not sure,” he murmured, but his ears stayed angled, uneasy.
Behind them, the others walked with a strange mixture of fatigue and restlessness.
Gertie clutched her stomach with a puzzled frown.
“I really should’ve had seconds,” she muttered for the third time, even though she had had seconds. And thirds.
Koda’s fur caught the light oddly, reflecting it in cool tones that made his outline shimmer at the edges. Bram noticed and frowned, rolling his shoulder again, testing strength that felt too full, too ready. His footing today felt unnaturally certain, every step landing with a confidence he couldn’t explain.
Lina walked with careful steps, one paw pressed briefly to her ribs when she thought no one saw. Zara strode neatly along the path, but her shadow lagged half a heartbeat behind her, then snapped suddenly back into perfect sync as Pip watched through narrowed eyes.
Finley and Brooke trailed with Gertie, Brooke humming a tune Pip had taught her. Finley kept glancing upward, distracted, until he suddenly ducked under a low branch he’d never seen coming. He blinked at it, confused.
Shade didn’t comment.
He’d heard the branch’s faint sway before Finley reacted.
The trail bent, and the forest opened into a shallow rise where lichen-covered rocks jutted from the earth like crooked teeth. Shade slowed. Then stopped entirely.
He stood still for a long moment, ears turning, nostrils flaring, listening to things no one else could hear.
Pip stepped closer. “Shade? You okay?”
He lifted one paw to rub lightly at the base of his ear.
“The woods are loud today,” he said simply.
Nothing about the clearing looked dangerous. The wind didn’t shift. No wings circled overhead. Still, something tugged at him: faint, buzzing, not quite real. It passed eventually.
Shade exhaled and let his shoulders drop. “This spot will do.”
Thatcher arrived two beats late, tugging his cloak into a swirl behind him.
“Yes. Exactly what I was thinking,” he announced, loudly enough to startle a beetle off a rock. “A perfect place to make camp. Very defensible.”
Shade ignored him. Pip tried not to smile.
The group set down their packs with sighs of relief.
By evening, the air had cooled. They built a fire, Brooke coaxed the spark from flint faster than Pip expected. Brooke’s paw hovered near the flame, and the spark leapt eagerly to meet her. She flinched, but the fire caught instantly.
Gertie busied herself with supper, reaching for the shimmerberries more than once before Bram blocked her with a firm paw.
“No,” he warned.
“But just a pinch-”
“No,” Bram repeated.
Around the fire, they ate quietly, grateful for warmth. Thatcher sat a little too close to the flames; when he exhaled, a thin plume of frosty breath drifted into the evening air.
He didn’t notice.
Everyone else did.
Shade rose after the meal and took up position at the edge of the firelight, bow across his knees, eyes scanning the treeline. His ears twitched again, small movements, constant, restless.
Night gathered.
And Shade listened to it all.
Finley woke like he’d been shoved up from underwater.
For a heartbeat he didn’t know where he was: the dim firelight, the smell of camp smoke, the shapes of sleeping bodies around him all blurred together. He rubbed his eyes, confused, caught between dreaming and waking.
Then he heard Shade scream.
“Bram! Koda!”
The sound ripped the last of sleep out of him. Finley shot upright, heart hammering, blinking hard at the dark around the dying fire. Pip was already moving, darting from body to body, shaking Gertie, Zara, Lina, whoever her paws found first.
“Up! Get up! Shade’s in trouble!”
Another shout echoed through the trees, Shade again, but this time strained, breathless, like something had lunged at him mid-word.
Finley stumbled to his feet, vision swimming. A shape crashed through the foliage near the edge of camp- a heavy thud, then the scrape of claws on bark.
“Move!” Koda barked, pulling himself upright, shield raised. Glowing patches along his fur pulsed like faint lanterns.
Finley turned toward the sound just as a dark blur swept past the firelight. Wings. Huge ones. Silent but crushing the air with their speed.
Sableeye.
She came down hard, talons cutting into the dirt where Shade had just been. Shade rolled, fast, faster than Finley had ever seen him move, the owl’s talons missing his spine by inches.
He got to his feet in a crouch, knife drawn, chest heaving.
Finley froze.
Shade wasn’t winning.
Shade wasn’t even fighting.
He was surviving, just barely, dodging each dive with desperate, practiced flinches.
Sableeye wheeled upward again, wings brushing the treetops, and Finley heard the terrifying quiet in the air right before she dove a second time. Shade twisted aside, her claws catching only the hem of his cloak and ripping it into tatters.
“Bram! Koda! Now!” Shade shouted, voice ragged.
Bram surged forward beside Koda, spear braced, teeth bared. Gertie pulled Lina behind a rock. Zara flattened herself against the ground. Thatcher scrambled backward and tripped over his own pack.
Finley could barely breathe.
Shade dodged another swipe, rolling under a fallen log as Sableeye’s talons threw sparks off stone. He came up panting, knife in hand, eyes wild as he tried to track her silent wings in the dark.
“Where… where did she-?” Finley stammered.
Pip grabbed his paw. “Finley, stay low! Don’t look up… don’t-”
Above them, branches shook violently.
And Shade’s voice cut through the night, furious and afraid all at once:
“She’s trying to separate us, stay together!”
Finley pressed himself closer to the earth as terror surged cold and sharp through his chest.
Shade was still alive.
But Sableeye was circling back.
And she wasn’t done yet.
Everything was moving too fast.
Brooke shoved herself upright, the world tilting as wings hammered the air above the dying fire. Claws scraped stone. Leaves burst upward like sparks. Someone pulled her back, Gertie, she thought, just as Sableeye descended again.
Shade dodged under the strike, rolling across dirt and shredded leaves. The owl’s talons slammed into the ground where his spine had been a heartbeat before.
Brooke’s heart lurched.
Koda pushed in front of the pups, wide-bodied and steady, raising his shield. Something in his fur caught the firelight strangely, a faint, cool reflection, not bright, not glowing, just… odd. Brooke hardly noticed it through the panic.
“Form up! Stay close!” Koda barked.
Shade’s voice tore through the dark:
“Bram! With me! Koda, keep them together!”
Bram sprinted toward him without hesitation, spear braced, muscles straining. Pip knocked into Zara and Lina, dragging them toward cover. Gertie scrambled behind a rock, clutching her ladle like a weapon.
Thatcher stumbled backward, tripping over his pack, scrambling upright with wide, terrified eyes. He didn’t shout at anyone. Didn’t blame anyone. He just stared at Shade with a look that said I did this…
And Shade saw it.
Shade snarled, furious and raw:
“Don’t freeze! Move! You’re the one who brought her on us!”
Bram yelled, “Shade! Up!”
Shade twisted, just in time.
Sableeye swept low, talons slicing through the air where his chest had been. She tore a strip from his cloak instead, flinging it aside like shed leaves.
Shade staggered, panting, then forced himself upright.
“Back into the trees! Move! She’s herding us! GO!”
The group broke into a run.
Brooke grabbed Finley’s paw and sprinted, leaves whipping her muzzle. A shadow streaked overhead, Sableeye circling, correcting her angle for another dive.
A talon slashed the dirt near Zara, scattering soil like thrown sand. Lina yanked her ahead. Bram stayed near Shade, deflecting branches, shoving aside obstacles.
They weren’t fast enough.
Brooke felt it, the sudden vacuum in the air, the awful stillness before a strike. Her stomach twisted. She turned.
Sableeye dropped through the canopy like a stone.
“Shade!” Brooke shouted.
He turned at her voice.
Just a sliver of hesitation.
Sableeye hit him like a falling star.
Talons clamped onto his shoulders with a sickening crunch. Shade’s knife flew from his paw. Bram lunged, roaring, spear rising, but Sableeye beat her wings once, twice, and the blast threw Bram into a tree with a groan.
Shade managed a single, ragged cry: anger, fear, apology all tangled.
Then he was lifted off the earth.
Brooke watched his paws scrape the dirt, watched his eyes widen, steady, resigned, terrified for them,and then he vanished into the darkness above.
Brooke stopped running. Her breath caught.
Everything inside her dropped away.
Finley tugged her arm, voice breaking. “Brooke… we have to go! we have to-”
Koda roared from ahead, voice hard as iron:
“Into the cave! Move! Now!”
They ran.
Brooke didn’t look back.
Shade was gone.
Branches snapped as the rodents fled, their footfalls tearing narrow lines through the undergrowth. The trees parted for them without effort. Nothing pulled at their fur. Nothing barred their way. The danger stayed above and behind, in wings and memory.
They ran until the ground broke and dipped between two leaning boulders. A narrow mouth opened there, half-hidden by roots and bramble. Old. Unused. Waiting.
Koda reached the opening first, shoulders heaving. He shoved the hanging roots aside with both paws.
“Inside,” he rasped. “All of you. Move.”
Bram stumbled in with one paw pressed to his ribs. Zara followed close, ears flattened, Lina’s paw steadying her. Gertie squeezed through after them, breath hitching, fur dusted with leaves.
Finley and Brooke came next, the pups half-pulled by momentum at this point more than will. Pip slipped in last, casting one quick look over her shoulder into the dark before the brambles swung back.
The cave closed around them.
Inside, the air was cool and dry, tasting of stone and old dust. Shapes were only suggestions at first: the faint rise of a wall, the shift of someone’s breathing, the pale blur of fur where eyes slowly adjusted.
No one spoke.
They gathered in a loose knot at the back of the chamber. Bram slid down the wall until he sat, jaw clenched, staring at nothing. Lina’s paws moved over him automatically, checking for breaks she couldn’t fully see. Zara sat with her back to the stone, knees drawn up, shaking just enough for the movement to be visible.
Gertie folded her hands in her lap and stared at them like she didn’t recognize her own paws.
Pip settled near the pups, arms around her knees, trying to make herself smaller. Finley leaned into Brooke without realizing it; Brooke held onto him as if letting go would mean dropping into the dark under their feet.
Thatcher stood alone, halfway between the group and the cave mouth. Not guarding. Not leading. Just… there. His eyes were wide, unfocused, fixed somewhere on the floor where Shade should have been.
His breathing stuttered in shallow pulls.
After a while, Bram looked up at him.
Not with fire. Not with shouting.
Just the heavy, tired weight of someone who has watched the wrong person make a choice and seen the cost paid in full.
His voice came out low and even.
“Shade died because you thought you could bargain with a monster.”
The words hung in the cave like another presence.
Thatcher flinched. His mouth opened, shut, opened again. Whatever excuse or defense tried to form never made it past his teeth.
His knees gave first.
He sank down where he stood, paws trembling, eyes fixed on the stone.
“I…” His voice cracked. “I talked to her. I thought… I thought I could fix it. And now he’s…”
The rest thinned out into air.
No one corrected Bram.
No one softened the blow.
There was nothing to argue with.
Gertie pressed a paw over her muzzle, shoulders shaking in quiet, ugly little jerks. Pip buried her face in her arms. Brooke shut her eyes. Finley stared at the darkness in front of him and saw Shade’s last look instead.
Outside, the forest settled back into its usual sounds. Leaves whispering. Somewhere far off, water moving over stone.
It did not know what had been lost.
It did not care.
The cave merely held them until they could move again.
A Pact With Fangs is available on Amazon in print / ebook form, as well as on youtube as an audio book.