Tweet while you keynote…

note: if you have updated to the Mavericks version of OSX the app will not work. Thank Apple for restricting the amount of Apple Script capability… see Chris Long’s efforts. Our best recommendation is use Keynote ’09 if you want to auto tweet

If you create presentations in Apple’s Keynote, here is the ticket to add some twitter punch to your presentations- a script that can automatically send out tweets when you change slides. Your audience will wonder how you managed to tweet so much while presenting. Practice your humble smile.

I first wrote up the method of how to do this back in February 2011 — since then twitter has changed their authorization scheme, plus the retirement of the AP1 1.0 broke the original app written by Toby Harris. It was actually just a minor edit needed in the applescript, but leave it to a dog to figure it out.

Here quickly are some more modern steps for setting it up. It looks a tad geeky, and you will have to enter the world of command line. If this scares you, take two Powerpoints and don’t call me in the morning. This was recently written up an screencast by John Greenwood, so you could easily follow his steps too (see below for his video).

First, the under the hood stuff, you are going to install into your OS a little but of code called twurl, which is a command line interface that sends out commands to twitter (see the twurl readme for some more handy things you can do with it). To do this, you need to find and open a Terminal window (it is an application usually inside your Utilities folder). From the command line, enter

a command to install twurl (you will ahem need to be connected to the internet). Use of sudo requires you to enter your login password, it allows you to do anything to your system.

You next have to go to (and log in with your twitter credentials) to the developer site

Here you will create a new “app” which really means, you are just going to set up something so twurl on your computer can communicate to twitter through your account.

Creating a keynote twitter app.

Creating a keynote twitter app.

The information here does not matter much since no one really sees it, but create a name like Jenny’s Keynote Tweet Machine, use your blog URL or some URL. Guess wildly at the captcha, and create the application.

You are not done. One more setting.

Click the Settings tab and change Application type to Read and Write. And then click Update.

app type

That is all the information twitter needs fro you, but you need two key pieces of information fro twitter.

Click on the Details tab, and copy the two cryptic looking mumbo jumbo strings for Consumer key and Consumer secret (no screenshot here since… some of this is secret). I like to toss them in a text file. I then will contruct in this text file (or you can do this in terminal if you are a deft copy paster)

This does need to be exact, make sure you do not have any weird extra characters in the keys. Now go to your Terminal app, and paste that entire command string and press Return/Enter.

Terminal will respond with a really long super duper mumbo jumbo URL- copy it exactly, and paste in your web browser. This will bring up the Twitter authorization screen. which you really should approve (otherwise, why are you even doing this?). It will return to you a pin number, which you know copy, paste back into Terminal, and press RETURN/Enter.

That is the magic connection. It is a good idea to do a command line test first to make sure twurl is operational. In Terminal, type:

This is telling twurl to create a tweet for you. Note the location of the quotes, they are important here!

If this does not work, and you have previously set up twurl before, you may have conflicting apps- see the twurl documentation for Changing Your Default Profile.

By now you should be ready to try some keynote tweeting. First use the View options in keynote o make visible the speaker notes. For each slide you want a tweet to go out, wrap the text of the tweet int [twitter]…..[/twitter] tags. URLs ought to be shortened, but I suggest you test the length of the tweet, and allow for any prefacing of hashtags.

And you do not have to send a tweet for every slide, it can look a bit offensive on twitter to be firing off like a kid with their first fireworks.

You should next download the revised Keynote Tweet 2.5 app (see my post on the mods needed to be changed in AppleScript to get it to work). And admire the new icon made for it by John Greenwood.

Launch the Keynote Tweet application. It gives a little bit of explanation, and then offers a field where you can insert a hash tag or other string you want to be sent with each tweet. Put your Keynote in presentation mode, and tweet away (be sure to quit the Keynote Tweet application when you are done just to make sure you do not inadvertently send out more tweets).

If you prefer to learn from a video, check out a new screen cast tutorial by John Greenwood

And there you go, Tweet and Toot away!

