actually my upgrade script consist of a file deploy job sending the upgrade package + pskill.exe, with a post command like
agentclt -b exec ... as shown in the installation manual
actually the pskill resolves many failed install, but some of them still fail and need to be done manually with a reboot
if you kill the rscd and the rscdsvc you don't need to use the agentctl.
pskill seems to work better than anything else on windows. there shouldn't be any nexec or nsh processes on the agents because those binaries don't exist on the agent side. usually the pskill on the rscd and rscdsvc work and the upgrade will run.
if you can't kill the rscd processes you have to reboot, windows 2000 seems to have the most problems w/ that.
the agentctl restart the agent if the setup fails for whatever reason
without it you would be left with an unreachable server if the unattended setup fails
this way at least the previous agent will be started and you can repeat the process as needed