It’s not exactly clear to me what all your issues are. How many script variables are you planning on passing to the shell and will they always be the same ones?
We, for example, use a fair number of Include objects that perform various repeatable tasks. They are inserted in the appropriate place in the various Process tabs in objects.
In your case, assuming that I understand, you could consider something like the following.
Object type Include (JOBI) named COMMON_EXPORTS, for example:
! COMMON_EXPORTS Include
export JOB_NAME=&$NAME#
export . . . .
export . . . .
In the Process tab of your jobs:
:INC COMMON_EXPORTS
/MyScripts/automic/Generic_AutomicJob.ksh TYPE=REPORT
exit 0
Also, we tend to only have a single JCL statement (shell command) in our Process tab with just enough to get the process executing on the Agent. We do this to facilitate application development and the transition from test through to production. It places all of the responsibility for the contents and operation of a shell on the developer and not within AE. This means that what usually executes in a lower Client for testing is the same thing that executes in the production Client. Should any changes be required to the shell script it can be done through our application change managements system and not require any UC4 changes.