You'll have to use the localhost target inside a loop in a plan for that.
get_targets($targets).each |$t| {
run_script('myscript', 'localhost', arguments => [ $t.host ])
}
If you convert the script into a task you can use run_task_with to parallelize it but it's probably easier to just write a task or script that accepts an array of host names.
# create a special local target for each remote host.
$local_targets = get_targets($targets).map |t| { get_target("local://$t.host") }
# use run_task_with to execute against all of these against localhost
run_task_with(mytask, $local_targets) |$t| {
{ 'host' => $t.host }
}