As a user, I want to drop the requirement for bash/zsh interpreter and instead target the plain POSIX sh interpreter base, so that I can interoperate with many more choices of shells.
Replace pushd and popd with sh -c "cd <dir> && <command> && <command> && ... <command>"