Repository navigation
Raycast
Raycast keeps its settings in a SQLCipher-encrypted database and has no deeplink, CLI or defaults key to configure it, so nothing about it can be set declaratively.
Set ⌘Space in Settings → General → Raycast Hotkey. The playbook frees the shortcut (it turns off the Spotlight and Siri bindings) but cannot assign it.
A .rayconfig export (Settings → Advanced → Export Settings & Data) carries the extensions and their preferences, hotkeys, quicklinks, snippets, window layouts and general settings. Keep it as an attachment (any *.rayconfig) on a Bitwarden item (raycast_bitwarden_item, here "Raycast Backup", with the export passphrase as its password). The playbook downloads it to a private temporary file, opens the import and deletes the copy once you confirm:
ansible-playbook daily-driver.yml --tags raycast-import # give the sudo password- The Bitwarden session is the one the dotfiles
bwwrapper saved, read as root with the sudo password (bw --regenerate-session-keyonce if there is none). An exportedBW_SESSIONwins. - After changing Raycast, export again and replace the attachment (the Bitwarden app, or
command bw create attachment --file <export> --itemid <id>after deleting the old one). - Without
raycast_bitwarden_item, a localraycast_config_pathis used instead. - Tagged
never: an ordinary run would otherwise pop the import dialog every time. Run it after the first full run, which installs Raycast andbitwarden-cli. The import still asks to confirm: one click instead of setting up each extension.
Keep the export out of a public repo. It is an opaque blob that may carry extension credentials, which secret scanners like gitleaks won't catch. Raycast Pro's Cloud Sync removes the need for the file.
Install AeroSpace Tiling Window Manager from the Raycast Store, set its Default Search preference to All, and give Switch Apps in Workspace the hotkey ⌥f (AeroSpace leaves it unbound). ⇧↩ pulls the window to the focused workspace, ↩ jumps to it. The .rayconfig export carries all of this.