Heat 2 tablespoons olive oil in a heavy pot over medium heat. Add cumin seeds and cook until they release their aroma for about 1 minute. Stir in the onions, garlic and sweet potatoes. Reduce heat to medium-low; cover and cook for 5 minutes, stirring occasionally so potatoes don't stick.
Put the lamb shanks in the pot and brown on all sides, about 8 minutes. Add tomatoes, apricots and harissa. Season with salt and pepper. If mixture seems a bit dry add a splash of water. Bring to a boil then lower heat and cover. Simmer until meat is tender and falling off the bone, one hour or more, depending on the size of the shanks. Stir occasionally.
Heat a small frypan over low heat and add the slivered almonds. Stir and cook until almonds are lightly browned, about 5 minutes. Remove from heat and set aside.
Place couscous in a large bowl and slowly pour in lukewarm water until just covered. Let sit until water is absorbed, about 10 minutes. Toss couscous with 2 tablespoons olive oil and toasted almonds. Transfer to a serving dish. Spoon the lamb over the couscous and serve.