Work Header

The promise

Work Text:

It all starts after they get attacked by a werewolf.

It’s almost midnight and Jaskier cannot sleep so he gets out of the tent to distract himself when he hears a noise.

Sadly, he doesn’t have the eyes of a witcher so he can’t see anything in the dark and can’t get out of the way before the werewolf attacks.

He doesn’t get hurt, no. And it’s not exactly due to some kind of miracle; it’s because Geralt puts himself in the middle, like some sort of shield made of flesh and grumpy bones and the werewolf hurts him instead.

The witcher ends up killing the beast, but he now has three marks, the marks of the werewolf’s claws on his back. Same ones Jaskier offers to clean and heal as much as he can.

For the first time in years he doesn’t know what to say. He wants to call Geralt an idiot, but he’s still in shock and his voice is not working quite well.

Not only that, he hasn’t recovered yet from the utter confusion he felt when the first thing the witcher did was to see if Jaskier was hurt.

He’s an idiot, the bard decides. Geralt is an idiot and it took Jaskier a couple of months of traveling with him to realize it.

“You jumped in front of a werewolf to protect me,” the bard mumbles because honestly silence is not actually his thing after all.


Jaskier keeps patching him up; he doesn’t wait for an actual response because he knows he’ll never get it.

“Just… Don’t do that again, alright?” Not that the bard doesn’t appreciate being protected… Actually, he plans to keep running towards Geralt whenever he finds himself in trouble because fighting it’s not his thing either… But he doesn’t want to see the witcher so hurt. It’s different when they go after a monster with a plan in mind or when he decides to actually use weapons against them.

“You cannot tell me not to protect you,” Geralt growls and by the way he’s glaring at him Jaskier knows he’s losing his temper.

“I didn’t say that! I love when you protect me, believe me!” Jaskier has to look up this time because the witcher has risen from the ground and is walking towards his own tent and the bard follows him. “Just don’t use your body as a shield!”

“There was no other choice!” Geralt bares his teeth at him, now he’s right in front of the bard and they’re looking at each other in the eye.

“You could’ve used a weapon to attack him.” Jaskier keeps arguing, getting irritated as well because that idiot witcher doesn’t understand it’s not worth risking his life like that for a simple bard.

“He would’ve killed you!” Geralt has his hands on Jaskier’s shoulders now, but the touch is light, almost gentle despite of how mad he looks at the moment.

“People die all the ti–”

Geralt lifts him up and tosses him to the bed; he’s still angry so Jaskier is not sure if he’s going to murdered or just–

“We’ll sleep in the same tent from now on,” Geralt says in that way of his that admits no arguments.

“You’re worried about me,” Jaskier observes, but of course his words are met with silence.

Instead of answering him, Geralt jumps on the bed and proceeds to wrap himself around Jaskier while he’s still glaring at the bard.

He’s not going to deny he enjoys the feeling of Geralt’s body around him, however Jaskier is not ready to forget about what happened just like that…

Although they should probably discuss that the next day… in the morning.


Unfortunately, they can’t because the next day Geralt is desperate to see Yennefer again.

Jaskier tries to ignore the jealousy he feels and follows the witcher anyway.

He’s not sure whose house she’s borrowing this time, but it’s also quite nice. The sorceress prepares them a room (for the both of them) and Geralt still sleeps all wrapped around Jaskier the night they arrive.

In the morning, Jaskier finds them having an argument in the living room that ends as soon as he walks in.

Everything is so weird… Well, weirder than it usually is.

“I’ll check up on Roach,” he says then. “We’ll leave soon.”

“What?” Jaskier gasps, confused but he obviously gets completely ignored.

“Don’t forget you owe me, witcher!” Yennefer says, amused and irritated at the same time.

“What happened?”

“I made him a promise. I magic one, one I’m unfortunately bound to fullfil,” she grimaces.

“What kind of promise?”

“I’ll be your protector if he dies.”

“What?” Jaskier has never felt more confused in all his life.

“I’m not pleased with that either, but I suppose I consider him my friend so I had no other choice, besides… Now I have a witcher that owes me, which means I get to ask for a favor for free.”

“Why would he do something like that?”

Yennefer looks at him like he just asked the most stupid question she has ever heard and perhaps this time she’s right.

“He’s an idiot,” Jaskier finds himself mumbling, although he knows there is a fond smile on his face.

“You both are that’s why you’re perfect for each other.”

When Geralt comes back for Jaskier, the bard puts his arms around the witcher’s shoulders and pulls him down for a kiss.

Quickly, Geralt takes Jaskier by the waist and kisses him back in a way it leaves the bard a little bit dizzy.

“Don’t you dare die… ever,” he manages to huff which makes Geralt chuckle.

“I’ll try to do my best,” he says, smiling, although his expression turns more serious when he adds. “Only if you promise the same.”

“I’ll try,” Jaskier mumbles. They don’t use magic, although the bard likes to imagine the promise somehow bounds them together anyway.