Place potatoes in a large pot, cover with water, and bring to a boil. Simmer until fork-tender, about 15 minutes. Drain and mash the potatoes. Let cool completely.
In a small skillet, heat olive oil over medium heat. Sauté chopped onion until tender. Let cool.
Rinse sauerkraut thoroughly under running water for at least 3 minutes. Drain very well.
In a bowl, combine the cooled mashed potatoes, sautéed onions, drained sauerkraut, and farmer's cheese. Mix well. Refrigerate until ready to use.
Make the Dough
In a large bowl, whisk together flour and salt. Make a well in the center and crack in the egg. Gradually add hot water, mixing with your hands until a sticky dough forms. Add a little more flour if too wet, or a tiny bit more water if too dry.
Cover the bowl and refrigerate the dough for at least 1 hour.
Assemble and Cook Pierogi
Bring a large pot of salted water to a rolling boil.
Lightly flour a clean surface. Divide the dough into 4 portions. Roll out one portion thinly (about 1/8-inch thick). Cut out circles using a round cutter (about 3 inches in diameter).
Place about 1 tablespoon of filling onto one half of each dough circle. Fold the dough over the filling to create a half-moon shape. Pinch the edges firmly to seal. Place prepared pierogi on a lightly floured tray, ensuring they don't touch.
Carefully drop pierogi into the boiling water, a few at a time, making sure not to overcrowd the pot. Stir gently to prevent sticking. Cook until they float to the surface, then let them boil for an additional 2-3 minutes.
Remove cooked pierogi with a slotted spoon. You can serve them boiled, or for a crispier texture, melt butter in a skillet over medium heat and pan-fry the boiled pierogi until golden brown on both sides.
Serve hot, drizzled with melted butter and your favorite toppings like sour cream or applesauce.
Notes
For best results, make sure the potato filling is completely cooled before assembling the pierogi. Don't overfill them, as it can make sealing difficult.