Turbot: Slack automation for the Halibut that Bass team to do puzzle hunts Turbot is a Slack integration which facilitates puzzle tracking, spreadsheet creation, and other useful features for remote collaboration. From the user point of view, all functionality is available in Slack by means of the "Turbot" App and Slack commands such as "/new", "/edit", "/state", "/solved", "/tag", "/hunt", "/round", "puzzle", and "/rot". Each command has some built-in documentation (just type the command to see it) and the "/help" command gives an overview of all commands. Additionally "/help " can be used to get help on any command. There is also a user document that we plan to add to this repository. From the developer point of view, the code is implemented as a set of AWS Lambda functions as well as the configuration of the Slack app to invoke the correct functions. There are a few places where pieces are deployed or configured: * The AWS account is associated with a root login of crwth@puzzlers.org. If you need access to this account, just ask Carl at that email and he'll help you out. The Turbot lambda is named "turbot" and can be deployed with "make deploy" from this repository. * The Google docs for the spreadsheet template and for every puzzle-specific spreadsheet are stored in a Google account for the email address turbot@cworth.org . Again Carl will be happy to share these out to anyone, (including sharing the hunt-specific Google drive directory containing all the sheets for a specific hunt to everyone in the hunt). * The Turbot lambda needs access to pickled credentials for the Google account for creating and updating Google sheets. To update these a human must run ./gsheets-authenticate.py and then login to the turbot@cworth.org Google account in the web browser that pops up. This will result in a file named .gsheets-pickle.base64. Finally, the user must go to the Systems Manager pane in the AWS console, click on Parameter Store in the left menu and then edit the GSHEETS_PICKLE_BASE64 parameter to have a value of the contents of the .gsheets-pickle.base64 file. * The Turbot Slack app is maintained at the following URL: https://api.slack.com/apps/A01B6C96E21 This is where the AWS Lambda URLs are configured for specific slash commands, etc. * Finally, any particular Slack instance using Turbot needs to add the Turbot app which is under "Settings and Administration -> Manage Apps" available for any Slack user that is an admin for that particular Slack instance. If you have feedback or questions about Turbot, please direct them to crwth@puzzlers.org or find Carl Worth (Crwth) in Slack and he can invite you to the #tech-planning channel where development details are discussed.