add invocation script, prevent duplicate run