Eu não estou ciente de uma maneira de fazer isso com o systemd, pois acho que ele está preocupado apenas com o início e o funcionamento das unidades. Como em, você pode usar After= para forçar uma unidade a iniciar somente APÓS ter iniciado o especificado ou ambos iniciarem em paralelo.
Wants= fará com que as unidades especificadas sejam iniciadas em paralelo (se as unidades desejadas ainda não estiverem iniciadas / ativas), não o que você deseja.
Requires= , se usado em conjunto com After= on agentconfigure.service , garante que agentconfigure.service seja iniciado DEPOIS agentinstall.service está ativo ("ocupado"). Agora, você pode ter um loop em agentconfigure.service que espera, digamos no máximo 5 minutos, e verificar regularmente se há agentinstall.service para concluir antes de prosseguir com o trabalho real. A única opção que vejo para isso.
EDIT: Outra opção que acho melhor ainda ... agentinstall.service inicia agentconfigure.service quando a instalação é bem-sucedida e, em seguida, sai.