I think the shutdown process makes a jmx call into the app server to shut it down cleanly..
The shutdown app is a JBoss client, hence the reason it uses the JARs in the client directory. You could figure out the exact set of JARs required and provide only those in the "client" directory. The jbossall-client.jar is a super JAR that contain the contents of most of the other JAR files in the client directory, so you could replace it by a series of individual JARs. Or you could just provide jbossall-client.jar.