My Pro tip, move the stack name into the "global" section your SAM config file, so that you don't need to pass "--stack-name":
[default.global]
[default.global.parameters]
stack_name = "my-awesome-sam-stack"
For example, if you want to set stack name to a default one, following values should work.
[default.sync.parameters]
stack_name = "my-app-stack"
After setting these values you should be able to run “sam sync --watch” without stack name parameter.