add: base playbook