add dry run option
handle dry run
better prompt