I found that parameters can be accessed through the ctx
parameter. You'll need to access the parent context to do so:
def _shell_complete(ctx, args, incomplete):
global_opt = ctx.parent.params["global_opt"]
# ... process options based on param value
return options