Si entiendo su pregunta correctamente, desea verificar si está ejecutando un script como herramienta de script o no. Si se ejecuta como una herramienta de secuencia de comandos, desea establecer algunas variables usando GetParameterAsText, y si se ejecuta de forma independiente, desea utilizar algunas variables codificadas, ¿es esto correcto? Si es así, puede hacer lo siguiente:
if len(sys.argv) > 1:
#Assign input and output parameters for script tool
par = arcpy.GetParameterAsText(0)
else:
# Hard coded parameters for testing
par = 'Hello'
Al verificar la longitud de sys.argv, está determinando cuántos parámetros se pasan al script. Siempre hay al menos un parámetro (la ubicación del script en sí), por lo que si se pasa más de uno, puede suponer que ArcGIS los está enviando (a menos que esté pasando argumentos desde otro lugar).