SARAH, a Mac OS X speech interaction app

SARAH (“Sarah”) is a speech-recognition, voice-interaction application for Mac OS X computers, created by yours truly. Summary info:

  • SARAH is a computer voice interaction program for Mac OS X computers. You can speak commands to your Mac, it takes action based on those commands, and speaks back to you.
  • Sarah also has background “agents,” such as an email-checker, that can do things in the background, and then report to you, as desired.
  • Sarah is free and open source.
  • Sarah is based on a plugin architecture, so developers can add new “intelligence” to Sarah.

Sarah is like a Siri application for the Mac, but is generally more limited than Siri. In particular, in can only respond to known commands. See the User’s Manual for more information.

(If you just came to this page to download Sarah, the download link is a few sections down from here.)

Sarah version 0.1

Today’s release of Sarah is Version 0.1, meaning it works, but it’s a little rough around the edges. Here are a few things Sarah can do today:

  • Tell you the current date and time.
  • Get the current weather, and weather forecast.
  • Check your email. It can do this both a) interactively, when you ask it, and b) by running in the background, telling you when it finds new email messages from people you want to hear from.
  • Start your Mac screensaver, and also log back into your computer.
  • Check the current Twitter trends.
  • Check favorite news sources for current/trending news.

Other plugins I’m currently planning are:

  • Controlling Pandora.
  • Digging much more into news sources.
  • Stock market quotes.
  • Start connecting to physical devices, such as Arduino devices. (This will let Sarah control things around the house.)

Because Sarah can be extended through plugins, in the long run, what Sarah can do is up to you.

Sarah in Action

If you're still not sure what Sarah is, here's a demo video. You may need to turn up your volume a little bit:

Here's a second video showing some of Sarah's new features, including start screensaver, log back in, check email, current weather, and weather forecast:

Here’s a third video, showing the newest version of Sarah that I call “Sarah 2”:



Sarah only runs on Mac OS X computers, and requires a recent version of Java. Sarah should run on Mac OS X 10.7 ("Lion") and 10.6 ("Snow Leopard"). If you've kept up with your Mac updates, Sarah may also run on 10.5 ("Leopard"), but I don't have a computer to test that on.


With just a few exceptions, Sarah installs like most other Mac applications. To get started, just download the zip file from this link, open the zip file, then read the installation instructions:

It's important to verify files you download from the internet. If you're not a programmer, at least make sure the size of the file you download is 23,603,264 bytes. (You can see this by right-clicking the file, and selecting "Get Info" from the popup menu.)

If you are a programmer, the MD5 hashsum of the zip file is:

  • ea8996428579cb9ad9d85fdde570ed0d


Please read the User's Manual, but if you have any questions or problems with Sarah, you can reach me via the devdaily contact form.

The future

If/when I have more free time, Sarah will be able to do these things in the future:

  • Let you manage a To-Do List
  • Show the NASA picture of the day
  • Read "What happened on this day in history"
  • Read "Birthdays on this day in history"
  • Read a web page (such as a Wikipedia page). For instance, when I was in Roswell, New Mexico, it would have been nice to say, "Sarah, tell me about Roswell." (My Wikipedia Page Reader application can do this, but I have to supply the URL.)
  • Joke of the day
  • Inspirational quote of the day
  • Zen quote of the day (for me :)
  • A math module, so I can say things like, "fifty four plus thirty nine plus seventeen"

Of course there are many more things Sarah could do, but alas, time is fleeting.


If you've been following me on Twitter, you know that Sarah is named after the smart house named S.A.R.A.H. on the television show Eureka. I'll probably have to change that name at some point, but for now, Sarah is the name.

Sarah is actually written in a programming language named Scala. Here's the official Scala website, and here's a list of my Scala tutorials.

The speech recognition part of Sarah comes from the excellent Sphinx-4 open source project. Sarah couldn't exist without their great work.

Sarah also uses AppleScript in several places, mostly to talk back to you. That's the primary reason Sarah currently only runs on the Mac platform.

The images currently used in Sarah are not my own, and will be replaced soon.