Apply Local Space to Vector3, it is possible?

The title might be confusing, i will explain it, i have a pet script, it follows a player, and it’s supposed to follow you like here:
However, if you have a different orientation, the pet is not in your left:
This is the script:

Humanoid:MoveTo(HRP.Position -,-1,-2))

I don’t know if this is caused because of World Space, i’ve tried to search some posts, i found some, but i don’t think they would work, and also tried to use CFrame, but it didn’t work, i really need help, thanks for reading.

You should use CFrames because you can multiply offsets in the local space.

local moveToPos = (HRP.CFrame *, -1, -2)).p -- .p returns vector for position