Update Nov 17, 2014
Thomas Brady shared the script modifications he says is working in the latest Keynote in Yosemite OS. I cannot modify the script until I upgrade (Mavericks Applescript is not liking it). You will have to launch AppleScript, then open Keynote AutoTweet, and replace the scripts with what is below. Then you can compile it to save.

If anyone can test this, and let us know it works, it gives hope for those who wish to present and tweet together.

UPDATE Nov 18, 2014: Again, since I cannot test this, I am thinking a portion of Thomas’s script is specific to the setup on his machine where it calls the shell script. Borrowing from the older script, I am trying to guess if this will work:

Featured Image: modified from cc licensed ( BY NC SA ) flickr photo by Jacob Whittaker:

If this kind of stuff has any value, please support me monthly on Patreon or a one time PayPal kibble toss
Profile Picture for Alan Levine aka CogDog
An early 90s builder of the web and blogging Alan Levine barks at on web storytelling (#ds106 #4life), photography, bending WordPress, and serendipity in the infinite internet river. He thinks it's weird to write about himself in the third person.


  1. First, thanks for the instructions, I got Twirl up and running but my mac won’t let me open it. It gives me an error: The operation couldn’t be completed. (OSStatus error -67049.) Any advice?

    Otherwise great post

    1. I’ve heard this might help

      The workaround is to disable the security settings in the Security Preference pane:

      1) Open Security Preference pane (and sign in via the Lock icon if needed)
      2) Select the “Anywhere” radio button.

  2. Thanks for the updated instructions! Everything works until I use Keynote… and then I get this popup:

    “Can’t get <> of document 1 of application “Keynote”

    Anyone else having this issue? Any help would be greatly appreciated. Thanks again for the awesome instructions!

  3. Its been a while since i programmed and don’t remember basics can anyone help.

    I would like to write a command line with twirl to count up to 100 sending each tweet with a different number. Can anyone help me, so that I don’t have to input each command?

    twurl -d ‘status=1’ /1.1/statuses/update.json

    any help thanks

  4. Hey, Apple updated the applescript functionality on Keynote today. Do you know if this fixes Keynote Tweet for 6.2?

      1. It’s “partially” fixed in Keynote 6.2 – the main thing that got broken with the 6.x releases was that all the classes got changed.

        Unfortunately there appears to be a bug in keynote’s AppleScript integration where the “current slide” object continues to point at whatever the slide that was selected in the deck *BEFORE* you went to presentation mode.

        I’ve put the details around this here:

        If “current slide” were to work properly during presentation then I have Alan’s code updated to be able to do it easily. (I can get it to tweet moving through a “non-playing” presentation quite reliably).

    1. So do I need to re-run the install process to get it to work in Yosemite, or just upgrade? This may be the best news I have gotten today.

      Thanks Thomas!

    2. Thomas, can you be more specific about how you “replaced the old classname?” What are the “new ones” you are referring to?

      1. Would love to have this info too. Been using Keynote 9 in meantime but this machine is starting to die on me and may be forced to upgrade soon. Would love instructions on how to get Keynote working on Yosemite and the new Keynote version!

        Love hearing that they’ve fixed things!

  5. Thanks to everyone who’s working to make this work again!

    I won’t get a chance to upgrade to Yosemite and try it out until the weekend … I’ll share the results of these efforts as soona s I can. Most likely as a Keynote Tweet on twitter first. ;-)

  6. In the code above, can someone tell me how to clean up the “&amp;quot;” types of things? I’m trying to paste this into the script file and as it is showing up on the page, it won’t work. I don’t know the script language well enough to do find/replace with any hope of accuracy.

  7. I tried the updated code shared by Alan Levine and Thomas Brady, but it did not work properly. I made some modifications and got it working with Yosemite using Keynote 6. You can see the updates I made and download the app here:
    Thank you Alan and Thomas for your support. I am very excited to have Keynote Tweet functional again.

Leave a Reply

Your email address will not be published. Required fields are marked *