Consulte o status de visibilidade em um loop, repetindo para defini-lo como invisível até que funcione:
set appname to "Firefox"
tell application appname to launch
tell application "System Events"
repeat until visible of process appname is false
set visible of process appname to false
end repeat
end tell
Monitorando o log de eventos do AppleScript Editor, é óbvio que isso pode levar algumas tentativas; o seguinte foi repetido 1490 vezes quando eu tentei com o Xcode:
set visible of process "Xcode" to false
get visible of process "Xcode"
--> true
Antes de finalmente funcionar:
set visible of process "Xcode" to false
get visible of process "Xcode"
--> false